Gas City Rigs Catalog¶
Purpose: Catalog Git-backed work domains attached to a Bluefly city, on-demand provisioning primitives, and endpoint inheritance.
Upstream: Tutorial 01 — Cities and rigs, Beads topology, Split storage classes
Declarative SoR: BluCity deploy/oracle/beads-topology.yaml + deploy/oracle/site-rigs.toml
A rig is an external project, usually a Git repository, with its own Beads scope (issue_prefix) that inherits the city Dolt endpoint. It is not a second Dolt server.
Portable rig identity is declared in city.toml. Machine-local path binding lives in .gc/site.toml. Do not treat city.toml path= as the current normal model. See Tutorial 01.
On-Demand Rig Provisioning (Gas City 1.4.x)¶
Gas City 1.4.x introduces native on-demand rig provisioning:
gc rig add <rig-name> --git-url <git-url>
<city>/.gc/worktrees/ are automatically pruned (auto_prune_worker_dir = true) upon task completion and clean git status.
- High-churn ephemeral metadata is stored in local SQLite under <city>/.gc/store/, while durable work tickets and receipts persist in the shared Dolt server.
Rig admission test¶
A repository or capability becomes a Rig only when all of the following are true — not because a repo merely exists. Otherwise it stays a Project under its Mountain (see gc-catalog.md):
- Real git source boundary — yes
- Independent engineering work — yes
- Durable Beads scope needed — yes
- Agents need to work in it directly — yes
- Independent lifecycle — yes
BluCity MODEL_B matrix (authoritative)¶
One shared Dolt server. City DB hq. Each rig inherits the city endpoint. 22 external rigs. City root (HQ) is not declared as a rig.
Source of truth: city.toml and .beads/routes.jsonl in blueflyio/blu/blucity.
| Rig | Rig path | issue_prefix | Purpose / Domain |
|---|---|---|---|
| (HQ) blucity | . |
hq (alias bc) |
City Root / Factory Orchestration |
blucity-packs |
rigs/blucity-packs |
bp |
Reusable Capability Packs |
blucity-docs |
rigs/blucity-docs |
btd |
Engineering Standard & Governance Authority |
api-schema-registry |
rigs/api-schema-registry |
asr |
API Contracts & Schemas |
agent-docker |
rigs/agent-docker |
ad |
Container Runtimes & Execution Harness |
agentictools_plugins |
rigs/agentictools_plugins |
ap |
Shared Agent Plugins |
agentictools_skills |
rigs/agentictools_skills |
as |
Shared Agent Skills |
site_template_amcs |
rigs/amcs |
sta |
AMCS Site Template |
blu-cli |
rigs/blu-cli |
blu |
Local Operator CLI |
cedar_policies |
rigs/cedar_policies |
cp |
Cedar Authorization Policy |
compliance_engine |
rigs/compliance_engine |
ce |
Machine Compliance Engine |
duadp |
rigs/duadp |
du |
Decentralized User / Agent Directory |
gitlab_components |
rigs/gitlab_components |
gc |
Shared GitLab CI Components |
iac |
rigs/iac |
iac |
Infrastructure as Code |
openclaw |
rigs/openclaw |
op |
OpenClaw Gateway Runtime |
amcs-demo |
rigs/amcs-demo |
amd |
AMCS Demo Product |
bluefly-io |
rigs/bluefly-io |
bfi |
Bluefly Corporate Portal (Drupal) |
demo-agentdash |
rigs/demo-agentdash |
dad |
Agent Dashboard Demo |
demo-agent-marketplace |
rigs/demo-agent-marketplace |
dam |
Agent Marketplace Demo |
contextcontrol-ai |
rigs/contextcontrol-ai |
cca |
ContextControl Plane |
contractplane-ai |
rigs/contractplane-ai |
cpa |
ContractPlane Authorization Gate |
ai-agents-ossa |
rigs/ai-agents-ossa |
aao |
OSSA Agent Ecosystem |
marketplace-blueflyagents |
rigs/marketplace-blueflyagents |
mba |
Marketplace Public Glass |
Prefix Routing vs Dolt Endpoint:
routes.jsonlmaps issue prefix to workspace path for cross-rig command execution. Dolt endpoint inheritance is governed centrally via Gas City (127.0.0.1:3308on Oracle canonical). Do not conflate prefix routing with endpoint configuration.
Deployed Oracle topology (beads-topology.yaml)¶
The matrix above is the declared rig identity from city.toml + .beads/routes.jsonl
(22 rigs). The matrix below is the deployed Oracle topology from
deploy/oracle/beads-topology.yaml (14 rigs), which additionally records Oracle host paths
and dolt_database names. The two registries do not agree on rig count or on several
issue_prefix values; both views are recorded here rather than reconciled by edit.
Reconciling them is a change to blueflyio/blu/blucity, not to this catalog.
One shared Dolt server. City DB hq. Each rig inherits the city endpoint but uses its own dolt_database. 14 external rigs. City root (HQ) is not declared as a rig.
Source of truth: deploy/oracle/beads-topology.yaml in blueflyio/blu/blucity (release/v0.1.x).
| Rig | Oracle path | issue_prefix | dolt_database | beads_scope |
|---|---|---|---|---|
| (HQ) blucity | /opt/bluefly/blucity |
hq |
hq |
yes |
agent-docker |
/opt/bluefly/infra/agent-docker |
agd |
agent_docker |
unknown |
agentictools_plugins |
/opt/bluefly/rigs/agentictools_plugins |
atp |
agentictools_plugins |
unknown |
agentictools_skills |
/opt/bluefly/rigs/agentictools_skills |
ats |
agentictools_skills |
unknown |
amcs |
/opt/bluefly/rigs/amcs |
amc |
amcs |
unknown |
api-schema-registry |
/opt/bluefly/rigs/api-schema-registry |
asr |
api_schema_registry |
unknown |
blu-cli |
/opt/bluefly/rigs/blu-cli |
bx |
blu_cli |
unknown |
blucity-packs |
/opt/bluefly/rigs/blucity-packs |
bcp |
bp |
yes |
blucity-docs |
/opt/bluefly/rigs/blucity-docs |
btd |
blucity_docs |
yes |
cedar_policies |
/opt/bluefly/library/cedar-policies |
cdp |
cedar_policies |
unknown |
compliance_engine |
/opt/bluefly/rigs/compliance_engine |
cen |
compliance_engine |
unknown |
duadp |
/opt/bluefly/rigs/duadp |
dud |
duadp |
unknown |
gitlab_components |
/opt/bluefly/rigs/gitlab_components |
glc |
gitlab_components |
unknown |
iac |
/opt/bluefly/infra/iac |
iac |
iac |
unknown |
openclaw |
/opt/bluefly/rigs/openclaw |
ocl |
openclaw |
unknown |
Exception:
blucity-packscarriesdolt_database: bp— a proven live short name from Oracle 2026-08-28 inventory. Do not rename to manufacture consistency with the long-name pattern.Naming alias: The rig recorded historically on Oracle as
blutown-docsis the runtime clone of GitLabblueflyio/blu/blucity-docs. Canonical documentation and tooling standardize onblucity-docs.blu-cli prefix:
city.tomldeclaresprefix = "blu"for theblu-clirig;beads-topology.yamlrecordsissue_prefix: bx. The topology file is the endpoint/database authority. Prefix drift is a ledger event — do not rename existing beads.
Gas City resolves the open database from each scope .beads/metadata.json (dolt_database), falling back to a sanitized issue_prefix. It does not read beads-topology.yaml. Topology is Bluefly intent; pins must land through supported GC/Beads metadata primitives — not a custom sync script.
Deployed vs proposed Rigs¶
The 14-row matrix above is the deployed set (source: deploy/oracle/beads-topology.yaml, release/v0.1.x). It already includes duadp and cedar_policies as deployed — do not treat them as merely proposed.
Proposed (would pass the admission test above but not yet in the deployed matrix; verify before promoting):
| Rig | Mountain | Note |
|---|---|---|
ossa |
OSSA Ecosystem | Not yet declared in beads-topology.yaml |
bluguide-maine |
BluGuide | Not yet declared |
gluless |
GluLess (GitHub blueflyio/gluless) |
Product exists; ships as Pack + Formula gluless-prove, not a city Rig. Do not declare a Rig unless topology owners require one — prefer pack import. |
Do not promote a proposed Rig by editing this catalog alone. Declaration happens in blueflyio/blu/blucity (deploy/oracle/beads-topology.yaml + city.toml), then site-bind, then this catalog is updated to reflect the deployed state.
Rig Lifecycle & Admission¶
Proposed (would pass the admission test above but not yet in the deployed matrix; verify before promoting):
| Rig | Mountain | Note |
|---|---|---|
ossa |
OSSA Ecosystem | Not yet declared in beads-topology.yaml |
bluguide-maine |
BluGuide | Not yet declared |
gluless |
GluLess (GitHub blueflyio/gluless) |
Product exists; ships as Pack + Formula gluless-prove, not a city Rig. Do not declare a Rig unless topology owners require one — prefer pack import. |
Do not promote a proposed Rig by editing this catalog alone. Declaration happens in blueflyio/blu/blucity (deploy/oracle/beads-topology.yaml + city.toml), then site-bind, then this catalog is updated to reflect the deployed state.
Rules¶
- A GitLab project is not automatically a rig; declaration + site bind (or dynamic
gc rig add --git-url) are required. - Rigs do not run
bd dolt startor ownmanaged_city. - Do not hand-edit
.beads/dolt-server.port(compatibility mirror; see upstream managed-city endpoints runbook). - Site paths are bound by
gc-site-bind/.gc/site.toml, not committed workstation paths. work_dirinagent.tomlmust not hardcode machine-local absolute paths — use pack-root-relative or site-bound paths ($WORKSPACE_ROOT).- BluCity must not register itself as a rig.
- Endpoint inheritance ≠ database-name flattening.
- Missing logical databases are a provisioning/recovery concern (Beads/Gas City native), not an endpoint-bind failure.
- Default for established Bluefly ledgers: preserve history (
bd bootstrap --dry-run/ remote restore) — do not empty-bd inituntil provenance saysBRAND_NEW_LEDGER.