Experimental. Early infrastructure for Harness Engineering. The API, generated layout, and config shape may change.
Structor is a local Harness Engineering Framework. It generates a Repository-local AI Harness Engineering Framework: a versioned policy layer where Codex, Claude Code, and similar agents can share context routing, contracts, task shape, review expectations, and validation guidance.
Structor is a generator, not a runner. It creates plain local files and validators; it does not run agents, coordinate sessions, open pull requests, host services, call LLM APIs, install packages, collect telemetry, or mutate external systems.
Run Structor from the workspace folder that contains your consumer repos:
npx @structor-dev/cli initstructor init detects sibling repos, asks confirmation-oriented questions,
previews the planned setup transaction, writes a generated harness only after
approval, installs or verifies thin agent entrypoints, and reports setup
completion after deterministic local gates pass.
For the plan-hash-approval flow used by coding agents and manual automation,
see Install Structor With An Agent.
It creates a sibling generated harness repo:
workspace/
my-app-structor/ # generated harness: policy, contracts, validation
my-app-frontend/ # consumer repo
my-app-backend/ # optional consumer repo
Inside the generated harness:
ai/ canonical policy and guidance
AGENTS.md thin Codex entrypoint -> routes into ai/
CLAUDE.md thin Claude Code entrypoint -> routes into ai/
scripts/ generated validation and workspace checks
- Docs index
- Quickstart
- Setting up a harness
- Install with an agent
- Populating a harness
- Troubleshooting
- What Structor is
- Harness vs runner
- Commands
- Configuration
- Generated files
- Contributor setup
- FAQ
- Structor setup is local-only and deterministic.
- Existing root
AGENTS.mdandCLAUDE.mdguidance is not silently deleted, uploaded, interpreted, or merged. - Preserved guidance remains consumer-local source material until a later reviewed migration.
- Generated harness
ai/*is the canonical policy layer inside generated projects. docs/*is the canonical Structor user guide corpus.
See harness vs runner and using Structor as an orchestrator for the product boundary.
See contributor setup for the local Structor contributor path.
Useful project references: