Viska Client War-Room Platform

MVP Design — ship-fast cut, full isolation deferred to Phase 2
atlas · wr-infra S36 · 2026-05-29 · status: approved-for-planning · spec: docs/superpowers/specs/2026-05-29-viska-client-warroom-platform-design.md

The One Law

A client war room never writes to Aion. Shared cross-agent client knowledge goes to the Viska-Wiki Obsidian vault via the viska-vault MCP. This is the single defining difference the MVP delivers — everything else is reused from Pantheon or deferred. The only shared surface between client and Pantheon is the user and the physical machine.

Memory Mapping

PantheonClient (Viska)
repo-local chronicle / STATErepo-local chronicle / STATE (per client-agent repo)
Aion — shared knowledge graphViska-Wiki — shared knowledge (Obsidian, hybrid notes + [[links]])
mnemosyne capture / aion_capturewrite via viska-vault MCP (by convention in MVP)

Two-Layer Decomposition

Platform Substrate this spec

1 Identity single viska-pm-app[bot] 2 Memory Viska-Wiki + viska-vault MCP 3 Launcher distinct presets, room_name 4 Worktree v2 ~/Dev/_viska/.worktrees/ 5 Governance inherit Pantheon (light) 6 Cred Plane DEFERRED → Phase 2 7 Client Skills DEFERRED → Phase 2

Instances later, thin specs

Room: Active-Trading Room: Nous-Mimir-n8n Room: TBD each = preset + roster + MCP set built ON the substrate

Components

#ComponentMVP decisionState
1Identitysingle viska-pm-app[bot], vpmgh token, uniform worktree identitysettled
2Memoryviska-vault MCP → Viska-Wiki; hybrid (session + linked entity notes); all agents writesettled
3Launcherdistinct presets, unique room_name → collision-safe; no slug machinerysettled
4Worktree v2~/Dev/_viska/.worktrees via preset worktree_base; path convention onlysettled
5Governanceinherit Pantheon/global; new agents have no Moirai dir → naturally gate-freesettled
6Cred Planeclient-hades + client-moirai (own vault + delivery)Phase 2
7Client Skillsclient-start / end / capture / vault suitePhase 2

Roster Model corrected

Client rooms contain only new client agents — never Pantheon constellations. Viska-PM orchestrates 2–3 distinct rooms concurrently (different branches), no agent overlap except viska-pm. "spoke" = n8n agent. Pantheon constellations do client backend work only in their own Pantheon sessions.

RoomBasisRoster
Active-Tradingreplaces Viska-AI-Active (plutus→viska-pm)viska-pm + trading agents
Nous-Mimir-n8nbased off viska-backendviska-pm + nous-hermes (NEW) + n8n-spoke-viska + mimir mastra
TBD

Build Order — this session

  1. A · Memory wiring lands direct
    Add viska-vault MCP to viska-pm + client-agent configs. Document Viska-Wiki hybrid structure + write convention in viska-pm CLAUDE.md.
  2. B · Presets + launcher rule #25 → PR + heph review
    2 room presets (unique room_name + worktree_base). cc-warroom reads worktree_base from preset (small, safe diff). Validate presets by JSON-parse only — never launch cc-warroom to test (S35 incident).

Deferred — Phase 2: Full Client Isolation

filed, not built   client-hades (own vault + delivery) · client-moirai (safety-only gate) · dedicated client-skills suite · client-confidentiality rule · atlas-190 spec rewrite (drop constellation-in-room assumptions) · OPS §0a "spoke" → narrow to n8n.
Brainstormed via superpowers:brainstorming · committed 2aa7137 (pantheon-atlas-app[bot]) on wr/atlas/devlog-2026-05-26 · next: writing-plans