A conversational Agent control plane for collaborative operations.
OpsChronicle is a multi-agent system that helps teams diagnose and resolve operational issues through natural conversation in IM platforms like Feishu/Slack.
Status: MVP Development
# Clone
git clone https://github.com/yourusername/opschronicle.git
cd opschronicle
# Build
go build -o opschronicle ./cmd/opschronicle
# Show help
./opschronicle --help
# Initialize config (generates ~/.opschronicle/config.yaml)
./opschronicle install
# Start gateway
./opschronicle gateway --config ~/.opschronicle/config.yaml
OpsChronicle uses Viper-based config with environment variable override:
# ~/.opschronicle/config.yaml
log:
level: info # debug | info | warn | error
format: text # text | json
gateway:
listen: ":8080"
Environment variables override config with prefix OC_:
export OC_LOG_LEVEL=debug
export OC_GATEWAY_LISTEN=":9090"
go test ./...
opschronicle/ ├── cmd/opschronicle/ # CLI entrypoint │ └── main.go ├── internal/ │ ├── cli/ # Cobra commands (root, install, gateway) │ ├── config/ # Viper-based configuration │ ├── bus/ # Session bus for multi-agent context │ └── gateway/ # Gateway server (TODO) ├── api/ │ └── proto/ # gRPC protobuf definitions │ └── channel.proto # Channel plugin interface ├── docs/ # Design docs & PRD ├── .golangci.yml # Linter config └── go.mod
┌─────────────┐ │ IM (Feishu) │ └──────┬───────┘ │ gRPC (channel.proto) ┌──────▼───────────────┐ │ Gateway │ │ - Channel Manager │ │ - Session Router │ └──────┬───────────────┘ │ Session Bus ┌──────▼───────────────┐ │ Agent Runtime │ │ - Orchestrator │ │ - Analyst │ │ - Executor │ │ - Historian │ └──────────────────────┘
Session Bus provides shared context for multi-agent collaboration within a single incident session. Agents publish/subscribe typed events (messages, tool calls, diagnostics) through an in-memory event bus.
MIT