autoimprove-cc - SKILL.md 자동 개선 시스템
Karpathy의 autoresearch 루프를 SKILL.md에 적용.
/autoimprove한 줄로 밤새 스킬을 자동 개선.
핵심 아이디어
Python 스크립트 없이 Claude Code agents + commands만으로 동작.
1. SKILL.md 읽기
2. eval.json의 binary assertions로 채점
3. 실패한 assertion 하나를 고치도록 SKILL.md 수정
4. 재채점 → 점수 올랐으면 git commit, 아니면 git reset
5. 100% 달성하거나 max_loops까지 반복
핵심 차이: Karpathy는 train.py의 수치 메트릭을 사용하지만, 우리는 binary assertions(참/거짓 테스트)의 패스율을 사용.
설치
# 클론
git clone https://github.com/VoidLight00/autoimprove-cc.git
# 글로벌 설치
ln -s $(pwd)/autoimprove-cc/.claude/agents/skill-optimizer.md ~/.claude/agents/
ln -s $(pwd)/autoimprove-cc/.claude/commands/autoimprove.md ~/.claude/commands/
# 또는 프로젝트 로컬
cp -r autoimprove-cc/.claude/agents/skill-optimizer.md .claude/agents/
cp -r autoimprove-cc/.claude/commands/autoimprove.md .claude/commands/사용법
# 1. eval.json 자동 생성 + 루프 실행
/autoimprove skills/my-skill
# 2. eval.json만 생성 (검토 후 수동 실행)
/autoimprove skills/my-skill --gen-eval-only
# 3. 최대 50회 반복
/autoimprove skills/my-skill --max-loops 50
# 4. Dry-run (git 변경 없이 채점만)
/autoimprove skills/my-skill --dry-runeval.json 구조
{
"skill_name": "my-skill",
"skill_md_path": "skills/my-skill/SKILL.md",
"tests": [
{
"id": "test-001",
"description": "구조 — 필수 섹션 존재 여부",
"prompt": "/my-skill 이라고 입력했을 때",
"expected_behavior": "스킬이 활성화되고 워크플로우를 시작한다",
"assertions": [
"SKILL.md에 스킬 이름이 포함된 H1 헤딩이 있다",
"Workflow 섹션이 존재한다",
"Rules 섹션에 최소 2개의 금지 사항이 있다"
]
}
]
}좋은 Assertion vs 나쁜 Assertion
# 좋은 assertion (명확한 참/거짓)
"SKILL.md에 '## Workflow' 섹션이 존재한다"
"워크플로우에 최소 5개의 단계가 있다"
"코드 블록이 최소 2개 포함되어 있다"
# 나쁜 assertion (주관적, 판단 불가)
"SKILL.md가 잘 작성되어 있다"
"워크플로우가 충분히 상세하다"Assertion 카테고리
| 카테고리 | 내용 |
|---|---|
| 구조 | 필수 섹션, 헤딩 계층, 파일 구조 |
| 트리거 | 슬래시 커맨드, 활성화 조건, 인자 형식 |
| 워크플로우 | 단계별 프로세스, 분기 조건, 출력 형식 |
| 규칙 | 금지 사항, 제약 조건, Do NOT 항목 |
| 완성도 | 예시, 코드블록, 에지 케이스, 의존성 |
skill-autoimprove vs autoimprove-cc
| 항목 | skill-autoimprove (OpenClaw) | autoimprove-cc (Claude Code) |
|---|---|---|
| 아키텍처 | Python 스크립트 4개 | Claude Code agent + command |
| 진입점 | python scripts/run-loop.py | /autoimprove 슬래시 커맨드 |
| 타겟 | CLAUDE.md | SKILL.md |
| LLM 호출 | claude -p subprocess | Claude Code 에이전트 내장 |
| 의존성 | Python 3.10+ | 없음 (Claude Code만 필요) |
Karpathy autoresearch 매핑
| Original (Karpathy) | Our adaptation |
|---|---|
| train.py | SKILL.md |
| numeric metrics | binary assertions (pass rate) |
| git commit/reset | git commit/reset (동일) |
| “never stop" | "never stop” (동일) |
요구사항
- Claude Code CLI (claude 명령어)
- 타겟 스킬이 git 저장소 내부 (롤백 기능에 필요)
Related
- karpathy-autoresearch
- skill-improvement
- claude-code-skills
- memento-skills
- Source: https://github.com/VoidLight00/autoimprove-cc
- Karpathy autoresearch: https://github.com/karpathy/autoresearch