tink-harness 1.17.2 → 1.18.1

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.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "tink",
3
3
  "description": "A small harness layer for Claude Code and Codex.",
4
- "version": "1.17.2",
4
+ "version": "1.18.1",
5
5
  "author": {
6
6
  "name": "dotori"
7
7
  }
package/CHANGELOG.md CHANGED
@@ -4,6 +4,16 @@ All notable changes to Tink are tracked here.
4
4
 
5
5
  ## Unreleased
6
6
 
7
+ ## [1.18.1] - 2026-07-01
8
+
9
+ - `/tink:doc-audit` 커맨드 추가: `ko-tech-doc-audit` 하네스 단축 호출. 독자를 "온보딩 신입 개발자"로 고정하고 페르소나·산출물 형태는 기본값 사용. `npx tink-harness update`로 설치·업데이트 가능.
10
+
11
+ ## [1.18.0] - 2026-06-30
12
+
13
+ - `ko-tech-doc-audit` 하네스 추가: 한국어 기술 문서의 내용 완성도 감사. 공허한 주장·빠진 근거·실행 불가 문장·빠진 검증·실패 조건을 적발한다. 문체 정리는 Patina에 위임. cast 시점에 페르소나(보안 엔지니어, 주니어 독자, 온콜 엔지니어 등) 주입 가능; 페르소나는 관점·어조만 바꾸고 합격 기준(주장-근거 연결 규칙)은 고정이다.
14
+ - `/tink:cast 승인 흐름 데모 스크린샷 추가.
15
+ - `ROADMAP.md` repo에서 제거 (`.gitignore`로 이동).
16
+
7
17
  ## [1.17.2] - 2026-06-30
8
18
 
9
19
  - E2E 테스트 5종 추가: install smoke, update preservation, Codex surface, pack manifest, metadata 검증.
package/README.ko.md CHANGED
@@ -66,6 +66,8 @@ $tink:cast 인증 모듈 리팩터링 # Codex
66
66
 
67
67
  `cast`는 작업에 맞는 하네스를 고르고(없으면 초안을 만들고), `.tink/current/`에 보이는 계획을 쓰고, 승인 후 첫 안전한 단계를 시작합니다.
68
68
 
69
+ ![/tink:cast 승인 흐름 — 목표·하네스 선택·파일 생성·진행도 표시](.github/assets/demo-cast.png)
70
+
69
71
  ![Tink 대시보드 데모 — 건강 그룹 클릭, 하네스 카드 탐색, 3D 지도 조작](.github/assets/demo.gif)
70
72
 
71
73
  <sub>워크플로와 맞는다면 ⭐ 하나가 다른 개발자들이 찾는 데 도움이 됩니다.</sub>
package/README.md CHANGED
@@ -66,6 +66,8 @@ $tink:cast refactor the auth module # Codex
66
66
 
67
67
  `cast` picks (or drafts) the right harness, writes a visible plan into `.tink/current/`, and starts the first safe step after your approval.
68
68
 
69
+ ![tink:cast approval flow — goals, harness selection, .tink/current/ files created, and progress indicator](.github/assets/demo-cast.png)
70
+
69
71
  ![Tink dashboard demo - clicking a health group, browsing harness cards, and inspecting the 3D map](.github/assets/demo.gif)
70
72
 
71
73
  <sub>If this matches your workflow, a ⭐ helps other developers find it.</sub>
package/VERSIONING.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Versioning
2
2
 
3
- Current version: `1.17.2`
3
+ Current version: `1.18.1`
4
4
 
5
5
  Tink follows semver from `1.0.0` onward.
6
6
 
@@ -0,0 +1,21 @@
1
+ ---
2
+ description: Audit Korean technical document content completeness using ko-tech-doc-audit harness. Reader is fixed as onboarding junior developer.
3
+ ---
4
+
5
+ # /tink:doc-audit
6
+
7
+ 한국어 기술 문서 내용 완성도 감사 단축 커맨드. `ko-tech-doc-audit` 하네스를 직접 호출한다.
8
+
9
+ 고정 기본값:
10
+ - 독자: 온보딩 신입 개발자 (변경 불가)
11
+ - 페르소나: 한국어 기술 문서 편집자 (기본)
12
+
13
+ 사용법: /tink:doc-audit [문서 경로] ["작업 설명"]
14
+
15
+ 이 명령을 받으면 /tink:cast를 ko-tech-doc-audit 하네스로 실행한다.
16
+ Ask first의 "독자" 항목은 "온보딩 신입 개발자"로 이미 답한 것으로 처리하며
17
+ .tink/current/answers.md에 자동 기록한다.
18
+ 나머지 항목(페르소나, 산출물 형태)은 기본값 또는 인자에서 추론한다.
19
+
20
+ $ARGUMENTS
21
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tink-harness",
3
- "version": "1.17.2",
3
+ "version": "1.18.1",
4
4
  "description": "Self-growing harnesses for Claude Code and Codex.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -0,0 +1,21 @@
1
+ ---
2
+ description: Audit Korean technical document content completeness using ko-tech-doc-audit harness. Reader is fixed as onboarding junior developer.
3
+ ---
4
+
5
+ # /tink:doc-audit
6
+
7
+ 한국어 기술 문서 내용 완성도 감사 단축 커맨드. `ko-tech-doc-audit` 하네스를 직접 호출한다.
8
+
9
+ 고정 기본값:
10
+ - 독자: 온보딩 신입 개발자 (변경 불가)
11
+ - 페르소나: 한국어 기술 문서 편집자 (기본)
12
+
13
+ 사용법: /tink:doc-audit [문서 경로] ["작업 설명"]
14
+
15
+ 이 명령을 받으면 /tink:cast를 ko-tech-doc-audit 하네스로 실행한다.
16
+ Ask first의 "독자" 항목은 "온보딩 신입 개발자"로 이미 답한 것으로 처리하며
17
+ .tink/current/answers.md에 자동 기록한다.
18
+ 나머지 항목(페르소나, 산출물 형태)은 기본값 또는 인자에서 추론한다.
19
+
20
+ $ARGUMENTS
21
+
@@ -29,6 +29,7 @@
29
29
  ## 합성된 도메인 하네스
30
30
 
31
31
  - **[pre-publish-multi-agent-verify](./pre-publish-multi-agent-verify.md)** (small) — 공개 publish 직전 격리 환경에서 여러 에이전트로 install·UX·docs·leak·slash 표면을 병렬 검증. 시나리오 사전 잠금, evidence-only, blocker/major/minor/nit 분류.
32
+ - **[ko-tech-doc-audit](./ko-tech-doc-audit.md)** (small) — 한국어 기술 문서의 내용 완성도 감사. 공허한 주장·빠진 근거·실행 불가 문장·빠진 검증·실패 조건을 적발하고, 문체 정리는 Patina에 위임. cast 시점에 페르소나(보안 엔지니어, 주니어 독자, 온콜 엔지니어 등) 주입 가능.
32
33
 
33
34
  ## 사용 원칙
34
35
 
@@ -247,5 +247,22 @@
247
247
  "Minimum viable change only",
248
248
  "Triggering scenario verified"
249
249
  ]
250
+ },
251
+ {
252
+ "name": "ko-tech-doc-audit",
253
+ "kind": "synthesized",
254
+ "context": "small",
255
+ "use_when": "Audit Korean technical document content completeness — find empty claims, missing evidence, unactionable sentences, missing verification, and missing failure conditions. Use when the document reads well but leaves no information behind. Persona (reviewer perspective) is injectable at cast time.",
256
+ "asks": [
257
+ "Which document should be audited?",
258
+ "Which reviewer persona should be applied? (default: Korean technical document editor)",
259
+ "Should the output include a revised version, or findings only?"
260
+ ],
261
+ "checks": [
262
+ "Every key claim linked to evidence, procedure, verification, or failure condition",
263
+ "Empty claims, unactionable sentences, missing verification, missing failure conditions listed",
264
+ "No facts added that are absent from the original",
265
+ "Persona does not weaken acceptance criteria"
266
+ ]
250
267
  }
251
268
  ]
@@ -0,0 +1,80 @@
1
+ # ko-tech-doc-audit
2
+
3
+ ## When to use
4
+ 한국어 기술 문서·README·PR 설명·기술 노트의 **내용 완성도**를 검증하거나 개선할 때. "다 읽고 나서 뭘 읽은 건지 모르겠다"는 느낌을 유발하는 공허한 주장, 빠진 근거, 실행 불가 문장을 잡는 것이 목적이다.
5
+
6
+ Good triggers: "이 문서 검토해줘", "내용이 비어 보여", "그럴싸한데 알맹이가 없어", "AI가 쓴 것 같아서 다시 봐줘".
7
+
8
+ Do not use for: 단순 맞춤법·오타(기본 절차로 충분), 코드 품질 리뷰(`review-two-axis`), 영문 문서.
9
+
10
+ ## Persona
11
+ 기본 페르소나: **한국어 기술 문서 편집자** — 읽고 나서 "그래서 뭘 읽은 거지?"라는 느낌이 들지 않게 고치는 편집자.
12
+
13
+ cast 시점에 다른 페르소나를 주입할 수 있다:
14
+ - `"보안 엔지니어"` → 보안 주장·위협 모델·실패 조건에 집중
15
+ - `"도메인 처음 보는 주니어 독자"` → 용어 설명·전제 명시·실행 가능성에 집중
16
+ - `"운영 온콜 엔지니어"` → 장애 재현·롤백·실패 조건에 집중
17
+
18
+ **페르소나는 검토 관점·강조점·어조만 바꾼다. 아래 합격 기준(주장-근거 연결, 7대 기준)은 페르소나와 무관하게 고정이다.** 선택된 페르소나는 `.tink/current/answers.md`에 기록한다.
19
+
20
+ ## Ask first
21
+ - 검토 대상 문서 경로 또는 내용은 무엇인가?
22
+ - 적용할 페르소나는? (미지정 시 기본값: "한국어 기술 문서 편집자")
23
+ - 산출물 형태: 지적 목록만 / 지적 + 수정본
24
+ - 원문에 없는 사실을 추가해도 되는 범위 (기본값: 금지)
25
+
26
+ `.tink/current/answers.md`에 이미 답한 질문은 반복하지 않는다.
27
+
28
+ ## Plan
29
+ 1. 문서의 목적과 독자를 확인한다. 없으면 그것부터 지적한다.
30
+ 2. 핵심 주장을 추출한다.
31
+ 3. 각 주장을 **근거·실행 절차·검증 방법·실패 조건 중 최소 하나와 연결**한다. 연결 안 되는 주장은 공허한 주장으로 표시한다.
32
+ 4. vague-phrase를 탐지한다. 근거 없이 쓰인 아래 표현들은 금지가 아니라 **근거 요구** 대상이다: "효과적입니다", "안정성을 높입니다", "확장성을 제공합니다", "유지보수가 쉬워집니다", "필요에 따라", "적절히", "일반적으로", "결론적으로", "성능이 개선", "정상적으로 동작", "효율적", "유연한 구조".
33
+ 5. 실행 불가능한 문장, 빠진 검증 방법, 빠진 실패 조건을 표시한다.
34
+ 6. 7대 기준으로 점검한다: 목적 / 독자 / 주장 / 근거 / 실행 / 검증 / 한계. 빠진 항목이 있으면 권장 섹션 위치를 안내한다.
35
+ 7. **마지막에만** 문체·AI 티 정리: `/patina --lang ko --tone professional`에 위임한다. Patina는 구조·주장·숫자·인과관계를 보존하고 fidelity floor 미달 시 원복하므로 감사 결과를 재포장하지 않는다. Patina 미설치 시 `/plugin install patina@patina` 안내 후 재실행을 권장한다. 그래도 없으면 번역투·과한 요약문·기계적 반복을 최소 인라인으로 정리한다.
36
+
37
+ **금지**: 원문에 없는 성능 개선·보안 강화·유지보수성 향상을 사실처럼 추가하지 않는다. 코드·설정·로그·테스트 명령이 필요한 곳을 추상 설명으로 대체하지 않는다.
38
+
39
+ ## Checks
40
+ - 모든 핵심 주장이 근거·실행·검증·실패조건 중 하나 이상에 연결됨
41
+ - 공허한 주장·실행 불가 문장·빠진 검증·빠진 실패조건이 목록으로 보고됨
42
+ - 7대 기준 점검 결과가 명시됨
43
+ - 원문에 없는 사실이 추가되지 않음
44
+ - 페르소나가 합격 기준을 약화시키지 않음
45
+
46
+ ## Done means
47
+ 산출물(지적 모드): ① 핵심 주장 목록 ② 공허한 주장 목록 ③ 실행 불가 문장 목록 ④ 빠진 검증 방법 ⑤ 빠진 실패 조건. 수정본 모드 선택 시 ⑥ 수정본도 포함. 독자가 읽고 나서 "뭘 읽었는지"가 명확해진 상태.
48
+
49
+ ## If it fails, Tink back
50
+ - 문서의 목적·독자가 불명확하면 그 지점에서 멈추고 사용자에게 확인한다.
51
+ - 원문에 근거가 없어 주장을 검증할 수 없으면 추측으로 채우지 말고 "근거 필요"로 표시한다.
52
+ - Patina 설치 전이라면 문체 정리 단계를 건너뛰고 내용 감사 결과만 보고한다.
53
+
54
+ ## 선택적 CI 강화
55
+ 반복 자동 강제가 필요하면 아래 조합으로 구성할 수 있다. 설치 강제 아님.
56
+
57
+ ```yaml
58
+ # .github/workflows/docs-quality.yml
59
+ name: docs-quality
60
+ on:
61
+ pull_request:
62
+ paths: ["**/*.md", "docs/**"]
63
+ jobs:
64
+ docs-quality:
65
+ runs-on: ubuntu-latest
66
+ steps:
67
+ - uses: actions/checkout@v4
68
+ - name: Markdown lint
69
+ run: npx markdownlint-cli2 "**/*.md"
70
+ - name: Vale (공허한 주장·AI식 표현)
71
+ run: vale docs README.md
72
+ ```
73
+
74
+ Vale 룰 시작점 (`styles/ko-tech/VagueClaims.yml`):
75
+ ```yaml
76
+ extends: existence
77
+ level: error
78
+ tokens: ["성능이 개선", "안정성이 향상", "보안이 강화", "정상적으로 동작", "효율적", "유연한 구조"]
79
+ message: "추상적 주장입니다. 수치·코드 위치·로그·테스트 명령·실패 조건 중 하나를 추가하세요."
80
+ ```