hatch3r 1.0.0 → 1.2.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 (144) hide show
  1. package/README.md +93 -322
  2. package/agents/hatch3r-a11y-auditor.md +24 -6
  3. package/agents/hatch3r-architect.md +20 -1
  4. package/agents/hatch3r-ci-watcher.md +31 -8
  5. package/agents/hatch3r-context-rules.md +14 -2
  6. package/agents/hatch3r-dependency-auditor.md +21 -5
  7. package/agents/hatch3r-devops.md +37 -6
  8. package/agents/hatch3r-docs-writer.md +19 -3
  9. package/agents/hatch3r-fixer.md +171 -0
  10. package/agents/hatch3r-implementer.md +84 -11
  11. package/agents/hatch3r-learnings-loader.md +69 -13
  12. package/agents/hatch3r-lint-fixer.md +19 -14
  13. package/agents/hatch3r-perf-profiler.md +18 -1
  14. package/agents/hatch3r-researcher.md +440 -5
  15. package/agents/hatch3r-reviewer.md +97 -5
  16. package/agents/hatch3r-security-auditor.md +23 -5
  17. package/agents/hatch3r-test-writer.md +21 -10
  18. package/checks/README.md +49 -0
  19. package/checks/code-quality.md +49 -0
  20. package/checks/performance.md +58 -0
  21. package/checks/security.md +58 -0
  22. package/checks/testing.md +53 -0
  23. package/commands/board/pickup-azure-devops.md +81 -0
  24. package/commands/board/pickup-delegation-multi.md +197 -0
  25. package/commands/board/pickup-delegation.md +100 -0
  26. package/commands/board/pickup-github.md +82 -0
  27. package/commands/board/pickup-gitlab.md +81 -0
  28. package/commands/board/pickup-modes.md +143 -0
  29. package/commands/board/pickup-post-impl.md +120 -0
  30. package/commands/board/shared-azure-devops.md +149 -0
  31. package/commands/board/shared-board-overview.md +215 -0
  32. package/commands/board/shared-github.md +169 -0
  33. package/commands/board/shared-gitlab.md +142 -0
  34. package/commands/hatch3r-agent-customize.md +40 -2
  35. package/commands/hatch3r-api-spec.md +294 -32
  36. package/commands/hatch3r-benchmark.md +386 -32
  37. package/commands/hatch3r-board-fill.md +161 -25
  38. package/commands/hatch3r-board-groom.md +595 -0
  39. package/commands/hatch3r-board-init.md +203 -46
  40. package/commands/hatch3r-board-pickup.md +79 -457
  41. package/commands/hatch3r-board-refresh.md +98 -27
  42. package/commands/hatch3r-board-shared.md +87 -238
  43. package/commands/hatch3r-bug-plan.md +16 -3
  44. package/commands/hatch3r-codebase-map.md +43 -10
  45. package/commands/hatch3r-command-customize.md +6 -0
  46. package/commands/hatch3r-context-health.md +5 -0
  47. package/commands/hatch3r-cost-tracking.md +5 -0
  48. package/commands/hatch3r-debug.md +426 -0
  49. package/commands/hatch3r-dep-audit.md +7 -1
  50. package/commands/hatch3r-feature-plan.md +74 -12
  51. package/commands/hatch3r-healthcheck.md +17 -1
  52. package/commands/hatch3r-hooks.md +16 -10
  53. package/commands/hatch3r-learn.md +15 -9
  54. package/commands/hatch3r-migration-plan.md +333 -33
  55. package/commands/hatch3r-onboard.md +327 -38
  56. package/commands/hatch3r-project-spec.md +46 -10
  57. package/commands/hatch3r-quick-change.md +336 -0
  58. package/commands/hatch3r-recipe.md +6 -0
  59. package/commands/hatch3r-refactor-plan.md +29 -13
  60. package/commands/hatch3r-release.md +13 -3
  61. package/commands/hatch3r-revision.md +395 -0
  62. package/commands/hatch3r-roadmap.md +18 -3
  63. package/commands/hatch3r-rule-customize.md +6 -0
  64. package/commands/hatch3r-security-audit.md +17 -1
  65. package/commands/hatch3r-skill-customize.md +6 -0
  66. package/commands/hatch3r-test-plan.md +532 -0
  67. package/commands/hatch3r-workflow.md +113 -38
  68. package/dist/cli/index.js +5184 -2593
  69. package/dist/cli/index.js.map +1 -0
  70. package/github-agents/hatch3r-docs-agent.md +1 -0
  71. package/github-agents/hatch3r-lint-agent.md +1 -0
  72. package/github-agents/hatch3r-security-agent.md +1 -0
  73. package/github-agents/hatch3r-test-agent.md +1 -0
  74. package/hooks/hatch3r-ci-failure.md +30 -0
  75. package/hooks/hatch3r-file-save.md +22 -0
  76. package/hooks/hatch3r-post-merge.md +23 -0
  77. package/hooks/hatch3r-pre-commit.md +23 -0
  78. package/hooks/hatch3r-pre-push.md +22 -0
  79. package/hooks/hatch3r-session-start.md +22 -0
  80. package/mcp/mcp.json +22 -3
  81. package/package.json +4 -7
  82. package/prompts/hatch3r-bug-triage.md +1 -0
  83. package/prompts/hatch3r-code-review.md +1 -0
  84. package/prompts/hatch3r-pr-description.md +1 -0
  85. package/rules/hatch3r-accessibility-standards.md +1 -0
  86. package/rules/hatch3r-agent-orchestration.md +326 -53
  87. package/rules/hatch3r-agent-orchestration.mdc +225 -0
  88. package/rules/hatch3r-api-design.md +4 -1
  89. package/rules/hatch3r-browser-verification.md +33 -1
  90. package/rules/hatch3r-browser-verification.mdc +29 -0
  91. package/rules/hatch3r-ci-cd.md +5 -1
  92. package/rules/hatch3r-ci-cd.mdc +4 -1
  93. package/rules/hatch3r-code-standards.md +18 -0
  94. package/rules/hatch3r-code-standards.mdc +10 -1
  95. package/rules/hatch3r-component-conventions.md +4 -1
  96. package/rules/hatch3r-data-classification.md +1 -0
  97. package/rules/hatch3r-deep-context.md +94 -0
  98. package/rules/hatch3r-deep-context.mdc +69 -0
  99. package/rules/hatch3r-dependency-management.md +13 -0
  100. package/rules/hatch3r-feature-flags.md +4 -1
  101. package/rules/hatch3r-git-conventions.md +1 -0
  102. package/rules/hatch3r-i18n.md +4 -1
  103. package/rules/hatch3r-learning-consult.md +4 -2
  104. package/rules/hatch3r-learning-consult.mdc +3 -2
  105. package/rules/hatch3r-migrations.md +12 -0
  106. package/rules/hatch3r-observability.md +293 -1
  107. package/rules/hatch3r-performance-budgets.md +5 -2
  108. package/rules/hatch3r-performance-budgets.mdc +1 -1
  109. package/rules/hatch3r-secrets-management.md +11 -3
  110. package/rules/hatch3r-secrets-management.mdc +10 -3
  111. package/rules/hatch3r-security-patterns.md +23 -3
  112. package/rules/hatch3r-security-patterns.mdc +8 -2
  113. package/rules/hatch3r-testing.md +1 -0
  114. package/rules/hatch3r-theming.md +4 -1
  115. package/rules/hatch3r-tooling-hierarchy.md +42 -15
  116. package/rules/hatch3r-tooling-hierarchy.mdc +27 -4
  117. package/skills/hatch3r-a11y-audit/SKILL.md +1 -0
  118. package/skills/hatch3r-agent-customize/SKILL.md +3 -0
  119. package/skills/hatch3r-api-spec/SKILL.md +1 -0
  120. package/skills/hatch3r-architecture-review/SKILL.md +6 -2
  121. package/skills/hatch3r-bug-fix/SKILL.md +4 -1
  122. package/skills/hatch3r-ci-pipeline/SKILL.md +1 -0
  123. package/skills/hatch3r-command-customize/SKILL.md +1 -0
  124. package/skills/hatch3r-context-health/SKILL.md +2 -1
  125. package/skills/hatch3r-cost-tracking/SKILL.md +1 -0
  126. package/skills/hatch3r-dep-audit/SKILL.md +6 -2
  127. package/skills/hatch3r-feature/SKILL.md +9 -2
  128. package/skills/hatch3r-gh-agentic-workflows/SKILL.md +130 -21
  129. package/skills/hatch3r-incident-response/SKILL.md +11 -5
  130. package/skills/hatch3r-issue-workflow/SKILL.md +12 -7
  131. package/skills/hatch3r-logical-refactor/SKILL.md +1 -0
  132. package/skills/hatch3r-migration/SKILL.md +1 -0
  133. package/skills/hatch3r-perf-audit/SKILL.md +2 -1
  134. package/skills/hatch3r-pr-creation/SKILL.md +20 -10
  135. package/skills/hatch3r-qa-validation/SKILL.md +2 -1
  136. package/skills/hatch3r-recipe/SKILL.md +1 -0
  137. package/skills/hatch3r-refactor/SKILL.md +7 -1
  138. package/skills/hatch3r-release/SKILL.md +15 -11
  139. package/skills/hatch3r-rule-customize/SKILL.md +1 -0
  140. package/skills/hatch3r-skill-customize/SKILL.md +1 -0
  141. package/skills/hatch3r-visual-refactor/SKILL.md +1 -0
  142. package/dist/cli/hooks-ZOTFDEA3.js +0 -59
  143. package/rules/hatch3r-error-handling.md +0 -17
  144. package/rules/hatch3r-error-handling.mdc +0 -15
