repo-harness 0.4.3 → 0.5.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.
Files changed (70) hide show
  1. package/README.es.md +74 -20
  2. package/README.fr.md +75 -20
  3. package/README.ja.md +70 -18
  4. package/README.md +136 -42
  5. package/README.zh-CN.md +109 -32
  6. package/SKILL.md +1 -0
  7. package/assets/hooks/session-start-context.sh +130 -0
  8. package/assets/reference-configs/AGENTS.md +13 -0
  9. package/assets/reference-configs/CLAUDE.md +13 -0
  10. package/assets/reference-configs/agentic-development-flow.md +2 -1
  11. package/assets/reference-configs/external-tooling.md +38 -4
  12. package/assets/reference-configs/harness-overview.md +1 -1
  13. package/assets/reference-configs/hook-operations.md +1 -1
  14. package/assets/reference-configs/sprint-contracts.md +4 -0
  15. package/assets/skill-commands/manifest.json +9 -2
  16. package/assets/skill-commands/repo-harness-goal/SKILL.md +51 -0
  17. package/assets/skill-commands/repo-harness-init/SKILL.md +4 -4
  18. package/assets/skill-commands/repo-harness-prd/SKILL.md +15 -6
  19. package/assets/skill-version.json +10 -2
  20. package/assets/templates/contract.template.md +1 -1
  21. package/assets/templates/helpers/check-agent-tooling.sh +114 -4
  22. package/assets/templates/helpers/check-skill-version.ts +3 -1
  23. package/assets/templates/helpers/check-task-workflow.sh +15 -3
  24. package/assets/templates/helpers/ensure-task-workflow.sh +1 -1
  25. package/assets/templates/helpers/verify-contract.sh +12 -4
  26. package/assets/templates/helpers/workflow-contract.ts +3 -1
  27. package/assets/workflow-contract.v1.json +47 -47
  28. package/docs/images/image.png +0 -0
  29. package/install.ps1 +53 -0
  30. package/install.sh +71 -0
  31. package/package.json +5 -2
  32. package/scripts/architecture-event.ts +0 -0
  33. package/scripts/assemble-template.ts +0 -0
  34. package/scripts/capability-config.ts +0 -0
  35. package/scripts/capability-resolver.ts +0 -0
  36. package/scripts/check-agent-tooling.sh +114 -4
  37. package/scripts/check-ci.sh +36 -0
  38. package/scripts/check-npm-release.sh +1 -17
  39. package/scripts/check-skill-version.ts +3 -1
  40. package/scripts/check-task-workflow.sh +15 -3
  41. package/scripts/contract-run.ts +0 -0
  42. package/scripts/create-project-dirs.sh +0 -0
  43. package/scripts/ensure-task-workflow.sh +1 -1
  44. package/scripts/factor-lab-check.sh +0 -0
  45. package/scripts/factor-lab-new.sh +0 -0
  46. package/scripts/factor-lab-promote.sh +0 -0
  47. package/scripts/factor-lab-reject.sh +0 -0
  48. package/scripts/hook-dispatch-diet-report.ts +0 -0
  49. package/scripts/initializer-question-pack.ts +0 -0
  50. package/scripts/lib/project-init-lib.sh +126 -70
  51. package/scripts/loop-engine-cutover-gate.ts +0 -0
  52. package/scripts/migrate-project-template.sh +48 -34
  53. package/scripts/route-nl-vs-ts-eval.ts +0 -0
  54. package/scripts/run-skill-evals.ts +0 -0
  55. package/scripts/run-skill-hook.ts +0 -0
  56. package/scripts/sync-codex-installed-copies.sh +23 -7
  57. package/scripts/verify-contract.sh +12 -4
  58. package/scripts/workflow-contract.ts +3 -1
  59. package/src/cli/commands/doctor.ts +30 -7
  60. package/src/cli/commands/global-runtime.ts +12 -7
  61. package/src/cli/commands/init-hook.ts +89 -2
  62. package/src/cli/commands/init.ts +91 -35
  63. package/src/cli/commands/run.ts +23 -0
  64. package/src/cli/commands/security.ts +2 -2
  65. package/src/cli/commands/status.ts +13 -1
  66. package/src/cli/hook/runtime.ts +2 -2
  67. package/src/cli/index.ts +170 -18
  68. package/src/cli/installer/managed-entries.ts +1 -1
  69. package/src/cli/repo-adoption/reclaim-runtime.ts +682 -0
  70. package/src/cli/runtime/helper-runner.ts +169 -0
package/README.es.md CHANGED
@@ -1,17 +1,26 @@
1
1
  # repo-harness
