@howlil/ez-agents 2.0.1 → 3.0.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 (140) hide show
  1. package/README.md +72 -25
  2. package/README.zh-CN.md +84 -84
  3. package/agents/ez-ui-auditor.md +0 -2
  4. package/agents/ez-ui-checker.md +2 -4
  5. package/agents/ez-ui-researcher.md +0 -2
  6. package/bin/install.js +84 -84
  7. package/commands/ez/debug.md +1 -1
  8. package/commands/ez/map-codebase.md +1 -1
  9. package/commands/ez/reapply-patches.md +3 -3
  10. package/commands/ez/research-phase.md +1 -1
  11. package/{get-shit-done → ez-agents}/bin/ez-tools.cjs +1 -1
  12. package/{get-shit-done → ez-agents}/bin/lib/auth.cjs +2 -2
  13. package/{get-shit-done → ez-agents}/bin/lib/core.cjs +16 -16
  14. package/{get-shit-done → ez-agents}/bin/lib/init.cjs +20 -20
  15. package/{get-shit-done → ez-agents}/bin/lib/logger.cjs +2 -2
  16. package/{get-shit-done → ez-agents}/bin/lib/temp-file.cjs +2 -2
  17. package/{get-shit-done → ez-agents}/bin/lib/test-file-lock.cjs +1 -1
  18. package/{get-shit-done → ez-agents}/bin/lib/test-graceful.cjs +1 -1
  19. package/{get-shit-done → ez-agents}/bin/lib/test-logger.cjs +1 -1
  20. package/{get-shit-done → ez-agents}/bin/lib/test-temp-file.cjs +2 -2
  21. package/{get-shit-done → ez-agents}/workflows/add-phase.md +2 -2
  22. package/{get-shit-done → ez-agents}/workflows/audit-milestone.md +1 -1
  23. package/{get-shit-done → ez-agents}/workflows/complete-milestone.md +3 -3
  24. package/ez-agents/workflows/debug.md +0 -0
  25. package/{get-shit-done → ez-agents}/workflows/discovery-phase.md +5 -5
  26. package/{get-shit-done → ez-agents}/workflows/discuss-phase.md +2 -2
  27. package/{get-shit-done → ez-agents}/workflows/execute-phase.md +5 -5
  28. package/{get-shit-done → ez-agents}/workflows/execute-plan.md +10 -10
  29. package/{get-shit-done → ez-agents}/workflows/help.md +9 -9
  30. package/{get-shit-done → ez-agents}/workflows/insert-phase.md +2 -2
  31. package/{get-shit-done → ez-agents}/workflows/map-codebase.md +3 -3
  32. package/{get-shit-done → ez-agents}/workflows/new-milestone.md +4 -4
  33. package/{get-shit-done → ez-agents}/workflows/new-project.md +8 -8
  34. package/{get-shit-done → ez-agents}/workflows/plan-phase.md +9 -9
  35. package/{get-shit-done → ez-agents}/workflows/progress.md +2 -2
  36. package/{get-shit-done → ez-agents}/workflows/quick.md +10 -10
  37. package/{get-shit-done → ez-agents}/workflows/remove-phase.md +4 -4
  38. package/{get-shit-done → ez-agents}/workflows/research-phase.md +4 -4
  39. package/{get-shit-done → ez-agents}/workflows/resume-project.md +1 -1
  40. package/{get-shit-done → ez-agents}/workflows/set-profile.md +3 -3
  41. package/{get-shit-done → ez-agents}/workflows/transition.md +3 -3
  42. package/{get-shit-done → ez-agents}/workflows/ui-phase.md +12 -12
  43. package/{get-shit-done → ez-agents}/workflows/ui-review.md +6 -6
  44. package/{get-shit-done → ez-agents}/workflows/update.md +29 -29
  45. package/{get-shit-done → ez-agents}/workflows/validate-phase.md +5 -5
  46. package/{get-shit-done → ez-agents}/workflows/verify-phase.md +6 -6
  47. package/{get-shit-done → ez-agents}/workflows/verify-work.md +5 -5
  48. package/hooks/dist/ez-check-update.js +81 -0
  49. package/hooks/dist/ez-context-monitor.js +141 -0
  50. package/hooks/dist/ez-statusline.js +115 -0
  51. package/package.json +13 -3
  52. package/scripts/build-hooks.js +3 -3
  53. /package/{get-shit-done → ez-agents}/bin/lib/assistant-adapter.cjs +0 -0
  54. /package/{get-shit-done → ez-agents}/bin/lib/audit-exec.cjs +0 -0
  55. /package/{get-shit-done → ez-agents}/bin/lib/circuit-breaker.cjs +0 -0
  56. /package/{get-shit-done → ez-agents}/bin/lib/commands.cjs +0 -0
  57. /package/{get-shit-done → ez-agents}/bin/lib/config.cjs +0 -0
  58. /package/{get-shit-done → ez-agents}/bin/lib/file-lock.cjs +0 -0
  59. /package/{get-shit-done → ez-agents}/bin/lib/frontmatter.cjs +0 -0
  60. /package/{get-shit-done → ez-agents}/bin/lib/fs-utils.cjs +0 -0
  61. /package/{get-shit-done → ez-agents}/bin/lib/git-utils.cjs +0 -0
  62. /package/{get-shit-done → ez-agents}/bin/lib/health-check.cjs +0 -0
  63. /package/{get-shit-done → ez-agents}/bin/lib/index.cjs +0 -0
  64. /package/{get-shit-done → ez-agents}/bin/lib/milestone.cjs +0 -0
  65. /package/{get-shit-done → ez-agents}/bin/lib/model-provider.cjs +0 -0
  66. /package/{get-shit-done → ez-agents}/bin/lib/phase.cjs +0 -0
  67. /package/{get-shit-done → ez-agents}/bin/lib/retry.cjs +0 -0
  68. /package/{get-shit-done → ez-agents}/bin/lib/roadmap.cjs +0 -0
  69. /package/{get-shit-done → ez-agents}/bin/lib/safe-exec.cjs +0 -0
  70. /package/{get-shit-done → ez-agents}/bin/lib/safe-path.cjs +0 -0
  71. /package/{get-shit-done → ez-agents}/bin/lib/state.cjs +0 -0
  72. /package/{get-shit-done → ez-agents}/bin/lib/template.cjs +0 -0
  73. /package/{get-shit-done → ez-agents}/bin/lib/test-safe-exec.cjs +0 -0
  74. /package/{get-shit-done → ez-agents}/bin/lib/test-safe-path.cjs +0 -0
  75. /package/{get-shit-done → ez-agents}/bin/lib/timeout-exec.cjs +0 -0
  76. /package/{get-shit-done → ez-agents}/bin/lib/verify.cjs +0 -0
  77. /package/{get-shit-done → ez-agents}/references/checkpoints.md +0 -0
  78. /package/{get-shit-done → ez-agents}/references/continuation-format.md +0 -0
  79. /package/{get-shit-done → ez-agents}/references/decimal-phase-calculation.md +0 -0
  80. /package/{get-shit-done → ez-agents}/references/git-integration.md +0 -0
  81. /package/{get-shit-done → ez-agents}/references/git-planning-commit.md +0 -0
  82. /package/{get-shit-done → ez-agents}/references/model-profile-resolution.md +0 -0
  83. /package/{get-shit-done → ez-agents}/references/model-profiles.md +0 -0
  84. /package/{get-shit-done → ez-agents}/references/phase-argument-parsing.md +0 -0
  85. /package/{get-shit-done → ez-agents}/references/planning-config.md +0 -0
  86. /package/{get-shit-done → ez-agents}/references/questioning.md +0 -0
  87. /package/{get-shit-done → ez-agents}/references/tdd.md +0 -0
  88. /package/{get-shit-done → ez-agents}/references/ui-brand.md +0 -0
  89. /package/{get-shit-done → ez-agents}/references/verification-patterns.md +0 -0
  90. /package/{get-shit-done → ez-agents}/templates/DEBUG.md +0 -0
  91. /package/{get-shit-done → ez-agents}/templates/UAT.md +0 -0
  92. /package/{get-shit-done → ez-agents}/templates/UI-SPEC.md +0 -0
  93. /package/{get-shit-done → ez-agents}/templates/VALIDATION.md +0 -0
  94. /package/{get-shit-done → ez-agents}/templates/codebase/architecture.md +0 -0
  95. /package/{get-shit-done → ez-agents}/templates/codebase/concerns.md +0 -0
  96. /package/{get-shit-done → ez-agents}/templates/codebase/conventions.md +0 -0
  97. /package/{get-shit-done → ez-agents}/templates/codebase/integrations.md +0 -0
  98. /package/{get-shit-done → ez-agents}/templates/codebase/stack.md +0 -0
  99. /package/{get-shit-done → ez-agents}/templates/codebase/structure.md +0 -0
  100. /package/{get-shit-done → ez-agents}/templates/codebase/testing.md +0 -0
  101. /package/{get-shit-done → ez-agents}/templates/config.json +0 -0
  102. /package/{get-shit-done → ez-agents}/templates/context.md +0 -0
  103. /package/{get-shit-done → ez-agents}/templates/continue-here.md +0 -0
  104. /package/{get-shit-done → ez-agents}/templates/copilot-instructions.md +0 -0
  105. /package/{get-shit-done → ez-agents}/templates/debug-subagent-prompt.md +0 -0
  106. /package/{get-shit-done → ez-agents}/templates/discovery.md +0 -0
  107. /package/{get-shit-done → ez-agents}/templates/milestone-archive.md +0 -0
  108. /package/{get-shit-done → ez-agents}/templates/milestone.md +0 -0
  109. /package/{get-shit-done → ez-agents}/templates/phase-prompt.md +0 -0
  110. /package/{get-shit-done → ez-agents}/templates/planner-subagent-prompt.md +0 -0
  111. /package/{get-shit-done → ez-agents}/templates/project.md +0 -0
  112. /package/{get-shit-done → ez-agents}/templates/requirements.md +0 -0
  113. /package/{get-shit-done → ez-agents}/templates/research-project/ARCHITECTURE.md +0 -0
  114. /package/{get-shit-done → ez-agents}/templates/research-project/FEATURES.md +0 -0
  115. /package/{get-shit-done → ez-agents}/templates/research-project/PITFALLS.md +0 -0
  116. /package/{get-shit-done → ez-agents}/templates/research-project/STACK.md +0 -0
  117. /package/{get-shit-done → ez-agents}/templates/research-project/SUMMARY.md +0 -0
  118. /package/{get-shit-done → ez-agents}/templates/research.md +0 -0
  119. /package/{get-shit-done → ez-agents}/templates/retrospective.md +0 -0
  120. /package/{get-shit-done → ez-agents}/templates/roadmap.md +0 -0
  121. /package/{get-shit-done → ez-agents}/templates/state.md +0 -0
  122. /package/{get-shit-done → ez-agents}/templates/summary-complex.md +0 -0
  123. /package/{get-shit-done → ez-agents}/templates/summary-minimal.md +0 -0
  124. /package/{get-shit-done → ez-agents}/templates/summary-standard.md +0 -0
  125. /package/{get-shit-done → ez-agents}/templates/summary.md +0 -0
  126. /package/{get-shit-done → ez-agents}/templates/user-setup.md +0 -0
  127. /package/{get-shit-done → ez-agents}/templates/verification-report.md +0 -0
  128. /package/{get-shit-done → ez-agents}/workflows/add-tests.md +0 -0
  129. /package/{get-shit-done → ez-agents}/workflows/add-todo.md +0 -0
  130. /package/{get-shit-done → ez-agents}/workflows/autonomous.md +0 -0
  131. /package/{get-shit-done → ez-agents}/workflows/check-todos.md +0 -0
  132. /package/{get-shit-done → ez-agents}/workflows/cleanup.md +0 -0
  133. /package/{get-shit-done → ez-agents}/workflows/diagnose-issues.md +0 -0
  134. /package/{get-shit-done → ez-agents}/workflows/health.md +0 -0
  135. /package/{get-shit-done → ez-agents}/workflows/list-phase-assumptions.md +0 -0
  136. /package/{get-shit-done → ez-agents}/workflows/node-repair.md +0 -0
  137. /package/{get-shit-done → ez-agents}/workflows/pause-work.md +0 -0
  138. /package/{get-shit-done → ez-agents}/workflows/plan-milestone-gaps.md +0 -0
  139. /package/{get-shit-done → ez-agents}/workflows/settings.md +0 -0
  140. /package/{get-shit-done → ez-agents}/workflows/stats.md +0 -0