@@ -1,7 +1,8 @@
1
1
  ---
2
2
  id: hatch3r-learnings-loader
3
3
  description: Session-start agent that surfaces relevant project learnings, recent decisions, and context from previous sessions. Use at the beginning of a coding session to get up to speed.
4
- model: haiku
4
+ model: fast
5
+ tags: [core, maintenance]
5
6
  ---
6
7
  You are a project context loader for the project.
7
8
 
@@ -20,17 +21,61 @@ You are a project context loader for the project.
20
21
 
21
22
  ## Learnings Categories
22
23
 
23
- | Category | Examples |
24
+ | Category | Examples | Provenance Fields |
25
+ | --- | --- | --- |
26
+ | Decisions | Architecture choices, library selections, trade-off rationale | source (file path or session), timestamp (when recorded), confidence (high/medium/low based on age and validation status), author (agent or human) |
27
+ | Patterns | Established code patterns, naming conventions, data flow norms | source (file path or session), timestamp (when recorded), confidence (high/medium/low based on age and validation status), author (agent or human) |
28
+ | Pitfalls | Known gotchas, edge cases, things that look wrong but are intentional | source (file path or session), timestamp (when recorded), confidence (high/medium/low based on age and validation status), author (agent or human) |
29
+ | Context | Domain knowledge, business rules, regulatory constraints | source (file path or session), timestamp (when recorded), confidence (high/medium/low based on age and validation status), author (agent or human) |
30
+ | Recent | Changes from last session, in-progress work, open questions | source (file path or session), timestamp (when recorded), confidence (high/medium/low based on age and validation status), author (agent or human) |
31
+
32
+ ## Provenance Schema
33
+
34
+ Each learning entry should include the following frontmatter fields:
35
+
36
+ ```yaml
37
+ recorded: ISO-8601 date
38
+ source: session | agent-name | manual
39
+ confidence: high | medium | low
40
+ author: agent | human
41
+ ```
42
+
43
+ - `recorded`: The ISO-8601 date when the learning was captured (e.g., `2025-06-15`).
44
+ - `source`: Where the learning originated — a session identifier, the name of the agent that produced it, or `manual` for human-authored entries.
45
+ - `confidence`: Reflects trustworthiness based on age and validation status. `high` for recently validated learnings, `medium` for older but unchallenged entries, `low` for unvalidated or entries missing provenance metadata.
46
+ - `author`: Whether the learning was recorded by an `agent` or a `human`.
47
+
48
+ ## Confidence Levels
49
+
50
+ Each learning should include a confidence level based on how many times the pattern has been observed:
51
+
52
+ | Confidence | Criteria |
24
53
  | --- | --- |
