yam-harness 0.1.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.
Files changed (43) hide show
  1. package/AGENTS.md +18 -0
  2. package/COMMANDS.md +144 -0
  3. package/DECISIONS.md +70 -0
  4. package/LICENSE +21 -0
  5. package/README.md +159 -0
  6. package/ROADMAP.md +308 -0
  7. package/bin/yam.js +1966 -0
  8. package/package.json +74 -0
  9. package/references/context-reuse.md +59 -0
  10. package/references/current-docs.md +45 -0
  11. package/references/db-supabase-safety-lite.md +40 -0
  12. package/references/doctor-scan.md +56 -0
  13. package/references/eye.md +30 -0
  14. package/references/final-report.md +61 -0
  15. package/references/honest-completion.md +61 -0
  16. package/references/hook-lite.md +55 -0
  17. package/references/markdown-management.md +56 -0
  18. package/references/memory.md +59 -0
  19. package/references/mission.md +86 -0
  20. package/references/question.md +25 -0
  21. package/references/quick.md +70 -0
  22. package/references/risk-escalation.md +27 -0
  23. package/references/runtime-orchestration.md +57 -0
  24. package/references/scout.md +38 -0
  25. package/references/token-budget-reporter.md +44 -0
  26. package/references/token-economy.md +61 -0
  27. package/references/tool-trust-layer.md +113 -0
  28. package/references/truth-matrix.md +44 -0
  29. package/references/ueye.md +83 -0
  30. package/references/ui-quality.md +23 -0
  31. package/references/verification-levels.md +53 -0
  32. package/skills/deep/SKILL.md +76 -0
  33. package/skills/mission/SKILL.md +105 -0
  34. package/skills/question/SKILL.md +45 -0
  35. package/skills/quick/SKILL.md +81 -0
  36. package/skills/scout/SKILL.md +71 -0
  37. package/skills/ueye/SKILL.md +90 -0
  38. package/templates/mission-plan.md +46 -0
  39. package/templates/runtime-proof.md +54 -0
  40. package/templates/tuning-log.md +39 -0
  41. package/templates/ueye-review.md +62 -0
  42. package/templates/yam.project.md +71 -0
  43. package/yam.manifest.json +48 -0
