Skip to main content

Feature-driven harness for human-gated coding loops

Project description

Engineering Agent

EngineeringAgent is a human-guided harness for running reliable coding loops with an agent.

Primary flow: application spec -> run loop

Getting started (first 10 minutes)

  1. Install dependencies.

    uv sync
    
  2. Create or pick one feature spec in docs/spec/features/.

  3. Validate the setup and run gates.

    uvx --from . engineeringagent validate
    uvx --from . engineeringagent gates run --profile loop_fast
    
  4. Do a safe dry run first.

    uvx --from . engineeringagent run docs/spec/features/FEAT-001-example.yaml --dry-run
    
  5. Run for real by removing --dry-run.

Bootstrapping a new repository with init

If you are starting in a fresh repository, you can scaffold a baseline harness with:

uvx --from . engineeringagent init

init defaults to the language-agnostic core scaffold profile. Use python_uv only when you intentionally want Python/uv-oriented bootstrap defaults:

uvx --from . engineeringagent init --scaffold-profile python_uv

init creates a starter structure for docs/specs/gates and handles existing docs/ or AGENTS.md through explicit conflict choices.

Warning: treat init as experimental scaffolding. Always inspect generated files, run uvx --from . engineeringagent validate, and review the git diff before committing anything produced by init.

What this gives you

  • Deterministic progress: one spec file at a time.
  • Human control: you set priorities and scope; agents execute loops.
  • Built-in quality checks: validation, gates, and commit hooks.

Run output tips

  • Default output is concise; full implement/gate output stays in progress/run-feature-<FEATURE_ID>.txt.
  • Use --verbose-output if you want full implement/gate output in the terminal.
  • TTY terminals show light styling for scanability; redirected output stays ANSI-free.
  • Set NO_COLOR=1 (or TERM=dumb) to force plain output.

Human docs vs agent docs

  • README.md: first-run, human onboarding.
  • Harness Engineering Principles: deeper human context.
  • AGENTS.md and docs/references/*-llms.md: agent execution rules and deterministic procedures.

Core files to know

  • docs/spec/features/: active feature specs (backlog, in_progress, blocked)
  • docs/spec/features_done/: archived completed specs (done)
  • docs/spec/schemas/feature.schema.json: feature schema contract
  • harness/gates.yaml: gate and profile definitions
  • progress/runs.jsonl: append-only loop execution history

Contributing

  • Pull requests are not accepted for this repository.
  • Code changes are implemented through the project agent workflow.
  • If you want a new capability, open a GitHub issue with the problem, desired outcome, and constraints.
  • Feature requests from issues may be promoted into a formal spec under docs/spec/features/.

Go deeper

Curated external context

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

engineeringagent-0.1.0.tar.gz (769.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

engineeringagent-0.1.0-py3-none-any.whl (58.0 kB view details)

Uploaded Python 3

File details

Details for the file engineeringagent-0.1.0.tar.gz.

File metadata

  • Download URL: engineeringagent-0.1.0.tar.gz
  • Upload date:
  • Size: 769.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for engineeringagent-0.1.0.tar.gz
Algorithm Hash digest
SHA256 0bb4faf90604d4620cee1e55de0e7e1634060f6a12b51116077bf5b0ce6519f4
MD5 a0d6332f0b48ae2e1aa8202c00eb2b39
BLAKE2b-256 b14be66acff7d34414e1f9ee762908b9efef41055d6d8297d057420f4edebeff

See more details on using hashes here.

File details

Details for the file engineeringagent-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for engineeringagent-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 578ff82fc414d2332857ee7339a43292982ccd46b340102e924b4cf83cf5fb01
MD5 7df1cff1651400b0204769237f72537f
BLAKE2b-256 69e1ec3df0fe25e2ee3bcb12aff3ea5be0b3dfee2c49e251d4ed2494de19e555

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page