Claude Code를 위한 자기 학습 스킬 레이어로, 실제 세션에서 스킬을 증류하고 병합하며 정리합니다
README 링크에서 발견 · 2 days ago
AutoHarness는 Claude Code 세션을 스스로 유지 관리하는 스킬로 전환합니다
What they did
tigerless-labs 마켓플레이스에서 AutoHarness를 Claude Code 플러그인으로 설치한 뒤, 평소 작업을 하는 동안 백그라운드에서 실행되도록 두었다. 충분한 작업을 수행한 각 세션은 .claude/skills/ 아래의 스킬로 정제되었고, 리플렉터가 새로운 에피소드를 기존 스킬과 비교하여 동일 시나리오의 스킬은 거의 중복된 것들이 쌓이는 대신 하나의 통합된 스킬로 합쳐지도록 했다. 모든 세션은 AutoHarness가 직접 작성한 스킬들의 그룹화된 인덱스로 시작했기 때문에, 회상은 호스트가 스킬을 노출하는지에 의존하지 않았다. 교훈을 즉시 유지하고 싶을 때는 /learn을 실행하여 현재 세션을 백그라운드 패스가 사용하는 것과 동일한 제안-검증 체인을 통과시켰다. 스킬은 별도의 벤치마크 점수에 의해서가 아니라 이후 턴에서 준수됨으로써 살아남았고, 각 생성/업데이트는 해당 시나리오와 결정을 스킬별 원장(ledger)에 기록했다. 사용자가 직접 작성하거나 설치한 것은 그대로 유지되었다 — 플러그인은 자신이 생성한 스킬만 관리한다.
How it went
이 레이어는 스스로 깔끔하게 유지되었다. 중복은 쌓이지 않고 접혔고, 사용되지 않는 스킬은 정리되었으며, 그룹화된 인덱스는 호스트의 네이티브 동작을 바꾸지 않으면서도 안정적인 리콜을 가능하게 했다. 설치는 설치와 리로드 이후 제로 구성이었고, 원장은 나중에 실제 사용 데이터로 벤치마크를 구축할 수 있는 원재료를 남겼다.
Worth knowing
PATH의 python3로 Python 3.11+가 필요합니다. PATH에서 더 앞서 있는 구버전 인터프리터(macOS는 /usr/bin/python3에 3.9.6을 기본 제공)가 있으면 세션 내 모든 hook이 조용히 비활성화되며, stderr 경고만 표시됩니다. 이것이 없으면 hook과 MCP 서버가 작동하지 않습니다. Cadence와 lifecycle 임계값은 조정 가능하지만 고민 없이 설정할 수 있는 값은 아닙니다. Skill 품질은 세션이 증류할 만큼 충분한 실제 작업을 수행하는지에 달려 있습니다.
Wiring
Claude Code 플러그인 마켓플레이스를 통해 설치하고(슬래시 명령 두 개), 이어서 /reload-plugins를 실행하거나 재시작합니다. AutoHarness는 의존성 없는 Python 3.11+로 완전히 동작하며, 훅은 bare python3를 해석하고 MCP 서버는 .claude-plugin/plugin.json에 등록됩니다. 훅은 세션을 관찰하다가 세션이 충분한 작업을 수행하면 백그라운드 distillation 패스를 트리거하며, /learn은 동일한 proposal-and-validation 체인으로 들어가는 수동 진입점입니다. reflector는 각각의 새 에피소드를 기존 스킬과 비교하고 동일 시나리오의 것들을 병합하며, 어떤 스킬이 어떤 것을 흡수했는지 기록합니다. 세션 시작 훅은 호스트의 네이티브 recall 위에 플러그인이 작성한 스킬들의 그룹화된 인덱스를 주입합니다. 모든 쓰기는 플러그인이 생성한 스킬로 범위가 한정되며, 스킬별 원장이 시나리오와 결정을 기록합니다.
Try it yourself
이 저장소에 AutoHarness를 Claude Code 플러그인으로 설치하려면 다음 단계를 따르세요. 먼저 `python3 --version`이 PATH에서 3.11 이상인지 확인하세요. 그렇지 않으면 hooks가 조용히 비활성화되므로 반드시 먼저 수정해야 합니다. 그다음 `/plugin marketplace add tigerless-labs/autoharness`를 실행하고, 이어서 `/plugin install autoharness@autoharness`, 마지막으로 `/reload-plugins`를 실행하세요. 설치가 끝나면 이 저장소에서 실제 작업을 하나 진행하고, `/learn`을 실행해 교훈을 정리하세요. 그런 다음 `.claude/skills/` 아래에 생성된 스킬 파일과 해당 ledger 항목을 보여드리겠습니다. 마지막으로, 직접 작성하신 기존 스킬이 수정되지 않았는지 확인해 드리겠습니다.