package/AGENTS.md ADDED
@@ -0,0 +1,18 @@
1
+ # yam Core Rules
2
+
3
+ 1. Direction before execution.
4
+ 2. Start fast, then deepen deliberately when scope, risk, or user intent calls for it.
5
+ 3. Treat token economy as part of quality.
6
+ 4. Reuse project context packs before broad reading.
7
+ 5. Read only the context needed for the requested change.
8
+ 6. Check local project fit before changing code, even for small work.
9
+ 7. Prefer existing project patterns over new abstractions.
10
+ 8. Make the smallest useful change.
11
+ 9. Verify at the lightest level that honestly supports the claim, then escalate verification when the claim is larger.
12
+ 10. Report skipped, partial, blocked, or assumed verification plainly.
13
+ 11. Do not run broad tests for tiny changes, but do not under-verify risky changes.
14
+ 12. Do not use teams, orchestration, structured proof, or tmux unless risk, user intent, or an approved route justifies it.
15
+ 13. Escalate risky work by asking or recommending, not by silently switching modes.
16
+ 14. For UI work, inspect real states and responsive behavior when feasible.
17
+ 15. For long-running processes, do not claim cleanup unless process exit is checked.
18
+ 16. Keep final reports short and concrete.
package/COMMANDS.md ADDED
@@ -0,0 +1,144 @@
1
+ # yam Commands
2
+
3
+ Use these as prompt commands in Codex after restarting the app.
4
+
5
+ ## Quick
6
+
7
+ ```text
8
+ $quick
9
+ 회원가입 버튼 padding을 2px 늘리고 라벨을 "Start free"로 바꿔줘.
10
+ 프로젝트 방향성과 기존 버튼 패턴에 맞게 최소 수정만 해줘.
11
+ ```
12
+
13
+ ```text
14
+ $quick
15
+ 현재 빌드/타입 에러를 빠르게 스캔하고,
16
+ 가장 작은 원인부터 하나씩 고쳐줘.
17
+ 검증은 관련 명령만 실행해줘.
18
+ ```
19
+
20
+ ## Ueye
21
+
22
+ ```text
23
+ $ueye
24
+ 첨부한 레퍼런스 이미지의 분위기를 참고해서 가격 카드 UI를 고급스럽게 개선해줘.
25
+ 이 프로젝트의 디자인 방향성과 맞게 구현하고,
26
+ 가능하면 기본/모바일/오류 상태를 실제 화면 기준으로 확인해줘.
27
+ ```
28
+
29
+ ```text
30
+ $ueye
31
+ 이 스크린샷을 UX/UI 관점에서 봐줘.
32
+ 방향성, CTA, 대비, 정렬, spacing, 모바일 리스크를 P0-P3로 정리하고,
33
+ 가능한 안전한 수정안을 제안해줘.
34
+ ```
35
+
36
+ ## Review-Only
37
+
38
+ ```text
39
+ $deep
40
+ 현재 변경사항을 리뷰해줘.
41
+ 방향성, 코드 리스크, 검증 부족을 P0-P3로 정리하고 수정은 하지 마.
42
+ ```
43
+
44
+ ## Question
45
+
46
+ ```text
47
+ $question
48
+ tmux가 무엇이고, 지금 내 작업에 꼭 필요한지 짧게 설명해줘.
49
+ 구현이나 넓은 조사는 하지 말고 바로 답해줘.
50
+ ```
51
+
52
+ ## Deep
53
+
54
+ ```text
55
+ $deep
56
+ 결제 플로우 상태 처리를 안정화해줘.
57
+ 성공/실패/로딩/재시도 상태와 회귀 위험까지 깊게 검증해줘.
58
+ 필요하면 tmux/dev server/browser QA/cleanup proof까지 사용해줘.
59
+ ```
60
+
61
+ ## Mission
62
+
63
+ ```text
64
+ $mission
65
+ 아래 구현 계획은 확정됐어.
66
+
67
+ 목표:
68
+ -
69
+
70
+ 범위:
71
+ -
72
+
73
+ 금지사항:
74
+ -
75
+
76
+ Acceptance criteria:
77
+ -
78
+
79
+ 실제 subagent/team 단위로 구현하고,
80
+ implementer/reviewer/UX verifier/doctor lane으로 교차 검증해줘.
81
+ 필요하면 tmux/dev server/browser QA/cleanup proof까지 포함해줘.
82
+ 최종 보고에는 evidence, truth status, cleanup status, fix-first items, remaining tasks를 포함해줘.
83
+ ```
84
+
85
+ ## Scout
86
+
87
+ ```text
88
+ $scout
89
+ Next.js에서 이 기능을 구현하는 가장 안전한 방식을 찾아줘.
90
+ 공식 문서와 신뢰 가능한 근거 중심으로 보고,
91
+ 객관적 판단과 주관적 판단, 현실적/미래적 관점까지 나눠서 추천해줘.
92
+ 코드는 아직 수정하지 마.
93
+ ```
94
+
95
+ ## Project Pack
96
+
97
+ Use the CLI to create and inspect the small project direction file.
98
+
99
+ ```bash
100
+ node ~/Documents/Codex/tools/yam/bin/yam.js init-project /path/to/project
101
+ node ~/Documents/Codex/tools/yam/bin/yam.js pack /path/to/project
102
+ node ~/Documents/Codex/tools/yam/bin/yam.js template mission
103
+ ```
104
+
105
+ ## Memory
106
+
107
+ Use this only when a lesson should survive across sessions.
108
+
109
+ ```bash
110
+ node ~/Documents/Codex/tools/yam/bin/yam.js memory init /path/to/project
111
+ node ~/Documents/Codex/tools/yam/bin/yam.js memory add /path/to/project --kind repeat_mistake --summary "UI work was declared done without visual review" --evidence "Missed spacing regression" --action "Run $ueye after major UI work"
112
+ node ~/Documents/Codex/tools/yam/bin/yam.js memory summary /path/to/project
113
+ ```
114
+
115
+ ## Token Budget
116
+
117
+ ```bash
118
+ node ~/Documents/Codex/tools/yam/bin/yam.js budget quick
119
+ node ~/Documents/Codex/tools/yam/bin/yam.js measure quick --files 3 --commands 1 --report-lines 5 --seconds 40
120
+ ```
121
+
122
+ ## Tool Doctor / Proof / Safety
123
+
124
+ Read-only readiness and evidence helpers. These do not install, deploy, query databases, or run verification by themselves.
125
+
126
+ ```bash
127
+ node ~/Documents/Codex/tools/yam/bin/yam.js tools doctor /path/to/project
128
+ node ~/Documents/Codex/tools/yam/bin/yam.js tools doctor /path/to/project --json
129
+ node ~/Documents/Codex/tools/yam/bin/yam.js proof /path/to/project
130
+ node ~/Documents/Codex/tools/yam/bin/yam.js proof --route deep --truth verified --command "npm run build: pass"
131
+ node ~/Documents/Codex/tools/yam/bin/yam.js proof write /path/to/project --route deep --truth partial --command "npm run build: pass"
132
+ node ~/Documents/Codex/tools/yam/bin/yam.js proof write /path/to/project --format md --truth assumed --assumption "No runtime was started"
133
+ node ~/Documents/Codex/tools/yam/bin/yam.js safety "supabase db reset --linked"
134
+ ```
135
+
136
+ ## Lite Hook
137
+
138
+ Advisory-only hook. It does not run checks or force routes.
139
+
140
+ ```bash
141
+ node ~/Documents/Codex/tools/yam/bin/yam.js hook status --global
142
+ node ~/Documents/Codex/tools/yam/bin/yam.js hook enable lite --global
143
+ node ~/Documents/Codex/tools/yam/bin/yam.js hook disable lite --global
144
+ ```
package/DECISIONS.md ADDED
@@ -0,0 +1,70 @@
1
+ # yam Decision Baseline
2
+
3
+ Every `yam` change is evaluated against Sneakoscope, ECC, and Karpathy-style minimal harness principles.
4
+
5
+ ## Fixed Questions
6
+
7
+ 1. What would Sneakoscope verify?
8
+ 2. What would ECC make selective or low-context?
9
+ 3. What would Karpathy remove to keep the core obeyable?
10
+ 4. What should `yam` keep light by default, and what should deepen deliberately?
11
+
12
+ ## Borrow
13
+
14
+ ### Sneakoscope
15
+
16
+ - Truthful completion language.
17
+ - Risk escalation.
18
+ - Bounded verification.
19
+ - Fake versus real distinction.
20
+ - Runtime/process proof only when explicitly requested.
21
+
22
+ ### ECC
23
+
24
+ - Skills-first structure.
25
+ - Selective install.
26
+ - Low-context and no-hooks path.
27
+ - Token optimization.
28
+ - Project-specific rules instead of global bloat.
29
+
30
+ ### Karpathy-Style Minimal Harness
31
+
32
+ - Short core.
33
+ - Few route names.
34
+ - Minimal context.
35
+ - Rules the model can actually follow.
36
+
37
+ ## Reject
38
+
39
+ ### From Sneakoscope
40
+
41
+ - Mandatory hooks.
42
+ - Mandatory Team or subagent proof.
43
+ - Always-on tmux/proof lifecycle.
44
+ - Heavy memory systems for ordinary edits.
45
+
46
+ ### From ECC
47
+
48
+ - Full install by default.
49
+ - Giant catalog context.
50
+ - Hook runtime by default.
51
+ - Too many always-on rules.
52
+
53
+ ### From Minimal Harness
54
+
55
+ - Under-verification.
56
+ - Vague quality rules.
57
+ - No route structure for risky work.
58
+
59
+ ## yam Standard
60
+
61
+ ```text
62
+ Direction before execution.
63
+ Context-reuse first.
64
+ Token-aware by default.
65
+ Start fast.
66
+ Deepen deliberately.
67
+ Basic direction fit and honest verification always.
68
+ Honest by design.
69
+ Heavy proof when risk or user intent calls for it.
70
+ ```
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 0kim0bos
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,159 @@
1
+ # yam
2
+
3
+ `yam` is a progressive proof-first personal Codex harness for fast product building, high-quality UI work, and honest verification.
4
+
5
+ ```text
6
+ Direction before execution.
7
+ Start fast.
8
+ Deepen deliberately.
9
+ Basic direction fit and honest verification always.
10
+ Honest by design.
11
+ Heavy proof when risk or user intent calls for it.
12
+ Token-aware by default.
13
+ Context-reuse first.
14
+ End with remaining tasks and fix-first items.
15
+ ```
16
+
17
+ ## Routes
18
+
19
+ - `$quick`: fast scoped implementation, small fixes, and quick error scans.
20
+ - `$ueye`: design-heavy UI/UX implementation and screenshot-led visual review.
21
+ - `$question`: direct Q&A without turning simple questions into research projects.
22
+ - `$scout`: bounded investigation and recommendation.
23
+ - `$deep`: single-agent heavy verification by request, including runtime/tmux/browser/process proof when needed.
24
+ - `$mission`: approved-plan execution with real subagent/team lanes, cross-verification, doctor scan, and final proof.
25
+
26
+ See `COMMANDS.md` for copy-ready examples.
27
+ See `ROADMAP.md` for remaining implementation stages.
28
+
29
+ ## Defaults
30
+
31
+ - No hooks.
32
+ - Optional `yam-lite` hook is advisory-only and off by default.
33
+ - No automatic Team routing.
34
+ - No automatic proof loops.
35
+ - No automatic tmux.
36
+ - No false completion claims: verification, cleanup, and visual checks must match actual evidence.
37
+ - `yam` is not lightweight-only; it is progressive: quick entry, stronger proof as scope/risk grows.
38
+ - Every route should check project direction and use an honest verification level.
39
+ - Small work stays small, but serious work is allowed to become serious.
40
+ - Token economy is part of quality.
41
+ - Project packs prevent re-reading and re-planning from scratch.
42
+ - Memory is opt-in, project-local, and sparse.
43
+ - Final reports should compactly mention remaining tasks and fix-first issues when useful.
44
+
45
+ ## Project Pack
46
+
47
+ For repeated work in a project, add a small `yam.project.md` at the project root.
48
+
49
+ ```bash
50
+ node ~/Documents/Codex/tools/yam/bin/yam.js init-project .
51
+ node ~/Documents/Codex/tools/yam/bin/yam.js pack .
52
+ ```
53
+
54
+ Routes should read this pack before broad project exploration. The pack is user-owned and should stay compact: `yam` creates it only when missing, checks it with `pack`, and avoids automatic rewrites.
55
+
56
+ ## Memory
57
+
58
+ For repeated mistakes, wrong decisions, direction changes, or durable lessons, use opt-in project memory.
59
+
60
+ ```bash
61
+ node ~/Documents/Codex/tools/yam/bin/yam.js memory init .
62
+ node ~/Documents/Codex/tools/yam/bin/yam.js memory add . --kind lesson --summary "Keep UI checks visual before declaring done" --action "Use $ueye after major UI changes"
63
+ node ~/Documents/Codex/tools/yam/bin/yam.js memory summary .
64
+ ```
65
+
66
+ Memory writes to `.yam/memory/` only when you run the command. Routes should prefer `.yam/memory/summary.md` and should not read every record by default.
67
+
68
+ ## Lite Hook
69
+
70
+ `yam-lite` can be enabled when you want a tiny route/direction nudge in every prompt without automatic checks or proof gates.
71
+ It is only the always-on entry layer, not the full ambition of `yam`.
72
+
73
+ ```bash
74
+ node ~/Documents/Codex/tools/yam/bin/yam.js hook status --global
75
+ node ~/Documents/Codex/tools/yam/bin/yam.js hook enable lite --global
76
+ node ~/Documents/Codex/tools/yam/bin/yam.js hook disable lite --global
77
+ ```
78
+
79
+ It only adds short advisory context. It does not run verification, tmux, browser QA, subagents, or dependency installs.
80
+
81
+ ## Install
82
+
83
+ Recommended:
84
+
85
+ ```bash
86
+ cd ~/Documents/Codex/tools/yam
87
+ node ./bin/yam.js install
88
+ ```
89
+
90
+ This copies each skill plus the shared `references/` directory into `~/.agents/skills/`, which is the user skill root used by this Codex desktop setup.
91
+
92
+ Manual install is also possible by copying selected skill folders into your active Codex user skill root, but make sure each installed skill also receives a `references/` folder.
93
+
94
+ Recommended v0:
95
+
96
+ ```bash
97
+ mkdir -p ~/.agents/skills
98
+ for skill in quick ueye question scout deep mission; do
99
+ rm -rf "$HOME/.agents/skills/$skill"
100
+ mkdir -p "$HOME/.agents/skills/$skill"
101
+ cp "skills/$skill/SKILL.md" "$HOME/.agents/skills/$skill/SKILL.md"
102
+ cp -R references "$HOME/.agents/skills/$skill/references"
103
+ done
104
+ ```
105
+
106
+ Restart Codex after installing so skills reload.
107
+
108
+ ## Uninstall
109
+
110
+ ```bash
111
+ cd ~/Documents/Codex/tools/yam
112
+ node ./bin/yam.js uninstall
113
+ ```
114
+
115
+ No hooks, automations, or global config files are installed.
116
+
117
+ ## Manage
118
+
119
+ ```bash
120
+ node ./bin/yam.js list
121
+ node ./bin/yam.js status
122
+ node ./bin/yam.js verify
123
+ node ./bin/yam.js doctor
124
+ node ./bin/yam.js tools doctor /path/to/project
125
+ node ./bin/yam.js tools doctor /path/to/project --json
126
+ node ./bin/yam.js proof /path/to/project
127
+ node ./bin/yam.js proof write /path/to/project --route quick --truth verified --command "npm run verify:self: pass"
128
+ node ./bin/yam.js safety "supabase db reset"
129
+ node ./bin/yam.js detect /path/to/project
130
+ node ./bin/yam.js pack /path/to/project
131
+ node ./bin/yam.js hook status --global
132
+ node ./bin/yam.js hook enable lite --global
133
+ node ./bin/yam.js hook disable lite --global
134
+ node ./bin/yam.js budget ueye
135
+ node ./bin/yam.js measure ueye --files 5 --commands 2 --report-lines 12 --seconds 180
136
+ node ./bin/yam.js template ueye
137
+ node ./bin/yam.js template mission
138
+ node ./bin/yam.js template proof
139
+ node ./bin/yam.js tune-log /path/to/project
140
+ node ./bin/yam.js memory list /path/to/project
141
+ node ./bin/yam.js memory summary /path/to/project
142
+ node ./bin/yam.js examples
143
+ node ./bin/yam.js path
144
+ node ./bin/yam.js version
145
+ node ./bin/yam.js init-project /path/to/project
146
+ ```
147
+
148
+ ## npm / npx Prep
149
+
150
+ The package exposes the `yam` binary. It does not mutate your home directory during package installation.
151
+
152
+ ```bash
153
+ npx yam-harness list
154
+ npx yam-harness install
155
+ npm install -g yam-harness
156
+ yam status
157
+ ```
158
+
159
+ Publishing still requires confirming the final npm package name and account access.