Transparency
Agent activity streams to your dashboard while it happens: tool calls, file reads, commands. Every stage records its evidence on the work item, so you can see what ran and what it found.
Autonomous Engine turns a written request ("fix the basemap error", "add an export button") into a reviewed pull request. It researches your code through a knowledge index called the codex, plans the work, implements it, and has an independent verifier check every acceptance criterion. No pull request exists until verification approves. It runs on your infrastructure, with a local or hosted LLM, and it is free and open source under Apache-2.0.
Apache-2.0 · self-hosted with Docker Compose · Ollama or hosted LLMs · verification before every PR · multi-repo products
AI coding tools tend to overpromise. AE is explicit about what it can and can't do. The rules live in PRINCIPLES.md in the repository, and the gates that apply them are in the code, where you can read them.
Agent activity streams to your dashboard while it happens: tool calls, file reads, commands. Every stage records its evidence on the work item, so you can see what ran and what it found.
When the system cannot do something, it stops and says so. A repository with no executable checks blocks by default. "I can't do this" is always a valid answer.
No synthetic research, no claimed commits that never happened, no "tests pass" without a test run. Only fully verified work passes the automated gate.
┌─ intake ──────────▶ dashboard chat · request portal · Jira · webhook │ ├─ prd ──────────▶ product agent writes the requirements · human approval gate │ ├─ research ──────────▶ parallel tasks read the code through the codex + vector index │ ├─ planning ──────────▶ tasks with acceptance criteria and the checks that prove them │ ├─ implementation ──────────▶ pinned worktree · per-edit syntax check · pre-commit test gate │ ├─ verification ──────────▶ independent verifier in a scratch clone · no PR until it approves │ ├─ pr gate ──────────▶ PR opened, or held for a person to release │ ├─ review ──────────▶ code review of the pull request │ └─ qa ──────────▶ checks the change against its acceptance criteria
Every stage is a separate service on a Kafka bus, and every handoff is explicit. If an agent can't do its job, the work item stops and says why. It doesn't invent a result to keep moving.
When you onboard a repository, the knowledge indexer builds the codex: a structured description of the codebase stored in PostgreSQL, alongside a vector index in Qdrant. Agents query it through tools instead of guessing what your repository "probably" looks like.
When a lookup comes back empty, the engine logs it and counts it in its metrics, so a run without grounding shows up instead of passing quietly.
System shape, languages and frameworks, data stores, integrations, deployment model.
Purpose, public interface, dependencies and dependents of each module.
How things are done in this codebase, with reference implementations to copy from.
What to avoid in this codebase, and why.
How tests are structured, what gets mocked, how the suite runs.
Naming, error messages, logging, configuration: what the linter does not enforce.
Branch names, commit format, PR conventions, release process.
Business vocabulary, rules enforced in code, constraints.
Every codex change is a numbered version per product and branch, and each work item records the version and modules it was planned against.
When the modules an item was planned against change while it is in planning or implementation, it is planned again against the new codex. An automatic re-plan never discards verified work and leaves items in verification, review or QA, or with an open PR, alone.
Per-repository zones say where agents may work alone, where a person must approve, and where work stops. A frozen zone stops new work outright.
No planning or implementation on an empty codex. The item stops with Re-index, Retry or Cancel instead of guessing.
Research, planning and implementation agents get codex tools: look up a module and its dependents, fetch the patterns for an area, search for similar code, and use language-server lookups such as go-to-definition and find-references. The codex is linked to commits on the branches you watch.
A product in AE is a set of repositories. During onboarding you record how they relate (one consumes another's API, imports a shared library, must deploy first, or reads data another writes), and when the work is done the engine opens one pull request per repository.
// illustrative example product: "Payments platform" │ ├─ repo payments-api Go · REST API ├─ repo payments-worker Go · async jobs · consumes payments-api └─ repo payments-web TypeScript · consumes payments-api // request: "Add an idempotency key to /v1/charges" ├─ payments-api → verified · PR ├─ payments-worker → verified · PR └─ payments-web → verified · PR
A change to a shared interface touches the library and the repositories that import it. The product knows how its repositories relate, so the plan covers each one and every repository gets its own pull request.
A feature spans an API, a worker and a web client. Research reads each repository, the planner produces tasks per repository with the checks that prove them, and each change is verified before its PR is opened.
Each repository has a test command and required checks. With no executable checks, work is blocked by default; a product can opt in to sending such work to human review instead.
Every change records its base and head commits, the files it touched and each check's result, and the dashboard shows that evidence on the work item.
Commits made outside the pipeline arrive through webhooks, get classified, and are folded back into the codex. In-flight work picks the change up through a codex re-plan instead of being blocked.
The whole stack runs from one docker compose file on a machine you control. There is no licence key and no hosted service. The engine talks to the services you configure: your Git host, your tracker, and your LLM provider. Point it at a local Ollama and your code doesn't leave your network.
Autonomous Engine is licensed under Apache-2.0: use it, modify it, run it commercially. Issues and pull requests are welcome on GitHub. For anything larger than a small fix, open an issue first, sign off your commits (DCO), and include tests.