@wooojin/forgen 0.4.10 → 0.4.11

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 (72) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/CHANGELOG.md +46 -0
  3. package/README.md +33 -1
  4. package/assets/claude/agents/forgen-verify.md +65 -0
  5. package/assets/claude/workflows/compound-extract.js +136 -0
  6. package/assets/claude/workflows/evidence-gate-audit.js +107 -0
  7. package/assets/shared/hook-registry.json +1 -0
  8. package/dist/checks/_shared/meta-guard-dispatch.d.ts +38 -0
  9. package/dist/checks/_shared/meta-guard-dispatch.js +80 -0
  10. package/dist/checks/_shared/text-sanitizer.js +15 -0
  11. package/dist/cli.js +57 -2
  12. package/dist/core/changelog-cli.d.ts +7 -0
  13. package/dist/core/changelog-cli.js +100 -0
  14. package/dist/core/doctor.d.ts +3 -0
  15. package/dist/core/doctor.js +38 -0
  16. package/dist/core/effort-advisory.d.ts +23 -0
  17. package/dist/core/effort-advisory.js +29 -0
  18. package/dist/core/explain-cli.d.ts +6 -0
  19. package/dist/core/explain-cli.js +99 -0
  20. package/dist/core/health-cli.d.ts +23 -0
  21. package/dist/core/health-cli.js +86 -0
  22. package/dist/core/probe-workflow-cli.d.ts +72 -0
  23. package/dist/core/probe-workflow-cli.js +282 -0
  24. package/dist/core/stats-cli.d.ts +22 -9
  25. package/dist/core/stats-cli.js +149 -0
  26. package/dist/core/watch-cli.d.ts +7 -0
  27. package/dist/core/watch-cli.js +185 -0
  28. package/dist/core/workflows-cli.d.ts +26 -0
  29. package/dist/core/workflows-cli.js +120 -0
  30. package/dist/engine/compound-export.d.ts +12 -0
  31. package/dist/engine/compound-export.js +136 -14
  32. package/dist/engine/compound-extractor.d.ts +12 -43
  33. package/dist/engine/compound-extractor.js +27 -756
  34. package/dist/engine/extraction-diff.d.ts +11 -0
  35. package/dist/engine/extraction-diff.js +105 -0
  36. package/dist/engine/extraction-gates.d.ts +37 -0
  37. package/dist/engine/extraction-gates.js +100 -0
  38. package/dist/engine/extraction-git.d.ts +20 -0
  39. package/dist/engine/extraction-git.js +75 -0
  40. package/dist/engine/extraction-persistence.d.ts +27 -0
  41. package/dist/engine/extraction-persistence.js +140 -0
  42. package/dist/engine/extraction-session.d.ts +26 -0
  43. package/dist/engine/extraction-session.js +230 -0
  44. package/dist/engine/lifecycle/types.d.ts +1 -1
  45. package/dist/engine/meta-learning/matcher-weight-loader.d.ts +16 -0
  46. package/dist/engine/meta-learning/matcher-weight-loader.js +45 -0
  47. package/dist/engine/precision-guards.d.ts +14 -0
  48. package/dist/engine/precision-guards.js +39 -0
  49. package/dist/engine/ranking-pipeline.d.ts +45 -0
  50. package/dist/engine/ranking-pipeline.js +66 -0
  51. package/dist/engine/relevance-scorer.d.ts +43 -0
  52. package/dist/engine/relevance-scorer.js +81 -0
  53. package/dist/engine/scoring-algorithms.d.ts +31 -0
  54. package/dist/engine/scoring-algorithms.js +109 -0
  55. package/dist/engine/solution-matcher-eval.d.ts +97 -0
  56. package/dist/engine/solution-matcher-eval.js +122 -0
  57. package/dist/engine/solution-matcher.d.ts +21 -380
  58. package/dist/engine/solution-matcher.js +27 -828
  59. package/dist/fgx.js +1 -1
  60. package/dist/hooks/notepad-injector.js +7 -0
  61. package/dist/hooks/post-tool-use.js +8 -1
  62. package/dist/hooks/shared/preflight-check.d.ts +15 -0
  63. package/dist/hooks/shared/preflight-check.js +51 -0
  64. package/dist/hooks/stop-guard.js +19 -60
  65. package/dist/hooks/subagent-stop-guard.d.ts +23 -0
  66. package/dist/hooks/subagent-stop-guard.js +158 -0
  67. package/dist/hooks/subagent-tracker.d.ts +36 -3
  68. package/dist/hooks/subagent-tracker.js +86 -39
  69. package/hooks/hooks.json +6 -1
  70. package/package.json +7 -7
  71. package/plugin.json +1 -1
  72. package/scripts/postinstall.js +10 -7
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wooojin/forgen",
3
- "version": "0.4.10",
3
+ "version": "0.4.11",
4
4
  "preferGlobal": true,
