@walwal-harness/cli 7.1.6 → 7.1.8

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.
Files changed (35) hide show
  1. package/HR-Resource/cdo/SKILL.md +3 -0
  2. package/HR-Resource/ceo/SKILL.md +25 -0
  3. package/HR-Resource/coo/SKILL.md +3 -0
  4. package/HR-Resource/cqo/SKILL.md +23 -0
  5. package/HR-Resource/cto/SKILL.md +23 -0
  6. package/HR-Resource/hiring/SKILL.md +23 -1
  7. package/HR-Resource/index.json +19 -43
  8. package/HR-Resource/marketing-marketing-cross-border-ecommerce/SKILL.md +108 -223
  9. package/HR-Resource/marketing-marketing-global-marketplace-operator/SKILL.md +175 -0
  10. package/HR-Resource/marketing-marketing-google-seo-specialist/SKILL.md +91 -0
  11. package/HR-Resource/marketing-marketing-instagram-commerce-strategist/SKILL.md +81 -0
  12. package/HR-Resource/marketing-marketing-korea-global-market-localization-strategist/SKILL.md +186 -0
  13. package/HR-Resource/marketing-marketing-livestream-commerce-coach/SKILL.md +88 -272
  14. package/HR-Resource/marketing-marketing-naver-seo-specialist/SKILL.md +88 -0
  15. package/HR-Resource/marketing-marketing-short-video-editing-coach/SKILL.md +99 -395
  16. package/HR-Resource/marketing-marketing-youtube-shopping-strategist/SKILL.md +82 -0
  17. package/HR-Resource/ops/SKILL.md +3 -0
  18. package/HR-Resource/resource-manager/SKILL.md +5 -1
  19. package/README.md +26 -0
  20. package/assets/templates/AGENTS-ko /341/204/207/341/205/251/341/206/250/341/204/211/341/205/241/341/204/207/341/205/251/341/206/253.md" +114 -0
  21. package/assets/templates/AGENTS.md.template +1 -0
  22. package/package.json +1 -1
  23. package/scripts/harness-worker-evidence-validate.sh +26 -0
  24. package/HR-Resource/engineering-engineering-feishu-integration-developer/SKILL.md +0 -615
  25. package/HR-Resource/engineering-engineering-wechat-mini-program-developer/SKILL.md +0 -367
  26. package/HR-Resource/marketing-marketing-baidu-seo-specialist/SKILL.md +0 -243
  27. package/HR-Resource/marketing-marketing-bilibili-content-strategist/SKILL.md +0 -216
  28. package/HR-Resource/marketing-marketing-china-ecommerce-operator/SKILL.md +0 -300
  29. package/HR-Resource/marketing-marketing-china-market-localization-strategist/SKILL.md +0 -300
  30. package/HR-Resource/marketing-marketing-douyin-strategist/SKILL.md +0 -166
  31. package/HR-Resource/marketing-marketing-kuaishou-strategist/SKILL.md +0 -240
  32. package/HR-Resource/marketing-marketing-wechat-official-account/SKILL.md +0 -162
  33. package/HR-Resource/marketing-marketing-weibo-strategist/SKILL.md +0 -257
  34. package/HR-Resource/marketing-marketing-xiaohongshu-specialist/SKILL.md +0 -155
  35. package/HR-Resource/marketing-marketing-zhihu-strategist/SKILL.md +0 -179
@@ -21,6 +21,10 @@ Manage worker availability and invocation wording.
21
21
 
22
22
  1. Check whether the requester is a CXX. CEO cannot request specialist worker assignment directly.
23
23
  2. Check whether a suitable worker is already hired for that owning CXX.
24
- 3. If hired, return the exact skill name, owning CXX, hierarchical installed paths, and mission report path.
24
+ 3. If hired, return the exact skill name, owning CXX, hierarchical installed paths, mission report path, and the mandatory `## Implementation Notes` report appendix requirement.
25
25
  4. If not hired, suggest `.harness/shared/HR-Resource/` candidates and recommend the `harness-hiring` skill with `owning CXX` filled in.
26
26
  5. Keep aliases narrow enough to avoid accidental generic invocation.
27
+
28
+ ## Mandatory Worker Report Appendix
29
+
30
+ Every worker assignment must require the worker to append an English `## Implementation Notes` section with these subsections: `Design Decisions`, `Deviations`, `Tradeoffs`, and `Open Questions`. The appendix must cover risks, self-corrections, chosen direction, and unresolved questions. Use `None` for empty subsections.
package/README.md CHANGED
@@ -93,6 +93,30 @@ Owner /hot-fix → CEO → CTO → [dev workers] → CQO → [evaluator workers]
93
93
  | 6 | CEO routes only to CXX — never directly to workers |
