autoharness is a self-learning skill layer for Claude Code that distills skills from real sessions, merges duplicates, updates them in use, and prunes unused ones. It runs as a plugin without a daemon or benchmark.
Project overview
Rather than a hand-maintained skill library, autoharness learns and curates skills from actual Claude Code sessions automatically, addressing the recurring problem of rebuilding skill layers each model generation and of duplicate, stale entries.
Project type
AI Agent · AI Coding
Use cases
Coding & Development
Deployment
Refer to project documentation
License
MIT
Best for
Developers who use Claude Code and want skill and harness layers maintained automatically from real sessions instead of manual curation.
Key capabilities
Learns skills from real Claude Code sessions: after enough tool calls, a background reflection distills the episode into a skill; /learn distills on demand.
A reflector/curator compares new episodes against existing skills, folds same-scenario skills into one, and rewrites stale ones instead of stacking near-duplicates.
Limitations and risks
Requires Python 3.11+ available as python3 on PATH; an older interpreter disables all hooks for the session.
Getting started
Install with two slash commands and reload: /plugin marketplace add tigerless-labs/autoharness, /plugin install autoharness@autoharness, then /reload-plugins. Zero configuration is required thanks to built-in defaults.
Evidence and sources
README: autoharness is a self-learning skill layer for Claude Code. It learns skills from your real sessions, merges same-scenario ones instead of stacking near-duplicates, updates them i…
README: Requires Python 3.11+ as the `python3` on your PATH — autoharness runs entirely as Python (zero third-party dependencies); its hooks and MCP server won't fire without it.
README: Zero config. It now watches your sessions and lands learned skills into `.claude/skills/` in the background.
README: `/learn` distills on demand when you want a lesson kept now.
README: REF · reflect | Reads the episode, compares it against the existing skill index, and decides add / merge / patch / drop a support file / delete