Development¶
This section covers the development workflow for contributing to Lango.
-
Build requirements, Makefile targets, test commands, and the local development workflow.
-
System overview, project structure, data flow, and layer boundaries.
Module Overview¶
Lango is organized into layered internal packages under internal/. Key modules:
| Layer | Packages | Description |
|---|---|---|
| Agent Core | agent, agentregistry, agentrt, orchestration |
Agent lifecycle, registry, runtime control plane, multi-agent delegation |
| Knowledge | knowledge, learning, ontology, embedding, search, retrieval |
Knowledge store, learning entries, typed ontology, vector embeddings, FTS5 search, retrieval coordinator |
| Memory | memory, agentmemory |
Observational memory (observations/reflections), per-agent persistent memory |
| Tools | tools/, toolchain, toolcatalog |
Tool implementations (exec, fs, browser, crypto, secrets, payment), tool chaining, catalog registry |
| Execution Safety | tools/exec, gatekeeper, sandbox |
Policy-based command safety, response sanitization, OS-level process isolation |
| Automation | cron, background, workflow, automation |
Cron scheduling, async tasks, DAG workflow engine |
| Networking | p2p/, gateway, a2a, mcp/ |
P2P libp2p networking, HTTP/WS gateway, A2A protocol, MCP integration |
| Economy | economy/, payment, wallet, contract, smartaccount/ |
Budget, escrow, pricing, USDC payments, ERC-7579 smart accounts |
| Security | security/, keyring, approval |
Encryption, PII redaction, hardware keyring, tool approval system |
| Durability | runledger, provenance, session |
Append-only run journal, session provenance/checkpoints, session management |
| Infrastructure | config, app, bootstrap, ent/, eventbus, logging |
Configuration, app wiring, bootstrapping, Ent ORM, event bus, structured logging |
| CLI/TUI | cli/, cli/cockpit/ |
CLI command groups, multi-panel cockpit TUI |
Code Conventions¶
- Go version: 1.25+; CGO is optional and only needed for legacy
vecbuilds - Build tags:
vecfor legacy vector embeddings,kms_*for cloud/HSM providers - ORM: Ent for database schema and queries
- CLI framework: Cobra for command structure
- TUI framework: Bubble Tea for terminal UIs
- Style guide: See
.claude/rules/go-*.mdfor detailed Go conventions
Related¶
- Architecture -- System design and project structure
- Installation -- Build from source