<div align="center"
Loki Mode
The spec-driven autonomous builder with verified completion.
The free, source-available autonomous coding agent by Autonomi. Same Loki CLI, SDK, and MCP for everyone; the commercial editions for teams and enterprises are sold under the Autonomi brand (Autonomi Cloud, Autonomi Enterprise).
Hand it a spec. It does not accept "done" on an empty diff or failing tests.
Website | Documentation | Installation | Changelog | Purple Lab -- deprecated v7.44.0
Current release: v8.0.0
</div
---
How it works: Drop a spec -- a PRD, GitHub issue, OpenAPI/JSON/YAML, or one-line brief. Loki Mode classifies complexity (run.sh:detectcomplexity()), assembles an agent team from 41 specialized agent roles across 8 domains - prompt-defined specifications the orchestrator adopts per phase, with parallel review (blind council) and optional worktree streams on Claude Code, sequential on other providers - and runs autonomous RARV cycles (Reason - Act - Reflect - Verify, see run.sh:runautonomous()) with 8 quality gates (see skills/quality-gates.md). Code is not "done" until it passes automated verification. Output is a Git repo with source, tests, configs, and audit logs.
---
The Evidence Receipt: don't trust the agent, check it
Every coding agent tells you it finished. Loki hands you something you can check yourself.
Each run writes a receipt to .loki/proofs/<runid/ that separates deterministic FACTS (the git diff with base and head SHAs plus a diffsha256, the test command and its exit code, the build command and its exit code, each gate verdict) from AI ASSESSMENTS (the council verdict, labeled as judgment, never as proof). The headline is computed from the facts alone:
| Headline | Means | |---|---| | VERIFIED | tests ran a real command and exited 0, diff non-empty, nothing skipped | | VERIFIED WITH GAPS | each gap listed by name | | NOT VERIFIED | a check ran and failed |
loki proof list # every receipt from this project
loki proof show <id> # the facts, the assessments, and the headline
loki proof verify <id> # re-hash the receipt and re-derive the diffloki proof verify exits 0 clean, 1 on tamper or drift. Receipts are attached to pull requests automatically (LOKIPROVENPR=0 to opt out), so a reviewer sees the evidence next to the code.
What the receipt does NOT claim. On the unsigned path the generator is trusted: someone who rewrites both the facts and the headline into a mutually consistent lie and recomputes the hash will still pass verification. That is defense-in-depth, not non-forgeability, and neutral non-forgeability needs the signed record. We tested for exactly this and locked the limitation into the suite (tests/test-proof-forgery-defense.sh), and in v7.111.0 we removed our own earlier "non-forgeable" claim once we found it was false on that path. An honest boundary you can verify beats a marketing claim you cannot.