94
94
  | 7 | No CXX self-execution — deliverables without matching worker records are rejected |
95
95
  | 8 | No verdict without worker evidence — CQO self-inspection is not valid |
96
+ | 9 | Hierarchical worker ownership — worker reports live under `.harness/documents/{mission}/{owning-cxx}/workers/` |
97
+ | 10 | Implementation Notes required — `ceo.md`, every `{cxx}.md`, and every worker report must end with an English `## Implementation Notes` section |
98
+
99
+ ### Implementation Notes Format
100
+
101
+ Every `ceo.md`, `{cxx}.md`, and worker report must end with:
102
+
103
+ ```markdown
104
+ ## Implementation Notes
105
+
106
+ ### Design Decisions
107
+ - How the role interpreted the Owner request
108
+
109
+ ### Deviations
110
+ - Where the role intentionally diverged from the request
111
+
112
+ ### Tradeoffs
113
+ - Alternatives considered and why they were rejected
114
+
115
+ ### Open Questions
116
+ - What still needs Owner or CXX confirmation
117
+ ```
118
+
119
+ Use `None` when a subsection has no entries. This section is mandatory even for small or emergency work. CEO must reject any CXX report that omits it. CTO and CQO must not accept worker output that omits it.
96
120
 
97
121
  ---
98
122
 
@@ -145,6 +169,8 @@ harness-hiring → register and onboard worker
145
169
 
146
170
  | Version | Summary |
147
171
  |---|---|
172
+ | 7.1.8 | HR-Resource: replace China-platform-specific workers with global equivalents; refine cross-border/video/livestream skills |
173
+ | 7.1.7 | Implementation Notes mandatory in all CXX docs and worker reports; harness-worker-evidence-validate.sh |
148
174
  | 7.1.6 | CXX hierarchy enforcement: CEO→CXX-only gate, CTO prerequisite gate, CQO worker-evidence mandate; dashboard gotchas tab, mission-specific history tab, worker file list in flow |
149
175
  | 7.1.5 | Dashboard: mission flow timeline, markdown viewer, 50vw drawer |
150
176
  | 7.1.4 | Dashboard: org-tree redesign with real `.harness/documents/` data |
