SWARM Research OS

June 3, 2026 · View on GitHub

Continuous integration for multi-agent science. This repo is the artifact store and knowledge vault for the SWARM multi-agent simulation framework.

Vault statistics

CategoryCount
Claims12 (8 high, 2 medium, 2 low confidence)
Experiment notes110
Runs indexed110
Failure patterns8 (2 critical, 4 high, 2 medium)
Governance mechanisms6
Statistical methods7
Sweep summaries7
Network topologies5
Total vault notes155

Architecture

┌─────────────────────────────────────────────────────────┐
│                    GitHub Actions CI                      │
│  ci.yml │ synthesize.yml │ nightly.yml │ vault-health.yml │
└────┬────────────┬──────────────┬──────────────┬──────────┘
     │            │              │              │
     ▼            ▼              ▼              ▼
┌─────────┐ ┌──────────┐ ┌───────────┐ ┌────────────┐
│ Validate │ │Synthesize│ │ Regression│ │ Health     │
│ schemas  │ │ notes    │ │ canaries  │ │ audit      │
└─────────┘ └────┬─────┘ └───────────┘ └────────────┘


┌─────────────────────────────────────────────────────────┐
│                   Knowledge Vault                        │
│                                                          │
│  claims/     12 findings with evidence chains            │
│  experiments/ 110 auto-synthesized experiment notes      │
│  governance/  6 mechanism profiles                       │
│  failures/    8 attack patterns from red-team            │
│  methods/     7 statistical method references            │
│  sweeps/      7 cross-run parameter aggregations         │
│  topologies/  5 network structure notes                  │
│  _index.md    Master index (MOC)                         │
│                                                          │
└──────────────────────┬──────────────────────────────────┘


┌─────────────────────────────────────────────────────────┐
│                    Inngest Pipeline                       │
│  swarm/run.completed → validate → synthesize → index     │
│  swarm/sweep.completed → analyze → claim-match → notify  │
│  swarm/redteam.completed → grade → failure-extract       │
└─────────────────────────────────────────────────────────┘

Quickstart

# Install dependencies
pip install -r requirements.txt

# Validate everything
python scripts/validate-run.py --all
python scripts/validate-vault.py --all
python scripts/vault-health.py

# Search the vault
python scripts/vault-search.py "transaction tax"
python scripts/vault-search.py --type claim --confidence high

# View statistics
python scripts/vault-stats.py

# Synthesize new experiment notes
python scripts/generate-note.py --all

# Audit claim evidence
python scripts/claim-lifecycle.py

# Generate changelog
python scripts/vault-digest.py HEAD~5..HEAD

Key findings

The vault contains 12 active claims. Highlights:

ClaimConfidenceKey result
Circuit breakers dominateHighCB-only: +81% welfare, -11% toxicity vs baseline (d=1.64)
Tax-welfare tradeoffHighTax >5% significantly reduces welfare (d=1.18)
Tax phase transitionHighNon-linear welfare decline with S-curve at 5-10%
Smarter agents earn lessHighDepth-5 RLM agents earn 2.3-2.8x less than honest agents
Collusion wealth destructionHigh137x wealth gap under behavioral monitoring (d=3.51)
Sybil attacks universalCritical100% success rate across all governance configurations

Scripts

Validation

ScriptPurpose
validate-run.py --allValidate run.yaml schemas
validate-vault.py --allValidate vault note conventions
vault-health.pyComprehensive audit (evidence, wiki-links, index)

Synthesis

ScriptPurpose
generate-note.py --allSynthesize experiment notes from runs
generate-sweep-notes.pyGenerate cross-run sweep summaries
backfill-run-yaml.pyGenerate run.yaml for existing run dirs

Enrichment

ScriptPurpose
enrich-tags.pyMine semantic tags from run content
obsidian-metadata.pyAdd Obsidian graph metadata to vault notes

Analysis

ScriptPurpose
claim-lifecycle.pyAudit claim evidence and recommend status changes
cross-correlate.pyDetect parameter interactions across sweeps
diff-runs.py <a> <b>Compare two runs side-by-side
claim-graph.pyGenerate claim dependency graph (Mermaid/DOT)
run-provenance.pyDetect run lineage chains

Search & Reporting

ScriptPurpose
vault-search.py "query"Search vault by keyword, tag, or type
vault-stats.pyVault statistics summary
vault-digest.py HEAD~5..HEADGit-based vault changelog

Indexing & Events

ScriptPurpose
index-runs.pyRebuild run-index.yaml
emit-event.py <run_id>Emit Inngest event for a run

GitHub Actions workflows

WorkflowTriggerPurpose
ci.ymlPR + push to mainTypecheck, validate runs + vault, check index
synthesize.ymlPush to main (runs/)Auto-synthesize experiment notes, open PR
nightly-regression.ymlCron 4 AM UTCRun canary scenarios, detect drift
vault-health.ymlWeekly Mon 6 AMAudit claims, evidence, wiki-links
post-merge-benchmark.ymlPush to main (scenarios/)Benchmark new scenarios
release.ymlPush to main (vault/)Milestone-based releases with auto notes

Obsidian integration

The vault/ directory is designed to be opened as an Obsidian vault:

  1. Open vault/ as the Obsidian vault root
  2. Install the Dataview plugin
  3. Enable the swarm-graph CSS snippet in Settings > Appearance
  4. Open Graph View — nodes are color-coded by type:
    • Red: Claims (darker = higher confidence)
    • Blue: Experiments (by type)
    • Green: Sweep summaries
    • Orange: Governance mechanisms
    • Purple: Topologies
    • Yellow/Red border: Failure patterns
    • Gray: Methods

7 interactive dashboards are available from the index:

  • Claims, Experiments, Sweeps, Failures, Governance, Evidence Trail, Stats

Conventions

This vault follows arscontexta knowledge management conventions:

  1. Prose-as-title: Every H1 is a complete proposition
  2. Description ≤200 chars: No trailing period
  3. Topics footer: Every note ends with <!-- topics: tag1, tag2 -->
  4. Evidence provenance: Every evidence entry references a real run_id
  5. Effect sizes with correction: Never raw p-values without Bonferroni/Holm/BH

Reproducing runs

Runs can be regenerated from the main repo:

python -m swarm run scenarios/baseline.yaml --seed 42 --epochs 10 --steps 10

Setup

See docs/setup.md for detailed setup instructions including GitHub Actions secrets, Inngest deployment, and pre-commit hooks.