2
2
 
3
- Repo-local agentic development harness CLI y skill runtime para workflows de
4
- Claude/Codex.
3
+ `repo-harness` convierte las sesiones de programación con Claude/Codex en un
4
+ workflow repo-local repetible. Incluye un CLI y hooks de skill/runtime que
5
+ escriben contexto, planes, handoffs, checks y evidencias de review dentro del
6
+ proyecto, para que la siguiente sesión de agente continúe desde archivos y no
7
+ desde el historial de chat.
8
+
9
+ Úsalo para:
10
+
11
+ - adoptar un repositorio existente con un contrato de agente tasks-first
12
+ - mantener Claude y Codex alineados sobre los mismos planes, checks, handoffs y
13
+ límites de contexto
14
+ - gastar menos tokens redescubriendo estructura gracias a CodeGraph y la carga
15
+ progresiva de contexto
16
+
17
+ Entrega al agente un PRD o Sprint completo; después, tu bucle es solo review and
18
+ `next`, o iniciar `/goal` y quedar AFK.
5
19
 
6
20
  [English](README.md) | [简体中文](README.zh-CN.md) | [日本語](README.ja.md) | [Français](README.fr.md) | [Español](README.es.md)
7
21
 
8
22
  Dirección del repositorio: `https://github.com/Ancienttwo/repo-harness`
9
23
 
10
- `repo-harness` es un harness de workflow que aterriza el proceso de programación
11
- con IA en archivos del repositorio. Es a la vez el repositorio fuente de la CLI
12
- `repo-harness` y de su skill runtime, y el ejemplo autoalojado del workflow
13
- repo-local que él mismo genera para los proyectos downstream.
14
-
15
24
  ## Por qué usar repo-harness
16
25
 
17
26
  - **El estado de la sesión vive en archivos, no en el historial de chat.** Las
@@ -42,7 +51,7 @@ repo-local que él mismo genera para los proyectos downstream.
42
51
  opcionales según el tipo de proyecto y cuatro hook profiles (`standard`,
43
52
  `minimal`, `biome`, `biome-strict`). Ejecuta
44
53
  `npx -y repo-harness init`; no necesitas clonar el repositorio fuente.
45
- - **Comando de refresco del repo (`repo-harness update`).** La instalación y el
54
+ - **Comando de adopción del repo (`repo-harness adopt`).** La instalación y el
46
55
  refresco de repos existentes tienen su propia superficie de comando, manteniendo
47
56
  la ruta de migración repo-local anterior mientras `init` queda dedicado al
48
57
  runtime global.
@@ -100,7 +109,7 @@ En conjunto hay tres capas:
100
109
  1. **Capa del paquete fuente**: este repositorio mantiene la CLI, los command
101
110
  skill facades, los templates, los hook assets, el workflow contract, los tests
102
111
  y el release gate.
103
- 2. **Capa del contract del repositorio objetivo**: `repo-harness update` o la
112
+ 2. **Capa del contract del repositorio objetivo**: `repo-harness adopt` o la
104
113
  migración escribe `docs/spec.md`, `plans/`, `tasks/`, `.ai/context/`,
105
114
  `.ai/harness/`, helper scripts y `.ai/hooks/`.
106
115
  3. **Capa del host adapter**: el `~/.claude/settings.json` y el
@@ -200,15 +209,41 @@ retoma contra un sprint concreto en vez de reinterpretar el chat original.
200
209
  Esta es la ruta más rápida para evaluar si un repositorio real es apto para
201
210
  adoptar este workflow.
202
211
 
203
- ### Instalar o refrescar el runtime local
212
+ ### Instalar el CLI
213
+
214
+ La ruta por defecto no requiere Node.js: el instalador usa Bun como runtime. Si
215
+ Bun no existe, instala Bun primero y después instala el CLI `repo-harness`.
216
+
217
+ ```bash
218
+ # macOS / Linux
219
+ curl -fsSL https://raw.githubusercontent.com/Ancienttwo/repo-harness/main/install.sh | sh
220
+
221
+ # Windows (PowerShell)
222
+ irm https://raw.githubusercontent.com/Ancienttwo/repo-harness/main/install.ps1 | iex
223
+ ```
224
+
225
+ <details>
226
+ <summary>¿Ya tienes Bun o Node? Usa gestores de paquetes</summary>
204
227
 
205
228
  ```bash
229
+ # Bun
230
+ bun add -g repo-harness
231
+ repo-harness init
232
+
233
+ # Node/npm, con Bun ya en PATH porque el CLI corre sobre Bun
206
234
  npx -y repo-harness init
207
235
  ```
