@ps-neko/nekowork 0.1.0-alpha.10 → 0.1.0-alpha.12
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/AGENTS.md +1 -1
- package/CLAUDE.md +3 -3
- package/README.ko.md +30 -30
- package/README.md +75 -53
- package/WORKING-CONTEXT.md +14 -4
- package/agent.yaml +5 -4
- package/agents/codex-challenger.md +1 -1
- package/agents/codex-reviewer.md +1 -1
- package/commands/nekowork-full-cycle.md +29 -0
- package/docs/ADVANCED.md +16 -0
- package/docs/ALPHA-RECRUITMENT.md +157 -0
- package/docs/ARCHITECTURE.md +2 -2
- package/docs/AUDIT.md +1 -1
- package/docs/CATALOG-PACKS.md +1 -1
- package/docs/CHANGELOG.md +42 -5
- package/docs/CLI-STAGES.md +8 -0
- package/docs/DEMO.md +1 -1
- package/docs/FEEDBACK-TRIAGE.md +26 -2
- package/docs/GUIDED-MODE.md +91 -0
- package/docs/PORTING.md +1 -1
- package/docs/POST-RELEASE-CHECKLIST.md +167 -0
- package/docs/QUICKSTART.md +7 -0
- package/docs/README-1.0-hero-draft.md +164 -0
- package/docs/RELEASE-READINESS.md +1 -1
- package/docs/SCOPE-1.0.md +309 -0
- package/docs/SETUP.md +1 -1
- package/docs/VISION.md +167 -0
- package/docs/assets/demo-terminal.svg +1 -1
- package/docs/assets/hero.gif +0 -0
- package/docs/{CLI-UX-PHASE1A-PLAN.md → dev-log/2026-05-13-cli-ux-phase1a-plan.md} +2 -0
- package/docs/{CLI-UX-REDESIGN.md → dev-log/2026-05-13-cli-ux-redesign.md} +2 -0
- package/docs/examples/github-actions-verify-pr.yml +90 -0
- package/manifests/install-components.json +6 -6
- package/manifests/install-modules.json +3 -3
- package/package.json +7 -2
- package/scripts/benchmark/rules.js +179 -0
- package/scripts/build-cursor.js +1 -1
- package/scripts/ci/security-hardening.js +27 -4
- package/scripts/cli/commands/cockpit-command.js +388 -0
- package/scripts/cli.js +179 -17
- package/scripts/demo-review.js +2 -2
- package/scripts/lib/diff-parser.js +293 -0
- package/scripts/lib/project-detector.js +309 -0
- package/scripts/lib/router.js +1 -1
- package/scripts/lib/rules/_helpers.js +149 -0
- package/scripts/lib/rules/auto-apply-commit-push.js +94 -0
- package/scripts/lib/rules/hardcoded-credential.js +103 -0
- package/scripts/lib/rules/package-lockfile-risk.js +92 -0
- package/scripts/lib/rules/secret-fallback.js +237 -0
- package/scripts/lib/rules/test-or-security-disable.js +91 -0
- package/scripts/orchestrators/review.js +1 -1
- package/scripts/orchestrators/verify-pr.js +466 -0
- package/scripts/sync-claude-md.js +1 -1
- package/skills/{claude-led-codex-review → nekowork-full-cycle}/SKILL.md +3 -3
- package/skills/plan-eng-review/SKILL.md +1 -1
- package/skills/ralph/SKILL.md +1 -1
- package/skills/review/SKILL.md +2 -2
- package/skills/ship/SKILL.md +1 -1
- package/skills/verified-gate/SKILL.md +47 -0
- package/LICENSE +0 -21
- package/commands/claude-led-codex-review.md +0 -29
- package/docs/CODEMAPS/README.md +0 -15
- package/docs/CODEMAPS/agents.md +0 -22
- package/docs/CODEMAPS/bridge.md +0 -18
- package/docs/CODEMAPS/hooks.md +0 -28
- package/docs/CODEMAPS/manifests.md +0 -15
- package/docs/CODEMAPS/rules.md +0 -22
- package/docs/CODEMAPS/schemas.md +0 -22
- package/docs/CODEMAPS/scripts.md +0 -198
- package/docs/CODEMAPS/skills.md +0 -31
- package/docs/CODEMAPS/tests.md +0 -144
- package/docs/workflows-stash/README.md +0 -32
- package/docs/workflows-stash/harness-review.yml +0 -166
- package/docs/workflows-stash/harness-validate.yml +0 -98
package/AGENTS.md
CHANGED
|
@@ -28,7 +28,7 @@ fact_forcing: true|false # PreToolUse 사실 조사 강제 여부
|
|
|
28
28
|
- `commands/` 는 legacy slash-entry 호환 표면이다. 신규 추가 금지, 점진 마이그레이션.
|
|
29
29
|
- `agents/` 는 페르소나 카탈로그다. 워크플로우는 `skills/` 에서 정의하고 에이전트는 `skills/` 가 호출한다.
|
|
30
30
|
|
|
31
|
-
## 7단계 풀사이클 (
|
|
31
|
+
## 7단계 풀사이클 (nekowork-full-cycle)
|
|
32
32
|
|
|
33
33
|
| 단계 | 담당 | 입력 | 출력 |
|
|
34
34
|
|---|---|---|---|
|
package/CLAUDE.md
CHANGED
|
@@ -8,13 +8,13 @@
|
|
|
8
8
|
|
|
9
9
|
## 자동 갱신 영역
|
|
10
10
|
|
|
11
|
-
<!-- HARNESS:START version=0.1.0-alpha.
|
|
11
|
+
<!-- HARNESS:START version=0.1.0-alpha.12 -->
|
|
12
12
|
<!-- 이 영역은 scripts/sync-claude-md.js 가 자동 갱신한다. 직접 편집 금지. -->
|
|
13
13
|
|
|
14
14
|
## 카탈로그 요약
|
|
15
15
|
|
|
16
16
|
- agents: 11
|
|
17
|
-
- skills:
|
|
17
|
+
- skills: 11
|
|
18
18
|
- commands: 1 (legacy compat)
|
|
19
19
|
- hooks: 5 (gateguard-fact-force, config-protection, quality-gate, pre-bash-dispatcher, persistent-mode)
|
|
20
20
|
- packs: core, builder, productivity, team, debugging, maintenance, pr, catalog-plus, quality, security, frontend, testing, release, enterprise
|
|
@@ -93,7 +93,7 @@ nekowork costs --since=7d # 비용 추정
|
|
|
93
93
|
|
|
94
94
|
## 매직 키워드 → 스킬 (명시 옵트인만)
|
|
95
95
|
|
|
96
|
-
자동 활성 키워드 감지는 **사용**하지 않는다. 사용자 룰("확인 후 실행") 우선. 모든 스킬은 슬래시 명령(`/
|
|
96
|
+
자동 활성 키워드 감지는 **사용**하지 않는다. 사용자 룰("확인 후 실행") 우선. 모든 스킬은 슬래시 명령(`/nekowork-full-cycle`) 또는 CLI(`nekowork review`) 로 명시 호출.
|
|
97
97
|
|
|
98
98
|
## 핸드오프 5필드
|
|
99
99
|
|
package/README.ko.md
CHANGED
|
@@ -2,17 +2,17 @@
|
|
|
2
2
|
|
|
3
3
|
[English](README.md) | [한국어](README.ko.md)
|
|
4
4
|
|
|
5
|
-
AI
|
|
5
|
+
**AI 가 만든 코드, 검증 없이는 통과시키지 마세요.**
|
|
6
6
|
|
|
7
7
|
[](https://github.com/Ps-Neko/NEKOWORK/actions/workflows/harness-validate.yml)
|
|
8
8
|
|
|
9
|
-
AI가
|
|
10
|
-
|
|
11
|
-
NEKOWORK는 AI가 계획, 수정, 검증, 제한된 재수정, 리포트 생성을 수행하도록 돕습니다. 하지만 최종 `apply`는 항상 사람이 명시적으로 실행해야 합니다.
|
|
9
|
+
NEKOWORK 는 AI 가 생성한 코드를 위한 로컬 검증 게이트입니다. diff 를 분석하고, 결정적 위험 룰을 실행하고, 증거를 수집한 뒤, 머지 / 적용 가능 여부를 판정합니다 — auto-commit / auto-push 없이, LLM 판정에 의존하지 않고.
|
|
12
10
|
|
|
13
11
|
> 이 문서는 한국어 요약본입니다. 전체 상세 설명과 모든 고급 옵션은 [English README](README.md)를 참고하세요.
|
|
14
12
|
|
|
15
|
-
여기서 "검증됨"은 정답을 수학적으로 보증한다는 뜻이 아닙니다.
|
|
13
|
+
여기서 "검증됨"은 정답을 수학적으로 보증한다는 뜻이 아닙니다. verdict 는 결정적 룰과 검증 결과만 결정합니다. 선택적 Codex 리뷰는 advisor 노트로만 기록되며 verdict 에 영향을 주지 않습니다.
|
|
14
|
+
|
|
15
|
+
> 1.0 scope 와 로드맵: [docs/SCOPE-1.0.md](docs/SCOPE-1.0.md). 장기 비전 (검증 우선 AI 개발 공장): [docs/VISION.md](docs/VISION.md).
|
|
16
16
|
|
|
17
17
|
## 용어
|
|
18
18
|
|
|
@@ -25,12 +25,13 @@ NEKOWORK는 AI가 계획, 수정, 검증, 제한된 재수정, 리포트 생성
|
|
|
25
25
|
## 핵심 원칙
|
|
26
26
|
|
|
27
27
|
```text
|
|
28
|
-
NEKOWORK = 검증
|
|
28
|
+
NEKOWORK = diff -> 결정적 위험 룰 -> 검증 명령 -> 증거 -> 결정적 verdict -> REPORT -> Human Gate -> 명시적 apply
|
|
29
29
|
```
|
|
30
30
|
|
|
31
31
|
```text
|
|
32
|
-
|
|
33
|
-
|
|
32
|
+
증거 없으면 통과 없음.
|
|
33
|
+
LLM 의견은 verdict 아님.
|
|
34
|
+
테스트 없으면 PASS 아님 (INSUFFICIENT_EVIDENCE).
|
|
34
35
|
경계에서는 사람이 통제.
|
|
35
36
|
```
|
|
36
37
|
|
|
@@ -50,42 +51,41 @@ NEKOWORK는 기본 흐름을 mock provider 모드로 확인할 수 있습니다.
|
|
|
50
51
|
|
|
51
52
|
## 30초 실행
|
|
52
53
|
|
|
53
|
-
|
|
54
|
+
요구사항: Node.js 22+, npm, git. commit 이 하나 이상 있는 git repo.
|
|
54
55
|
|
|
55
56
|
```bash
|
|
56
57
|
npx -y @ps-neko/nekowork@alpha check
|
|
57
|
-
npx -y @ps-neko/nekowork@alpha
|
|
58
|
-
|
|
58
|
+
npx -y @ps-neko/nekowork@alpha verify-pr
|
|
59
|
+
cat REPORT.md
|
|
60
|
+
cat .nekowork/decision.json
|
|
59
61
|
```
|
|
60
62
|
|
|
61
|
-
|
|
63
|
+
`check` 가 환경을 진단합니다. `verify-pr` 가 현재 working tree diff 를 결정적 위험 룰로 스캔하고, `.nekowork/evidence/` 에 증거를 남기고, 머지/적용 가능 여부를 판정합니다. 프로젝트 루트에 `REPORT.md` 와 `.nekowork/decision.json` 을 작성합니다.
|
|
62
64
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
```
|
|
65
|
+
> **재현성 메모:** `npx @ps-neko/nekowork@alpha` 는 가장 최근 publish 된 alpha 로 resolve 됩니다. publish 된 alpha 는 `main` 보다 뒤일 수 있습니다. 재현 가능한 동작을 원하면 정확한 버전 (예: `@ps-neko/nekowork@0.1.0-alpha.11`) 을 핀하세요.
|
|
66
|
+
|
|
67
|
+
Compatibility / legacy 명령 (`cockpit`, `start`, `ask`, `plan`, `team`, `work`, `verify`, `gate`, `ship`, `run`, `build`, `auto`, `pr-prep`, `report --session`, `apply --session`, `review`) 은 [docs/ADVANCED.md](docs/ADVANCED.md) 에 있습니다. 2.0 에서 제거 예정 ([docs/SCOPE-1.0.md](docs/SCOPE-1.0.md) Phased Cut).
|
|
67
68
|
|
|
68
69
|
## 한 명령. 하나의 차단된 위험.
|
|
69
70
|
|
|
71
|
+
AI 가 작성한 변경에 `process.env.X || "fallback"` 이 들어가면:
|
|
72
|
+
|
|
70
73
|
```bash
|
|
71
|
-
npx -y @ps-neko/nekowork@alpha
|
|
74
|
+
npx -y @ps-neko/nekowork@alpha verify-pr
|
|
72
75
|
```
|
|
73
76
|
|
|
74
|
-
|
|
77
|
+
전형적 BLOCK 출력:
|
|
75
78
|
|
|
76
79
|
```text
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
Blocked because NEKOWORK defaults to delegated CLI auth and rejects long-lived provider API key paths unless the human explicitly opts in.
|
|
80
|
+
=== verify-pr ===
|
|
81
|
+
verdict : BLOCK
|
|
82
|
+
reason : Hardcoded secret fallback detected (src/auth.ts:42)
|
|
83
|
+
merge_allowed : false
|
|
84
|
+
apply_allowed : false
|
|
85
|
+
risk_level : CRITICAL
|
|
84
86
|
```
|
|
85
87
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
이것이 NEKOWORK의 핵심입니다. 오토파일럿은 경계 전까지 계속 일할 수 있지만, 위험한 ship/apply 결정은 evidence와 사람의 승인 아래에 둡니다.
|
|
88
|
+
NEKOWORK 의 핵심: AI 는 변경을 만들 수 있지만, 위험한 ship/apply 결정은 결정적 룰과 사람 승인 아래에 둡니다. LLM verdict 는 게이트를 통과할 수 없습니다.
|
|
89
89
|
|
|
90
90
|
## 왜 필요한가
|
|
91
91
|
|
|
@@ -189,10 +189,10 @@ NEKOWORK는 하나의 거대한 agent 묶음이 아니라, 일을 나누고 검
|
|
|
189
189
|
## 현재 alpha 상태
|
|
190
190
|
|
|
191
191
|
- Package: `@ps-neko/nekowork`
|
|
192
|
-
- Current alpha: `0.1.0-alpha.
|
|
192
|
+
- Current alpha: `0.1.0-alpha.11` (npm `@alpha` published 2026-05-16)
|
|
193
193
|
- CLI: `nekowork`
|
|
194
194
|
- Legacy/internal alias: `harness`
|
|
195
|
-
- Tests:
|
|
195
|
+
- Tests: 501 pass
|
|
196
196
|
- npm audit: 0 moderate+ issues
|
|
197
197
|
- Fresh `npx @alpha` smoke: pass
|
|
198
198
|
|
package/README.md
CHANGED
|
@@ -2,15 +2,23 @@
|
|
|
2
2
|
|
|
3
3
|
[English](README.md) | [한국어](README.ko.md)
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
**Don't merge AI code without verification.**
|
|
6
6
|
|
|
7
7
|
[](https://github.com/Ps-Neko/NEKOWORK/actions/workflows/harness-validate.yml)
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
<p align="center">
|
|
10
|
+
<a href="https://ps-neko.github.io/NEKOWORK/?fixture=sample-pr-001">
|
|
11
|
+
<img src="docs/assets/hero.gif" alt="NEKOWORK Verification Factory — Claude advisor 가 LGTM 한 코드를 NEKOWORK 결정적 규칙이 BLOCK 하는 12-station 시연" width="800" />
|
|
12
|
+
</a>
|
|
13
|
+
<br/>
|
|
14
|
+
<em>Claude said LGTM. NEKOWORK blocked.</em> · <a href="https://ps-neko.github.io/NEKOWORK/?fixture=sample-pr-001"><strong>Live demo →</strong></a>
|
|
15
|
+
</p>
|
|
10
16
|
|
|
11
|
-
NEKOWORK is a local
|
|
17
|
+
NEKOWORK is a local verification gate for AI-generated code. It analyzes the diff, runs deterministic risk rules, collects evidence, and decides whether the change is safe to merge or apply — without auto-committing, auto-pushing, or trusting LLM verdicts.
|
|
12
18
|
|
|
13
|
-
Note: "Verified" means independently reviewed with recorded evidence
|
|
19
|
+
Note: "Verified" means independently reviewed with recorded evidence — not mathematically proven correct. The verdict is decided by deterministic rules and check results. Optional Codex review is recorded as an advisor note only and never controls the verdict.
|
|
20
|
+
|
|
21
|
+
> 1.0 scope and roadmap: [docs/SCOPE-1.0.md](docs/SCOPE-1.0.md). Long-term vision (Verification-first AI development factory): [docs/VISION.md](docs/VISION.md).
|
|
14
22
|
|
|
15
23
|
Note: "ship" in NEKOWORK is a **readiness decision** (`SHIP_READY` or `NO_SHIP`), not a deployment. The `ship` step decides whether `apply` is allowed; it never commits, pushes, deploys, or publishes by itself.
|
|
16
24
|
|
|
@@ -18,79 +26,85 @@ Default path:
|
|
|
18
26
|
|
|
19
27
|
```bash
|
|
20
28
|
npx -y @ps-neko/nekowork@alpha check
|
|
21
|
-
npx -y @ps-neko/nekowork@alpha
|
|
22
|
-
|
|
29
|
+
npx -y @ps-neko/nekowork@alpha verify-pr
|
|
30
|
+
cat REPORT.md
|
|
31
|
+
cat .nekowork/decision.json
|
|
23
32
|
```
|
|
24
33
|
|
|
25
|
-
Every real `
|
|
34
|
+
Every real `verify-pr` run puts the verdict first:
|
|
26
35
|
|
|
27
36
|
```text
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
37
|
+
=== verify-pr ===
|
|
38
|
+
verdict : BLOCK
|
|
39
|
+
reason : Hardcoded secret fallback detected (src/auth.ts:42)
|
|
40
|
+
merge_allowed : false
|
|
41
|
+
apply_allowed : false
|
|
42
|
+
risk_level : CRITICAL
|
|
33
43
|
```
|
|
34
44
|
|
|
35
|
-
The machine-readable companion `decision.json`
|
|
45
|
+
The machine-readable companion `decision.json` and the full report are in [Example Report](#example-report).
|
|
36
46
|
|
|
37
47
|
The evidence chain is intentionally narrow:
|
|
38
48
|
|
|
39
49
|
```text
|
|
40
|
-
diff -> deterministic risk
|
|
50
|
+
diff -> deterministic risk rules -> available checks (detected, executed in a later alpha) -> evidence package -> deterministic decision -> REPORT.md -> Human Gate -> explicit apply
|
|
41
51
|
```
|
|
42
52
|
|
|
43
|
-
No auto-commit. No auto-push. No surprise deploy. `apply` is explicit
|
|
53
|
+
No auto-commit. No auto-push. No surprise deploy. `apply` is explicit; it requires a `decision.json` whose `apply_allowed` is `true`.
|
|
44
54
|
|
|
45
|
-
|
|
55
|
+
Bring your AI tool (Cursor / Claude Code / Codex). NEKOWORK starts after the diff is on disk. Advanced and legacy commands are documented in [docs/ADVANCED.md](docs/ADVANCED.md) and gated under Phased Cut (see [docs/SCOPE-1.0.md](docs/SCOPE-1.0.md)).
|
|
46
56
|
|
|
47
|
-
**Public alpha evidence:**
|
|
57
|
+
**Public alpha evidence:** 401 tests / 0 moderate+ npm audit issues / fresh `npx @alpha` smoke / 10 case-study flows / 5 starter packs · [CI badge](https://github.com/Ps-Neko/NEKOWORK/actions/workflows/harness-validate.yml) · [npm package](https://www.npmjs.com/package/@ps-neko/nekowork) · [terminal transcript](docs/DEMO.md#one-minute-terminal-transcript) · [full report example](docs/DEMO-REPORT.md) · [external run kit](docs/EXTERNAL-RUN.md) · [alpha feedback](https://github.com/Ps-Neko/NEKOWORK/issues/new?template=alpha-feedback.yml) · [roadmap](docs/ROADMAP.md)
|
|
48
58
|
|
|
49
59
|

|
|
50
60
|
|
|
51
61
|
## One Command. One Blocked Risk.
|
|
52
62
|
|
|
63
|
+
After your AI tool (Cursor / Claude Code / Codex) writes a `process.env.X || "fallback"` into your auth code, run:
|
|
64
|
+
|
|
53
65
|
```bash
|
|
54
|
-
npx -y @ps-neko/nekowork@alpha
|
|
66
|
+
npx -y @ps-neko/nekowork@alpha verify-pr
|
|
55
67
|
```
|
|
56
68
|
|
|
57
|
-
Typical blocked-risk
|
|
69
|
+
Typical blocked-risk output:
|
|
58
70
|
|
|
59
71
|
```text
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
72
|
+
=== verify-pr ===
|
|
73
|
+
verdict : BLOCK
|
|
74
|
+
reason : Hardcoded secret fallback detected (src/auth.ts:42)
|
|
75
|
+
risk_level : CRITICAL
|
|
76
|
+
merge_allowed : false
|
|
77
|
+
apply_allowed : false
|
|
78
|
+
findings : critical=1 high=0 medium=0 low=0
|
|
79
|
+
top findings:
|
|
80
|
+
- [CRITICAL] Hardcoded secret fallback detected (src/auth.ts:42)
|
|
67
81
|
```
|
|
68
82
|
|
|
69
|
-
That is the thesis:
|
|
83
|
+
That is the thesis: AI can write the change, but `verify-pr` runs deterministic rules over the diff and refuses to let unverified changes merge or apply.
|
|
70
84
|
|
|
71
85
|
## 30-Second First Run
|
|
72
86
|
|
|
73
|
-
Requirements: Node.js 22+, npm, and git.
|
|
87
|
+
Requirements: Node.js 22+, npm, and git. A git repo with at least one commit.
|
|
74
88
|
|
|
75
89
|
```bash
|
|
76
90
|
npx -y @ps-neko/nekowork@alpha check
|
|
77
|
-
npx -y @ps-neko/nekowork@alpha
|
|
78
|
-
|
|
91
|
+
npx -y @ps-neko/nekowork@alpha verify-pr
|
|
92
|
+
cat REPORT.md
|
|
93
|
+
cat .nekowork/decision.json
|
|
79
94
|
```
|
|
80
95
|
|
|
81
|
-
|
|
96
|
+
`check` confirms the environment is ready. `verify-pr` scans the current working tree diff with deterministic risk rules, writes evidence to `.nekowork/evidence/`, and decides whether the change is safe to merge or apply. It writes `REPORT.md` at the project root and `.nekowork/decision.json`.
|
|
82
97
|
|
|
83
98
|
Source checkout for local development:
|
|
84
99
|
|
|
85
100
|
```bash
|
|
86
101
|
node scripts/cli.js check
|
|
87
|
-
node scripts/cli.js
|
|
88
|
-
node scripts/cli.js report --session latest
|
|
102
|
+
node scripts/cli.js verify-pr
|
|
89
103
|
```
|
|
90
104
|
|
|
91
|
-
> **Reproducibility note:** `npx @ps-neko/nekowork@alpha`
|
|
105
|
+
> **Reproducibility note:** `npx @ps-neko/nekowork@alpha` resolves to the most recently published alpha. The published alpha may lag behind `main`. Pin an exact version (e.g. `@ps-neko/nekowork@0.1.0-alpha.11`) for reproducible behavior.
|
|
92
106
|
|
|
93
|
-
|
|
107
|
+
Compatibility / legacy commands (`cockpit`, `start`, `ask`, `plan`, `team`, `work`, `verify`, `gate`, `ship`, `run`, `build`, `auto`, `pr-prep`, `report --session`, `apply --session`, `review`) are documented in [docs/ADVANCED.md](docs/ADVANCED.md). They are scheduled for deprecation in 2.0 per [SCOPE-1.0.md](docs/SCOPE-1.0.md).
|
|
94
108
|
|
|
95
109
|
## Works With Your Existing AI Workflow
|
|
96
110
|
|
|
@@ -139,28 +153,35 @@ See the full report contract and example artifact in [docs/DEMO-REPORT.md](docs/
|
|
|
139
153
|
|
|
140
154
|
## Main Surface
|
|
141
155
|
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
**Beginner — start here:**
|
|
156
|
+
**1.0 front surface — start here:**
|
|
145
157
|
|
|
146
158
|
- `check` — local readiness probe
|
|
147
|
-
- `
|
|
148
|
-
- `
|
|
149
|
-
- `
|
|
159
|
+
- `verify-pr` — verify a diff / PR against deterministic risk rules; writes `REPORT.md` and `.nekowork/decision.json`
|
|
160
|
+
- `verify-pr --comment-file <path>` — emit GitHub PR comment markdown for CI integration
|
|
161
|
+
- `verify-pr --ci-exit-soft` — treat `NEEDS_HUMAN_REVIEW` / `INSUFFICIENT_EVIDENCE` as exit 0 (label-driven CI)
|
|
162
|
+
|
|
163
|
+
The CI exit code matrix is fixed:
|
|
164
|
+
|
|
165
|
+
```text
|
|
166
|
+
ALLOW = 0
|
|
167
|
+
ALLOW_WITH_WARNINGS = 0
|
|
168
|
+
NEEDS_HUMAN_REVIEW = 1
|
|
169
|
+
INSUFFICIENT_EVIDENCE = 1
|
|
170
|
+
BLOCK = 2
|
|
171
|
+
```
|
|
150
172
|
|
|
151
|
-
|
|
173
|
+
GitHub Actions example: [docs/examples/github-actions-verify-pr.yml](docs/examples/github-actions-verify-pr.yml).
|
|
152
174
|
|
|
153
|
-
|
|
154
|
-
- `verify` / `gate` / `ship` — Codex verification, Human Gate, ship-readiness handoff
|
|
155
|
-
- `build` / `auto` / `run` — wrappers over the safety gate; `auto` and `build` never accept `--apply`
|
|
156
|
-
- `pr-prep` — review-ready local artifacts without branch, commit, push, or PR
|
|
175
|
+
**Compatibility / labs — scheduled for deprecation in 2.0:**
|
|
157
176
|
|
|
158
|
-
|
|
177
|
+
- Session-based gate: `start` / `report --session` / `apply --session` / `gate status` / `ship --session`
|
|
178
|
+
- Decomposed authoring: `ask` / `plan` / `team` / `work` / `verify` / `pr-prep`
|
|
179
|
+
- Wrappers: `build` / `auto` / `run`
|
|
180
|
+
- Legacy alias: `review` / `review-cycle` / `harness` binary
|
|
159
181
|
|
|
160
|
-
|
|
161
|
-
- `harness` binary — legacy alias for `nekowork`
|
|
182
|
+
These commands are functional in alpha and documented in [docs/ADVANCED.md](docs/ADVANCED.md). They will get `[deprecated]` labels in 0.3.x and be removed in 2.0 per [docs/SCOPE-1.0.md](docs/SCOPE-1.0.md). Pure 1.0 users should not need them.
|
|
162
183
|
|
|
163
|
-
|
|
184
|
+
Stage contract for legacy commands: [docs/CLI-STAGES.md](docs/CLI-STAGES.md). Build modes: [docs/BUILD.md](docs/BUILD.md). Bounded autonomy: [docs/AUTONOMY.md](docs/AUTONOMY.md). Advanced runtime (`ralph`, `wait`, instincts, cost tracking, Rust supervisor): [docs/ADVANCED.md](docs/ADVANCED.md).
|
|
164
185
|
|
|
165
186
|
## Starter Packs
|
|
166
187
|
|
|
@@ -186,9 +207,9 @@ For comparison and positioning: [docs/WHY-NEKOWORK.md](docs/WHY-NEKOWORK.md).
|
|
|
186
207
|
|
|
187
208
|
## Status
|
|
188
209
|
|
|
189
|
-
Current repository version: `0.1.0-alpha.
|
|
210
|
+
Current repository version: `0.1.0-alpha.12` · Current npm alpha: `@ps-neko/nekowork@0.1.0-alpha.11` (published 2026-05-16, `@alpha` dist-tag). Package: `@ps-neko/nekowork`. CLI: `nekowork` (`harness` is a legacy alias). Default: mock providers, no API keys.
|
|
190
211
|
|
|
191
|
-
Verification: `npm run lint` pass · `npm test`
|
|
212
|
+
Verification: `npm run lint` pass · `npm test` 501 tests pass · `npm audit --audit-level=moderate` 0 vulns · `npm pack --dry-run --json` pass · `npx -y @ps-neko/nekowork@alpha check` pass with warnings only.
|
|
192
213
|
|
|
193
214
|
Live provider auth delegates to local CLI sessions (`claude auth status`, `codex login`, `gemini`); long-lived API key env vars (`ANTHROPIC_API_KEY`, `OPENAI_API_KEY`, `GEMINI_API_KEY`, `GOOGLE_API_KEY`) are blocked unless `HARNESS_AUTH_ALLOW_ENV_OVERRIDE=1`. See [docs/SETUP.md](docs/SETUP.md).
|
|
194
215
|
|
|
@@ -196,7 +217,8 @@ Live provider auth delegates to local CLI sessions (`claude auth status`, `codex
|
|
|
196
217
|
|
|
197
218
|
- **Core:** [QUICKSTART](docs/QUICKSTART.md) · [CLI-STAGES](docs/CLI-STAGES.md) · [INTEGRATION](docs/INTEGRATION.md) · [UPSTREAM-RECIPES](docs/UPSTREAM-RECIPES.md) · [BUILD](docs/BUILD.md) · [AUTONOMY](docs/AUTONOMY.md) · [SAFETY-GUARANTEES](docs/SAFETY-GUARANTEES.md) · [FAILURE-MODES](docs/FAILURE-MODES.md)
|
|
198
219
|
- **Demos & evidence:** [DEMO](docs/DEMO.md) · [DEMO-REPORT](docs/DEMO-REPORT.md) · [EXTERNAL-RUN](docs/EXTERNAL-RUN.md) · [case-studies](docs/case-studies)
|
|
199
|
-
- **
|
|
220
|
+
- **1.0 direction:** [SCOPE-1.0.md](docs/SCOPE-1.0.md) — scope, risk rules, decision policy, fixture sourcing · [VISION.md](docs/VISION.md) — long-term verification-first OS vision
|
|
221
|
+
- **Reference:** [GUIDED-MODE](docs/GUIDED-MODE.md) · [ADVANCED](docs/ADVANCED.md) · [CATALOG-PACKS](docs/CATALOG-PACKS.md) · [PORTING](docs/PORTING.md) · [PR-PREP](docs/PR-PREP.md) · [RELEASE-READINESS](docs/RELEASE-READINESS.md) · [ARCHITECTURE](docs/ARCHITECTURE.md) · [PRODUCT-PRINCIPLES](docs/PRODUCT-PRINCIPLES.md) · [ROADMAP](docs/ROADMAP.md)
|
|
200
222
|
- **Project rules:** [SOUL.md](SOUL.md) · [RULES.md](RULES.md) · [AGENTS.md](AGENTS.md)
|
|
201
223
|
|
|
202
224
|
## License
|
package/WORKING-CONTEXT.md
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
## Current Truth
|
|
11
11
|
|
|
12
12
|
- 위치: `C:/Users/Mun/harness/` · 브랜치: `main`
|
|
13
|
-
- 버전: `0.1.0-alpha.
|
|
13
|
+
- 버전: `0.1.0-alpha.12` (repo; npm alpha 는 `0.1.0-alpha.11` published 2026-05-16, alpha.12 publish 진행 중)
|
|
14
14
|
- 카탈로그: 11 agents · 5 skills (+1 ralph) · 5 hooks · 6 modules · 5 profiles
|
|
15
15
|
- 5 빌더 모두 동작 (claude / codex / cursor / gemini / opencode) + codemaps
|
|
16
16
|
- `npm test`, `npm run lint`, `npm audit --audit-level=moderate`, provider live smoke, Rust release build 검증 경로 유지
|
|
@@ -26,14 +26,21 @@
|
|
|
26
26
|
## Active Queues
|
|
27
27
|
|
|
28
28
|
### In Progress
|
|
29
|
-
-
|
|
29
|
+
- 외부 알파 5명 모집 + 7일 피드백 수집 (POST-RELEASE-CHECKLIST §4-§5, **사용자 수동 social work**)
|
|
30
30
|
|
|
31
31
|
### Next
|
|
32
|
-
-
|
|
32
|
+
- 1.0 게이트 5조건 점검 (SCOPE-1.0 §13.2): recall ≥ 0.90, FP ≤ 0.10 (real-world corpus), 외부 알파 3/5 "다시 쓰겠다", CRITICAL 미탐 0, 치명적 오탐 0
|
|
33
|
+
- real-world fixture 추가 후 `npm run bench:rules` 재측정
|
|
34
|
+
- 코드 품질 핫스팟 3건 (cli.js 분해 / orchestrator 보일러플레이트 추출 / 미사용 export) — **publish 게이트 통과 이후**
|
|
35
|
+
|
|
36
|
+
### 절대 금지 (현 단계)
|
|
37
|
+
- 코드 추가 (외부 피드백 없이 추측으로 룰 늘리기 금지)
|
|
38
|
+
- scope 확장 (verify-skill / verify-release 등은 1.x)
|
|
39
|
+
- "1.0 곧 출시" 류 마케팅
|
|
33
40
|
|
|
34
41
|
## Open PR Classification
|
|
35
42
|
|
|
36
|
-
(
|
|
43
|
+
(이전 작업 — auth migration / harness.dev placeholder / 검증 게이트 cut 등은 main 머지 완료, 메모리 `nekowork-*` 참조)
|
|
37
44
|
|
|
38
45
|
## Interfaces
|
|
39
46
|
|
|
@@ -50,3 +57,6 @@
|
|
|
50
57
|
- 2026-04-29: P1 회수 세션 완료 (`docs/dev-log/2026-04-29-p1-recovery.md`). 빈 디렉터리 6 → 0, 미구현 스크립트 9 → 0, ARCHITECTURE 528줄, 73 테스트.
|
|
51
58
|
- 2026-04-29: 잡티 제거 배치 진행 중 — 본 파일 갱신 + Validator 경고 정합 + RUNBOOK/PORTING/Security Bar 보완.
|
|
52
59
|
- 2026-04-30: **auth migration 완료**. PR #1-#3 (3계층 인증 + GitHub OAuth + OS keychain) main 머지 (`60e9de9` → `7c4f2c8`, +4 commits, rebase merge). PR #2/#3 은 phase-1 옛 SHA 포함으로 force-push 1회씩(`--onto origin/main bf72841`/`b2b1bce` + `--force-with-lease`). Smoke 3/4 PASS (#1 `claude /status` Claude Max, #2 override 차단 3 케이스, #4 keychain Windows Credential Manager). #3 GitHub OAuth Device Flow 는 OAuth App 미등록으로 사용자 자율 보류 — 실제 GitHub automation 사용 시점에 수행. PR #4 (codex 0.125+ 호환) 는 본 작업과 무관 OPEN 잔존.
|
|
60
|
+
- 2026-05-14: **alpha.10 npm publish 완료**. dist-tag `@alpha`. 19개 CLI 명령 wide surface. 코드 품질 핫스팟 3건 진단 (cli.js 1543 LOC / orchestrator 보일러플레이트 / 미사용 export 3건) — publish 게이트 후 처리.
|
|
61
|
+
- 2026-05-15~16: **1.0 검증 게이트 cut + alpha.11 publish**. `feat(verify-pr)` 5 deterministic rules + Auto-Apply-Commit-Push + GitHub Actions PR comment + bench:rules. 정체성을 "verification-first AI development factory" 12-Station 으로 정제 (VISION.md). README hero 는 검증 게이트 카피 유지.
|
|
62
|
+
- 2026-05-16: **post-publish CI red 사고 복구** (`6a0e862`). `.gitignore *.pem` 룰이 secret-detection 룰 자체 fixture 까지 차단 → alpha.11 가 CI red 6 commit streak 상태로 publish. `!tests/fixtures/**/*.pem` 예외 + synthetic fixture 2개 commit 으로 복구. POST-RELEASE-CHECKLIST §0.2 에 CI green 3항목 게이트 추가 (`f6995ab`). 메모리 `nekowork-alpha11-verify-pr` 의 '자기모순' 섹션 참조.
|
package/agent.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
spec_version: gitagent/0.1.0
|
|
2
2
|
name: nekowork
|
|
3
3
|
runtime_name: harness
|
|
4
|
-
version: 0.1.0-alpha.
|
|
4
|
+
version: 0.1.0-alpha.12
|
|
5
5
|
description: "NEKOWORK - Verified autopilot for AI code changes with Codex verification, Human Gate, and explicit apply"
|
|
6
6
|
license: MIT
|
|
7
7
|
homepage: https://github.com/Ps-Neko/NEKOWORK
|
|
@@ -23,7 +23,7 @@ agents:
|
|
|
23
23
|
- doc-writer
|
|
24
24
|
|
|
25
25
|
skills:
|
|
26
|
-
-
|
|
26
|
+
- nekowork-full-cycle
|
|
27
27
|
- plan-eng-review
|
|
28
28
|
- tdd-workflow
|
|
29
29
|
- acceptance-coverage
|
|
@@ -33,10 +33,11 @@ skills:
|
|
|
33
33
|
- release-readiness
|
|
34
34
|
- porting
|
|
35
35
|
- ralph # 명시 옵트인 영속 루프. 자동 키워드 활성 OFF.
|
|
36
|
+
- verified-gate # strict 검증 게이트 진입점. 명시 옵트인, 자동 키워드 OFF.
|
|
36
37
|
|
|
37
38
|
commands:
|
|
38
39
|
# legacy compat (slash entry). 신규 추가 금지.
|
|
39
|
-
-
|
|
40
|
+
- nekowork-full-cycle
|
|
40
41
|
|
|
41
42
|
hooks:
|
|
42
43
|
file: hooks/hooks.json
|
|
@@ -200,7 +201,7 @@ auth:
|
|
|
200
201
|
deny_static_api_keys_in_repo: true
|
|
201
202
|
|
|
202
203
|
routing:
|
|
203
|
-
# 단계별 routing 표는 skills/
|
|
204
|
+
# 단계별 routing 표는 skills/nekowork-full-cycle/SKILL.md 가 정전(canon).
|
|
204
205
|
eco_mode_floor: sonnet
|
|
205
206
|
human_gate_triggers:
|
|
206
207
|
severity: critical
|
|
@@ -5,7 +5,7 @@ provider: codex
|
|
|
5
5
|
model: gpt-5-codex
|
|
6
6
|
level: 3
|
|
7
7
|
disallowedTools: [Write, Edit, Bash, Network]
|
|
8
|
-
trigger: ["codex challenge", "--secure", "
|
|
8
|
+
trigger: ["codex challenge", "--secure", "nekowork-full-cycle:6"]
|
|
9
9
|
hand_off_to: []
|
|
10
10
|
sandbox: read-only
|
|
11
11
|
network_access: false
|
package/agents/codex-reviewer.md
CHANGED
|
@@ -5,7 +5,7 @@ provider: codex
|
|
|
5
5
|
model: gpt-5-codex
|
|
6
6
|
level: 3
|
|
7
7
|
disallowedTools: [Write, Edit, Bash, Network]
|
|
8
|
-
trigger: ["codex review", "
|
|
8
|
+
trigger: ["codex review", "nekowork-full-cycle:5"]
|
|
9
9
|
hand_off_to: []
|
|
10
10
|
sandbox: read-only
|
|
11
11
|
network_access: false
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: "Claude 주도 + Codex 위임 7단계 풀사이클. nekowork-full-cycle 스킬 호출."
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /nekowork-full-cycle
|
|
6
|
+
|
|
7
|
+
이 슬래시 명령은 `nekowork-full-cycle` 스킬의 legacy compat 진입점이다. 신규 워크플로우는 스킬에서 정의되지만 슬래시 호출 호환성을 위해 보존.
|
|
8
|
+
|
|
9
|
+
## 동작
|
|
10
|
+
|
|
11
|
+
`Skill` 도구로 `nekowork-full-cycle` 를 즉시 호출. 인자가 있으면 작업 요약으로 전달, 없으면 사용자에게 한 줄 요약을 요청.
|
|
12
|
+
|
|
13
|
+
## 인자
|
|
14
|
+
|
|
15
|
+
- `$ARGUMENTS` — 작업 요약 한 줄
|
|
16
|
+
- `--fast` — 단계 1·6 스킵
|
|
17
|
+
- `--secure` — 단계 6 강제
|
|
18
|
+
- `--no-ship` — 단계 7 생략
|
|
19
|
+
|
|
20
|
+
## 예시
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
/nekowork-full-cycle JWT 검증 미들웨어 추가 --secure
|
|
24
|
+
/nekowork-full-cycle 결제 환불 로직 버그 수정
|
|
25
|
+
/nekowork-full-cycle --fast 사소한 리팩토링
|
|
26
|
+
/nekowork-full-cycle 새 API 엔드포인트 --no-ship
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
전체 명세는 `skills/nekowork-full-cycle/SKILL.md` 참조.
|
package/docs/ADVANCED.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# Advanced Features
|
|
2
2
|
|
|
3
|
+
> ## Phased Cut status
|
|
4
|
+
>
|
|
5
|
+
> 이 페이지의 대부분 명령은 알파.10 시기의 wide CLI surface 입니다.
|
|
6
|
+
> NEKOWORK 1.0 은 [검증 게이트 정체성](SCOPE-1.0.md) 에 집중하며,
|
|
7
|
+
> 이 명령들은 [Phased Cut](SCOPE-1.0.md#2-phased-cut-단계) 을 거칩니다.
|
|
8
|
+
>
|
|
9
|
+
> | Phase | 시기 | 상태 |
|
|
10
|
+
> |---|---|---|
|
|
11
|
+
> | Phase 0 | now (0.1.x → 0.2.x) | **functional** + hero 강등 |
|
|
12
|
+
> | Phase 1 | 0.3.x → 1.0 | `[deprecated]` 마크 + "removed in 2.0" 경고 |
|
|
13
|
+
> | Phase 2 | 1.x → 2.0 | 제거 또는 `@ps-neko/nekowork-legacy` 분리 |
|
|
14
|
+
>
|
|
15
|
+
> 1.0 의 hero 명령 4종 — `check / verify-pr / report / apply` — 으로 이주를 권장합니다.
|
|
16
|
+
> 명령별 운명은 [SCOPE-1.0.md §3](SCOPE-1.0.md#3-명령-운명-표) 참고.
|
|
17
|
+
> 장기 비전은 [VISION.md](VISION.md) 참고.
|
|
18
|
+
|
|
3
19
|
The public alpha path focuses on `doctor`, `build`, `report`, `gate`, and the decomposed `ask`, `plan`, `team`, `work`, `verify`, `ship`, `apply`, `run`, `review`, `review-cycle`, and install/apply surfaces. This page keeps the larger runtime surface discoverable without crowding the first-run docs.
|
|
4
20
|
|
|
5
21
|
## team
|