Features
The functional domains of goga — one directory per domain, one common page model.
A domain is a user-facing functional area of the product: what it solves, how it is configured, which CLI commands drive it, which hook points it offers to tool packages, and which Python API its package facade exposes. The DSL itself and the AST goga builds from it are covered in Cells; language-specific contract extraction lives in Languages.
The domains
| Domain | What it solves | CLI |
|---|---|---|
| Pipelines | Running agent-driven cycles: pipeline-files, workflows, shipped pipelines, unattended/CI runs | goga pipeline |
| Build | Executing build plans in an isolated container | goga build |
| Topics | Organizing work: branches, the board, todo entries, creation, switching, deletion, publication | goga topics |
| History | The .goga/history/ artifact tree, the status scale, orphan cleanup, scriptable paths |
goga history |
| Tools | The tool ecosystem: using, packaging, and naming goga-tool packages |
goga tool |
| Connect | Installing goga skills and commands into AI agents | goga connect |
| Upgrade | Upgrading goga (and tools) with agent re-sync | goga upgrade |
| Install | Installing and removing tool packages into the running interpreter | goga install, goga uninstall |
| Init | Interactive project initialization and template scaffolding | goga init |
| Usages | Syncing cell-level usages from declared git dependencies | goga usages |
| Schema | JSON schema trees from CODEMANIFEST files | goga schema |
| Contract | Comparing CODEMANIFEST declarations with the implementation | goga contract |
| Hooks | The extension platform connecting domains and tool packages | goga hooks |
| Lint | Validating CODEMANIFEST files | goga lint |
The page model
Every domain directory is built on the same core page model (a domain may add topic-specific pages on top):
| Page | Content |
|---|---|
Overview (index.md) |
The functional area — which tasks the domain solves, its model and boundaries |
CLI (cli.md) |
The full normative command reference: synopsis, options, behavior, exit codes |
Configuration (configuration.md) |
The .goga/config.yml sections the domain reads (or a statement that it reads none) |
Hooks (hooks.md) |
The hook points the domain offers to tool packages (or a statement that it offers none) |
API (api.md) |
The facade API of the domain's Python package: types, signatures, parameters, purpose, usage examples |
The command reference for the whole product — one table, every command mapped to its domain — is kept in the CLI cross-road.