@uzysjung/agent-harness 26.149.0 → 26.151.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.ko.md +1 -1
- package/README.md +1 -1
- package/dist/{chunk-YSW3OLH4.js → chunk-3QBHZUVB.js} +164 -66
- package/dist/chunk-3QBHZUVB.js.map +1 -0
- package/dist/index.js +397 -293
- package/dist/index.js.map +1 -1
- package/dist/trust-tier-drift.js +5 -1
- package/dist/trust-tier-drift.js.map +1 -1
- package/package.json +1 -1
- package/templates/CLAUDE.md +145 -164
- package/templates/agents/build-error-resolver.md +1 -1
- package/templates/agents/plan-checker.md +1 -1
- package/templates/agents/reviewer.md +4 -5
- package/templates/antigravity/AGENTS.md.template +3 -23
- package/templates/codex/AGENTS.md.template +5 -56
- package/templates/hooks/protect-files.sh +4 -0
- package/templates/hooks/session-start.sh +57 -3
- package/templates/opencode/AGENTS.md.template +4 -52
- package/templates/opencode/opencode.json.template +0 -8
- package/templates/rules/change-management.md +0 -1
- package/templates/rules/cli-development.md +1 -1
- package/templates/rules/doc-governance.md +2 -0
- package/templates/rules/git-policy.md +1 -1
- package/templates/rules/ship-checklist.md +3 -3
- package/templates/rules/test-policy.md +3 -8
- package/templates/settings.json +1 -16
- package/templates/skills/agent-introspection-debugging/SKILL.md +1 -1
- package/templates/skills/audit-harness-fit/README.md +113 -0
- package/templates/skills/audit-harness-fit/SKILL.md +64 -433
- package/templates/skills/audit-harness-fit/evals/scenarios.yaml +222 -0
- package/templates/skills/audit-harness-fit/references/apply.md +66 -0
- package/templates/skills/audit-harness-fit/references/audit.md +160 -0
- package/templates/skills/audit-harness-fit/references/populate.md +74 -0
- package/templates/skills/audit-harness-fit/references/verification.md +123 -0
- package/templates/skills/audit-service-gaps/SKILL.md +6 -7
- package/templates/skills/clear-korean-communication/SKILL.md +8 -13
- package/templates/skills/compaction-handoff/SKILL.md +29 -12
- package/templates/skills/external-model-consult/SKILL.md +13 -24
- package/templates/skills/model-orchestration/SKILL.md +18 -15
- package/templates/skills/natural-korean/SKILL.md +45 -0
- package/templates/skills/north-star/SKILL.md +4 -6
- package/templates/skills/north-star/references/roadmap-method.md +2 -2
- package/templates/skills/{task-brief → objective-brief}/SKILL.md +17 -18
- package/templates/skills/recurrence-prevention/SKILL.md +16 -16
- package/dist/chunk-YSW3OLH4.js.map +0 -1
- package/templates/agents/code-reviewer.md +0 -237
- package/templates/agents/security-reviewer.md +0 -108
- package/templates/hooks/task-brief-nudge.sh +0 -57
- package/templates/skills/audit-harness-fit/references/official-criteria.md +0 -367
- package/templates/skills/continuous-learning-v2/SKILL.md +0 -361
- package/templates/skills/continuous-learning-v2/agents/observer-loop.sh +0 -362
- package/templates/skills/continuous-learning-v2/agents/observer.md +0 -189
- package/templates/skills/continuous-learning-v2/agents/session-guardian.sh +0 -150
- package/templates/skills/continuous-learning-v2/agents/start-observer.sh +0 -252
- package/templates/skills/continuous-learning-v2/config.json +0 -8
- package/templates/skills/continuous-learning-v2/hooks/observe.sh +0 -585
- package/templates/skills/continuous-learning-v2/scripts/detect-project.sh +0 -322
- package/templates/skills/continuous-learning-v2/scripts/instinct-cli.py +0 -1956
- package/templates/skills/continuous-learning-v2/scripts/lib/homunculus-dir.sh +0 -31
- package/templates/skills/continuous-learning-v2/scripts/migrate-homunculus.sh +0 -68
- package/templates/skills/continuous-learning-v2/scripts/test_parse_instinct.py +0 -1420
- package/templates/skills/humanize-korean/SKILL.md +0 -228
- package/templates/skills/spec-scaling/SKILL.md +0 -89
- package/templates/skills/strategic-compact/SKILL.md +0 -145
- package/templates/skills/strategic-compact/suggest-compact.sh +0 -54
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
# {PROJECT_NAME} — OpenCode Agent Guide
|
|
2
2
|
|
|
3
|
-
> **Generated from**: `templates/CLAUDE.md` (4-CLI 단일 원본) via TS CLI `src/opencode/transform.ts` (Phase C)
|
|
4
|
-
> **OpenCode Version**: 0.x (anomalyco/opencode)
|
|
5
|
-
> **Linked SPEC**: `docs/specs/opencode-compat.md`
|
|
6
|
-
|
|
7
3
|
## Project Context
|
|
8
4
|
|
|
9
5
|
{PROJECT_CONTEXT}
|
|
@@ -19,53 +15,9 @@
|
|
|
19
15
|
|
|
20
16
|
{HARNESS_RULES}
|
|
21
17
|
|
|
22
|
-
##
|
|
23
|
-
|
|
24
|
-
매 세션 시작 시:
|
|
25
|
-
1. `docs/SPEC.md` 및 `docs/specs/*.md` 재참조 (Persistent Anchor)
|
|
26
|
-
2. `docs/todo.md` 또는 `docs/plans/*-todo.md` 현재 Phase 확인
|
|
27
|
-
|
|
28
|
-
위 절차를 세션 시작 시 수행한다.
|
|
29
|
-
|
|
30
|
-
## Protected Files (DO NOT EDIT)
|
|
31
|
-
|
|
32
|
-
OpenCode `permission` 설정이 1차 방어. LLM 추가 준수:
|
|
33
|
-
|
|
34
|
-
- `.env*`
|
|
35
|
-
- `**/credentials.json`
|
|
36
|
-
- `*.lock`, `package-lock.json`, `pnpm-lock.yaml`, `poetry.lock`, `Cargo.lock`, `uv.lock`
|
|
37
|
-
- `.git/` 내부 파일 (커밋 메시지/hook 제외)
|
|
38
|
-
- `~/.opencode/`, `~/.codex/`, `~/.claude/` 글로벌 (D16 보호)
|
|
39
|
-
|
|
40
|
-
보호 영역 이슈 발견 시 **보고만**. 직접 수정 금지.
|
|
41
|
-
|
|
42
|
-
## Git Policy
|
|
43
|
-
|
|
44
|
-
- 코드/문서 변경 시 **즉시 commit**. "나중에 한꺼번에" 금지.
|
|
45
|
-
- `main` 직접 커밋 금지. feature branch 사용.
|
|
46
|
-
- Conventional Commits — `<type>: <description>` (feat, fix, refactor, docs, test, chore, perf, ci)
|
|
47
|
-
|
|
48
|
-
## Agents (subagent)
|
|
49
|
-
|
|
50
|
-
| Agent | Mode | 역할 |
|
|
51
|
-
|-------|------|------|
|
|
52
|
-
| reviewer | subagent | 검증 전용 (SOD). 5축 리뷰 |
|
|
53
|
-
| data-analyst | subagent | Python / DuckDB / Trino / ML / PySide6 |
|
|
54
|
-
| strategist | subagent | 제안서 / DD / PPT / 경쟁분석 / 재무모델 |
|
|
55
|
-
| code-reviewer | subagent | 일상적 코드 리뷰 |
|
|
56
|
-
| security-reviewer | subagent | OWASP Top 10, 보안 패턴 |
|
|
57
|
-
|
|
58
|
-
`opencode.json` `agent.<name>.mode = "subagent"` 로 정의.
|
|
59
|
-
|
|
60
|
-
## Experience Accumulation
|
|
61
|
-
|
|
62
|
-
- 검증된 learning만 Rules 승격
|
|
63
|
-
|
|
64
|
-
## Context Management
|
|
65
|
-
|
|
66
|
-
- SPEC/PRD 매 세션 시작 시 재참조 (Persistent Anchor)
|
|
67
|
-
- 이 `AGENTS.md` 는 OpenCode 가 프로젝트 루트에서 **자동으로** 읽는다 — §Harness Rules 가 그래서 여기 있다. `opencode.json` 의 `instructions` 키는 그 위에 SPEC 문서를 더 얹는다
|
|
18
|
+
## Protected Files
|
|
68
19
|
|
|
69
|
-
|
|
20
|
+
OpenCode `permission` 설정이 1차 방어다. 그 위에:
|
|
70
21
|
|
|
71
|
-
|
|
22
|
+
- lock 파일(`package-lock.json` · `pnpm-lock.yaml` · `poetry.lock` · `Cargo.lock` · `uv.lock` 등)은 **손으로 고치지 않는다** — 패키지 매니저로 재생성한다.
|
|
23
|
+
- `.env*` · `**/credentials.json` · `.git/` 내부(커밋 메시지·hook 제외) · `~/.opencode/` `~/.codex/` `~/.claude/` 전역 설정은 **보고만** 한다. 직접 수정하지 않는다.
|
|
@@ -22,14 +22,6 @@
|
|
|
22
22
|
"edit": false,
|
|
23
23
|
"bash": false
|
|
24
24
|
}
|
|
25
|
-
},
|
|
26
|
-
"code-reviewer": {
|
|
27
|
-
"mode": "subagent",
|
|
28
|
-
"description": "5축 리뷰 (correctness/readability/architecture/security/performance)",
|
|
29
|
-
"tools": {
|
|
30
|
-
"write": false,
|
|
31
|
-
"edit": false
|
|
32
|
-
}
|
|
33
25
|
}
|
|
34
26
|
},
|
|
35
27
|
"plugin": [],
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
# Change Boundaries
|
|
2
2
|
|
|
3
|
-
- **합의된 범위와 완료 기준 안에서는 자율적으로 수행한다.**
|
|
4
3
|
- 완료 기준의 Pass/Fail · 다른 단계의 입출력 · 명시된 Non-Goals · 수정 금지 영역을 바꿔야 한다면 **임의로 바꾸지 않고 인간 결정을 받는다.** 보류하는 것은 그 경계뿐이고, 범위 안에서 할 수 있는 일은 계속한다.
|
|
5
4
|
- 이미 합의된 내용의 구체화는 즉시 반영하되 **기록을 남긴다.** 기존 결정이나 요구사항의 **의미**를 바꾸는 것은 먼저 합의한다.
|
|
6
5
|
- 스펙에 없던 결정 중 **아키텍처 · 외부 의존성 · 데이터 모델 · 보안 정책 · breaking API** 처럼 이후 작업에 계속 영향을 주는 것은 결정 기록으로 남긴다. 한 함수의 구현 디테일, 임시 워크어라운드, 명백한 버그 fix 는 대상이 아니다.
|
|
@@ -8,7 +8,7 @@ paths:
|
|
|
8
8
|
|
|
9
9
|
- **빈 결과는 부재의 증거가 아니다.** 미지원 플래그를 만난 명령은 에러만 내고 아무것도 출력하지 않는다. `2>/dev/null` 이 그 에러를 지우면 남는 빈 출력은 "깨끗함"과 구분되지 않는다 — **부재를 확인하는 명령에 stderr 를 버리지 마라.**
|
|
10
10
|
- **파이프 뒤 `$?` 는 마지막 명령의 것이다.** 파이프 없이 실행하거나 `set -o pipefail` 을 쓴다.
|
|
11
|
-
-
|
|
11
|
+
- 부정 결론("없다"·"안 된다")의 대조군 요구와 그것을 강제하는 도구는 `doc-governance` 에 있다.
|
|
12
12
|
- macOS(BSD)와 Linux(GNU)는 `sed -i` · `date` · `readlink -f` · `realpath -m` · `find -newermt` · `stat` 포맷이 호환되지 않는다. 양쪽에서 도는 형태를 쓰거나 `command -v` 로 분기한다.
|
|
13
13
|
|
|
14
14
|
훅으로 쓸 스크립트의 **차단 계약은 실행기마다 다르다** — Claude Code · Codex 는 `exit 2` + stderr 에 사유(통과 = `exit 0`, 출력 없음) · OpenCode 플러그인은 훅 함수에서 `throw` · Antigravity 는 JSON 으로 `decision: "deny"`. 계약 밖의 형태는 "비차단 오류"로 흘러가 조용히 무시된다.
|
|
@@ -6,4 +6,6 @@
|
|
|
6
6
|
|
|
7
7
|
- **대조군 없이 "없다"·"안 된다"를 결론으로 쓰지 마라.** 빈 결과도 실패한 명령도 "대상이 없다"와 "내 탐지기가 틀렸다"를 구분해 주지 않는다.
|
|
8
8
|
|
|
9
|
+
- **상주 문서(CLAUDE.md · SPEC/PRD · 메모리)에는 현행 결정만 적는다.** 이력·근거·정정 경위는 ADR·계획 문서로 분리하고 한 줄로 링크한다 — 상주 문서가 이력으로 비대해지면 매 세션 그 이력을 읽는다.
|
|
10
|
+
|
|
9
11
|
**이 하네스가 설치해 둔 검사기**(스스로는 존재를 알 수 없으므로 여기 적는다): `bash .uzys-agent-harness/spec-drift-check.sh` 가 추적 문서의 미완 잔존·상태 불일치를 검출한다 — 인자 없이 경고(exit 1), `ship` 인자면 차단(exit 2). **탐지 경로 밖의 문서 레이아웃은 못 본다** — 그 구간에서는 이 룰이 프로즈로만 작동한다. `bash .uzys-agent-harness/check-absence.sh` 가 위 대조군 요구를 강제한다 — `--canary <알려진 양성> [-i] <ERE> <경로>...` 또는 `--control <되는 줄 아는 명령> --subject <대상>` (0 부재 · 1 발견 · 2 신뢰불가 · 3 사용법). 바이너리 부재를 판정할 때는 `--subject 'command -v <bin>'` 처럼 **1 을 내는 형태**로 쓴다 — 명령이 없어 127 로 죽으면 무효 처리된다.
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
## Session Cleanup
|
|
9
9
|
|
|
10
|
-
세션이 띄운 백그라운드 프로세스·서브에이전트는 끝나기 전에 닫는다 — 세션 종료가
|
|
10
|
+
세션이 띄운 백그라운드 프로세스·서브에이전트는 끝나기 전에 닫는다 — 세션 종료가 끝내주지 않고, 남은 것은 메모리·포트·파일락을 계속 쥔다. **다른 프로젝트의 프로세스는 건드리지 않는다.**
|
|
11
11
|
|
|
12
12
|
## Enforcement
|
|
13
13
|
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
무엇으로 검증할지는 이 저장소가 정한다. **어느 정도까지**는 Testing 룰이, 그 결과가 **언제** 있어야 하는지는 이 룰이 정한다.
|
|
4
4
|
|
|
5
|
-
-
|
|
6
|
-
- **머지
|
|
7
|
-
- **배포**: 머지 전에 검증된 것과 **같은 artifact** 를 내보내고, 배포 뒤 실제 환경에서 smoke · health · 핵심 기능을 확인한다.
|
|
5
|
+
- **검증의 리듬**: 구현 중에는 변경 부분의 빠른 검사만 한다. 사용자 씬의 수정분이 모이면 그때 독립 검토한다. 수정이 끝난 뒤 통합 테스트 · 빌드 · 실제 사용자 흐름을 검증한다. 작은 수정마다 전체 검증을 반복하지 않고, 재검사는 영향받은 부분만 한다.
|
|
6
|
+
- **머지 전 독립 검증**은 핵심 사용자 기능 · 되돌리기 어려운 변경 · 돈·권한처럼 틀리면 큰 사고인 것에만 건다. UX 의 큰 변경은 사용자 페르소나 리뷰(선택). 그 밖(테스트 하네스 · 문서 · 리팩터 · 문구 · UI · 리뷰어 처방)은 리그레션 테스트로 들어온다. 독립 검증의 판정은 만든 쪽이 아니라 검증자가 요구사항·변경분·결과를 직접 확인하고 내린다. 어느 쪽이든 변경 위험에 맞는 검증을 **실행하고 결과를 확인한다** — high risk 는 더 많은 증거를 갖고 들어오고, **실행하지 않은 상태는 통과가 아니다.** 필수 보안 · 데이터 보호 검사는 유지한다.
|
|
7
|
+
- **배포**: 배포 전에 풀 테스트 · E2E · 독립 검증을 거친다 — 머지 전에 리그레션만 받은 변경도 여기서 잡힌다. 머지 전에 검증된 것과 **같은 artifact** 를 내보내고, 배포 뒤 실제 환경에서 smoke · health · 핵심 기능을 확인한다.
|
|
8
8
|
- **머지·게시 경로가 그 검증 통과에 의존해야 한다.** 별개 경로면 아무도 우회하려 하지 않았는데 red 가 그대로 나간다. 의존하지 않는 상태를 발견하면 경로를 고치기 전에 먼저 보고한다.
|
|
9
9
|
- 변경분이 사용자에게 닿는 경로가 여럿이면 **경로마다 실행 증거를 따로** 확보한다. 한 경로의 증거를 다른 경로에 전용하지 않는다.
|
|
10
10
|
- 이 저장소가 정의한 **보안·취약점 검사도** 실행하고 결과를 확인한다 — 테스트만 돌리고 나가는 것이 기본값이 되기 쉽다.
|
|
@@ -3,23 +3,18 @@
|
|
|
3
3
|
**How far** to verify scales with the risk of the change; **when** those results must exist
|
|
4
4
|
belongs to the Delivery rule.
|
|
5
5
|
|
|
6
|
-
- An ordinary change gets the repository's baseline CI
|
|
7
|
-
|
|
8
|
-
it touches and what its failure would cost.
|
|
6
|
+
- An ordinary change gets the repository's baseline CI and regression across the affected scope;
|
|
7
|
+
independent verification only where the Delivery rule requires it. A high-risk one widens that in
|
|
8
|
+
proportion to what it touches and what its failure would cost.
|
|
9
9
|
- High-risk includes at least authentication, authorization, payments and settlement, personal
|
|
10
10
|
data, data integrity, concurrency, state transitions, and migrations.
|
|
11
11
|
- Full regression, full E2E, full mutation, and periodic security scanning belong to the CI/CD
|
|
12
12
|
schedule, not to a per-change decision.
|
|
13
|
-
- Test observable behavior — contracts and invariants — at whichever level best exposes
|
|
14
|
-
plausible failures.
|
|
15
13
|
- For a high-risk change, cover normal, boundary, failure, misuse, and recovery paths,
|
|
16
14
|
omitting one only when failure on it is not plausible.
|
|
17
|
-
- Keep tests deterministic: time, randomness, shared state, execution order, network, and
|
|
18
|
-
external services.
|
|
19
15
|
- Use production-compatible dependencies when a substitute's behavioral differences could affect
|
|
20
16
|
the result. Otherwise, use explicit test doubles or contract tests.
|
|
21
17
|
- Never use unauthorized production personal data, credentials, or secrets in tests.
|
|
22
18
|
- Do not hide failures by weakening assertions, deleting or skipping tests, excluding coverage, or
|
|
23
19
|
adding indiscriminate retries. Change tests only when the intended behavior has changed.
|
|
24
|
-
- Coverage signals untested risk; it is not a target. Follow the repository-defined CI gates.
|
|
25
20
|
- If the affected scope cannot be established confidently, broaden the validation.
|
package/templates/settings.json
CHANGED
|
@@ -22,26 +22,11 @@
|
|
|
22
22
|
{
|
|
23
23
|
"type": "command",
|
|
24
24
|
"command": "bash \"$CLAUDE_PROJECT_DIR/.claude/hooks/protect-files.sh\""
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
"type": "command",
|
|
28
|
-
"command": "bash \"$CLAUDE_PROJECT_DIR/.claude/skills/strategic-compact/suggest-compact.sh\"",
|
|
29
|
-
"async": true,
|
|
30
|
-
"timeout": 5
|
|
31
25
|
}
|
|
32
26
|
]
|
|
33
27
|
}
|
|
34
28
|
],
|
|
35
29
|
"PostToolUse": [],
|
|
36
|
-
"UserPromptSubmit": [
|
|
37
|
-
{
|
|
38
|
-
"hooks": [
|
|
39
|
-
{
|
|
40
|
-
"type": "command",
|
|
41
|
-
"command": "bash \"$CLAUDE_PROJECT_DIR/.claude/hooks/task-brief-nudge.sh\""
|
|
42
|
-
}
|
|
43
|
-
]
|
|
44
|
-
}
|
|
45
|
-
]
|
|
30
|
+
"UserPromptSubmit": []
|
|
46
31
|
}
|
|
47
32
|
}
|
|
@@ -138,7 +138,7 @@ Good pattern:
|
|
|
138
138
|
## Integration with ECC
|
|
139
139
|
|
|
140
140
|
- Use `verification-loop` after recovery if code was changed.
|
|
141
|
-
- Use `
|
|
141
|
+
- Use `recurrence-prevention` when the failure pattern is worth a rule, a gate, or a later skill.
|
|
142
142
|
- Use `council` when the issue is not technical failure but decision ambiguity.
|
|
143
143
|
- Use `workspace-surface-audit` if the failure came from conflicting local state or repo drift.
|
|
144
144
|
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
# audit-harness-fit
|
|
2
|
+
|
|
3
|
+
현재 합의와 리포의 근거를 기준으로 에이전트 지침·스킬을 정비하고,
|
|
4
|
+
`AGENTS.md` / `CLAUDE.md`의 프로젝트 맥락을 채우는 스킬입니다.
|
|
5
|
+
후보 수를 제한하지 않고, 같은 원인을 묶어 영향도순으로 보고합니다.
|
|
6
|
+
|
|
7
|
+
## 디렉터리
|
|
8
|
+
|
|
9
|
+
```text
|
|
10
|
+
audit-harness-fit/
|
|
11
|
+
├── SKILL.md
|
|
12
|
+
├── README.md
|
|
13
|
+
├── references/
|
|
14
|
+
│ ├── audit.md
|
|
15
|
+
│ ├── verification.md
|
|
16
|
+
│ ├── apply.md
|
|
17
|
+
│ └── populate.md
|
|
18
|
+
└── evals/
|
|
19
|
+
└── scenarios.yaml
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
`SKILL.md`는 진입점입니다. 감사, 검증 설계, 승인된 적용, 맥락 채우기별로
|
|
23
|
+
필요한 참조만 읽도록 구성했습니다. 이 README와 evals는 관리·검토용이며
|
|
24
|
+
일반 실행의 필수 컨텍스트가 아닙니다. 별도 실행 스크립트·모델 API 키·훅은 없습니다.
|
|
25
|
+
|
|
26
|
+
## 하는 일
|
|
27
|
+
|
|
28
|
+
| 영역 | 결과 |
|
|
29
|
+
|---|---|
|
|
30
|
+
| 불필요한 질문·반복 검증 | 실제 지연을 만드는 지시와 조건부 교체 문안, 유효한 근거 재사용 조건 |
|
|
31
|
+
| 지침 충돌 | 양쪽 원문, 충돌 상황, 확정된 현재 의도와 실제 구현, 수정안 |
|
|
32
|
+
| 과도한 원칙·불필요한 스킬 | 유지·수정·조건 축소·통합·이관·제거·보류 판단과 의존 관계 |
|
|
33
|
+
| 긴 결정 사유·히스토리 | 본문·메뉴에는 현재 지시만, 이력은 필요할 때 읽는 별도 문서로 참조 |
|
|
34
|
+
| 테스트·상위 모델 위임 | 사용자 사용 장면 → 구현 경로 → 충분한 검증, 필요한 판단만 조건부 위임 |
|
|
35
|
+
| 프로젝트 맥락 | 실제 리포로 기존 스캐폴드를 채우거나 갱신하고 미확정 정보는 그대로 표시 |
|
|
36
|
+
|
|
37
|
+
전체 감사는 다섯 감사 영역을 다룹니다. 특정 영역만 요청하면 범위를 확대하지
|
|
38
|
+
않습니다. 문제를 억지로 만들지 않으며, 결과가 많아도 임의의 상위 개수로 자르지
|
|
39
|
+
않습니다. 중요한 미확인 영역과 생략된 상세 내용은 따로 표시합니다.
|
|
40
|
+
|
|
41
|
+
## 사용
|
|
42
|
+
|
|
43
|
+
감사만 수행:
|
|
44
|
+
|
|
45
|
+
```text
|
|
46
|
+
audit-harness-fit으로 현재 적용되는 지침과 Skill을 전체 점검해줘.
|
|
47
|
+
후보 수를 제한하지 말고 중복을 묶어 영향도순으로 정리해줘.
|
|
48
|
+
원문·문제 상황·수정안과 확인/미확인 경로를 보여줘. 파일은 수정하지 마.
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
확인한 제안 적용:
|
|
52
|
+
|
|
53
|
+
```text
|
|
54
|
+
audit-harness-fit의 F-02, F-04 수정안을 해당 로컬 지침 파일에 반영해줘.
|
|
55
|
+
기존 승인 범위와 필수 보호장치를 유지하고, 추가 권한이 필요한 변경은 분리해줘.
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
프로젝트 맥락 채우기:
|
|
59
|
+
|
|
60
|
+
```text
|
|
61
|
+
audit-harness-fit으로 AGENTS.md와 CLAUDE.md의 미완성 프로젝트 맥락을
|
|
62
|
+
현재 리포 기준으로 채워줘. 공통 원칙·import·기존 사용자 내용은 보존하고,
|
|
63
|
+
핵심 사용 장면과 검증 기준을 연결해줘. 확인되지 않은 내용은 미확정으로 남겨줘.
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
기존 맥락을 갱신할 때는 "미완성 내용을 채워줘" 대신 "프로젝트 맥락을 최신
|
|
67
|
+
리포와 확정된 결정에 맞춰 갱신해줘"로 요청합니다. 일반 개발 요청마다 전체
|
|
68
|
+
감사를 실행하거나 스캐폴드를 자동으로 다시 채우는 방식은 사용하지 않습니다.
|
|
69
|
+
|
|
70
|
+
## 배치와 기존 저장소 반영
|
|
71
|
+
|
|
72
|
+
ZIP 최상위는 `audit-harness-fit/` 하나입니다. 전체 폴더를 사용하는 클라이언트가
|
|
73
|
+
인식하는 스킬 디렉터리에 배치합니다. 클라이언트별 로딩 경로는 실제 설정에서
|
|
74
|
+
확인하고, ZIP을 풀었다는 것만으로 등록·로딩이 완료됐다고 판단하지 않습니다.
|
|
75
|
+
|
|
76
|
+
사용자가 지정한 하네스 저장소의 배포 위치는 다음 형태로 반영할 수 있습니다.
|
|
77
|
+
|
|
78
|
+
```text
|
|
79
|
+
templates/skills/audit-harness-fit/SKILL.md
|
|
80
|
+
templates/skills/audit-harness-fit/references/...
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
기존 폴더와 먼저 비교하고 로컬 수정사항을 보존합니다. 덮어쓰기만으로 옛 파일이
|
|
84
|
+
삭제되는 것은 아닙니다. 예전 `references/official-criteria.md` 등의 기존 문서는
|
|
85
|
+
이 실행 경로에서 요구하지 않지만, 참조·테스트·이력 보존 필요를 확인하기 전에는
|
|
86
|
+
일괄 삭제하지 않습니다. 배포/로컬 사본이 있다면 저장소의 동기화 방식도 확인합니다.
|
|
87
|
+
|
|
88
|
+
기본 추천 설치는 기존 자산 ID로 유지하는 통합 작업입니다. 이 ZIP에는 설치기
|
|
89
|
+
코드 변경이 포함되지 않습니다. 설치 후 안내에는 스킬이 실제 설치된 경우에만
|
|
90
|
+
"이 스킬로 프로젝트 맥락을 채워 달라"는 문장을 연결하고, 기존 FILL 지시와의
|
|
91
|
+
충돌은 함께 정리합니다. 모든 요청에 붙는 자동 감사 훅은 추가하지 않습니다.
|
|
92
|
+
|
|
93
|
+
## 검토와 제한
|
|
94
|
+
|
|
95
|
+
[행동 시나리오](evals/scenarios.yaml)는 이 스킬을 개정하거나 특정 동작을 점검할
|
|
96
|
+
때 선택해 쓰는 합성 사례입니다. 별도의 자동 실행기나 실행 결과가 아닙니다.
|
|
97
|
+
일반 프로젝트 작업의 추가 테스트 게이트로 읽거나 실행하지 않습니다.
|
|
98
|
+
|
|
99
|
+
필수 테스트·독립 리뷰·보안·데이터 보호·배포 승인은 유지합니다. 감사는 읽기
|
|
100
|
+
전용이고, 명시된 범위의 수정만 적용합니다. 상위 모델 사용은 실제 도구·권한·
|
|
101
|
+
데이터·비용 조건이 허용할 때만 가능합니다. 모델의 판단은 테스트 실행 증거가
|
|
102
|
+
아니며, 사용 가능한 리뷰어가 없으면 필수 리뷰를 통과했다고 표시하지 않습니다.
|
|
103
|
+
|
|
104
|
+
폴더와 문서 형식 확인은 실제 클라이언트 로딩, 에이전트 행동, 설치기 연동 테스트를
|
|
105
|
+
대체하지 않습니다. 이 패키지만으로 GitHub 저장소나 사용자의 설치 환경을 바꾸지
|
|
106
|
+
않습니다.
|
|
107
|
+
|
|
108
|
+
## 형식 참고
|
|
109
|
+
|
|
110
|
+
- [Agent Skills specification](https://agentskills.io/specification)
|
|
111
|
+
- [OpenAI Skills guide](https://developers.openai.com/api/docs/guides/tools-skills)
|
|
112
|
+
|
|
113
|
+
위 문서는 형식 참고용이며 매 감사에서 다시 읽어야 하는 입력이 아닙니다.
|