@@ -16,21 +16,21 @@ function toPosixPath(p) {
16
16
  // ─── Model Profile Table ─────────────────────────────────────────────────────
17
17
 
18
18
  const MODEL_PROFILES = {
19
- 'gsd-planner': { quality: 'opus', balanced: 'opus', budget: 'sonnet' },
20
- 'gsd-roadmapper': { quality: 'opus', balanced: 'sonnet', budget: 'sonnet' },
21
- 'gsd-executor': { quality: 'opus', balanced: 'sonnet', budget: 'sonnet' },
22
- 'gsd-phase-researcher': { quality: 'opus', balanced: 'sonnet', budget: 'haiku' },
23
- 'gsd-project-researcher': { quality: 'opus', balanced: 'sonnet', budget: 'haiku' },
24
- 'gsd-research-synthesizer': { quality: 'sonnet', balanced: 'sonnet', budget: 'haiku' },
25
- 'gsd-debugger': { quality: 'opus', balanced: 'sonnet', budget: 'sonnet' },
26
- 'gsd-codebase-mapper': { quality: 'sonnet', balanced: 'haiku', budget: 'haiku' },
27
- 'gsd-verifier': { quality: 'sonnet', balanced: 'sonnet', budget: 'haiku' },
28
- 'gsd-plan-checker': { quality: 'sonnet', balanced: 'sonnet', budget: 'haiku' },
29
- 'gsd-integration-checker': { quality: 'sonnet', balanced: 'sonnet', budget: 'haiku' },
30
- 'gsd-nyquist-auditor': { quality: 'sonnet', balanced: 'sonnet', budget: 'haiku' },
31
- 'gsd-ui-researcher': { quality: 'opus', balanced: 'sonnet', budget: 'haiku' },
32
- 'gsd-ui-checker': { quality: 'sonnet', balanced: 'sonnet', budget: 'haiku' },
33
- 'gsd-ui-auditor': { quality: 'sonnet', balanced: 'sonnet', budget: 'haiku' },
19
+ 'ez-planner': { quality: 'opus', balanced: 'opus', budget: 'sonnet' },
20
+ 'ez-roadmapper': { quality: 'opus', balanced: 'sonnet', budget: 'sonnet' },
21
+ 'ez-executor': { quality: 'opus', balanced: 'sonnet', budget: 'sonnet' },
22
+ 'ez-phase-researcher': { quality: 'opus', balanced: 'sonnet', budget: 'haiku' },
23
+ 'ez-project-researcher': { quality: 'opus', balanced: 'sonnet', budget: 'haiku' },
24
+ 'ez-research-synthesizer': { quality: 'sonnet', balanced: 'sonnet', budget: 'haiku' },
25
+ 'ez-debugger': { quality: 'opus', balanced: 'sonnet', budget: 'sonnet' },
26
+ 'ez-codebase-mapper': { quality: 'sonnet', balanced: 'haiku', budget: 'haiku' },
27
+ 'ez-verifier': { quality: 'sonnet', balanced: 'sonnet', budget: 'haiku' },
28
+ 'ez-plan-checker': { quality: 'sonnet', balanced: 'sonnet', budget: 'haiku' },
29
+ 'ez-integration-checker': { quality: 'sonnet', balanced: 'sonnet', budget: 'haiku' },
30
+ 'ez-nyquist-auditor': { quality: 'sonnet', balanced: 'sonnet', budget: 'haiku' },
31
+ 'ez-ui-researcher': { quality: 'opus', balanced: 'sonnet', budget: 'haiku' },
32
+ 'ez-ui-checker': { quality: 'sonnet', balanced: 'sonnet', budget: 'haiku' },
33
+ 'ez-ui-auditor': { quality: 'sonnet', balanced: 'sonnet', budget: 'haiku' },
34
34
  };
35
35
 
36
36
  // ─── Output helpers ───────────────────────────────────────────────────────────
@@ -43,7 +43,7 @@ function output(result, raw, rawValue) {
43
43
  // Large payloads exceed Claude Code's Bash tool buffer (~50KB).
44
44
  // Write to tmpfile and output the path prefixed with @file: so callers can detect it.
45
45
  if (json.length > 50000) {
46
- const tmpPath = path.join(require('os').tmpdir(), `gsd-${Date.now()}.json`);
46
+ const tmpPath = path.join(require('os').tmpdir(), `${Date.now()}.json`);
47
47
  fs.writeFileSync(tmpPath, json, 'utf-8');
48
48
  process.stdout.write('@file:' + tmpPath);
49
49
  } else {
@@ -25,8 +25,8 @@ function cmdInitExecutePhase(cwd, phase, raw) {
25
25
 
26
26
  const result = {
27
27
  // Models
28
- executor_model: resolveModelInternal(cwd, 'gsd-executor'),
29
- verifier_model: resolveModelInternal(cwd, 'gsd-verifier'),
28
+ executor_model: resolveModelInternal(cwd, 'ez-executor'),
29
+ verifier_model: resolveModelInternal(cwd, 'ez-verifier'),
30
30
 
31
31
  // Config flags
32
32
  commit_docs: config.commit_docs,
@@ -97,9 +97,9 @@ function cmdInitPlanPhase(cwd, phase, raw) {
97
97
 
98
98
  const result = {
99
99
  // Models
100
- researcher_model: resolveModelInternal(cwd, 'gsd-phase-researcher'),
101
- planner_model: resolveModelInternal(cwd, 'gsd-planner'),
102
- checker_model: resolveModelInternal(cwd, 'gsd-plan-checker'),
100
+ researcher_model: resolveModelInternal(cwd, 'ez-phase-researcher'),
101
+ planner_model: resolveModelInternal(cwd, 'ez-planner'),
102
+ checker_model: resolveModelInternal(cwd, 'ez-plan-checker'),
103
103
 
104
104
  // Workflow flags
105
105
  research_enabled: config.research,
@@ -187,9 +187,9 @@ function cmdInitNewProject(cwd, raw) {
187
187
 
188
188
  const result = {
189
189
  // Models
190
- researcher_model: resolveModelInternal(cwd, 'gsd-project-researcher'),
191
- synthesizer_model: resolveModelInternal(cwd, 'gsd-research-synthesizer'),
192
- roadmapper_model: resolveModelInternal(cwd, 'gsd-roadmapper'),
190
+ researcher_model: resolveModelInternal(cwd, 'ez-project-researcher'),
191
+ synthesizer_model: resolveModelInternal(cwd, 'ez-research-synthesizer'),
192
+ roadmapper_model: resolveModelInternal(cwd, 'ez-roadmapper'),
193
193
 
194
194
  // Config
195
195
  commit_docs: config.commit_docs,
@@ -224,9 +224,9 @@ function cmdInitNewMilestone(cwd, raw) {
224
224
 
225
225
  const result = {
226
226
  // Models
227
- researcher_model: resolveModelInternal(cwd, 'gsd-project-researcher'),
228
- synthesizer_model: resolveModelInternal(cwd, 'gsd-research-synthesizer'),
229
- roadmapper_model: resolveModelInternal(cwd, 'gsd-roadmapper'),
227
+ researcher_model: resolveModelInternal(cwd, 'ez-project-researcher'),
228
+ synthesizer_model: resolveModelInternal(cwd, 'ez-research-synthesizer'),
229
+ roadmapper_model: resolveModelInternal(cwd, 'ez-roadmapper'),
230
230
 
231
231
  // Config
232
232
  commit_docs: config.commit_docs,
@@ -270,10 +270,10 @@ function cmdInitQuick(cwd, description, raw) {
270
270
 
271
271
  const result = {
272
272
  // Models
273
- planner_model: resolveModelInternal(cwd, 'gsd-planner'),
274
- executor_model: resolveModelInternal(cwd, 'gsd-executor'),
275
- checker_model: resolveModelInternal(cwd, 'gsd-plan-checker'),
276
- verifier_model: resolveModelInternal(cwd, 'gsd-verifier'),
273
+ planner_model: resolveModelInternal(cwd, 'ez-planner'),
274
+ executor_model: resolveModelInternal(cwd, 'ez-executor'),
275
+ checker_model: resolveModelInternal(cwd, 'ez-plan-checker'),
276
+ verifier_model: resolveModelInternal(cwd, 'ez-verifier'),
277
277
 
278
278
  // Config
279
279
  commit_docs: config.commit_docs,
@@ -342,8 +342,8 @@ function cmdInitVerifyWork(cwd, phase, raw) {
342
342
 
343
343
  const result = {
344
344
  // Models
345
- planner_model: resolveModelInternal(cwd, 'gsd-planner'),
346
- checker_model: resolveModelInternal(cwd, 'gsd-plan-checker'),
345
+ planner_model: resolveModelInternal(cwd, 'ez-planner'),
346
+ checker_model: resolveModelInternal(cwd, 'ez-plan-checker'),
347
347
 
348
348
  // Config
349
349
  commit_docs: config.commit_docs,
@@ -574,7 +574,7 @@ function cmdInitMapCodebase(cwd, raw) {
574
574
 
575
575
  const result = {
576
576
  // Models
577
- mapper_model: resolveModelInternal(cwd, 'gsd-codebase-mapper'),
577
+ mapper_model: resolveModelInternal(cwd, 'ez-codebase-mapper'),
578
578
 
579
579
  // Config
580
580
  commit_docs: config.commit_docs,
@@ -658,8 +658,8 @@ function cmdInitProgress(cwd, raw) {
658
658
 
659
659
  const result = {
660
660
  // Models
661
- executor_model: resolveModelInternal(cwd, 'gsd-executor'),
662
- planner_model: resolveModelInternal(cwd, 'gsd-planner'),
661
+ executor_model: resolveModelInternal(cwd, 'ez-executor'),
662
+ planner_model: resolveModelInternal(cwd, 'ez-planner'),
663
663
 
664
664
  // Config
665
665
  commit_docs: config.commit_docs,
@@ -4,7 +4,7 @@
4
4
  * GSD Logger — Centralized logging module for GSD workflow
5
5
  *
6
6
  * Provides structured logging with levels (ERROR, WARN, INFO, DEBUG)
7
- * Writes to .planning/logs/gsd-{timestamp}.log
7
+ * Writes to .planning/logs/ez-{timestamp}.log
8
8
  * Replaces silent catch {} blocks with proper error logging
9
9
  *
10
10
  * Usage:
@@ -34,7 +34,7 @@ class Logger {
34
34
  if (!fs.existsSync(this.logDir)) {
35
35
  fs.mkdirSync(this.logDir, { recursive: true });
36
36
  }
37
- this.logFile = path.join(this.logDir, `gsd-${Date.now()}.log`);
37
+ this.logFile = path.join(this.logDir, `ez-${Date.now()}.log`);
38
38
  }
39
39
 
40
40
  /**
@@ -54,7 +54,7 @@ function isPathSafe(basePath, targetPath) {
54
54
  * @param {string} customBase - Custom base directory (default: os.tmpdir())
55
55
  * @returns {Promise<string>} - Path to created temp directory
56
56
  */
57
- async function createTempDir(prefix = 'gsd-', customBase = null) {
57
+ async function createTempDir(prefix = 'ez-', customBase = null) {
58
58
  const baseDir = customBase || os.tmpdir();
59
59
  const tempPath = await fs.promises.mkdtemp(path.join(baseDir, prefix));
60
60
 
@@ -73,7 +73,7 @@ async function createTempDir(prefix = 'gsd-', customBase = null) {
73
73
  * @param {string} content - Optional initial content
74
74
  * @returns {Promise<string>} - Path to created temp file
75
75
  */
76
- async function createTempFile(prefix = 'gsd-', customBase = null, content = '') {
76
+ async function createTempFile(prefix = 'ez-', customBase = null, content = '') {
77
77
  const baseDir = customBase || os.tmpdir();
78
78
  const fileName = `${prefix}${generateSecureSuffix()}`;
79
79
  const tempPath = path.join(baseDir, fileName);
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * Test script for GSD File Lock
5
- * Run: node get-shit-done/bin/lib/test-file-lock.cjs
5
+ * Run: node ez-agents/bin/lib/test-file-lock.cjs
6
6
  */
7
7
 
8
8
  const { withLock, isLocked, ifUnlocked } = require('./file-lock.cjs');
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * Test script for GSD Health Check and Timeout Exec
5
- * Run: node get-shit-done/bin/lib/test-graceful.cjs
5
+ * Run: node ez-agents/bin/lib/test-graceful.cjs
6
6
  */
7
7
 
8
8
  const HealthCheck = require('./health-check.cjs');
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * Test script for GSD Logger
5
- * Run: node get-shit-done/bin/lib/test-logger.cjs
5
+ * Run: node ez-agents/bin/lib/test-logger.cjs
6
6
  */
7
7
 
8
8
  const Logger = require('./logger.cjs');
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * Test script for GSD Temp File Handler
5
- * Run: node get-shit-done/bin/lib/test-temp-file.cjs
5
+ * Run: node ez-agents/bin/lib/test-temp-file.cjs
6
6
  */
7
7
 
8
8
  const os = require('os');
@@ -23,7 +23,7 @@ const {
23
23
  async function testCreateTempDir() {
24
24
  console.log('\n=== Test 1: Create Temp Directory ===');
25
25
 
26
- const tempDir = await createTempDir('gsd-test-');
26
+ const tempDir = await createTempDir('ez-test-');
27
27
  console.log('Created temp dir:', tempDir);
28
28
 
29
29
  const exists = require('fs').existsSync(tempDir);
@@ -42,7 +42,7 @@ Exit.
42
42
  </step>
43
43
 
44
44
  <step name="add_phase">
45
- **Delegate the phase addition to gsd-tools:**
45
+ **Delegate the phase addition to ez-tools:**
46
46
 
47
47
  ```bash
48
48
  RESULT=$(node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" phase add "${description}")
@@ -104,7 +104,7 @@ Roadmap updated: .planning/ROADMAP.md
104
104
  </process>
105
105
 
106
106
  <success_criteria>
107
- - [ ] `gsd-tools phase add` executed successfully
107
+ - [ ] `ez-tools phase add` executed successfully
108
108
  - [ ] Phase directory created
109
109
  - [ ] Roadmap updated with new phase entry
110
110
  - [ ] STATE.md updated with roadmap evolution note
@@ -19,7 +19,7 @@ Extract from init JSON: `milestone_version`, `milestone_name`, `phase_count`, `c
19
19
 
20
20
  Resolve integration checker model:
21
21
  ```bash
22
- integration_checker_model=$(node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" resolve-model gsd-integration-checker --raw)
22
+ integration_checker_model=$(node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" resolve-model ez-integration-checker --raw)
23
23
  ```
24
24
 
25
25
  ## 1. Determine Milestone Scope
@@ -175,7 +175,7 @@ Key accomplishments for this milestone:
175
175
 
176
176
  <step name="create_milestone_entry">
177
177
 
178
- **Note:** MILESTONES.md entry is now created automatically by `gsd-tools milestone complete` in the archive_milestone step. The entry includes version, date, phase/plan/task counts, and accomplishments extracted from SUMMARY.md files.
178
+ **Note:** MILESTONES.md entry is now created automatically by `ez-tools milestone complete` in the archive_milestone step. The entry includes version, date, phase/plan/task counts, and accomplishments extracted from SUMMARY.md files.
179
179
 
180
180
  If additional details are needed (e.g., user-provided "Delivered" summary, git range, LOC stats), add them manually after the CLI creates the base entry.
181
181
 
@@ -366,7 +366,7 @@ Update `.planning/ROADMAP.md` — group completed milestone phases:
366
366
 
367
367
  <step name="archive_milestone">
368
368
 
369
- **Delegate archival to gsd-tools:**
369
+ **Delegate archival to ez-tools:**
370
370
 
371
371
  ```bash
372
372
  ARCHIVE=$(node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" milestone complete "v[X.Y]" --name "[Milestone Name]")
@@ -451,7 +451,7 @@ ls .planning/RETROSPECTIVE.md 2>/dev/null
451
451
 
452
452
  **If exists:** Read the file, append new milestone section before the "## Cross-Milestone Trends" section.
453
453
 
454
- **If doesn't exist:** Create from template at `~/.claude/get-shit-done/templates/retrospective.md`.
454
+ **If doesn't exist:** Create from template at `~/.claude/ez-agents/templates/retrospective.md`.
455
455
 
456
456
  **Gather retrospective data:**
457
457
 
File without changes
@@ -28,7 +28,7 @@ Claude's training data is 6-18 months stale. Always verify.
28
28
  2. **Official docs** - When Context7 lacks coverage
29
29
  3. **WebSearch LAST** - For comparisons and trends only
30
30
 
31
- See ~/.claude/get-shit-done/templates/discovery.md `<discovery_protocol>` for full protocol.
31
+ See ~/.claude/ez-agents/templates/discovery.md `<discovery_protocol>` for full protocol.
32
32
  </source_hierarchy>
33
33
 
34
34
  <process>
@@ -107,7 +107,7 @@ For: Choosing between options, new external integration.
107
107
 
108
108
  5. **Cross-verify:** Any WebSearch finding → confirm with Context7/official docs.
109
109
 
110
- 6. **Create DISCOVERY.md** using ~/.claude/get-shit-done/templates/discovery.md structure:
110
+ 6. **Create DISCOVERY.md** using ~/.claude/ez-agents/templates/discovery.md structure:
111
111
 
112
112
  - Summary with recommendation
113
113
  - Key findings per option
@@ -126,7 +126,7 @@ For: Architectural decisions, novel problems, high-risk choices.
126
126
 
127
127
  **Process:**
128
128
 
129
- 1. **Scope the discovery** using ~/.claude/get-shit-done/templates/discovery.md:
129
+ 1. **Scope the discovery** using ~/.claude/ez-agents/templates/discovery.md:
130
130
 
131
131
  - Define clear scope
132
132
  - Define include/exclude boundaries
@@ -160,7 +160,7 @@ For: Architectural decisions, novel problems, high-risk choices.
160
160
 
161
161
  6. **Create comprehensive DISCOVERY.md:**
162
162
 
163
- - Full structure from ~/.claude/get-shit-done/templates/discovery.md
163
+ - Full structure from ~/.claude/ez-agents/templates/discovery.md
164
164
  - Quality report with source attribution
165
165
  - Confidence by finding
166
166
  - If LOW confidence on any critical finding → add validation checkpoints
@@ -184,7 +184,7 @@ Ask: What do we need to learn before we can plan this phase?
184
184
  </step>
185
185
 
186
186
  <step name="create_discovery_scope">
187
- Use ~/.claude/get-shit-done/templates/discovery.md.
187
+ Use ~/.claude/ez-agents/templates/discovery.md.
188
188
 
189
189
  Include:
190
190
 
@@ -7,11 +7,11 @@ You are a thinking partner, not an interviewer. The user is the visionary — yo
7
7
  <downstream_awareness>
8
8
  **CONTEXT.md feeds into:**
9
9
 
10
- 1. **gsd-phase-researcher** — Reads CONTEXT.md to know WHAT to research
10
+ 1. **ez-phase-researcher** — Reads CONTEXT.md to know WHAT to research
11
11
  - "User wants card-based layout" → researcher investigates card component patterns
12
12
  - "Infinite scroll decided" → researcher looks into virtualization libraries
13
13
 
14
- 2. **gsd-planner** — Reads CONTEXT.md to know WHAT decisions are locked
14
+ 2. **ez-planner** — Reads CONTEXT.md to know WHAT decisions are locked
15
15
  - "Pull-to-refresh on mobile" → planner includes that in task specs
16
16
  - "Claude's Discretion: loading skeleton" → planner can decide approach
17
17
 
@@ -119,10 +119,10 @@ Execute each wave in sequence. Within a wave: parallel if `PARALLELIZATION=true`
119
119
  </objective>
120
120
 
121
121
  <execution_context>
122
- @~/.claude/get-shit-done/workflows/execute-plan.md
123
- @~/.claude/get-shit-done/templates/summary.md
124
- @~/.claude/get-shit-done/references/checkpoints.md
125
- @~/.claude/get-shit-done/references/tdd.md
122
+ @~/.claude/ez-agents/workflows/execute-plan.md
123
+ @~/.claude/ez-agents/templates/summary.md
124
+ @~/.claude/ez-agents/references/checkpoints.md
125
+ @~/.claude/ez-agents/references/tdd.md
126
126
  </execution_context>
127
127
 
128
128
  <files_to_read>
@@ -432,7 +432,7 @@ STOP. Do not proceed to auto-advance or transition.
432
432
 
433
433
  Execute the transition workflow inline (do NOT use Task — orchestrator context is ~10-15%, transition needs phase completion data already in context):
434
434
 
435
- Read and follow `~/.claude/get-shit-done/workflows/transition.md`, passing through the `--auto` flag so it propagates to the next phase invocation.
435
+ Read and follow `~/.claude/ez-agents/workflows/transition.md`, passing through the `--auto` flag so it propagates to the next phase invocation.
436
436
 
437
437
  **If none of `--auto`, `AUTO_CHAIN`, or `AUTO_CFG` is true:**
438
438
 
@@ -6,7 +6,7 @@ Execute a phase prompt (PLAN.md) and create the outcome summary (SUMMARY.md).
6
6
  Read STATE.md before any operation to load project context.
7
7
  Read config.json for planning behavior settings.
8
8
 
9
- @~/.claude/get-shit-done/references/git-integration.md
9
+ @~/.claude/ez-agents/references/git-integration.md
10
10
  </required_reading>
11
11
 
12
12
  <process>
@@ -35,7 +35,7 @@ Find first PLAN without matching SUMMARY. Decimal phases supported (`01.1-hotfix
35
35
 
36
36
  ```bash
37
37
  PHASE=$(echo "$PLAN_PATH" | grep -oE '[0-9]+(\.[0-9]+)?-[0-9]+')
38
- # config settings can be fetched via gsd-tools config-get if needed
38
+ # config settings can be fetched via ez-tools config-get if needed
39
39
  ```
40
40
 
41
41
  <if mode="yolo">
@@ -100,7 +100,7 @@ Pattern B only (verify-only checkpoints). Skip for A/C.
100
100
 
101
101
  1. Parse segment map: checkpoint locations and types
102
102
  2. Per segment:
103
- - Subagent route: spawn gsd-executor for assigned tasks only. Prompt: task range, plan path, read full plan for context, execute assigned tasks, track deviations, NO SUMMARY/commit. Track via agent protocol.
103
+ - Subagent route: spawn ez-executor for assigned tasks only. Prompt: task range, plan path, read full plan for context, execute assigned tasks, track deviations, NO SUMMARY/commit. Track via agent protocol.
104
104
  - Main route: execute tasks using standard flow (step name="execute")
105
105
  3. After ALL segments: aggregate files/deviations/decisions → create SUMMARY.md → commit → self-check:
106
106
  - Verify key-files.created exist on disk with `[ -f ]`
@@ -225,7 +225,7 @@ For `type: tdd` plans — RED-GREEN-REFACTOR:
225
225
 
226
226
  Errors: RED doesn't fail → investigate test/existing feature. GREEN doesn't pass → debug, iterate. REFACTOR breaks → undo.
227
227
 
228
- See `~/.claude/get-shit-done/references/tdd.md` for structure.
228
+ See `~/.claude/ez-agents/references/tdd.md` for structure.
229
229
  </tdd_plan_execution>
230
230
 
231
231
  <precommit_failure_handling>
@@ -294,7 +294,7 @@ Display: `CHECKPOINT: [Type]` box → Progress {X}/{Y} → Task name → type-sp
294
294
 
295
295
  After response: verify if specified. Pass → continue. Fail → inform, wait. WAIT for user — do NOT hallucinate completion.
296
296
 
297
- See ~/.claude/get-shit-done/references/checkpoints.md for details.
297
+ See ~/.claude/ez-agents/references/checkpoints.md for details.
298
298
  </step>
299
299
 
300
300
  <step name="checkpoint_return_for_orchestrator">
@@ -313,7 +313,7 @@ If verification fails:
313
313
  NODE_REPAIR=$(node "./.claude/ez-agents/bin/ez-tools.cjs" config-get workflow.node_repair 2>/dev/null || echo "true")
314
314
  ```
315
315
 
316
- If `NODE_REPAIR` is `true`: invoke `@./.claude/get-shit-done/workflows/node-repair.md` with:
316
+ If `NODE_REPAIR` is `true`: invoke `@./.claude/ez-agents/workflows/node-repair.md` with:
317
317
  - FAILED_TASK: task number, name, done-criteria
318
318
  - ERROR: expected vs actual result
319
319
  - PLAN_CONTEXT: adjacent task names + phase goal
@@ -347,11 +347,11 @@ fi
347
347
  grep -A 50 "^user_setup:" .planning/phases/XX-name/{phase}-{plan}-PLAN.md | head -50
348
348
  ```
349
349
 
350
- If user_setup exists: create `{phase}-USER-SETUP.md` using template `~/.claude/get-shit-done/templates/user-setup.md`. Per service: env vars table, account setup checklist, dashboard config, local dev notes, verification commands. Status "Incomplete". Set `USER_SETUP_CREATED=true`. If empty/missing: skip.
350
+ If user_setup exists: create `{phase}-USER-SETUP.md` using template `~/.claude/ez-agents/templates/user-setup.md`. Per service: env vars table, account setup checklist, dashboard config, local dev notes, verification commands. Status "Incomplete". Set `USER_SETUP_CREATED=true`. If empty/missing: skip.
351
351
  </step>
352
352
 
353
353
  <step name="create_summary">
354
- Create `{phase}-{plan}-SUMMARY.md` at `.planning/phases/XX-name/`. Use `~/.claude/get-shit-done/templates/summary.md`.
354
+ Create `{phase}-{plan}-SUMMARY.md` at `.planning/phases/XX-name/`. Use `~/.claude/ez-agents/templates/summary.md`.
355
355
 
356
356
  **Frontmatter:** phase, plan, subsystem, tags | requires/provides/affects | tech-stack.added/patterns | key-files.created/modified | key-decisions | requirements-completed (**MUST** copy `requirements` array from PLAN.md frontmatter verbatim) | duration ($DURATION), completed ($PLAN_END_TIME date).
357
357
 
@@ -365,7 +365,7 @@ Next: more plans → "Ready for {next-plan}" | last → "Phase complete, ready f
365
365
  </step>
366
366
 
367
367
  <step name="update_current_position">
368
- Update STATE.md using gsd-tools:
368
+ Update STATE.md using ez-tools:
369
369
 
370
370
  ```bash
371
371
  # Advance plan counter (handles last-plan edge case)
@@ -396,7 +396,7 @@ node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" state add-blocker --text-file "$
396
396
  </step>
397
397
 
398
398
  <step name="update_session_continuity">
399
- Update session info using gsd-tools:
399
+ Update session info using ez-tools:
400
400
 
401
401
  ```bash
402
402
  node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" state record-session \
@@ -1,11 +1,11 @@
1
1
  <purpose>
2
- Display the complete GSD command reference. Output ONLY the reference content. Do NOT add project-specific analysis, git status, next-step suggestions, or any commentary beyond the reference.
2
+ Display the complete EZ Agents command reference. Output ONLY the reference content. Do NOT add project-specific analysis, git status, next-step suggestions, or any commentary beyond the reference.
3
3
  </purpose>
4
4
 
5
5
  <reference>
6
- # GSD Command Reference
6
+ # EZ Agents Command Reference
7
7
 
8
- **GSD** (Get Shit Done) creates hierarchical project plans optimized for solo agentic development with Claude Code.
8
+ **EZ Agents** Meta-prompting & Agent Orchestration, but ez. Creates hierarchical project plans optimized for solo agentic development with Claude Code, OpenCode, Gemini, Codex, and Copilot.
9
9
 
10
10
  ## Quick Start
11
11
 
@@ -15,10 +15,10 @@ Display the complete GSD command reference. Output ONLY the reference content. D
15
15
 
16
16
  ## Staying Updated
17
17
 
18
- GSD evolves fast. Update periodically:
18
+ EZ Agents evolves fast. Update periodically:
19
19
 
20
20
  ```bash
21
- npx get-shit-done-cc@latest
21
+ npx ez-agents@latest
22
22
  ```
23
23
 
24
24
  ## Core Workflow
@@ -331,21 +331,21 @@ Usage: `/ez:cleanup`
331
331
  Show this command reference.
332
332
 
333
333
  **`/ez:update`**
334
- Update GSD to latest version with changelog preview.
334
+ Update EZ Agents to latest version with changelog preview.
335
335
 
336
336
  - Shows installed vs latest version comparison
337
337
  - Displays changelog entries for versions you've missed
338
338
  - Highlights breaking changes
339
339
  - Confirms before running install
340
- - Better than raw `npx get-shit-done-cc`
340
+ - Better than raw `npx ez-agents`
341
341
 
342
342
  Usage: `/ez:update`
343
343
 
344
344
  **`/ez:join-discord`**
345
- Join the GSD Discord community.
345
+ Join the EZ Agents Discord community.
346
346
 
347
347
  - Get help, share what you're building, stay updated
348
- - Connect with other GSD users
348
+ - Connect with other EZ Agents users
349
349
 
350
350
  Usage: `/ez:join-discord`
351
351
 
@@ -46,7 +46,7 @@ Exit.
46
46
  </step>
47
47
 
48
48
  <step name="insert_phase">
49
- **Delegate the phase insertion to gsd-tools:**
49
+ **Delegate the phase insertion to ez-tools:**
50
50
 
51
51
  ```bash
52
52
  RESULT=$(node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" phase insert "${after_phase}" "${description}")
@@ -122,7 +122,7 @@ Project state updated: .planning/STATE.md
122
122
  <success_criteria>
123
123
  Phase insertion is complete when:
124
124
 
125
- - [ ] `gsd-tools phase insert` executed successfully
125
+ - [ ] `ez-tools phase insert` executed successfully
126
126
  - [ ] Phase directory created
127
127
  - [ ] Roadmap updated with new phase entry (includes "(INSERTED)" marker)
128
128
  - [ ] STATE.md updated with roadmap evolution note
@@ -83,11 +83,11 @@ Continue to spawn_agents.
83
83
  </step>
84
84
 
85
85
  <step name="spawn_agents">
86
- Spawn 4 parallel gsd-codebase-mapper agents.
86
+ Spawn 4 parallel ez-codebase-mapper agents.
87
87
 
88
88
  Use Task tool with `subagent_type="ez-codebase-mapper"`, `model="{mapper_model}"`, and `run_in_background=true` for parallel execution.
89
89
 
90
- **CRITICAL:** Use the dedicated `gsd-codebase-mapper` agent, NOT `Explore`. The mapper agent writes documents directly.
90
+ **CRITICAL:** Use the dedicated `ez-codebase-mapper` agent, NOT `Explore`. The mapper agent writes documents directly.
91
91
 
92
92
  **Agent 1: Tech Focus**
93
93
 
@@ -307,7 +307,7 @@ End workflow.
307
307
 
308
308
  <success_criteria>
309
309
  - .planning/codebase/ directory created
310
- - 4 parallel gsd-codebase-mapper agents spawned with run_in_background=true
310
+ - 4 parallel ez-codebase-mapper agents spawned with run_in_background=true
311
311
  - Agents write documents directly (orchestrator doesn't receive document contents)
312
312
  - Read agent output files to collect confirmations
313
313
  - All 7 codebase documents exist
@@ -115,7 +115,7 @@ node "$HOME/.claude/ez-agents/bin/ez-tools.cjs" config-set workflow.research fal
115
115
  mkdir -p .planning/research
116
116
  ```
117
117
 
118
- Spawn 4 parallel gsd-project-researcher agents. Each uses this template with dimension-specific fields:
118
+ Spawn 4 parallel ez-project-researcher agents. Each uses this template with dimension-specific fields:
119
119
 
120
120
  **Common structure for all 4 researchers:**
121
121
  ```
@@ -140,7 +140,7 @@ Focus ONLY on what's needed for the NEW features.
140
140
 
141
141
  <output>
142
142
  Write to: .planning/research/{FILE}
143
- Use template: ~/.claude/get-shit-done/templates/research-project/{FILE}
143
+ Use template: ~/.claude/ez-agents/templates/research-project/{FILE}
144
144
  </output>
145
145
  ", subagent_type="ez-project-researcher", model="{researcher_model}", description="{DIMENSION} research")
146
146
  ```
@@ -169,7 +169,7 @@ Synthesize research outputs into SUMMARY.md.
169
169
  </files_to_read>
170
170
 
171
171
  Write to: .planning/research/SUMMARY.md
172
- Use template: ~/.claude/get-shit-done/templates/research-project/SUMMARY.md
172
+ Use template: ~/.claude/ez-agents/templates/research-project/SUMMARY.md
173
173
  Commit after writing.
174
174
  ", subagent_type="ez-research-synthesizer", model="{synthesizer_model}", description="Synthesize research")
175
175
  ```
@@ -373,7 +373,7 @@ Also: `/ez:plan-phase [N]` — skip discussion, plan directly
373
373
  - [ ] Research completed (if selected) — 4 parallel agents, milestone-aware
374
374
  - [ ] Requirements gathered and scoped per category
375
375
  - [ ] REQUIREMENTS.md created with REQ-IDs
376
- - [ ] gsd-roadmapper spawned with phase numbering context
376
+ - [ ] ez-roadmapper spawned with phase numbering context
377
377
  - [ ] Roadmap files written immediately (not draft)
378
378
  - [ ] User feedback incorporated (if any)
379
379
  - [ ] ROADMAP.md phases continue from previous milestone