5
5
  "main": "dist/lib.js",
6
6
  "types": "./dist/lib.d.ts",
@@ -29,7 +29,7 @@
29
29
  "format": "biome format --write src/",
30
30
  "postinstall": "node scripts/postinstall.js",
31
31
  "prepare": "npm run build",
32
- "prepublishOnly": "npm test",
32
+ "prepublishOnly": "npm run build && node scripts/prepack-hooks.cjs && npm test",
33
33
  "prepack": "npm run build && node scripts/prepack-hooks.cjs"
34
34
  },
35
35
  "author": "jang-ujin",
@@ -77,17 +77,17 @@
77
77
  "CONTRIBUTING.md"
78
78
  ],
79
79
  "devDependencies": {
80
- "@biomejs/biome": "^2.4.8",
80
+ "@biomejs/biome": "^2.4.16",
81
81
  "@types/js-yaml": "^4.0.9",
82
- "@types/node": "^25.5.0",
83
- "@vitest/coverage-v8": "^4.1.0",
82
+ "@types/node": "^25.9.1",
83
+ "@vitest/coverage-v8": "^4.1.7",
84
84
  "typescript": "^5.9.3",
85
- "vitest": "^4.0.18"
85
+ "vitest": "^4.1.7"
86
86
  },
87
87
  "dependencies": {
88
88
  "@modelcontextprotocol/sdk": "^1.28.0",
89
89
  "js-yaml": "^4.1.1",
90
- "zod": "^4.3.6"
90
+ "zod": "^4.4.3"
91
91
  },
92
92
  "peerDependencies": {
93
93
  "@anthropic-ai/claude-code": ">=2.0.0"
package/plugin.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://claude.ai/schemas/claude-plugin.json",
3
3
  "name": "forgen",
4
- "version": "0.4.10",
4
+ "version": "0.4.11",
5
5
  "description": "Claude Code harness — the more you use Claude, the better it gets",
6
6
  "author": {
7
7
  "name": "jang-ujin",
@@ -1111,14 +1111,17 @@ async function main() {
1111
1111
  // First-run banner (신규 사용자 안내) — feat/codex-support P1-6
1112
1112
  if (!isExistingForgenUser) {
1113
1113
  console.log('');
1114
- console.log(' ╭─ forgen — multi-host support ─────────────────────────────╮');
1115
- console.log(' │ binaries installed: forgen, fgx, forgen-mcp │');
1114
+ console.log(' ╭─ forgen — setup checklist ────────────────────────────────╮');
1115
+ console.log(' │ │');
1116
+ console.log(' │ 1. Register on a host: │');
1117
+ console.log(' │ $ forgen install claude (or codex / both) │');
1118
+ console.log(' │ │');
1119
+ console.log(' │ 2. Complete onboarding (4 questions): │');
1120
+ console.log(' │ $ forgen │');
1121
+ console.log(' │ │');
1122
+ console.log(' │ 3. Verify setup: │');
1123
+ console.log(' │ $ forgen doctor --quick │');
1116
1124
  console.log(' │ │');
1117
- console.log(' │ Next: register forgen on a host (Claude or Codex): │');
1118
- console.log(' │ $ forgen install (interactive 3-choice) │');
1119
- console.log(' │ $ forgen install claude (Claude only) │');
1120
- console.log(' │ $ forgen install codex (Codex only) │');
1121
- console.log(' │ $ forgen install both (둘 다) │');
1122
1125
  console.log(' ╰────────────────────────────────────────────────────────────╯');
1123
1126
  console.log('');
1124
1127
  } else {