public system overview
JARVIS
This public page explains the production system. The authenticated dashboard contains production actions for content and paper trading. Finance stays private and appears only after source verification. Each run returns ordered, redacted evidence or a visible failure.
SYS.OVERVIEW // 01
What it is
This page gives public information about Jarvis. The production dashboard uses GitHub sign-in and an explicit roster. It exposes content and paper trading. Finance appears only for the owner after private source validation. Shopping and live trading stay outside the production dashboard. Historical evidence remains available through the named repository link.
LIVE ACTIONS
Allowed owners and testers can start content and paper-trading runs from the production dashboard.
PROOF
Each run shows ordered state changes and redacted evidence from the production services.
PRIVATE FINANCE
Finance is owner-only. It stays absent until every private statement source passes exact validation.
HARD BOUNDARIES
Live trading, Shopping, checkout, and payment are not public actions. A failed step stops the run.
SYS.SWARM // 04
Meet the Swarm
SDLC v2 agents (Nanami, Aizen, Karen) run resumable sessions per task. Persistent watchers sit on an in-process event bus; Immune runs as an external service. Ephemeral executors spawn per task and exit when the work is done.
JARVIS
PERSISTENTInterface
Dry-wit companion in Discord. Remembers you via Mem0, classifies chat vs execute, narrates results. Chat path uses DeepSeek when DEEPSEEK_ENABLED is on.
DeepSeek when enabledNANAMI
PERSISTENTSupervisor
PM for SDLC v2. Squeezes intent with you (G0), signs off gates, opens and merges the PR after Karen. Resumable session per task, not a one-shot.
routed reasoningAIZEN
EPHEMERALTask Executor
One instance per task in a git worktree. Brainstorm → plan → build inside one resumable session. Pushes only to agent/* branches. Never merges.
executorKAREN
PERSISTENTCritic
Adversarial QA in a sandbox. Critique rounds until the diff is clean, then Nanami merges. Escalates when rounds stay unresolved.
reasoningIMMUNE
EXTERNALSelf-repair
External self-repair loop. Classifies failures, applies small repairs, test-gates patches before promote. Escalates what it cannot fix.
external serviceCORTEX
PERSISTENTBrain
Handles direct execute requests with MCP tools. Plans ordered steps across domain agents and returns results for Jarvis to narrate.
reasoning + MCPSURGEON
EPHEMERALLast Resort
Tier-3 repair. When Immune's registry of fixes cannot heal a failing component, Surgeon is called for heavier intervention.
deep reasoningSYS.TOPOLOGY // 05
Under the Hood
Agents talk over an in-process event bus with typed events and JSONL persistence. Nanami drives Aizen; Karen critiques; Nanami merges. Immune watches from outside the main loop and escalates what it cannot repair.
Nanami, Aizen, and Karen resume sessions across rounds. Per-task MEMORY.md and FILES_TOUCHED.md still ride in the prompt so a fresh session can recover when resume fails.
SYS.SECURITY // 08
Safety from Constraints
The design rule is simple: safety comes from constraints, not trust. Every layer assumes the model will eventually produce something hostile or broken, and boxes it in, whether it's writing code or spending your money.
✕Agent acts in the real world without asking
✓Strict production actions use one fixed feature scope. Content publication can require an owner decision and a redacted proof record. A broad owner command uses a separate command path.
✕Agent modifies your tests
✓Read-only enforcement. Tests are copied into the workspace and all model output is filtered against readonly patterns.
✕Path traversal in model output
✓extract_files() rejects .. segments, absolute paths, backslashes, and colons.
✕Command injection via test_command
✓Prefix allowlist: npm, npx, python, pytest. Nothing else executes.
✕Agent merges its own code to main
✓Aizen only pushes agent/* branches. In SDLC v2, Nanami opens and merges the PR after Karen. Aizen never pushes to main.
✕Runaway API cost
✓Per-task ($5) and per-day ($15) budgets, 15-iteration cap, STUCK on failure. No silent model shopping. Failsafe dead-man's switch watches spend and stalled tasks.
✕Hostile code during test runs
✓Tests run as a host subprocess under the test_command prefix allowlist and a timeout. No Docker sandbox in the default path.