Complete plugin at plugins/spire/ replacing g4b_ai: - Igor (session coordinator skill + agent) - Adept (domain knowledge agent) - Athanor (dispatching orchestrator, "the oven") - Tome (generic knowledge layer, opt-in) - Ported from g4b_ai: workpad, research-tree, research, implementation, svg skills + researcher/search/scout agents All warpspace-specific content stripped. Tome genericized. Project-specific config via shadowed project.md reference.
7.4 KiB
Spire MVP — Replace g4b_ai + Add Igor
Goal: A working plugins/spire/ that can be installed in place of g4b_ai, with the assistant (Igor), adepts, and athanor on top.
Success: Install spire in warpspace, remove g4b_ai, run /igor and get a working session with delegation, adepts, and workpad.
What blocks what
- Igor skill loads
g4b_ai:workpad→ must becomespire:workpad - Igor skill references
references/project.md→ needs a generic template + warpspace-specific version stays in warpspace - Athanor is just the dispatching-orchestrator agent renamed
Tome is opt-in, not a hard dependency. Igor and adepts currently load warpspace-tome:navigate in their agent definitions, but tome requires project-level setup (tome:init) before it works. The plugin should port the generic tome skills so they're available, but Igor and adepts must not require them. If a project has set up tome, the project's project.md or project-local agent overrides can add the tome skill. The plugin-level agent definitions should NOT hardcode a tome skill dependency.
Phase 1: Scaffold + Port g4b_ai (no new functionality)
Create plugins/spire/ with all g4b_ai content migrated:
-
Plugin shell
plugins/spire/.claude-plugin/plugin.json(copy from g4b_ai, update name/description)plugins/spire/.codex-plugin/plugin.json(same)plugins/spire/CLAUDE.md(new — describes Spire, not g4b_ai)plugins/spire/README.md
-
Skills ported from g4b_ai (copy + rename where noted)
skills/workpad/←g4b_ai/skills/workpad/(as-is)skills/research-tree/←g4b_ai/skills/research-tree/(as-is)skills/research/←g4b_ai/skills/research/(as-is)skills/implementation/←g4b_ai/skills/implementation-orchestration/(rename)skills/svg/←g4b_ai/skills/markdown-embedded-svg/(rename + update description to reflect actual scope: diagram placement, not inline embedding)
-
Agents ported from g4b_ai (copy as-is)
agents/researcher.mdagents/search.mdagents/scout.md
Verify: Plugin structure is valid. All g4b_ai skills present under new names.
Phase 2: Port Tome
Port the generic tome skill family from warpspace. The project-specific overlay (warpspace-tome) stays in warpspace.
- Tome skills (copy from warpspace
.claude/skills/tome/)skills/tome/— the parent skill with sub-skills (navigate, curate, check, handoff, init)- Only port the generic tome — no warpspace-specific content
- Update any internal references from
tome:tospire:namespace where needed - The
warpspace-tome:navigateoverride stays in warpspace's.claude/skills/warpspace-tome/ - Tome is opt-in: it's available in the plugin but does nothing until a project runs
spire:initto set it up
Verify: Tome skills exist in plugin. They do NOT auto-activate — require project setup.
Phase 3: Port Igor + Adept + Athanor
Extract the assistant system from warpspace into Spire.
-
Igor skill (from warpspace
.claude/skills/assistant/)skills/igor/SKILL.md← adapt fromassistant/SKILL.md- Change skill name from
assistanttoigor - Change
@references/project.mdpath - Change
g4b_ai:workpad→spire:workpad - Change
warpspace-tome:navigate→ project-overlay tome reference (the project.md says which tome mutation to use) - Remove warpspace-specific hardcoding
- Change skill name from
skills/igor/references/project-template.md← genericized version of currentproject.md(comments showing what to fill in)skills/igor/references/journal-template.md← copy as-isskills/igor/references/model-tiers.md← copy as-is
-
Igor agent
agents/igor.md← adapt from warpspaceassistant.md- Change skill references:
assistant→igor,g4b_ai:workpad→spire:workpad - Remove
warpspace-tome:navigatefrom the agent'sskills:list — tome is opt-in, not a plugin-level dependency. Projects that use tome add it via their project-local agent overrides or project.md.
- Change skill references:
-
Adept agent
agents/adept.md← adapt from warpspaceadept.md- Change
g4b_ai:workpad→spire:workpad - Remove
warpspace-tome:navigatefrom the agent'sskills:list — same reason as Igor. The adept skill text can mention "use tome:navigate if available" without hardcoding it.
- Change
-
Athanor agent
agents/athanor.md← adapt from warpspacedispatching-orchestrator.md- Rename to athanor, update description
- Add "oven" as colloquial shorthand in description
Verify: spire:igor skill loads. Igor agent definition is valid. Adept and athanor agents reference correct skill namespaces.
Phase 4: Wire Warpspace to Spire
Update warpspace to use Spire instead of g4b_ai + local assistant.
-
Update warpspace
.claude/settings.json- Replace
g4b_ai@reliquarywithspire@reliquaryinenabledPlugins
- Replace
-
Create warpspace project.md for Igor
.claude/skills/igor/references/project.md← current content of.claude/skills/assistant/references/project.md, updated to referencespire:namespaces
-
Retire local assistant skill
- Remove
.claude/skills/assistant/(replaced byspire:igor) - Remove
.claude/agents/assistant.md(replaced byspire:igor) - Remove
.claude/agents/adept.md(replaced byspire:adept) - Remove
.claude/agents/dispatching-orchestrator.md(replaced byspire:athanor) - Keep
.claude/skills/warpspace-tome/(project overlay, still needed)
- Remove
-
Update tome overlay
.claude/skills/warpspace-tome/— update any references fromtome:tospire:if the namespace changed
Verify: /igor in warpspace starts a session. Adepts can be spawned. Workpad resolves. Tome navigates.
Phase 5: Deprecate g4b_ai
-
Mark g4b_ai deprecated
- Update
plugins/g4b_ai/CLAUDE.mdandREADME.mdto say "Deprecated. Usespire." - Keep the directory for now (existing installations reference it)
- Update
-
Commit and push reliquary
What's NOT in the MVP
- Pinky agent+skill (designed, not built — separate goal)
- Zathras agent+skill (designed, not built — separate goal)
- Bootstrap automation (Zathras's job — manual for now)
- Pitch/narrative improvements from the Fable review (spec refinement, not code)
- Additional stale doc fixes in warpspace docs/topics/ (M2 follow-up)
Risks
- Namespace change:
g4b_ai:workpad→spire:workpadmeans any other project using g4b_ai breaks. Currently only warpspace uses it, so the blast radius is zero. - Tome portability: The generic tome may have warpspace assumptions baked in. Audit during Phase 2 — strip anything project-specific.
- Tome opt-in: Igor/adepts must work without tome. If tome isn't set up in the project, they orient via direct file reads and Explore agents instead.
- Plugin resolution: When both
g4b_aiandspireare installed, skill name collisions onworkpad,research-treeetc. Need to remove g4b_ai before installing spire, or do it in one settings.json edit.
Execution
Phases 1-3 are in the reliquary (building the plugin). Phase 4 is in warpspace (wiring it up). Phase 5 is back in reliquary (cleanup).
Phases 1-3 can be dispatched to an athanor (orchestrator) working in the reliquary. Phase 4 is a small manual task. Phase 5 is trivial.
cargo check — N/A (no Rust code). Verification is: install the plugin, run /igor, confirm session starts.