208
236
 
209
- La npm package release line y el generated workflow stamp usan ahora la misma
210
- línea `0.4.x`. `repo-harness init` es el bootstrap
211
- global y `repo-harness update` es el refresco repo-local. `repo-harness init`
237
+ </details>
238
+
239
+ ### Bootstrap del runtime del host
240
+
241
+ ```bash
242
+ repo-harness init
243
+ ```
244
+
245
+ `repo-harness init` es el bootstrap global, `repo-harness update` es el refresco
246
+ user-level y `repo-harness adopt` es el refresco repo-local. `repo-harness init`
212
247
  configura el CLI, los hook adapters de nivel usuario, Waza, Mermaid, el brain
213
248
  root y CodeGraph MCP; el viejo camino Claude plugin `scripts/setup-plugins.sh`
214
249
  queda retirado.
@@ -245,17 +280,17 @@ elimina `scripts/sync-codex-installed-copies.sh`.
245
280
  En un repositorio existente, ejecuta desde el repo root:
246
281
 
247
282
  ```bash
248
- npx -y repo-harness update --dry-run
283
+ npx -y repo-harness adopt --dry-run
249
284
  ```
250
285
 
251
286
  Aplica solo después de que el reporte del dry-run sea correcto:
252
287
 
253
288
  ```bash
254
- npx -y repo-harness update
289
+ npx -y repo-harness adopt
255
290
  ```
256
291
 
257
292
  Para un proyecto o módulo nuevo, usa la branch command `repo-harness-scaffold`.
258
- Para un repositorio existente, usa `repo-harness update`; este instala o refresca
293
+ Para un repositorio existente, usa `repo-harness adopt`; este instala o refresca
259
294
  el harness y no crea el stack tecnológico de la aplicación.
260
295
 
261
296
  ### Cómo se ve el éxito
@@ -345,8 +380,8 @@ Guards habituales:
345
380
 
346
381
  ## Release actual
347
382
 
348
- - npm package: `repo-harness@0.4.3`
349
- - Generated workflow stamp: `repo-harness@0.4.3+template@0.4.3`
383
+ - npm package: `repo-harness@0.5.1`
384
+ - Generated workflow stamp: `repo-harness@0.5.1+template@0.5.1`
350
385
  - GitHub repository: `Ancienttwo/repo-harness`
351
386
  - Release history: [`docs/CHANGELOG.md`](docs/CHANGELOG.md)
352
387
 
@@ -360,7 +395,7 @@ Guards habituales:
360
395
  - `assets/workflow-contract.v1.json`
361
396
  - Los generated repos usan por defecto el repo-local harness flow:
362
397
  - `docs/spec.md -> plans/ -> tasks/contracts/ -> tasks/reviews/ -> .ai/context/context-map.json -> .ai/harness/*`
363
- - `repo-harness update` refresca las runtime pieces:
398
+ - `repo-harness update` refresca las runtime pieces de usuario:
364
399
  - los `repo-harness` skill aliases
365
400
  - los global Codex/Claude hook adapters
366
401
  - las Waza skills: `think`, `hunt`, `check`, `health`
@@ -390,10 +425,29 @@ Los command facades públicos están en `assets/skill-commands/`; preservan la
390
425
  compatibilidad de discovery por skills, mientras el CLI y los hooks ejecutan:
391
426
 
392
427
  - Planning / review: `repo-harness-plan`, `repo-harness-review`, `repo-harness-autoplan`
428
+ - Product planning layer: `repo-harness-prd` (activa `$geju`, luego usa drafting Claude-first con `claude -p --model opus`; Codex queda solo como fallback)
429
+ - Sprint program layer: `repo-harness-sprint` (convierte un PRD en un backlog ordenado bajo `plans/sprints/`)
430
+ - Goal session layer: `repo-harness-goal` / `repo-harness:goal` (prepara prompts `/goal` de Codex/Claude desde un PRD o Sprint detallado; si falta el documento, lo pide primero)
393
431
  - Repo workflow actions: `repo-harness-ship`, `repo-harness-init`, `repo-harness-migrate`, `repo-harness-upgrade`, `repo-harness-capability`, `repo-harness-architecture`, `repo-harness-handoff`, `repo-harness-deploy`, `repo-harness-repair`, `repo-harness-check`
394
432
  - Branch project creation: `repo-harness-scaffold`
395
433
 
