Menu ▾ ▴

Tree [5cf99f] main /
 History

HTTPS access


File Date Author Commit
 duckharness 30 minutes ago electric-otter electric-otter [5cf99f] Add durable user preference guidance
 tests 30 minutes ago electric-otter electric-otter [5cf99f] Add durable user preference guidance
 .gitignore 36 minutes ago electric-otter electric-otter [16a7b5] Initial DuckHarness project
 AGENTS.md 30 minutes ago electric-otter electric-otter [5cf99f] Add durable user preference guidance
 README.md 30 minutes ago electric-otter electric-otter [5cf99f] Add durable user preference guidance
 SKILLS.md 30 minutes ago electric-otter electric-otter [5cf99f] Add durable user preference guidance
 install.sh 36 minutes ago electric-otter electric-otter [16a7b5] Initial DuckHarness project
 pyproject.toml 36 minutes ago electric-otter electric-otter [16a7b5] Initial DuckHarness project

Read Me

DuckHarness

Coding agents that learn how you like to work

You shouldn’t have to repeat the same instructions every time you work with a
coding agent. DuckHarness helps shape an agent around your preferences: how you
want code written, which safeguards matter to you, and how changes should be
checked before they’re considered done.

DuckHarness gives your agent shared guidance and a simple process for changing
that guidance. When you decide to decline a proposed change, you can record why
so the lesson stays available for future work. You stay in control of what the
agent changes and which preferences it follows.

DuckHarness works with Harness²
and can connect with OpenCode and Codex.

Get started

From a DuckHarness checkout, run:

./install.sh

The installer sets up DuckHarness and Harness², then registers DuckHarness with
OpenCode and Codex. It needs Git and Python 3.12 (or uv, which can provide
Python 3.12).

Everyday use

dharness skills                 # create or refresh your agent guidance
dharness status                 # see whether a change is waiting for review
dharness gate --changed <paths> # check a change to agent guidance
dharness decline --reason "…"   # save why you declined a proposed change
dharness update                 # get the latest DuckHarness and Harness²

dharness skills creates SKILLS.md with shared workflow guidance and adds a
DuckHarness section to AGENTS.md. That section tells the coding agent to
remember reusable instructions you explicitly want it to carry forward. Both
files preserve your existing content. When an agent changes harness guidance,
DuckHarness asks for the change to be tested before the pause is cleared.

DuckHarness helps coordinate this process; it doesn’t decide your preferences
for you or override your other model and tool policies.

Updates

DuckHarness updates from its SourceForge repository, and Harness² updates from
Google Research. Run dharness update whenever you want to refresh both.

License

DuckHarness is Apache-2.0. Harness² and its third-party dependencies retain
their own licenses.