A framework for running coding agents as long running tasks - with deterministic feedback loops and agent reviewers
Project description
Engineering Agent
NOTE: This repository is under active development. You should probably not use it for
anything important yet. Treat engineeringagent init as experimental scaffolding and review all generated
changes before committing.
What this is
The goal of Engineeringagent is to help you move from ideas to quality implementations. The core idea is setup a structure for harness for you coding agent (lint, checks, fitness functions, agentic reviewers etc). You have to decide your self which checks is nessesary for you - just write a spec for it and let the agent implement. When a spec is done, implement it with engineeringagent - it will iterate over you spec. solve one task a a time clear its context and run nessesary checks and validations (automatically providing feedback to the agent.)
See Principles for core ideas with engineeringagent
This means the flow is really simple:
Primary flow: spec -> implement
Minimal onboarding
- Run "uvx engineeringagent init" - this will create the nessesary files and guide you to the through the first decisions.
- Start your favorite coding agent at the repository root.
- Ask it to write a spec for your change in
docs/spec/features/<ID>.yaml. - Implement the spec by
uvx engineeringagent run <path-to-spec>.
OBS: This will commit changes to your code! Currently opencode and codex is supported.
AGENTS bootstrap fallback
If your repo does not want to fully edit AGENTS.md first, use this minimum bootstrap snippet in AGENTS.md:
In this repository, run EngineeringAgent CLI commands with `uvx engineeringagent ...`.
Use `engineeringagent approach` for the overall workflow and guidance map.
Use `engineeringagent approach list` to discover topics, then open one (for example `engineeringagent approach specifications`).
This is important as the CLI contains the instructions for the agent how to use the engineeringagent. So to make sure it is used correctly the agent needs to be aware of it. Else keep the AGENTS.md slim - make it a map with links to relevant documentation. Becarefull documenting the code in AGENTS.md - it might confuse the agent more than it helås. Never use a AGENTS.md, made by an agent.
Allowlist recommendation for restricted agents
If your repository uses restrictive agent command allowlists, add these commands:
engineeringagent approach *engineeringagent schema *
Repository hygiene
EngineeringAgent runtime state is written under .engineeringagent/progress/ during real runs:
.engineeringagent/progress/runs/runs.jsonl.engineeringagent/progress/features/<FEATURE_ID>/run.txt.engineeringagent/progress/features/<FEATURE_ID>/handoff.md.engineeringagent/progress/reviewers/state.jsonThis path is ignored by default via/.engineeringagent/progress/in.gitignore. These artifacts are lazily materialized on first non-dry writes; dry-run loop execution does not create them.
Contributor policy
- Pull requests are not accepted for this repository.
- Code changes are implemented through agents.
- Open issues for desired outcomes and constraints; useful issues can be promoted into specs.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file engineeringagent-0.4.1.tar.gz.
File metadata
- Download URL: engineeringagent-0.4.1.tar.gz
- Upload date:
- Size: 1.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
644573b5a973cdd2b1795657206554eef2de6fa489c00f494c259cb62a84fcb1
|
|
| MD5 |
dcc62a5a99007f68cba05446e46c425c
|
|
| BLAKE2b-256 |
7cca56a7e01e2526246a38e9833a5f585978f12b80d954c1f69b5b06730d02fe
|
File details
Details for the file engineeringagent-0.4.1-py3-none-any.whl.
File metadata
- Download URL: engineeringagent-0.4.1-py3-none-any.whl
- Upload date:
- Size: 161.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3422644db405b2af8cb34e1812bfe3141e7638ffdcabe63cf2e08214d85909de
|
|
| MD5 |
adefd91b3eda7635c75d09b53ce5af47
|
|
| BLAKE2b-256 |
cd569ac794f37b77b01062a1f04bc8744f39f6bf23314841adb07815412be5a2
|