25
- | Decisions | Architecture choices, library selections, trade-off rationale |
26
- | Patterns | Established code patterns, naming conventions, data flow norms |
27
- | Pitfalls | Known gotchas, edge cases, things that look wrong but are intentional |
28
- | Context | Domain knowledge, business rules, regulatory constraints |
29
- | Recent | Changes from last session, in-progress work, open questions |
54
+ | **high** | Observed 3+ times across different contexts, recently validated, or explicitly confirmed by a human. |
55
+ | **medium** | Observed 1-2 times, not yet contradicted, but not broadly validated. Older entries that have not been re-confirmed. |
56
+ | **low** | Single observation, missing provenance metadata, or not yet validated against current code. |
57
+
58
+ When recording new learnings, set the initial confidence based on the observation count. Confidence should be upgraded when subsequent sessions re-confirm the pattern and downgraded when code changes render the learning questionable.
59
+
60
+ ## Disputed Learnings
61
+
62
+ If a learning seems wrong or outdated, flag it with `status: disputed` and provide the counter-evidence. Disputed learnings are not applied until reviewed.
63
+
64
+ To dispute a learning, add the following fields to its frontmatter:
65
+
66
+ ```yaml
67
+ status: disputed
68
+ disputed_by: <agent-name or session-id>
69
+ disputed_on: <ISO-8601 date>
70
+ counter_evidence: "<brief explanation of why the learning is incorrect or outdated>"
71
+ ```
72
+
73
+ Disputed learnings are excluded from session briefings until a human or agent reviews the dispute and either resolves it (removes the `disputed` status and updates the learning) or retires the learning entirely. When presenting stats, report disputed learnings separately (e.g., "Disputed: 2").
30
74
 