396
- `repo-harness update` se usa para repositorios existentes; `repo-harness-scaffold`
434
+ La cadena de planning está separada por capas:
435
+
436
+ ```text
437
+ idea -> repo-harness-prd -> repo-harness-sprint from-prd -> repo-harness-goal
438
+ ```
439
+
440
+ Usa `repo-harness-prd` cuando la fuente todavía es una idea de producto: primero
441
+ ejecuta un direction pass con `$geju`, luego pide a Claude vía `claude -p --model opus` que
442
+ redacte el PRD, con Codex solo como fallback. Usa
443
+ `repo-harness-sprint from-prd <plans/prds/*.prd.md>` para convertir un PRD
444
+ aprobado en un Sprint backlog ordenado con acceptance lines verificables por
445
+ máquina. Usa `repo-harness-goal` solo cuando ya exista un PRD o Sprint detallado;
446
+ prepara un prompt `/goal` acotado para Codex/Claude y mantiene el PRD/Sprint como
447
+ source of truth. Si falta ese documento, el goal command debe pedirlo antes de
448
+ empezar implementación desde el chat.
449
+
450
+ `repo-harness adopt` se usa para repositorios existentes; `repo-harness-scaffold`
397
451
  queda como branch command para crear proyectos o módulos nuevos. `hooks-init`, `docs-init` y
398
452
  `create-project-dirs` son pasos internos, no commands públicos.
399
453
 
package/README.fr.md CHANGED
@@ -1,17 +1,26 @@
1
1
  # repo-harness
2
2
 
3
- Harness CLI de développement agentique repo-local et skill runtime pour les
4
- workflows Claude/Codex.
3
+ `repo-harness` transforme les sessions de code Claude/Codex en workflow
4
+ repo-local répétable. Il fournit un CLI et des hooks skill/runtime qui écrivent
5
+ le contexte, les plans, les handoffs, les checks et les preuves de review dans le
6
+ projet, afin que la session d'agent suivante reprenne depuis les fichiers plutôt
7
+ que depuis l'historique de chat.
8
+
9
+ Utilisez-le pour :
10
+
11
+ - adopter un dépôt existant avec un contrat d'agent tasks-first
12
+ - garder Claude et Codex alignés sur les mêmes plans, checks, handoffs et limites
13
+ de contexte
14
+ - dépenser moins de tokens à redécouvrir la structure grâce à CodeGraph et au
15
+ chargement progressif du contexte
16
+
17
+ Donnez à l'agent un PRD ou Sprint complet ; ensuite, votre boucle se limite à
18
+ review and `next`, ou à lancer `/goal` puis passer AFK.
5
19
 
6
20
  [English](README.md) | [简体中文](README.zh-CN.md) | [日本語](README.ja.md) | [Français](README.fr.md) | [Español](README.es.md)
7
21
 
8
22
  Adresse du dépôt : `https://github.com/Ancienttwo/repo-harness`
9
23
 
10
- `repo-harness` est un harness de workflow qui matérialise le processus de
11
- programmation par IA dans les fichiers du dépôt. C'est à la fois le dépôt source
12
- du CLI `repo-harness` et de son skill runtime, et un exemple auto-hébergé du
13
- workflow repo-local qu'il génère lui-même pour les projets en aval.
14
-
15
24
  ## Pourquoi utiliser repo-harness
16
25
 
17
26
  - **L'état de session vit dans les fichiers, pas dans l'historique de chat.** Des
@@ -42,7 +51,7 @@ workflow repo-local qu'il génère lui-même pour les projets en aval.
42
51
  optionnels selon le type de projet, et quatre hook profiles (`standard`,
43
52
  `minimal`, `biome`, `biome-strict`). Exécutez
44
53
  `npx -y repo-harness init` ; aucun clone du dépôt source n'est nécessaire.
45
- - **Commande de rafraîchissement du dépôt (`repo-harness update`).** L'installation
54
+ - **Commande d'adoption du dépôt (`repo-harness adopt`).** L'installation
46
55
  et le rafraîchissement des dépôts existants ont leur propre surface de commande,
47
56
  tout en conservant l'ancien chemin de migration repo-local et en gardant `init`
48
57
  dédié au runtime global.
@@ -102,7 +111,7 @@ L'ensemble se découpe en trois couches :
102
111
  1. **Couche package source** : ce dépôt maintient le CLI, les command skill
103
112
  facades, les templates, les hook assets, le workflow contract, les tests et le
104
113
  release gate.
105
- 2. **Couche contrat du dépôt cible** : `repo-harness update` ou une migration écrit
114
+ 2. **Couche contrat du dépôt cible** : `repo-harness adopt` ou une migration écrit
106
115
  `docs/spec.md`, `plans/`, `tasks/`, `.ai/context/`, `.ai/harness/`, les helper
