Skip to content

Latest commit

 

History

1,916 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Harness Anything

Every agent run should make your repository smarter.

Harness Anything is the self-evolving harness for self-evolving repositories. It turns decisions, failures, facts, and reviews into durable project memory — then gates "done" so progress compounds instead of evaporating into chat.

Run the demo | Why it compounds | How it works | Docs

CI GitHub stars Node 24+ License: AGPL-3.0-or-later Status: early

English | 简体中文


Your agent can write code. Can your project learn?

Most agent runs are disposable. The reasoning stays in a transcript, settled decisions get reopened, the same mistakes return, and "done" is whatever the agent says it is.

Harness Anything makes the work accumulate:

Without a harness With Harness Anything
Reasoning disappears with the session Decisions and facts become durable project memory
The next agent repeats old mistakes Failures can become rules, checks, and better workflows
Completion is a claim Completion is a state earned through gates

This is not a better chat log. It is a compounding loop for how agents work in your repository.

Why It Compounds

DECIDE → WORK → VERIFY → LEARN → THE NEXT RUN STARTS STRONGER

Memory that survives the session

Every task leaves behind the context that matters: what was decided, what was tried, what was observed, and what remains unresolved. The next agent starts from project memory instead of reconstructing history from scratch.

Mistakes that become infrastructure

A failure should pay rent. Capture it as a fact, turn a recurring lesson into a decision, check, or preset, and the repository becomes harder to break in the same way twice.

“Done” that means something

Agents do not get to close work by confidence alone. A six-field Submission Packet gives the reviewer a traceable claim and inspection entry points; the reviewer records what was checked and why the round is or is not acceptable. Completion then applies the gates declared by the task's resolved preset/profile contract. Coding contracts can require CI, but the kernel requires neither CI nor any minimum number of Facts universally (dec_mrg3z1we/CH1, CH4; ADR-0027 D5-D7).

Self-Involving By Design

Harness Anything is developed through Harness Anything.

Its own tasks, decisions, facts, reviews, and completion gates run through the same system it gives your repository. The harness observes its own failures, turns lessons into stronger constraints, and uses those constraints on the next round of development.

That is what self-evolving means here: not magic, and not autonomous churn. Each completed loop leaves the system better equipped for the next one. Your repository gets the same compounding mechanism.

Quickstart

Harness Anything currently runs from a source checkout and requires Node.js 24+. Run the 30-second smoke demo:

git clone https://github.com/FairladyZ625/harness-anything
cd harness-anything
npm ci
npm run quickstart:demo

The demo builds the CLI, creates a throwaway project, runs a real task loop, and shows the records that remain after the agent work is over.

Ready to use it on a project? Continue with the Start guide.

Or have an agent install it for you

You do not need anything installed first. Paste this to a coding agent working in the project you want to adopt it in:

Read skills/harness-install/SKILL.md from https://github.com/FairladyZ625/harness-anything and follow it to install Harness Anything in this project. Ask me before each decision the skill says to ask about.

The skill reads your project first — language, layout, CI, whether you already have an AGENTS.md — then initializes a ledger, attaches it to a daemon, and drives one real task all the way to done, so the install is proven rather than assumed. It stops and asks you wherever a choice is hard to undo: the person id it is about to write, and any file of yours it would have to merge into.

If the project already has a harness/ ledger from an earlier release, use the migration skill below instead.

Breaking change: existing repositories must migrate

The ledger format has changed by a generation and this project keeps no backward compatibility, so existing repositories cannot be upgraded in place. The old repository is archived read-only and replayed into a new one; it is never at risk.

You do not have to do this by hand, and you do not need the current version installed first. Paste this to a coding agent working in the repository you want to migrate:

Read skills/harness-migration/SKILL.md from https://github.com/FairladyZ625/harness-anything and follow it to migrate this project's harness/ ledger to the current format. Ask me before each decision the skill says to ask about.

The skill fetches the current source into a temporary directory and runs everything from there, so an older Harness installation on the same machine — including a running daemon — is left untouched. It stops and asks you at each point where a choice destroys something: file conflicts between your ledger and the freshly initialized one, records the strict format rejects, and presets that must be rebuilt rather than copied.

Prefer to drive it yourself? The migration guide is the same procedure in reference form.

How It Works

Harness Anything gives agent work three durable primitives:

  • Decision — what was chosen, what was rejected, and why.
  • Task — what is being changed, its plan, progress, review, and closeout.
  • Fact — what was actually observed, with source and confidence.

They live as plain Markdown inside a private nested git ledger. Git provides the history; a rebuildable projection makes the records queryable; gates control which state transitions are allowed.

The result is a repository that remembers more than its code:

  • why its architecture looks the way it does;
  • which attempts failed and should not be repeated;
  • which work is truly complete and which claims remain open;
  • how its own development process should improve next.

Documentation

Contributing

Sharp bug reports, failing test cases, architecture questions, and focused documentation fixes are especially useful right now. See CONTRIBUTING.md before opening a pull request.

License

AGPL-3.0-or-later. Harness Anything stays open, including when it is offered as a service.

About

Clean-room Harness rewrite monorepo

Resources

Contributing

Stars

64 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages