Architecture

Simple components, strong lineage.

SwarmMind is intentionally modular. You can swap models, change evaluators, and add plugins without rewriting the system.

System map

Conceptual flow from spec → run → archive → codex.

YAML Spec
  ├─ Agents (roles + prompts + tools)
  ├─ Mutators (prompt/tool/lineup)
  ├─ Evaluators (fitness functions)
  └─ Plugins (pre_run / post_mutation / logging)

Runner
  ├─ Self-nomination (optional)
  ├─ Execute swarm
  ├─ Score outputs
  └─ Select survivors

Archive (.jsonl)
  ├─ per-agent outputs
  ├─ experiment metadata
  └─ reflections

Codex (curated)
  ├─ oaths / principles
  ├─ best prompts
  └─ archetype registry
See YAML example

Core building blocks

Agents: personas with contracts and tooling.

Mutations: controlled variation of prompts & pipelines.

Selection: pick winners, keep lineage.

Plugins: hooks for persistence and transforms.

The goal is not maximal automation — it’s fast, measurable iteration.

What “fitness” can be

Fitness is a contract you define: rubric scoring, pairwise comparisons, unit tests, retrieval accuracy, cost/latency constraints, or domain outcomes (e.g., “did this explanation match the scoreboard?”).

LLM-as-judge
heuristics
tests
outcome constraints

Traceability

Each run produces artifacts you can inspect: prompts, tool calls, outputs, scores, and reflections. This makes the system debuggable — and makes “progress” auditable instead of mystical.

Debugging is a first-class feature.