107
116
  scripts et `.ai/hooks/`.
108
117
  3. **Couche host adapter** : les `~/.claude/settings.json` et `~/.codex/hooks.json`
@@ -205,15 +214,42 @@ initial.
205
214
  C'est le chemin le plus rapide pour évaluer si un dépôt réel se prête à l'adoption
206
215
  de ce workflow.
207
216
 
208
- ### Installer ou rafraîchir le runtime local
217
+ ### Installer le CLI
218
+
219
+ Le chemin par défaut ne demande pas Node.js : l'installateur utilise Bun comme
220
+ runtime. Si Bun est absent, il installe Bun d'abord, puis installe le CLI
221
+ `repo-harness`.
222
+
223
+ ```bash
224
+ # macOS / Linux
225
+ curl -fsSL https://raw.githubusercontent.com/Ancienttwo/repo-harness/main/install.sh | sh
226
+
227
+ # Windows (PowerShell)
228
+ irm https://raw.githubusercontent.com/Ancienttwo/repo-harness/main/install.ps1 | iex
229
+ ```
230
+
231
+ <details>
232
+ <summary>Vous avez déjà Bun ou Node ? Utilisez les gestionnaires de packages</summary>
209
233
 
210
234
  ```bash
235
+ # Bun
236
+ bun add -g repo-harness
237
+ repo-harness init
238
+
239
+ # Node/npm, avec Bun déjà sur PATH car le CLI s'exécute sur Bun
211
240
  npx -y repo-harness init
212
241
  ```
213
242
 
214
- La release line du package npm et le generated workflow stamp utilisent
215
- désormais la même ligne `0.4.x`. `repo-harness init`
216
- sert au bootstrap global et `repo-harness update` sert au rafraîchissement
243
+ </details>
244
+
245
+ ### Bootstrap du runtime hôte
246
+
247
+ ```bash
248
+ repo-harness init
249
+ ```
250
+
251
+ `repo-harness init` sert au bootstrap global, `repo-harness update` au
252
+ rafraîchissement user-level, et `repo-harness adopt` au rafraîchissement
217
253
  repo-local. `repo-harness init` configure le CLI, les hook adapters de niveau
218
254
  utilisateur, Waza, Mermaid, le brain root et CodeGraph MCP ; l'ancien chemin
219
255
  Claude plugin `scripts/setup-plugins.sh` est retiré.
@@ -250,17 +286,17 @@ sont supprimés par `scripts/sync-codex-installed-copies.sh`.
250
286
  Pour un dépôt existant, exécutez depuis le repo root :
251
287
 
252
288
  ```bash
253
- npx -y repo-harness update --dry-run
289
+ npx -y repo-harness adopt --dry-run
254
290
  ```
255
291
 
256
292
  Appliquez seulement une fois que le rapport du dry-run est correct :
257
293
 
258
294
  ```bash
259
- npx -y repo-harness update
295
+ npx -y repo-harness adopt
260
296
  ```
261
297
 
262
298
  Pour un nouveau projet ou un nouveau module, utilisez la branch command
263
- `repo-harness-scaffold`. Pour un dépôt existant, utilisez `repo-harness update` ;
299
+ `repo-harness-scaffold`. Pour un dépôt existant, utilisez `repo-harness adopt` ;
264
300
  il installe ou rafraîchit le harness sans créer de stack applicatif.
265
301
 
266
302
  ### À quoi ressemble le succès
@@ -350,8 +386,8 @@ Guards courants :
350
386
 
351
387
  ## Release actuelle
352
388
 
353
- - npm package : `repo-harness@0.4.3`
354
- - Generated workflow stamp : `repo-harness@0.4.3+template@0.4.3`
389
+ - npm package : `repo-harness@0.5.1`
390
+ - Generated workflow stamp : `repo-harness@0.5.1+template@0.5.1`
355
391
  - GitHub repository : `Ancienttwo/repo-harness`
356
392
  - Release history : [`docs/CHANGELOG.md`](docs/CHANGELOG.md)
357
393
 
@@ -365,7 +401,7 @@ Guards courants :
365
401
  - `assets/workflow-contract.v1.json`
366
402
  - Les generated repos utilisent par défaut le repo-local harness flow :
367
403
  - `docs/spec.md -> plans/ -> tasks/contracts/ -> tasks/reviews/ -> .ai/context/context-map.json -> .ai/harness/*`
368
- - `repo-harness update` rafraîchit les runtime pieces :
404
+ - `repo-harness update` rafraîchit les runtime pieces utilisateur :
369
405
  - les `repo-harness` skill aliases
370
406
  - les global Codex/Claude hook adapters