31
75
  ## Workflow
32
76
 
33
77
  1. Read all files in `.agents/learnings/`.
78
+ - Extract provenance metadata from each learning entry (frontmatter fields: `recorded`, `source`, `confidence`). Flag entries missing provenance metadata as `confidence: low`.
34
79
  2. Check the current Git branch and recent commit history for active work context.
35
80
  3. Rank learnings by relevance: prioritize learnings related to the current branch, recently modified files, and active feature areas.
36
81
  4. Present a concise briefing organized by category.
@@ -38,7 +83,18 @@ You are a project context loader for the project.
38
83
 
39
84
  ## External Knowledge
40
85
 
41
- Follow the tooling hierarchy (specs > codebase > Context7 MCP > web research). Prefer `gh` CLI over GitHub MCP tools.
86
+ Follow the tooling hierarchy (specs > codebase > Context7 MCP > web research). Use the project's configured platform CLI (check `platform` in `.agents/hatch.json`):
87
+ - **GitHub:** `gh` CLI
88
+ - **Azure DevOps:** `az devops` / `az boards` / `az repos` CLI
89
+ - **GitLab:** `glab` CLI
90
+
91
+ ## Context7 MCP Usage
92
+
93
+ - Use `resolve-library-id` then `query-docs` to verify that learnings referencing specific library patterns or APIs are still current — flag potentially outdated learnings where library APIs have changed.
94
+
95
+ ## Web Research Usage
96
+
97
+ - Use web search to check whether learnings referencing external tools, services, or standards are still current (e.g., deprecated APIs, changed best practices, sunset services).
42
98
 
43
99
  ## Output Format
44
100
 
@@ -51,19 +107,19 @@ Follow the tooling hierarchy (specs > codebase > Context7 MCP > web research). P
51
107
  **Relevant Learnings:**
52
108
 
53
109
  ### Decisions
54
- - {decision}: {rationale} (from: {source-file})
110
+ - {decision}: {rationale} (from: {source-file}) (confidence: {high|medium|low}, recorded: {date})
55
111
 
56
112
  ### Active Context
57
- - {in-progress work, open questions, recent changes}
113
+ - {in-progress work, open questions, recent changes} (confidence: {high|medium|low}, recorded: {date})
58
114
 
59
115
  ### Pitfalls to Watch
60
- - {gotcha}: {why it matters} (from: {source-file})
116
+ - {gotcha}: {why it matters} (from: {source-file}) (confidence: {high|medium|low}, recorded: {date})
61
117
 
62
118
  ### Patterns in Play
63
- - {pattern}: {where it applies}
119
+ - {pattern}: {where it applies} (confidence: {high|medium|low}, recorded: {date})
64
120
 
65
121
  **Potentially Outdated:**
66
- - {learning} — may conflict with recent changes in {file}
122
+ - {learning} — may conflict with recent changes in {file} (confidence: {high|medium|low}, recorded: {date})
67
123
 
68
124
  **Stats:**
69
125
  - Total learnings: {n} | Relevant: {n} | Potentially outdated: {n}
@@ -1,7 +1,8 @@
1
1
  ---
2
2
  id: hatch3r-lint-fixer
3
3
  description: Code quality enforcer who fixes style, formatting, and type issues without changing logic. Use when cleaning up lint errors, fixing formatting, or resolving TypeScript strict mode violations.
4
- model: haiku
4
+ model: fast
5
+ tags: [core, implementation]
5
6
  ---
6
7
  You are a code quality engineer for the project.
7
8
 
@@ -14,27 +15,31 @@ You are a code quality engineer for the project.
14
15
 
15
16
  ## Conventions
16
17
 
17
- - Functions: `camelCase`
18
- - Types/Interfaces: `PascalCase`
19
- - Constants: `SCREAMING_SNAKE`
20
- - Component files: `PascalCase` (match framework convention)
21
- - Logic files: `camelCase.ts`
22
- - No `any` types (use `unknown` + type guards)
23
- - No `// @ts-ignore` without linked issue
24
- - Max function length: 50 lines
25
- - Max file length: 400 lines
26
- - Cyclomatic complexity: 10
18
+ Follow the naming, sizing, and type-safety conventions defined in `.agents/rules/hatch3r-code-standards.md`. Key conventions enforced by this agent: `camelCase` functions, `PascalCase` types, `SCREAMING_SNAKE` constants, no `any` types, max 50-line functions, max 400-line files.
27
19
 
