Skip to content

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>
- Eliminates the requirement to maintain 136+ permanent clones across developer workstations or host environments. - Rigs are provisioned dynamically when work is slung to them, and ephemeral execution worktrees under <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):

  1. Real git source boundary — yes
  2. Independent engineering work — yes
  3. Durable Beads scope needed — yes
  4. Agents need to work in it directly — yes
  5. 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.jsonl maps issue prefix to workspace path for cross-rig command execution. Dolt endpoint inheritance is governed centrally via Gas City (127.0.0.1:3308 on 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-packs carries dolt_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-docs is the runtime clone of GitLab blueflyio/blu/blucity-docs. Canonical documentation and tooling standardize on blucity-docs.

blu-cli prefix: city.toml declares prefix = "blu" for the blu-cli rig; beads-topology.yaml records issue_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 start or own managed_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_dir in agent.toml must 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 init until provenance says BRAND_NEW_LEDGER.