371
407
  - les Waza skills : `think`, `hunt`, `check`, `health`
@@ -396,10 +432,29 @@ préservent la découverte par skills, tandis que l'exécution appartient au CLI
396
432
  aux hooks :
397
433
 
398
434
  - Planning / review : `repo-harness-plan`, `repo-harness-review`, `repo-harness-autoplan`
435
+ - Product planning layer : `repo-harness-prd` (active `$geju`, puis rédige en Claude-first avec `claude -p --model opus` ; Codex ne sert que de fallback)
436
+ - Sprint program layer : `repo-harness-sprint` (transforme un PRD en backlog ordonné dans `plans/sprints/`)
437
+ - Goal session layer : `repo-harness-goal` / `repo-harness:goal` (prépare des prompts `/goal` Codex/Claude depuis un PRD ou Sprint détaillé ; si le document manque, il le demande d'abord)
399
438
  - Repo workflow actions : `repo-harness-ship`, `repo-harness-init`, `repo-harness-migrate`, `repo-harness-upgrade`, `repo-harness-capability`, `repo-harness-architecture`, `repo-harness-handoff`, `repo-harness-deploy`, `repo-harness-repair`, `repo-harness-check`
400
439
  - Branch project creation : `repo-harness-scaffold`
401
440
 
402
- `repo-harness update` sert aux dépôts existants ; `repo-harness-scaffold` sert de
441
+ La chaîne de planning est volontairement découpée en couches :
442
+
443
+ ```text
444
+ idea -> repo-harness-prd -> repo-harness-sprint from-prd -> repo-harness-goal
445
+ ```
446
+
447
+ Utilisez `repo-harness-prd` quand la source est encore une idée produit : il
448
+ lance d'abord un direction pass `$geju`, puis demande à Claude via `claude -p --model opus`
449
+ de rédiger le PRD, avec Codex seulement en fallback. Utilisez
450
+ `repo-harness-sprint from-prd <plans/prds/*.prd.md>` pour transformer
451
+ un PRD approuvé en Sprint backlog ordonné avec des lignes d'acceptance
452
+ vérifiables par machine. Utilisez `repo-harness-goal` seulement lorsqu'un PRD ou
453
+ Sprint détaillé existe déjà ; il prépare un prompt `/goal` borné pour
454
+ Codex/Claude et garde le PRD/Sprint comme source of truth. Si ce document manque,
455
+ le goal command doit le demander avant de lancer une implémentation depuis le chat.
456
+
457
+ `repo-harness adopt` sert aux dépôts existants ; `repo-harness-scaffold` sert de
403
458
  branch command pour créer un nouveau projet ou module. `hooks-init`, `docs-init` et
404
459
  `create-project-dirs` sont des étapes internes, pas des commands publiques.
405
460
 
package/README.ja.md CHANGED
@@ -1,16 +1,23 @@
1
1
  # repo-harness
2
2
 
3
- Claude/Codex workflow 向けに、repo-local な agentic development harness の CLI と
4
- skill runtime を提供します。
3
+ `repo-harness` は、Claude/Codex のコーディング session を、繰り返し使える
4
+ repo-local workflow に変えます。CLI と skill/runtime hooks によって、context、plan、
5
+ handoff、check、review evidence をプロジェクト内のファイルへ書き戻し、次の agent session が
6
+ chat memory ではなくファイルから続きに入れるようにします。
7
+
8
+ 主な用途:
9
+
10
+ - 既存リポジトリへ tasks-first agent contract を導入する
11
+ - Claude と Codex を同じ plan、check、handoff、context boundary に揃える
12
+ - CodeGraph と段階的な context loading により、構造を再発見するための token 消費を減らす
13
+
14
+ Agent に完全な PRD または Sprint を渡せば、あとは review and `next` だけで進めるか、
15
+ `/goal` を開始して AFK できます。
5
16
 
6
17
  [English](README.md) | [简体中文](README.zh-CN.md) | [日本語](README.ja.md) | [Français](README.fr.md) | [Español](README.es.md)
7
18
 
8
19
  リポジトリ:`https://github.com/Ancienttwo/repo-harness`
9
20
 
10
- `repo-harness` は、AI 開発フローをリポジトリ内のファイルへ落とし込む workflow harness です。
11
- `repo-harness` CLI と skill runtime のソースリポジトリであると同時に、下流プロジェクト向けに
12
- 自身が生成する repo-local workflow を、自分自身に適用したセルフホスト例でもあります。
13
-
14
21
  ## なぜ repo-harness を使うのか
15
22
 
16
23
  - **セッションの状態はファイルに残り、チャット履歴には残らない。** 別々の agent
@@ -34,7 +41,7 @@ skill runtime を提供します。
34
41
  commit/pending)、プロジェクト種別ごとのオプション LSP plugins、そして 4 段階の hook profile
