Liquid Org — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Liquid Org (Plugin) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
Score rose 85 points between these scans.
The primary manifest — the file an agent reads to learn what this artifact does.
A self-evolving multi-agent framework. The system composes agent orgs that produce patches, grades them against a real test suite, gates them through a circuit-breaker, and merges them — without a human in the inner loop. It runs three task streams in parallel (self-modification, toy refactor calibration, real-OSS bug-fix) so the matcher never overfits to any one of them.
The MVP is `liquid-org` evolving itself while evolving itself: the self-mod loop produces patches to this codebase, graded by this repo's own test suite. The real-repo arm dispatches against external Python OSS projects with pinned commit SHAs and pinned failing tests; the system's bug-fix proposer drafts diffs, the M3.2 grader runs them in an isolated git worktree, and the M5.2 drift detector watches for matcher-overfitting across runs.
New here? Start with ONBOARDING.md (module map + terminology + "how to add a new X" recipes). For per-version diffs see CHANGELOG.md.
| Layer | State |
|---|---|
| Talents (personas) | 14 seeds (7 refactor + 7 analysis); inventor proposes new ones from failure clusters |
| Orgs (topologies) | 5 seed shapes (LINEAR / HUB / DEBATE / PARALLEL_FAN_IN / ADVERSARIAL_TRIANGLE) + DAG compiler for ad-hoc shapes |
| Composer (v1.2) | CompanyTemplate-based extractor + LLM-as-template-picker over 7 hand-coded company templates |
| Mutator (v1.1) | 5 random-mutation operators on the composer's output |
| Reflector (v1.1-m3) | Post-trace topology-edit suggestions (add_edge / remove_edge / swap_edge_pattern) |
| Inventor (v1.1-m4) | Failure-cluster-driven new TalentSeed proposals |
| Persistence layer (v1.3) | Candidate buffer + lifecycle states + snapshot/rollback + judge-gated promoter |
| Eval | Multi-axis grader (ruff + pytest + AST + coverage); bug-fix grader for real-repo; LLM-as-judge (4 prompt versions, v4 default + v1–v3 replayable) |
| Real-repo arm | Pinned-SHA bootstrap + isolated git worktree grading + per-spec circuit breaker (v0.9 M6.2) |
| Continuous loop | AND-quorum gated (self_evolve_loop.py) — refuses self-mod if any external class's recency exceeds its budget |
| Security | clone_url allowlist + subprocess env scrub + proposer prompt sanitization (v0.9.1) |
| CLIs | liquid-org-rollback, liquid-org-lifecycle, liquid-org-promote (v1.3 buffer/promote/lifecycle CLIs) |
Test suite: 843 passing as of v1.4-m9.1 (52 test files, ~18.3K LOC of tests).
# Setup
uv sync # install deps
cp .env.example .env # add ANTHROPIC_API_KEY or ANTHROPIC_AUTH_TOKEN
# Tests + lint (fully hermetic; no creds needed)
uv run pytest -q
uv run ruff check
# Real-Claude flows (require credentials in .env):
# 1. Calibrated dogfood (multi-trial harness on the canonical toy tasks)
uv run python scripts/tools/dogfood_calibrated.py 3
# 2. Real-repo bug-fix dogfood (M5 + M6 breaker + M6.2 per-spec)
uv run python scripts/real_repo_dogfood.py --list-tasks
# 3. Continuous self-evolution loop (AND-quorum gated)
uv run python scripts/self_evolve_loop.py --dry-run # preview
uv run python scripts/self_evolve_loop.py # for real
# 4. v1.2 composer + extractor demos
uv run python scripts/v1_2_picker_demo.py
uv run python scripts/v1_2_ablation_demo.py
# 5. v1.3 persistence layer CLIs
liquid-org-lifecycle --help # archive stale candidates, etc.
liquid-org-promote --help # gate candidate → live via judge
liquid-org-rollback --help # snapshot + restore primitiveANTHROPIC_API_KEY (sk-ant-api...) or ANTHROPIC_AUTH_TOKEN (sk-ant-oat..., Claude Code OAuth token from macOS Keychain) in .env or the environment is required for any real-Claude flow. The test suite injects fake LLMCallers; pytest -q is fully hermetic (no network).
For the full module map see ONBOARDING.md §1. Short version:
liquid_org/ importable package (~21K LOC)
talents/ talent personas + inventor (v1.1-m4)
orgs/ org graph schema + seed topologies + CompanyTemplate (24 real-world orgs)
composition/ picker + matcher + extractor + mutator + reflector + signature
runtime/ LangGraph compilers (LINEAR + HUB + DAG) + patch_apply
eval/ grader + bug_fix_grader + judge (4 prompt versions)
feedback/ recorder + promoter + candidate_buffer + significance + ablation + judge_runner
state/ lifecycle FSM + snapshot/rollback primitives (v1.3-m2 + m3)
store/ SQLite WAL engine + alembic + per-graph artifacts + FTS5
real_repo/ v0.9 real-OSS infra: spec / bootstrap / registry / dogfood
tasks/v1/ v1.0 auto-task-generator: sources + quality_classifier
cli/ v1.3 CLIs: rollback / lifecycle / promote
orchestrator.py end-to-end compose_and_run
dogfood.py toy-task per-trial logic
orchestration/self_mod.py self-modification loop (worktree → gate stack → merge)
security.py clone_url allowlist + env scrub + prompt sanitization
runtime/safety.py v0.9.2 timeout + budget cap (combined from watchdog.py + budget.py)
config/feature_flags.py env-var gates
scripts/ ~14 entry points after v1.4-m1 cleanup
references/data/ company-template catalog (loaded at import)
contracts/ 4 component contracts (schema, invariants)
tests/ 843-test pytest suite
liquid_artifacts/ gitignored; per-graph execution tracesperformance history.
prior org graphs by 4-axis similarity (decision_depth, output_modality, embedding, tool_requirements) + outcome z-score; Pareto-frontier + Thompson sampling select non-dominated + exploratory candidates. v1.2 added the CompanyTemplate-based extractor + LLM picker as an alternative composition path.
into a LangGraph executable; runs it; captures the proposer's diff. v1.2 added a generic DAG compiler for ad-hoc shapes.
of changed lines; bug-fix grader additionally runs the spec's bug_repro_tests + regression subset in an isolated git worktree.
task-class prior pool (with cold-start cross-class fallback), updates Thompson posteriors, writes per-trial JSONL artifacts. v1.3 added the candidate buffer + judge-gated promoter for the reflector/inventor outputs.
archived) + snapshot/rollback primitives. Runs before every promotion pass; rollback recoverable.
The system MUST run at least three distinct task streams concurrently — self-mod, toy refactor (dogfood_calibrated.py), and real-OSS bug-fix (real_repo_dogfood.py). The AND-quorum guard in self_evolve_loop.py refuses to run self-mod if any external class's recency exceeds its per-class budget (code_refactor=24h, real_repo_bug_fix=72h — different because real-repo trials take 10-30 min each). The per-class --allow-stale-class CLASS override scopes the silencer per class so one broken stream doesn't disable the invariant for all.
| Milestone | Status | One-liner |
|---|---|---|
| v1.4 cleanup | in progress | Repo hygiene — gitignore + archive + docs + renames + 4 big refactors |
| v1.3-m6.2 | deferred (post-v1.4) | Wire reflector + inventor into orchestrator so candidate buffer fills with real data |
| v1.3-m6.3 | deferred (post-v1.4) | Human-review promotion gate (user is the held-out signal until a frozen task suite exists) |
See CHANGELOG.md for the per-version history.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.