Files
bootstrap/oc-plugins/mosaic-framework/openclaw.plugin.json
Jason Woltje 24496cea01 feat: add mosaic-framework OpenClaw plugin + install-oc-plugins command
- oc-plugins/mosaic-framework/ — plugin that mechanically injects Mosaic
  framework rails into every OpenClaw agent session and ACP worker spawn
  - before_agent_start: appendSystemContext (static rules, cached) +
    prependContext (dynamic mission state per agent project root)
  - subagent_spawning: writes ~/.codex/instructions.md before Codex binary
    starts; no mission context (workers detect own CWD mission)
  - Optional gate: requireMission blocks ACP spawns with no active mission

Install: mosaic install-oc-plugins --project-root ~/src/<repo>
2026-03-09 19:32:01 -05:00

35 lines
1.4 KiB
JSON

{
"id": "mosaic-framework",
"name": "Mosaic Framework",
"description": "Mechanically injects Mosaic rails and mission context into all agent sessions and ACP worker spawns. Ensures no worker starts without the framework contract.",
"configSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"mosaicHome": {
"type": "string",
"description": "Path to the Mosaic config home (default: ~/.config/mosaic)"
},
"projectRoots": {
"type": "array",
"items": { "type": "string" },
"description": "List of project root paths to scan for active missions. Plugin checks each for .mosaic/orchestrator/mission.json."
},
"requireMission": {
"type": "boolean",
"description": "If true, ACP coding worker spawns are BLOCKED when no active Mosaic mission exists in any configured project root. Default: false."
},
"injectAgentIds": {
"type": "array",
"items": { "type": "string" },
"description": "Agent IDs that receive framework context via before_agent_start (appendSystemContext). Default: all agents."
},
"acpAgentIds": {
"type": "array",
"items": { "type": "string" },
"description": "ACP agent IDs that trigger runtime contract injection (subagent_spawning). Default: ['codex', 'claude']."
}
}
}
}