35
42
  (`standard`、`minimal`、`biome`、`biome-strict`)を扱います。
36
43
  実行は `npx -y repo-harness init`。source checkout は不要です。
37
- - **Repo refresh コマンド(`repo-harness update`)。** 既存 repo の install / refresh は
44
+ - **Repo adoption コマンド(`repo-harness adopt`)。** 既存 repo の install / refresh は
38
45
  独立した command surface になり、従来の repo-local migration path を保ちながら
39
46
  `init` は global runtime setup に集中します。
40
47
  - **CodeGraph index の自己修復。** prompt hook が構造的な code-navigation intent を検出し、
@@ -79,7 +86,7 @@ product boundary は意図的に地味です。対象リポジトリを検査し
79
86
 
80
87
  1. **ソースパッケージ層**:本リポジトリが CLI、CLI-backed command facades、templates、hook assets、
81
88
  workflow contract、tests、release gate を所有します。
82
- 2. **対象リポジトリ contract 層**:`repo-harness update` または migration が、`docs/spec.md`、
89
+ 2. **対象リポジトリ contract 層**:`repo-harness adopt` または migration が、`docs/spec.md`、
83
90
  `plans/`、`tasks/`、`.ai/context/`、`.ai/harness/`、helper scripts、`.ai/hooks/` といった
84
91
  repo-local ファイルを書き込みます。
85
92
  3. **Host adapter 層**:user-level の `~/.claude/settings.json` と `~/.codex/hooks.json` が
@@ -172,15 +179,41 @@ PRD Sprint が durable source of truth となり、Codex Goal mode は元の cha
172
179
 
173
180
  実際のリポジトリがこの workflow を導入するのに適しているかを評価する、最速の経路です。
174
181
 
175
- ### ローカル runtime をインストールまたはリフレッシュする
182
+ ### CLI をインストールする
183
+
184
+ 既定の経路では Node.js は不要です。installer は Bun を runtime として使います。
185
+ Bun が見つからない場合は、先に Bun をインストールしてから `repo-harness` CLI をインストールします。
186
+
187
+ ```bash
188
+ # macOS / Linux
189
+ curl -fsSL https://raw.githubusercontent.com/Ancienttwo/repo-harness/main/install.sh | sh
190
+
191
+ # Windows (PowerShell)
192
+ irm https://raw.githubusercontent.com/Ancienttwo/repo-harness/main/install.ps1 | iex
193
+ ```
194
+
195
+ <details>
196
+ <summary>Bun または Node がすでにある場合は package manager も使えます</summary>
176
197
 
177
198
  ```bash
199
+ # Bun
200
+ bun add -g repo-harness
201
+ repo-harness init
202
+
203
+ # Node/npm。CLI runtime は Bun なので、Bun が PATH 上に必要です。
178
204
  npx -y repo-harness init
179
205
  ```
180
206
 
181
- npm package と generated workflow stamp は現在同じ `0.4.x` release line を使います。
207
+ </details>
208
+
209
+ ### host runtime を bootstrap する
210
+
211
+ ```bash
212
+ repo-harness init
213
+ ```
214
+
182
215
  `repo-harness init` は global bootstrap、`repo-harness update` は
183
- repo-local refresh です。`repo-harness init` は CLI、user-level hook adapters、Waza、Mermaid、
216
+ user-level refresh、`repo-harness adopt` は repo-local refresh です。`repo-harness init` は CLI、user-level hook adapters、Waza、Mermaid、
184
217
  brain root、CodeGraph MCP を設定し、退役した `scripts/setup-plugins.sh` の Claude plugin path は使いません。
185
218
 
186
219
  ソースの checkout から作業する場合:
@@ -214,17 +247,17 @@ symlink に裏打ちされた runtime entrypoint です。退役した `repo-har
214
247
  既存リポジトリでは repo root から実行します。
215
248
 
216
249
  ```bash
217
- npx -y repo-harness update --dry-run
250
+ npx -y repo-harness adopt --dry-run
218
251
  ```
219
252
 
220
253
  dry-run のレポートが正しいことを確認してから適用します。
221
254
 
222
255
  ```bash