@@ -0,0 +1,114 @@
1
+ # AGENTS.md — {{PROJECT_NAME}}
2
+ # walwal-harness v7.1 | Company Mode
3
+ # 설치일: {{DATE}} | CLAUDE.md는 이 파일의 심볼릭 링크입니다.
4
+
5
+ ---
6
+
7
+ ## 1. 진입점
8
+
9
+ Owner가 회사에 접근하는 명령은 두 개뿐이다. 그 외의 경로는 없다.
10
+
11
+ | 명령 | 사용 시점 |
12
+ |---|---|
13
+ | `/goal` | 미션 설정, 수정, 추가 |
14
+ | `/hot-fix` | 활성 goal과 독립된 긴급 수정 |
15
+
16
+ `/ceo`, `/cto`, `/cqo`, `/coo`, `/cdo`, `/ops`, `/hiring`은 slash command가 아니다.
17
+ 내부 라우팅은 agent/skill wiring으로만 처리한다.
18
+
19
+ ---
20
+
21
+ ## 2. 행동 전 확인
22
+
23
+ 가정하지 않는다. 불명확한 것을 숨기지 않는다.
24
+
25
+ - 구현 전 가정을 명시한다. 불확실하면 질문한다.
26
+ - 여러 접근이 가능하면 모두 제시한다 — 조용히 선택하지 않는다.
27
+ - 요청을 해결하는 최소한의 변경만 한다. 추측성 scope는 금지.
28
+ - 불명확한 부분이 있으면 멈춘다. 무엇이 불명확한지 명시하고 질문한다.
29
+
30
+ hot-fix: 가장 작은 올바른 패치만. 인접 코드를 "개선"하지 않는다.
31
+ goal: CEO가 CXX에 라우팅하기 전에 검증 가능한 성공 기준을 정의한다.
32
+
33
+ ---
34
+
35
+ ## 3. Company 구조
36
+
37
+ ```
38
+ Owner
39
+ └─ /goal 또는 /hot-fix
40
+ └─ harness-ceo 오케스트레이터 — Owner의 유일한 접점
41
+ ├─ harness-coo 리서치, 가설, 서비스 방향
42
+ ├─ harness-cdo 브랜딩, UI/UX, 디자인 리뷰
43
+ ├─ harness-cto 아키텍처, API, 플랫폼, 구현 총괄
44
+ ├─ harness-cqo 품질 게이트, 회귀, archive, gotcha/convention 관리
45
+ └─ harness-ops 빌드 모니터링, 로그 분석, 서비스 이벤트
46
+ ```
47
+
48
+ 각 CXX는:
49
+ - **독립된 fresh session 컨텍스트**에서 실행된다 — CEO 세션과 메모리를 공유하지 않는다
50
+ - 결정을 `.harness/documents/{mission_name}/{cxx}.md`에 기록한다
51
+ - 모든 전문 작업을 hired worker에게 위임한다 — 직접 실행하지 않는다
52
+ - 필요한 worker가 없으면 `harness-hiring`을 먼저 호출한다
53
+
54
+ CEO는 worker 기록 없이 완료된 산출물을 포함한 CXX 보고서를 거부한다.
55
+
56
+ ---
57
+
58
+ ## 4. 미션 플로우
59
+
60
+ ### Goal
61
+
62
+ 1. CEO가 Owner 요청을 읽고 판단한다: 브레인스토밍 먼저, 또는 즉시 실행.
63
+ 2. CEO가 관련 CXX에게만 범위를 한정한 질문을 전달한다.
64
+ 3. 각 CXX가 worker를 고용하고, 위임하고, 결과를 수집하여 `{cxx}.md`에 기록한다.
65
+ 4. CEO가 CXX 산출물을 종합하여 다음 CXX에 라우팅하거나 Owner에게 보고한다.
66
+
67
+ **완료 기준:** `.harness/documents/{mission_name}/ceo.md`에 최종 Owner 보고가 존재한다.
68
+
69
+ ### Hot Fix
70
+
71
+ 1. CEO가 긴급 요청을 받고 즉시 CTO와 CQO를 소집한다.
72
+ 2. CTO가 최소 패치 경로를 설계하고 구현 worker를 고용한다.
73
+ 3. Worker가 구현한다. CTO가 worker 증거를 검증하고 `cto.md`를 작성한다.
74
+ 4. CQO가 회귀 게이트를 실행한다. `.harness/gotchas/` 또는 `.harness/conventions/`에 교훈을 등록하고 `cqo.md`를 작성한다.
75
+ 5. CQO 판정 **PASS** 이후에만 archive한다.
76
+
77
+ **완료 기준:** `cto.md`, `cqo.md`, 그리고 최소 하나의 신규 gotcha 또는 convention 항목이 존재한다.
78
+
79
+ 주의: harness 문서(ceo.md, cto.md, cqo.md, worker 보고서)에 대한 docmeta skip 판단은 미션 프로토콜 단계를 건너뛸 권한을 부여하지 않는다. 이 파일들은 분석 산출물이 아니라 미션 기록이다.
80
+
81
+ ---
82
+
83
+ ## 5. 하네스 런타임
84
+
85
+ | 경로 | 역할 |
86
+ |---|---|
87
+ | `.harness/documents/{mission}/` | 미션별 CXX 결정 기록 및 worker 보고서 |
88
+ | `.harness/conventions/` | 지속 규칙 (CQO가 작성, 미션을 넘어 유지) |
89
+ | `.harness/gotchas/` | 재발 방지 기록 (CQO가 hot-fix마다 작성) |
90
+ | `.harness/memories/` | 장기 공유 컨텍스트 |
91
+ | `.harness/shared/HR-Resource/` | 채용 가능한 worker skill pool |
92
+ | `.harness/archive/` | CQO 승인 완료 미션 (불변) |
93
+ | `.harness/logs/YYYY-MM-DD/` | OPS 예외 로그 (비정상 케이스만) |
94
+
95
+ `.harness/`는 미션 상태 저장소다. 빌드 산출물이 아니다. 삭제하지 않는다.
96
+
97
+ ---
98
+
99
+ ## 6. 금지 규칙
100
+
101
+ 1. **`{mission}/cto.md` 없이 소스 코드 편집 금지** — CTO의 범위 승인이 있어야 소스 파일을 수정할 수 있다.
102
+ 2. **CXX 사칭 금지** — 현재 모델이 CEO/CTO/CQO를 인라인으로 대행하지 않는다. 설치된 harness skill을 fresh session에서 사용한다.
103
+ 3. **이름 없는 worker 금지** — 모든 전문 작업은 `harness-hiring` → `harness-resource-manager`를 거친다.
104
+ 4. **CQO 판정 없이 archive 금지** — 명시적 PASS가 담긴 `{mission}/cqo.md`가 존재해야 한다.
105
+ 5. **gotcha 등록 생략 금지** — 모든 hot-fix는 `.harness/gotchas/` 또는 `.harness/conventions/`에 최소 하나의 항목을 만든다.
106
+ 6. **미션 중 이 파일 편집 금지** — AGENTS.md를 수정하려면 별도 `/goal`을 제출한다.
107
+
108
+ ---
109
+
110
+ ## 7. 프로젝트 컨텍스트
111
+
112
+ - **기술 스택**: {{TECH_STACK}}
113
+ - **프로젝트 구조**: {{PROJECT_STRUCTURE}}
114
+ - **하네스 설치일**: {{DATE}}
@@ -108,6 +108,7 @@ Note: A docmeta skip decision on harness documents (ceo.md, cto.md, cqo.md, work
108
108
  8. **No CXX self-execution** — CXX agents coordinate and manage only. A CXX that produces deliverables without matching worker records has violated its scope. CEO must reject such reports.
109
109
  9. **No verdict without worker evidence** — CQO cannot issue ACCEPTED/REJECTED without a Worker Evidence Manifest referencing at least one evaluator worker. Self-inspection by CQO is not valid evidence.
110
110
  10. **Hierarchical worker ownership** — Hired workers are installed under `.claude/skills/{owning-cxx}/{worker}/` and `.codex/skills/{owning-cxx}/{worker}/`; mission worker reports live under `.harness/documents/{mission}/{owning-cxx}/workers/`. Flat `{mission}/workers/` reports are legacy and signal an ownership violation unless explicitly migrated.
111
+ 11. **Implementation Notes required** — `ceo.md`, every `{cxx}.md`, and every worker report must end with an English `## Implementation Notes` section containing `Design Decisions`, `Deviations`, `Tradeoffs`, and `Open Questions`. Use `None` for empty subsections.
111
112
 
112
113
  ---
113
114
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@walwal-harness/cli",
3
- "version": "7.1.6",
3
+ "version": "7.1.8",
4
4
  "description": "Company-style AI agent harness for Claude and Codex. Installs commands, CXX agents, skills, HR-Resource hiring pool, and project-local .harness runtime state.",
5
5
  "bin": {
6
6
  "walwal-harness": "bin/init.js"
@@ -10,6 +10,16 @@ DOC_ROOT="$PROJECT_ROOT/.harness/documents"
10
10
  mode="${2:-text}"
11
11
  violations=()
12
12
 
13
+ has_implementation_notes() {
14
+ local file="$1"
15
+ [ -s "$file" ] || return 1
16
+ grep -Eq '^##[[:space:]]+Implementation Notes[[:space:]]*$' "$file" &&
17
+ grep -Eq '^###[[:space:]]+Design Decisions[[:space:]]*$' "$file" &&
18
+ grep -Eq '^###[[:space:]]+Deviations[[:space:]]*$' "$file" &&
19
+ grep -Eq '^###[[:space:]]+Tradeoffs[[:space:]]*$' "$file" &&
20
+ grep -Eq '^###[[:space:]]+Open Questions[[:space:]]*$' "$file"
21
+ }
22
+
13
23
  has_worker_report() {
14
24
  local mission_dir="$1"
15
25
  local owner="${2:-}"
@@ -29,6 +39,11 @@ for mission_dir in "$DOC_ROOT"/*; do
29
39
  [ -d "$mission_dir" ] || continue
30
40
  mission_name="$(basename "$mission_dir")"
31
41
 
42
+ ceo_path="$mission_dir/ceo.md"
43
+ if [ -s "$ceo_path" ] && ! has_implementation_notes "$ceo_path"; then
44
+ violations+=("$mission_name:ceo.md-missing-implementation-notes")
45
+ fi
46
+
32
47
  if has_legacy_flat_worker_report "$mission_dir"; then
33
48
  violations+=("$mission_name:legacy-flat-workers")
34
49
  fi
@@ -36,9 +51,20 @@ for mission_dir in "$DOC_ROOT"/*; do
36
51
  for cxx in coo cdo cto cqo ops; do
37
52
  cxx_path="$mission_dir/$cxx.md"
38
53
  [ -s "$cxx_path" ] || continue
54
+ if ! has_implementation_notes "$cxx_path"; then
55
+ violations+=("$mission_name:$cxx.md-missing-implementation-notes")
56
+ fi
39
57
  if ! has_worker_report "$mission_dir" "$cxx"; then
40
58
  violations+=("$mission_name:$cxx.md")
41
59
  fi
60
+ workers_dir="$mission_dir/$cxx/workers"
61
+ [ -d "$workers_dir" ] || continue
62
+ for worker_report in "$workers_dir"/*.md; do
63
+ [ -e "$worker_report" ] || continue
64
+ if ! has_implementation_notes "$worker_report"; then
65
+ violations+=("$mission_name:$cxx/workers/$(basename "$worker_report")-missing-implementation-notes")
66
+ fi
67
+ done
42
68
  done
43
69
 
44
70
  cqo_path="$mission_dir/cqo.md"