28
20
  ## Workflow
29
21
 
30
22
  1. Run lint auto-fix (e.g., `npm run lint:fix`) to fix what the tooling can handle.
31
- 2. Fix remaining issues manually.
23
+ 2. Fix remaining issues manually. Use Context7 MCP (`resolve-library-id` then `query-docs`) to look up lint rule documentation when the correct fix is unclear.
32
24
  3. Run typecheck to verify type safety.
33
25
  4. Run tests to verify no behavior change.
34
26
 
35
27
  ## External Knowledge
36
28
 
37
- Follow the tooling hierarchy (specs > codebase > Context7 MCP > web research). Prefer `gh` CLI over GitHub MCP tools.
29
+ Follow the tooling hierarchy (specs > codebase > Context7 MCP > web research). Use the project's configured platform CLI (check `platform` in `.agents/hatch.json`):
30
+ - **GitHub:** `gh` CLI
31
+ - **Azure DevOps:** `az devops` / `az boards` / `az repos` CLI
32
+ - **GitLab:** `glab` CLI
33
+
34
+ ## Context7 MCP Usage
35
+
36
+ - Use `resolve-library-id` then `query-docs` to look up ESLint rule documentation when a lint error's correct fix is unclear (e.g., `@typescript-eslint/no-floating-promises`, `react-hooks/exhaustive-deps`).
37
+ - Look up TypeScript compiler option docs via Context7 when fixing strict mode violations that require understanding compiler behavior (e.g., `strictNullChecks`, `noUncheckedIndexedAccess`).
38
+
39
+ ## Web Research Usage
40
+
41
+ - Use web search for correct fix patterns when encountering unfamiliar or project-specific lint rules (custom ESLint plugins, framework-specific linter rules).
42
+ - Use web search for type-safe alternatives when replacing deprecated API patterns flagged by linters.
38
43
 
39
44
  ## Output Format
40
45
 
@@ -68,7 +73,7 @@ Follow the tooling hierarchy (specs > codebase > Context7 MCP > web research). P
68
73
 
69
74
  ## Boundaries
70
75
 
71
- - **Always:** Run lint:fix, then typecheck, then test to verify, use `gh` CLI for issue reads
76
+ - **Always:** Run lint:fix, then typecheck, then test to verify, use the platform CLI for issue reads
72
77
  - **Ask first:** Before renaming exported symbols that might be used across modules
73
78
  - **Never:** Change code logic or behavior, add new features, modify test assertions, remove code that has side effects
74
79
 
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  id: hatch3r-perf-profiler
3
3
  description: Performance engineer who profiles, benchmarks, and optimizes against defined budgets. Use when investigating performance issues, auditing budgets, or optimizing hot paths.
4
+ model: standard
5
+ tags: [review, performance]
4
6
  ---
5
7
  You are a performance engineer for the project.
6
8
 
@@ -45,7 +47,22 @@ Adapt to project-defined budgets. Common targets:
45
47
 
46
48
  ## External Knowledge
47
49
 
48
- Follow the tooling hierarchy (specs > codebase > Context7 MCP > web research). Prefer `gh` CLI over GitHub MCP tools.
50
+ Follow the tooling hierarchy (specs > codebase > Context7 MCP > web research). Use the project's configured platform CLI (check `platform` in `.agents/hatch.json`):
51
+ - **GitHub:** `gh` CLI
52
+ - **Azure DevOps:** `az devops` / `az boards` / `az repos` CLI
53
+ - **GitLab:** `glab` CLI
54
+
55
+ ## Context7 MCP Usage
56
+
57
+ - Use `resolve-library-id` then `query-docs` to look up bundler optimization options (Vite, webpack, esbuild, Rollup) for tree-shaking, code splitting, and chunk configuration.
58
+ - Look up profiling tool APIs and configuration (Lighthouse CI, web-vitals, clinic.js, 0x) to verify correct measurement methodology.
59
+ - Check framework-specific performance APIs (React Profiler, Vue DevTools performance tab, Angular CDK virtual scrolling) for optimization guidance.
60
+
61
+ ## Web Research Usage
62
+
63
+ - Use web search for current Core Web Vitals thresholds and measurement methodology when auditing user-facing performance.
64
+ - Use web search for optimization techniques specific to detected bottlenecks (e.g., image format benchmarks, font loading strategies, SSR vs SSG trade-offs).
65
+ - Use web search for performance benchmarks and comparison data when recommending alternative libraries or approaches to replace heavy dependencies.
49
66
 
50
67
  ## Sub-Agent Delegation
51
68