223
- npx -y repo-harness update
256
+ npx -y repo-harness adopt
224
257
  ```
225
258
 
226
259
  新しいプロジェクトやモジュールには支線 command `repo-harness-scaffold` を使います。既存リポジトリには
227
- `repo-harness update` を使います。これは harness をインストールまたはリフレッシュするもので、アプリケーション
260
+ `repo-harness adopt` を使います。これは harness をインストールまたはリフレッシュするもので、アプリケーション
228
261
  スタックは作成しません。
229
262
 
230
263
  ### 成功した状態
@@ -312,8 +345,8 @@ hook がブロックしたときは、まず terminal の構造化された出
312
345
 
313
346
  ## 現在の Release
314
347
 
315
- - npm package:`repo-harness@0.4.3`
316
- - Generated workflow stamp:`repo-harness@0.4.3+template@0.4.3`
348
+ - npm package:`repo-harness@0.5.1`
349
+ - Generated workflow stamp:`repo-harness@0.5.1+template@0.5.1`
317
350
  - GitHub repository:`Ancienttwo/repo-harness`
318
351
  - Release history:[`docs/CHANGELOG.md`](docs/CHANGELOG.md)
319
352
 
@@ -327,7 +360,7 @@ hook がブロックしたときは、まず terminal の構造化された出
327
360
  - `assets/workflow-contract.v1.json`
328
361
  - Generated repos はデフォルトで repo-local harness flow を使います:
329
362
  - `docs/spec.md -> plans/ -> tasks/contracts/ -> tasks/reviews/ -> .ai/context/context-map.json -> .ai/harness/*`
330
- - `repo-harness update` は runtime pieces をリフレッシュします:
363
+ - `repo-harness update` は user-level runtime pieces をリフレッシュします:
331
364
  - `repo-harness` skill aliases
332
365
  - global Codex/Claude hook adapters
333
366
  - Waza skills:`think`、`hunt`、`check`、`health`
@@ -355,10 +388,29 @@ knowledge sync、handoff retrieval の workflow 設計に影響を与えてい
355
388
  公開 command facades は `assets/skill-commands/` にあります。host skill discovery との互換性を残しつつ、実行は CLI と hooks が担います。
356
389
 
357
390
  - Planning / review:`repo-harness-plan`、`repo-harness-review`、`repo-harness-autoplan`
391
+ - Product planning layer:`repo-harness-prd`(先に `$geju` を有効化し、Claude-first の `claude -p --model opus` で PRD を起草する。Codex は fallback のみ)
392
+ - Sprint program layer:`repo-harness-sprint`(PRD を `plans/sprints/` の順序付き backlog に分解する)
393
+ - Goal session layer:`repo-harness-goal` / `repo-harness:goal`(詳細な PRD または Sprint artifact から Codex/Claude の `/goal` prompt を準備する。文書がなければ先に要求する)
358
394
  - Repo workflow actions:`repo-harness-ship`、`repo-harness-init`、`repo-harness-migrate`、`repo-harness-upgrade`、`repo-harness-capability`、`repo-harness-architecture`、`repo-harness-handoff`、`repo-harness-deploy`、`repo-harness-repair`、`repo-harness-check`
359
395
  - Branch project creation:`repo-harness-scaffold`
360
396
 
361
- `repo-harness update` は既存リポジトリ向け、`repo-harness-scaffold` は支線 command として新しいプロジェクトやモジュールを作成します。
397
+ planning chain は意図的に層を分けています。
398
+
399
+ ```text
400
+ idea -> repo-harness-prd -> repo-harness-sprint from-prd -> repo-harness-goal
401
+ ```
402
+
403
+ 入力がまだプロダクトアイデアなら `repo-harness-prd` を使います。まず `$geju` の
404
+ direction pass を行い、その後 Claude に `claude -p --model opus` で PRD を起草させます。Codex は
405
+ Claude が使えない、または失敗した場合だけ fallback です。承認済み PRD を
406
+ machine-checkable acceptance line 付きの順序付き Sprint backlog にするには
407
+ `repo-harness-sprint from-prd <plans/prds/*.prd.md>` を使います。
408
+ `repo-harness-goal` は詳細な PRD または Sprint artifact がある場合だけ使い、
409
+ Codex/Claude 向けの bounded `/goal` prompt を準備し、PRD/Sprint を source of truth
410
+ として維持します。その文書がない場合、goal command はチャット文脈から実装を始めず、
411
+ 先に文書を要求しなければなりません。
412
+
413
+ `repo-harness adopt` は既存リポジトリ向け、`repo-harness-scaffold` は支線 command として新しいプロジェクトやモジュールを作成します。
362
414
  `hooks-init`、`docs-init`、`create-project-dirs` は内部ステップであり、公開 commands ではありません。
363
415
 
364
416
  ## Maintainer Reference