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

Command styles

  • Package usage (PyPI, no clone): uvx engineeringagent <command>
  • Package usage (version pinned): uvx engineeringagent@<version> <command>
  • Contributor usage (from this repository): uvx --from . engineeringagent <command>

Quickstart from PyPI (no clone)

Run directly from the published package:

uvx engineeringagent --help
uvx engineeringagent validate
uvx engineeringagent gates run --profile loop_fast

Pin to a specific release when you need reproducible onboarding or CI runs:

uvx engineeringagent@<version> --help
uvx engineeringagent@<version> validate

Contributor setup (local checkout, first 10 minutes)

The steps below assume contributor usage from this repository checkout.

  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.1.tar.gz (789.9 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.1-py3-none-any.whl (63.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: engineeringagent-0.1.1.tar.gz
  • Upload date:
  • Size: 789.9 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.1.tar.gz
Algorithm Hash digest
SHA256 0172d16705236e994895553c068edf8bf7a867236dfe1022db111d4b9c5081ec
MD5 65382669a0ad85272eacda32414d2b01
BLAKE2b-256 5652c9be119032eedce02d933266b7fb2ecb5279db954eca59f74ecacb678b81

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for engineeringagent-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f50b5f43d4c97464c4e5dee2814fc0721694300f64462f6e25a792898e250149
MD5 d54fba52e07e572938dfd0296c28aaf6
BLAKE2b-256 66edf0ddf83eec7157d8037f015e3e91e4d6b7be3a28751bcc434123984519f6

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