hatch3r 1.8.0 → 1.9.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.
- package/README.md +36 -55
- package/dist/cli/index.js +13073 -14671
- package/dist/cli/index.js.map +1 -1
- package/{agents → dist/content/agents}/hatch3r-a11y-auditor.md +2 -2
- package/{agents → dist/content/agents}/hatch3r-ci-watcher.md +2 -2
- package/{agents → dist/content/agents}/hatch3r-context-rules.md +5 -5
- package/{agents → dist/content/agents}/hatch3r-creator.md +15 -15
- package/{agents → dist/content/agents}/hatch3r-dependency-auditor.md +1 -1
- package/{agents → dist/content/agents}/hatch3r-devops.md +3 -3
- package/{agents → dist/content/agents}/hatch3r-fixer.md +2 -2
- package/{agents → dist/content/agents}/hatch3r-handoff-loader.md +11 -11
- package/{agents → dist/content/agents}/hatch3r-handoff-preparer.md +7 -7
- package/{agents → dist/content/agents}/hatch3r-implementer.md +2 -2
- package/{agents → dist/content/agents}/hatch3r-learnings-loader.md +11 -11
- package/{agents → dist/content/agents}/hatch3r-lint-fixer.md +2 -2
- package/{agents → dist/content/agents}/hatch3r-researcher.md +3 -3
- package/{agents → dist/content/agents}/hatch3r-reviewer.md +4 -4
- package/{agents → dist/content/agents}/hatch3r-security-auditor.md +2 -2
- package/{agents → dist/content/agents}/hatch3r-test-writer.md +2 -2
- package/{agents → dist/content/agents}/shared/external-knowledge.md +1 -1
- package/{agents → dist/content/agents}/shared/injection-patterns.md +1 -1
- package/{agents → dist/content/agents}/shared/quality-charter.md +31 -3
- package/{agents → dist/content/agents}/shared/user-content-templates.md +10 -10
- package/{agents → dist/content/agents}/shared/user-question-protocol.md +2 -0
- package/{commands → dist/content/commands}/board/pickup-azure-devops.md +1 -1
- package/{commands → dist/content/commands}/board/pickup-delegation-multi.md +4 -4
- package/{commands → dist/content/commands}/board/pickup-delegation.md +3 -3
- package/{commands → dist/content/commands}/board/pickup-github.md +1 -1
- package/{commands → dist/content/commands}/board/pickup-gitlab.md +1 -1
- package/{commands → dist/content/commands}/board/pickup-post-impl.md +2 -2
- package/{commands → dist/content/commands}/board/shared-azure-devops.md +1 -1
- package/{commands → dist/content/commands}/board/shared-github.md +2 -2
- package/{commands → dist/content/commands}/board/shared-gitlab.md +1 -1
- package/{commands → dist/content/commands}/hatch3r-api-spec.md +1 -1
- package/{commands → dist/content/commands}/hatch3r-benchmark.md +1 -1
- package/{commands → dist/content/commands}/hatch3r-board-fill.md +7 -7
- package/{commands → dist/content/commands}/hatch3r-board-pickup.md +6 -6
- package/{commands → dist/content/commands}/hatch3r-bug-plan.md +5 -5
- package/{commands → dist/content/commands}/hatch3r-codebase-map.md +2 -2
- package/{commands → dist/content/commands}/hatch3r-create.md +11 -11
- package/{commands → dist/content/commands}/hatch3r-debug.md +11 -11
- package/{commands → dist/content/commands}/hatch3r-feature-plan.md +5 -5
- package/{commands → dist/content/commands}/hatch3r-handoff.md +9 -9
- package/{commands → dist/content/commands}/hatch3r-healthcheck.md +1 -1
- package/{commands → dist/content/commands}/hatch3r-hooks.md +12 -12
- package/{commands → dist/content/commands}/hatch3r-learn.md +11 -11
- package/{commands → dist/content/commands}/hatch3r-migration-plan.md +2 -2
- package/{commands → dist/content/commands}/hatch3r-onboard.md +7 -7
- package/{commands → dist/content/commands}/hatch3r-pr-resolve.md +8 -8
- package/{commands → dist/content/commands}/hatch3r-project-spec.md +3 -3
- package/{commands → dist/content/commands}/hatch3r-quick-change.md +7 -7
- package/{commands → dist/content/commands}/hatch3r-refactor-plan.md +4 -4
- package/{commands → dist/content/commands}/hatch3r-report.md +1 -1
- package/{commands → dist/content/commands}/hatch3r-revision.md +7 -7
- package/{commands → dist/content/commands}/hatch3r-roadmap.md +2 -2
- package/{commands → dist/content/commands}/hatch3r-security-audit.md +2 -2
- package/{commands → dist/content/commands}/hatch3r-test-plan.md +5 -5
- package/{commands → dist/content/commands}/hatch3r-workflow.md +9 -9
- package/{commands → dist/content/commands}/revision/revision-delegation.md +2 -2
- package/{commands → dist/content/commands}/revision/revision-quality.md +2 -2
- package/{github-agents → dist/content/github-agents}/hatch3r-docs-agent.md +1 -1
- package/{github-agents → dist/content/github-agents}/hatch3r-lint-agent.md +1 -1
- package/{github-agents → dist/content/github-agents}/hatch3r-security-agent.md +1 -1
- package/{github-agents → dist/content/github-agents}/hatch3r-test-agent.md +1 -1
- package/{hooks → dist/content/hooks}/hatch3r-ci-failure.md +3 -3
- package/{hooks → dist/content/hooks}/hatch3r-file-save.md +3 -3
- package/{hooks → dist/content/hooks}/hatch3r-post-merge.md +1 -1
- package/{hooks → dist/content/hooks}/hatch3r-pre-commit.md +1 -1
- package/{hooks → dist/content/hooks}/hatch3r-pre-push.md +3 -3
- package/{hooks → dist/content/hooks}/hatch3r-session-start.md +3 -3
- package/{rules → dist/content/rules}/hatch3r-accessibility-standards.md +2 -1
- package/{rules → dist/content/rules}/hatch3r-accessibility-standards.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-agent-orchestration-detail.md +2 -2
- package/{rules → dist/content/rules}/hatch3r-agent-orchestration-detail.mdc +1 -1
- package/{rules → dist/content/rules}/hatch3r-agent-orchestration.md +2 -2
- package/{rules → dist/content/rules}/hatch3r-agent-orchestration.mdc +1 -1
- package/{rules → dist/content/rules}/hatch3r-ai-evals.md +2 -1
- package/{rules → dist/content/rules}/hatch3r-ai-evals.mdc +2 -1
- package/{rules → dist/content/rules}/hatch3r-ai-ux-patterns.md +1 -1
- package/{rules → dist/content/rules}/hatch3r-api-versioning.md +1 -0
- package/{rules → dist/content/rules}/hatch3r-api-versioning.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-auth-patterns.md +2 -1
- package/{rules → dist/content/rules}/hatch3r-auth-patterns.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-browser-verification.md +6 -10
- package/{rules → dist/content/rules}/hatch3r-browser-verification.mdc +6 -10
- package/{rules → dist/content/rules}/hatch3r-ci-cd.md +1 -0
- package/{rules → dist/content/rules}/hatch3r-ci-cd.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-code-standards.md +1 -1
- package/{rules → dist/content/rules}/hatch3r-component-conventions.md +1 -1
- package/{rules → dist/content/rules}/hatch3r-container-hardening.md +2 -1
- package/{rules → dist/content/rules}/hatch3r-container-hardening.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-contract-testing.md +1 -0
- package/{rules → dist/content/rules}/hatch3r-contract-testing.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-data-classification.md +2 -1
- package/{rules → dist/content/rules}/hatch3r-data-classification.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-deep-context.md +1 -1
- package/{rules → dist/content/rules}/hatch3r-dependency-management.md +2 -1
- package/{rules → dist/content/rules}/hatch3r-dependency-management.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-design-system-detection.md +2 -1
- package/{rules → dist/content/rules}/hatch3r-design-system-detection.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-event-schema-evolution.md +1 -0
- package/{rules → dist/content/rules}/hatch3r-event-schema-evolution.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-git-conventions.md +1 -1
- package/{rules → dist/content/rules}/hatch3r-handoff-readiness.md +4 -4
- package/{rules → dist/content/rules}/hatch3r-handoff-readiness.mdc +3 -3
- package/{rules → dist/content/rules}/hatch3r-i18n.md +1 -1
- package/{rules → dist/content/rules}/hatch3r-iteration-summary.md +1 -1
- package/{rules → dist/content/rules}/hatch3r-learning-consult.md +7 -7
- package/{rules → dist/content/rules}/hatch3r-learning-consult.mdc +6 -6
- package/{rules → dist/content/rules}/hatch3r-migrations.md +2 -1
- package/{rules → dist/content/rules}/hatch3r-migrations.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-observability-logging.md +1 -0
- package/{rules → dist/content/rules}/hatch3r-observability-logging.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-observability-metrics.md +1 -0
- package/{rules → dist/content/rules}/hatch3r-observability-metrics.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-observability-tracing.md +1 -0
- package/{rules → dist/content/rules}/hatch3r-observability-tracing.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-operability.md +1 -0
- package/{rules → dist/content/rules}/hatch3r-operability.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-passkey-server.md +2 -1
- package/{rules → dist/content/rules}/hatch3r-passkey-server.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-performance-budgets.md +1 -1
- package/{rules → dist/content/rules}/hatch3r-performance-budgets.mdc +1 -1
- package/{rules → dist/content/rules}/hatch3r-resilience-patterns.md +1 -0
- package/{rules → dist/content/rules}/hatch3r-resilience-patterns.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-secrets-management.md +2 -1
- package/{rules → dist/content/rules}/hatch3r-secrets-management.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-security-patterns.md +2 -1
- package/{rules → dist/content/rules}/hatch3r-security-patterns.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-testing.md +2 -1
- package/{rules → dist/content/rules}/hatch3r-testing.mdc +1 -0
- package/{rules → dist/content/rules}/hatch3r-theming.md +1 -1
- package/{rules → dist/content/rules}/hatch3r-tooling-hierarchy.md +4 -4
- package/{rules → dist/content/rules}/hatch3r-tooling-hierarchy.mdc +3 -3
- package/{rules → dist/content/rules}/hatch3r-ux-states-and-flows.md +2 -1
- package/{rules → dist/content/rules}/hatch3r-ux-states-and-flows.mdc +1 -0
- package/{skills → dist/content/skills}/hatch3r-a11y-audit/SKILL.md +1 -1
- package/{skills → dist/content/skills}/hatch3r-architecture-review/SKILL.md +1 -1
- package/{commands/hatch3r-board-groom.md → dist/content/skills/hatch3r-board-groom/SKILL.md} +5 -18
- package/{commands/hatch3r-board-init.md → dist/content/skills/hatch3r-board-init/SKILL.md} +17 -30
- package/{commands/hatch3r-board-refresh.md → dist/content/skills/hatch3r-board-refresh/SKILL.md} +5 -18
- package/{commands/hatch3r-board-shared.md → dist/content/skills/hatch3r-board-shared/SKILL.md} +7 -14
- package/{skills → dist/content/skills}/hatch3r-bug-fix/SKILL.md +1 -1
- package/{skills → dist/content/skills}/hatch3r-cli-fd/SKILL.md +1 -1
- package/{skills → dist/content/skills}/hatch3r-cli-fzf/SKILL.md +1 -1
- package/{skills → dist/content/skills}/hatch3r-cli-gh/SKILL.md +4 -4
- package/{skills → dist/content/skills}/hatch3r-cli-jq/SKILL.md +3 -3
- package/{skills → dist/content/skills}/hatch3r-cli-ripgrep/SKILL.md +3 -3
- package/dist/content/skills/hatch3r-cli-toolbox/SKILL.md +269 -0
- package/{skills → dist/content/skills}/hatch3r-context-health/SKILL.md +18 -2
- package/{skills → dist/content/skills}/hatch3r-cost-tracking/SKILL.md +59 -7
- package/{skills → dist/content/skills}/hatch3r-customize/SKILL.md +5 -6
- package/{skills → dist/content/skills}/hatch3r-dep-audit/SKILL.md +6 -2
- package/{skills → dist/content/skills}/hatch3r-design-system-detect/SKILL.md +1 -1
- package/{skills → dist/content/skills}/hatch3r-feature/SKILL.md +1 -1
- package/{skills → dist/content/skills}/hatch3r-gh-agentic-workflows/SKILL.md +4 -4
- package/{skills → dist/content/skills}/hatch3r-gh-agentic-workflows/references/azure-devops.md +2 -2
- package/{skills → dist/content/skills}/hatch3r-gh-agentic-workflows/references/gitlab-ci.md +1 -1
- package/{skills → dist/content/skills}/hatch3r-handoff-prepare/SKILL.md +9 -9
- package/{skills → dist/content/skills}/hatch3r-handoff-resume/SKILL.md +2 -2
- package/{skills → dist/content/skills}/hatch3r-incident-response/SKILL.md +2 -2
- package/{skills → dist/content/skills}/hatch3r-issue-workflow/SKILL.md +4 -4
- package/{skills → dist/content/skills}/hatch3r-migration/SKILL.md +1 -1
- package/{skills → dist/content/skills}/hatch3r-observability-verify/SKILL.md +0 -1
- package/{skills → dist/content/skills}/hatch3r-perf-audit/SKILL.md +1 -1
- package/{skills → dist/content/skills}/hatch3r-pr-creation/SKILL.md +4 -4
- package/{skills → dist/content/skills}/hatch3r-qa-validation/SKILL.md +2 -2
- package/{skills → dist/content/skills}/hatch3r-recipe/SKILL.md +82 -2
- package/{skills → dist/content/skills}/hatch3r-refactor/SKILL.md +1 -1
- package/{skills → dist/content/skills}/hatch3r-release/SKILL.md +35 -2
- package/{skills → dist/content/skills}/hatch3r-ui-ux-verify/SKILL.md +1 -1
- package/{skills → dist/content/skills}/hatch3r-visual-refactor/SKILL.md +1 -1
- package/package.json +6 -18
- package/commands/hatch3r-agent-customize.md +0 -201
- package/commands/hatch3r-command-customize.md +0 -113
- package/commands/hatch3r-context-health.md +0 -147
- package/commands/hatch3r-cost-tracking.md +0 -163
- package/commands/hatch3r-dep-audit.md +0 -188
- package/commands/hatch3r-recipe.md +0 -194
- package/commands/hatch3r-release.md +0 -350
- package/commands/hatch3r-rule-customize.md +0 -133
- package/commands/hatch3r-skill-customize.md +0 -112
- package/prompts/hatch3r-bug-triage.md +0 -158
- package/prompts/hatch3r-code-review.md +0 -134
- package/prompts/hatch3r-pr-description.md +0 -176
- package/rules/hatch3r-observability-tracing-detail.md +0 -20
- package/rules/hatch3r-observability-tracing-detail.mdc +0 -14
- package/rules/hatch3r-observability.md +0 -20
- package/rules/hatch3r-observability.mdc +0 -14
- package/skills/hatch3r-agent-customize/SKILL.md +0 -23
- package/skills/hatch3r-cli-aichat/SKILL.md +0 -84
- package/skills/hatch3r-cli-ast-grep/SKILL.md +0 -85
- package/skills/hatch3r-cli-az-devops/SKILL.md +0 -89
- package/skills/hatch3r-cli-bat/SKILL.md +0 -85
- package/skills/hatch3r-cli-comby/SKILL.md +0 -85
- package/skills/hatch3r-cli-csvkit/SKILL.md +0 -84
- package/skills/hatch3r-cli-delta/SKILL.md +0 -86
- package/skills/hatch3r-cli-difftastic/SKILL.md +0 -84
- package/skills/hatch3r-cli-docker/SKILL.md +0 -89
- package/skills/hatch3r-cli-duckdb/SKILL.md +0 -84
- package/skills/hatch3r-cli-glab/SKILL.md +0 -89
- package/skills/hatch3r-cli-lazygit/SKILL.md +0 -78
- package/skills/hatch3r-cli-llm/SKILL.md +0 -84
- package/skills/hatch3r-cli-miller/SKILL.md +0 -84
- package/skills/hatch3r-cli-mods/SKILL.md +0 -84
- package/skills/hatch3r-cli-overview/SKILL.md +0 -60
- package/skills/hatch3r-cli-playwright/SKILL.md +0 -89
- package/skills/hatch3r-cli-podman/SKILL.md +0 -84
- package/skills/hatch3r-cli-qsv/SKILL.md +0 -91
- package/skills/hatch3r-cli-rtk/SKILL.md +0 -91
- package/skills/hatch3r-cli-sd/SKILL.md +0 -85
- package/skills/hatch3r-cli-stagehand/SKILL.md +0 -111
- package/skills/hatch3r-cli-taplo/SKILL.md +0 -84
- package/skills/hatch3r-cli-yq/SKILL.md +0 -85
- package/skills/hatch3r-cli-zstd/SKILL.md +0 -85
- package/skills/hatch3r-command-customize/SKILL.md +0 -23
- package/skills/hatch3r-rule-customize/SKILL.md +0 -23
- package/skills/hatch3r-skill-customize/SKILL.md +0 -23
- /package/{agents → dist/content/agents}/hatch3r-architect.md +0 -0
- /package/{agents → dist/content/agents}/hatch3r-docs-writer.md +0 -0
- /package/{agents → dist/content/agents}/hatch3r-perf-profiler.md +0 -0
- /package/{agents → dist/content/agents}/modes/architecture.md +0 -0
- /package/{agents → dist/content/agents}/modes/boundary-analysis.md +0 -0
- /package/{agents → dist/content/agents}/modes/codebase-impact.md +0 -0
- /package/{agents → dist/content/agents}/modes/complexity-risk.md +0 -0
- /package/{agents → dist/content/agents}/modes/coverage-analysis.md +0 -0
- /package/{agents → dist/content/agents}/modes/current-state.md +0 -0
- /package/{agents → dist/content/agents}/modes/feature-design.md +0 -0
- /package/{agents → dist/content/agents}/modes/impact-analysis.md +0 -0
- /package/{agents → dist/content/agents}/modes/library-docs.md +0 -0
- /package/{agents → dist/content/agents}/modes/migration-path.md +0 -0
- /package/{agents → dist/content/agents}/modes/prior-art.md +0 -0
- /package/{agents → dist/content/agents}/modes/refactoring-strategy.md +0 -0
- /package/{agents → dist/content/agents}/modes/regression.md +0 -0
- /package/{agents → dist/content/agents}/modes/requirements-elicitation.md +0 -0
- /package/{agents → dist/content/agents}/modes/risk-assessment.md +0 -0
- /package/{agents → dist/content/agents}/modes/risk-prioritization.md +0 -0
- /package/{agents → dist/content/agents}/modes/root-cause.md +0 -0
- /package/{agents → dist/content/agents}/modes/similar-implementation.md +0 -0
- /package/{agents → dist/content/agents}/modes/symptom-trace.md +0 -0
- /package/{agents → dist/content/agents}/modes/test-pattern.md +0 -0
- /package/{agents → dist/content/agents}/modes/user-flows.md +0 -0
- /package/{agents → dist/content/agents}/shared/efficiency-patterns.md +0 -0
- /package/{agents → dist/content/agents}/shared/prompt-structure.md +0 -0
- /package/{checks → dist/content/checks}/README.md +0 -0
- /package/{checks → dist/content/checks}/accessibility.md +0 -0
- /package/{checks → dist/content/checks}/code-quality.md +0 -0
- /package/{checks → dist/content/checks}/performance.md +0 -0
- /package/{checks → dist/content/checks}/security.md +0 -0
- /package/{checks → dist/content/checks}/testing.md +0 -0
- /package/{commands → dist/content/commands}/board/pickup-modes.md +0 -0
- /package/{commands → dist/content/commands}/board/shared-board-overview.md +0 -0
- /package/{commands → dist/content/commands}/revision/revision-board-integration.md +0 -0
- /package/{commands → dist/content/commands}/revision/revision-modes.md +0 -0
- /package/{mcp → dist/content/mcp}/mcp.json +0 -0
- /package/{rules → dist/content/rules}/hatch3r-ai-ux-patterns.mdc +0 -0
- /package/{rules → dist/content/rules}/hatch3r-api-design.md +0 -0
- /package/{rules → dist/content/rules}/hatch3r-api-design.mdc +0 -0
- /package/{rules → dist/content/rules}/hatch3r-code-standards.mdc +0 -0
- /package/{rules → dist/content/rules}/hatch3r-component-conventions.mdc +0 -0
- /package/{rules → dist/content/rules}/hatch3r-deep-context.mdc +0 -0
- /package/{rules → dist/content/rules}/hatch3r-feature-flags.md +0 -0
- /package/{rules → dist/content/rules}/hatch3r-feature-flags.mdc +0 -0
- /package/{rules → dist/content/rules}/hatch3r-git-conventions.mdc +0 -0
- /package/{rules → dist/content/rules}/hatch3r-i18n.mdc +0 -0
- /package/{rules → dist/content/rules}/hatch3r-iteration-summary.mdc +0 -0
- /package/{rules → dist/content/rules}/hatch3r-progressive-delivery.md +0 -0
- /package/{rules → dist/content/rules}/hatch3r-progressive-delivery.mdc +0 -0
- /package/{rules → dist/content/rules}/hatch3r-theming.mdc +0 -0
- /package/{skills → dist/content/skills}/hatch3r-a11y-audit/references/manual-audit-checklist.md +0 -0
- /package/{skills → dist/content/skills}/hatch3r-ai-feature/SKILL.md +0 -0
- /package/{skills → dist/content/skills}/hatch3r-api-spec/SKILL.md +0 -0
- /package/{skills → dist/content/skills}/hatch3r-ci-pipeline/SKILL.md +0 -0
- /package/{skills → dist/content/skills}/hatch3r-issue-workflow/references/delegation-patterns.md +0 -0
- /package/{skills → dist/content/skills}/hatch3r-logical-refactor/SKILL.md +0 -0
- /package/{skills → dist/content/skills}/hatch3r-reliability-verify/SKILL.md +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
id: hatch3r-issue-workflow
|
|
3
3
|
description: Guides the 8-step agentic development workflow for issues/work items. Covers parsing issues, loading skills, reading specs, planning, implementing, testing, opening PRs/MRs, and addressing review. Use when working on any issue/work item or when the user mentions an issue number.
|
|
4
|
-
tags: [
|
|
4
|
+
tags: [implementation, orchestration]
|
|
5
5
|
quality_charter: agents/shared/quality-charter.md
|
|
6
6
|
efficiency_patterns: agents/shared/efficiency-patterns.md
|
|
7
7
|
cache_friendly: true
|
|
@@ -10,7 +10,7 @@ cache_friendly: true
|
|
|
10
10
|
|
|
11
11
|
## Quick Start
|
|
12
12
|
|
|
13
|
-
When assigned an issue or work item (GitHub Issue, Azure DevOps Work Item, or GitLab Issue — check `platform` in `.
|
|
13
|
+
When assigned an issue or work item (GitHub Issue, Azure DevOps Work Item, or GitLab Issue — check `platform` in `.hatch3r/hatch.json`), follow these 8 steps in order:
|
|
14
14
|
|
|
15
15
|
```
|
|
16
16
|
Task Progress:
|
|
@@ -108,8 +108,8 @@ Skip this step if the issue has no user-facing UI changes.
|
|
|
108
108
|
|
|
109
109
|
- Use the project's PR/MR template. Fill every section.
|
|
110
110
|
- Link to the issue/work item. Include plan, implementation summary, test evidence.
|
|
111
|
-
- **Base branch:** Use `board.defaultBranch` from `.
|
|
112
|
-
- Open a code review using the platform CLI (check `platform` in `.
|
|
111
|
+
- **Base branch:** Use `board.defaultBranch` from `.hatch3r/hatch.json` (fallback: `"main"`).
|
|
112
|
+
- Open a code review using the platform CLI (check `platform` in `.hatch3r/hatch.json`):
|
|
113
113
|
- **GitHub:** `gh pr create --base {defaultBranch} --head {branch} --title "..." --body "..."`
|
|
114
114
|
- **Azure DevOps:** `az repos pr create --source-branch {branch} --target-branch {defaultBranch} --title "..." --description "..."`
|
|
115
115
|
- **GitLab:** `glab mr create --source-branch {branch} --target-branch {defaultBranch} --title "..." --description "..."`
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
id: hatch3r-migration
|
|
3
3
|
type: skill
|
|
4
4
|
description: Plan and execute migrations for databases, frameworks, and dependencies. Covers breaking change analysis, phased rollout, and rollback procedures.
|
|
5
|
-
tags: [implementation, brownfield]
|
|
5
|
+
tags: [implementation, ctx:brownfield-only]
|
|
6
6
|
quality_charter: agents/shared/quality-charter.md
|
|
7
7
|
efficiency_patterns: agents/shared/efficiency-patterns.md
|
|
8
8
|
cache_friendly: true
|
|
@@ -118,7 +118,6 @@ The orchestrator running this skill emits a single-line verdict per gate (`GATE_
|
|
|
118
118
|
|
|
119
119
|
## Cross-References
|
|
120
120
|
|
|
121
|
-
- `rules/hatch3r-observability.md`
|
|
122
121
|
- `rules/hatch3r-observability-logging.md`
|
|
123
122
|
- `rules/hatch3r-observability-metrics.md`
|
|
124
123
|
- `rules/hatch3r-observability-tracing.md` (includes AI agent instrumentation; was previously split as `-detail`)
|
|
@@ -97,7 +97,7 @@ Common strategies:
|
|
|
97
97
|
## Step 5: Implement Optimizations
|
|
98
98
|
|
|
99
99
|
- Apply changes incrementally. Measure before and after each change.
|
|
100
|
-
- Document before/after for each metric in PR/MR or audit report (check `platform` in `.
|
|
100
|
+
- Document before/after for each metric in PR/MR or audit report (check `platform` in `.hatch3r/hatch.json` for PR vs MR terminology).
|
|
101
101
|
- Respect `prefers-reduced-motion` — do not add animations that ignore it.
|
|
102
102
|
- Run full test suite after each optimization to avoid functional regressions.
|
|
103
103
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
id: hatch3r-pr-creation
|
|
3
3
|
description: Create a pull request or merge request following project conventions including branch naming, PR/MR template, checklist, and rollout plan. Use when opening or preparing a PR/MR, or when the user asks to create a PR or MR.
|
|
4
|
-
tags: [
|
|
4
|
+
tags: [implementation, orchestration]
|
|
5
5
|
quality_charter: agents/shared/quality-charter.md
|
|
6
6
|
efficiency_patterns: agents/shared/efficiency-patterns.md
|
|
7
7
|
cache_friendly: true
|
|
@@ -10,7 +10,7 @@ cache_friendly: true
|
|
|
10
10
|
|
|
11
11
|
# PR / MR Creation Workflow
|
|
12
12
|
|
|
13
|
-
> **Platform detection:** Check `platform` in `.
|
|
13
|
+
> **Platform detection:** Check `platform` in `.hatch3r/hatch.json` to determine terminology and CLI. GitHub/Azure DevOps use "Pull Request" (PR); GitLab uses "Merge Request" (MR).
|
|
14
14
|
|
|
15
15
|
## Quick Start
|
|
16
16
|
|
|
@@ -85,12 +85,12 @@ Examples:
|
|
|
85
85
|
- `feat: add user preferences panel (#42)`
|
|
86
86
|
- `fix: correct validation for email field (#87)`
|
|
87
87
|
|
|
88
|
-
Create the PR/MR using the platform CLI (check `platform` in `.
|
|
88
|
+
Create the PR/MR using the platform CLI (check `platform` in `.hatch3r/hatch.json`):
|
|
89
89
|
- **GitHub:** `gh pr create --base {defaultBranch} --head {branch} --title "..." --body "..."`
|
|
90
90
|
- **Azure DevOps:** `az repos pr create --source-branch {branch} --target-branch {defaultBranch} --title "..." --description "..."`
|
|
91
91
|
- **GitLab:** `glab mr create --source-branch {branch} --target-branch {defaultBranch} --title "..." --description "..."`
|
|
92
92
|
|
|
93
|
-
Use `board.defaultBranch` from `.
|
|
93
|
+
Use `board.defaultBranch` from `.hatch3r/hatch.json` as the target branch (fallback: `"main"`).
|
|
94
94
|
|
|
95
95
|
## Required Agent Delegation
|
|
96
96
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
id: hatch3r-qa-validation
|
|
3
3
|
description: E2E validation workflow producing a structured pass/fail report with evidence. Use when running QA validation, acceptance testing, verifying releases, or working on QA E2E validation issues.
|
|
4
|
-
tags: [
|
|
4
|
+
tags: [review, orchestration]
|
|
5
5
|
quality_charter: agents/shared/quality-charter.md
|
|
6
6
|
efficiency_patterns: agents/shared/efficiency-patterns.md
|
|
7
7
|
cache_friendly: true
|
|
@@ -95,7 +95,7 @@ Produce a structured report with:
|
|
|
95
95
|
|
|
96
96
|
- File new issues for bugs discovered during validation.
|
|
97
97
|
- If validation fails, state what must be fixed before re-validation.
|
|
98
|
-
- Post report as comment on the issue/work item or linked PR/MR (check `platform` in `.
|
|
98
|
+
- Post report as comment on the issue/work item or linked PR/MR (check `platform` in `.hatch3r/hatch.json`).
|
|
99
99
|
|
|
100
100
|
## Error Handling
|
|
101
101
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
id: hatch3r-recipe
|
|
3
3
|
description: Create, test, and manage workflow recipes that compose hatch3r capabilities into guided sequences. Use when creating new recipes, customizing existing ones, or troubleshooting recipe execution.
|
|
4
|
-
tags: [
|
|
4
|
+
tags: [orchestration]
|
|
5
5
|
quality_charter: agents/shared/quality-charter.md
|
|
6
6
|
efficiency_patterns: agents/shared/efficiency-patterns.md
|
|
7
7
|
cache_friendly: true
|
|
@@ -49,9 +49,89 @@ Map out the dependency graph:
|
|
|
49
49
|
- Identify steps that can run in parallel
|
|
50
50
|
- Mark checkpoint steps where user confirmation adds value
|
|
51
51
|
|
|
52
|
+
## Recipe Schema
|
|
53
|
+
|
|
54
|
+
Recipes are YAML files stored in `.hatch3r/recipes/` (project-level) or `~/.hatch3r/recipes/` (user-level):
|
|
55
|
+
|
|
56
|
+
```yaml
|
|
57
|
+
name: greenfield-setup
|
|
58
|
+
version: 1.0.0
|
|
59
|
+
description: Full greenfield project setup from spec to first PR
|
|
60
|
+
author: hatch3r
|
|
61
|
+
tags: [setup, greenfield, planning]
|
|
62
|
+
|
|
63
|
+
prerequisites:
|
|
64
|
+
- GitHub repository initialized
|
|
65
|
+
- hatch3r initialized (hatch3r init)
|
|
66
|
+
|
|
67
|
+
variables:
|
|
68
|
+
project_name:
|
|
69
|
+
description: Project name
|
|
70
|
+
required: true
|
|
71
|
+
tech_stack:
|
|
72
|
+
description: Primary tech stack
|
|
73
|
+
required: true
|
|
74
|
+
options: [react, vue, next, express, fastify]
|
|
75
|
+
|
|
76
|
+
steps:
|
|
77
|
+
- id: generate-spec
|
|
78
|
+
name: Generate Project Specification
|
|
79
|
+
command: hatch3r-project-spec
|
|
80
|
+
inputs:
|
|
81
|
+
project_name: "{{ project_name }}"
|
|
82
|
+
checkpoint: true
|
|
83
|
+
|
|
84
|
+
- id: init-board
|
|
85
|
+
name: Initialize Project Board
|
|
86
|
+
skill: hatch3r-board-init
|
|
87
|
+
depends_on: [generate-spec]
|
|
88
|
+
checkpoint: true
|
|
89
|
+
|
|
90
|
+
- id: security-baseline
|
|
91
|
+
name: Security Baseline Audit
|
|
92
|
+
command: hatch3r-security-audit
|
|
93
|
+
depends_on: [init-board]
|
|
94
|
+
parallel_with: [a11y-baseline]
|
|
95
|
+
|
|
96
|
+
- id: a11y-baseline
|
|
97
|
+
name: Accessibility Baseline
|
|
98
|
+
skill: hatch3r-a11y-audit
|
|
99
|
+
depends_on: [init-board]
|
|
100
|
+
parallel_with: [security-baseline]
|
|
101
|
+
|
|
102
|
+
completion:
|
|
103
|
+
message: "Project {{ project_name }} is set up."
|
|
104
|
+
next_steps:
|
|
105
|
+
- Continue with `board-pickup` to implement remaining issues
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
Recipes can also reference other recipes as steps via `recipe: <name>` with `inputs:`.
|
|
109
|
+
|
|
110
|
+
## Built-in Recipes
|
|
111
|
+
|
|
112
|
+
1. **Greenfield Setup** — spec → board → audit → first issue
|
|
113
|
+
2. **Legacy Onboarding** — codebase analysis → codebase map → board setup → healthcheck → first improvements
|
|
114
|
+
3. **Security Hardening** — security audit → dep audit → findings triage → hardening
|
|
115
|
+
4. **Performance Sprint** — perf audit → budget review → optimization → verification
|
|
116
|
+
5. **Release Preparation** — healthcheck → test validation → security scan → changelog → release
|
|
117
|
+
6. **Quality Gate** — lint fix → test coverage review → a11y audit → perf audit → security scan
|
|
118
|
+
|
|
119
|
+
## Execution Modes
|
|
120
|
+
|
|
121
|
+
| Mode | Behavior |
|
|
122
|
+
|------|----------|
|
|
123
|
+
| Interactive (default) | Pause at checkpoints, show progress |
|
|
124
|
+
| Auto (`--auto`) | Skip checkpoints, run all steps autonomously |
|
|
125
|
+
| Dry-run (`--dry-run`) | Show execution plan without running |
|
|
126
|
+
| Resume (`--resume`) | Continue from last checkpoint |
|
|
127
|
+
|
|
128
|
+
Workflow: parse recipe → check prerequisites → collect variables (CLI args or prompt) → build DAG from `depends_on`/`parallel_with` → execute (parallelizing where possible) → handle checkpoints → report completion.
|
|
129
|
+
|
|
130
|
+
Guardrails: recipes must not bypass safety checkpoints for destructive operations; YAML is validated against the schema before execution; circular dependencies are detected and rejected; variable injection is sanitized to prevent command injection.
|
|
131
|
+
|
|
52
132
|
## Step 3: Write Recipe YAML
|
|
53
133
|
|
|
54
|
-
Create the recipe file in `.hatch3r/recipes/` following the schema
|
|
134
|
+
Create the recipe file in `.hatch3r/recipes/` following the schema above. Include:
|
|
55
135
|
- Clear name and description
|
|
56
136
|
- Required variables with descriptions
|
|
57
137
|
- Steps with proper `depends_on` and `parallel_with` relationships
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
id: hatch3r-refactor
|
|
3
3
|
description: Internal code quality improvement workflow without changing external behavior. Use when refactoring code structure, simplifying modules, or improving maintainability.
|
|
4
|
-
tags: [
|
|
4
|
+
tags: [implementation, orchestration]
|
|
5
5
|
quality_charter: agents/shared/quality-charter.md
|
|
6
6
|
efficiency_patterns: agents/shared/efficiency-patterns.md
|
|
7
7
|
cache_friendly: true
|
|
@@ -40,7 +40,7 @@ Never under-fan-out to save tokens. Token cost is dominated by quality and compl
|
|
|
40
40
|
## Step 1: Determine Version Bump
|
|
41
41
|
|
|
42
42
|
- Review changes since last release: merged PRs/MRs, commit history.
|
|
43
|
-
- List merged PRs/MRs since last tag using the platform tools (check `platform` in `.
|
|
43
|
+
- List merged PRs/MRs since last tag using the platform tools (check `platform` in `.hatch3r/hatch.json`):
|
|
44
44
|
- **GitHub:** Use **GitHub MCP** (`search_issues`, PR search) or `gh pr list --state merged --base {defaultBranch}`
|
|
45
45
|
- **Azure DevOps:** `az repos pr list --status completed --target-branch {defaultBranch}`
|
|
46
46
|
- **GitLab:** `glab mr list --state merged --target-branch {defaultBranch}`
|
|
@@ -82,7 +82,7 @@ npm run build
|
|
|
82
82
|
|
|
83
83
|
- Create annotated tag: `git tag -a vX.Y.Z -m "Release vX.Y.Z"`.
|
|
84
84
|
- Push tag: `git push origin vX.Y.Z`.
|
|
85
|
-
- Create the release using the platform CLI (check `platform` in `.
|
|
85
|
+
- Create the release using the platform CLI (check `platform` in `.hatch3r/hatch.json`):
|
|
86
86
|
- **GitHub:** `gh release create vX.Y.Z --title "vX.Y.Z" --notes "{changelog}"` (or use **GitHub MCP** if available)
|
|
87
87
|
- **Azure DevOps:** `az repos tag create vX.Y.Z` — attach release notes as a wiki page or work item, and upload build artifacts via Azure Artifacts
|
|
88
88
|
- **GitLab:** `glab release create vX.Y.Z --name "vX.Y.Z" --notes "{changelog}"`
|
|
@@ -103,6 +103,39 @@ npm run build
|
|
|
103
103
|
- Watch user-reported issues for first 24h.
|
|
104
104
|
- If errors spike: rollback and investigate.
|
|
105
105
|
|
|
106
|
+
## Pre-Release Support
|
|
107
|
+
|
|
108
|
+
Version formats: alpha (`x.y.z-alpha.N`), beta (`x.y.z-beta.N`), release candidate (`x.y.z-rc.N`). Workflow:
|
|
109
|
+
|
|
110
|
+
1. Tag pre-release (e.g., `v1.2.0-beta.1`).
|
|
111
|
+
2. Publish to npm with `--tag` (`npm publish --tag beta`).
|
|
112
|
+
3. Smoke-test against the pre-release package.
|
|
113
|
+
4. Promote: publish stable without pre-release suffix.
|
|
114
|
+
5. Deprecate pre-release versions after stable release.
|
|
115
|
+
|
|
116
|
+
npm distribution tags: `latest` (stable), `beta`, `next` (RCs), `alpha`. GitHub releases for pre-releases use `--prerelease`.
|
|
117
|
+
|
|
118
|
+
## CHANGELOG.md Format
|
|
119
|
+
|
|
120
|
+
Follow Keep a Changelog:
|
|
121
|
+
- `### Added` — new features
|
|
122
|
+
- `### Changed` — changes to existing functionality
|
|
123
|
+
- `### Deprecated` — soon-to-be removed
|
|
124
|
+
- `### Removed` — removed features
|
|
125
|
+
- `### Fixed` — bug fixes
|
|
126
|
+
- `### Security` — vulnerability fixes
|
|
127
|
+
|
|
128
|
+
Entries grouped under `## [x.y.z] - YYYY-MM-DD`. Generate entry as part of the release commit; stage `CHANGELOG.md` alongside `package.json`. If `CHANGELOG.md` does not exist, create it with the standard header pointing to keepachangelog.com and semver.org.
|
|
129
|
+
|
|
130
|
+
## Rollback Procedure
|
|
131
|
+
|
|
132
|
+
If a release introduces critical issues:
|
|
133
|
+
|
|
134
|
+
- **npm:** `npm deprecate package@version "Critical issue — use version X instead"`. Within 72h, `npm unpublish package@version` is permitted (only inside npm's unpublish window). Publish a hotfix as a new patch release.
|
|
135
|
+
- **Git:** create a revert commit on the default branch, tag a new patch version, push to trigger the release workflow.
|
|
136
|
+
- **Communication:** update CHANGELOG with rollback notice, open a post-mortem issue, notify users via release notes/discussions.
|
|
137
|
+
- Always create a tracking issue documenting the incident. Never auto-rollback or auto-unpublish without explicit user confirmation; prefer deprecation over unpublish.
|
|
138
|
+
|
|
106
139
|
## Error Handling
|
|
107
140
|
|
|
108
141
|
- **Quality gates fail during release preparation**: Do not proceed with the release. Fix the failing gate (test failures, lint errors, type errors), re-run all gates, and restart the release process.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
id: hatch3r-ui-ux-verify
|
|
3
3
|
type: skill
|
|
4
4
|
description: UI/UX verification gate before declaring a feature done — axe-core, scripted keyboard trace, accessibility-tree snapshot, four-state coverage, visual-regression baseline, one human screen-reader pass per release
|
|
5
|
-
tags: [ui, ux, a11y]
|
|
5
|
+
tags: [review, floor:ui-ux, ui, ux, a11y]
|
|
6
6
|
quality_charter: agents/shared/quality-charter.md
|
|
7
7
|
efficiency_patterns: agents/shared/efficiency-patterns.md
|
|
8
8
|
cache_friendly: true
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
id: hatch3r-visual-refactor
|
|
3
3
|
description: UI/UX change workflow matching design, accessibility, and responsiveness requirements. Use when making visual changes, updating components, working on UI issues, or implementing design mockups.
|
|
4
|
-
tags: [implementation]
|
|
4
|
+
tags: [implementation, floor:ui-ux]
|
|
5
5
|
quality_charter: agents/shared/quality-charter.md
|
|
6
6
|
efficiency_patterns: agents/shared/efficiency-patterns.md
|
|
7
7
|
cache_friendly: true
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hatch3r",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.9.0",
|
|
4
4
|
"description": "Battle-tested agentic coding setup framework. One command to hatch your agent stack -- agents, skills, rules, commands, and MCP for every major AI coding tool.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -13,7 +13,8 @@
|
|
|
13
13
|
"hatch3r": "./dist/cli/index.js"
|
|
14
14
|
},
|
|
15
15
|
"scripts": {
|
|
16
|
-
"build": "tsup",
|
|
16
|
+
"build": "tsup && tsx scripts/copy-content.ts",
|
|
17
|
+
"postbuild": "tsx scripts/copy-content.ts",
|
|
17
18
|
"dev": "tsup --watch",
|
|
18
19
|
"lint": "eslint src/",
|
|
19
20
|
"typecheck": "tsc --noEmit",
|
|
@@ -43,12 +44,6 @@
|
|
|
43
44
|
"cursor",
|
|
44
45
|
"copilot",
|
|
45
46
|
"claude",
|
|
46
|
-
"opencode",
|
|
47
|
-
"windsurf",
|
|
48
|
-
"amp",
|
|
49
|
-
"codex",
|
|
50
|
-
"gemini",
|
|
51
|
-
"cline",
|
|
52
47
|
"agentic",
|
|
53
48
|
"ai-agents",
|
|
54
49
|
"mcp",
|
|
@@ -73,20 +68,13 @@
|
|
|
73
68
|
"node": ">=22.0.0"
|
|
74
69
|
},
|
|
75
70
|
"files": [
|
|
76
|
-
"dist/
|
|
77
|
-
"agents/",
|
|
78
|
-
"checks/",
|
|
79
|
-
"commands/",
|
|
80
|
-
"rules/",
|
|
81
|
-
"skills/",
|
|
82
|
-
"prompts/",
|
|
83
|
-
"github-agents/",
|
|
84
|
-
"mcp/",
|
|
85
|
-
"hooks/",
|
|
71
|
+
"dist/",
|
|
86
72
|
"README.md",
|
|
87
73
|
"LICENSE"
|
|
88
74
|
],
|
|
89
75
|
"dependencies": {
|
|
76
|
+
"@inquirer/core": "^11.1.9",
|
|
77
|
+
"@inquirer/figures": "^2.0.5",
|
|
90
78
|
"boxen": "^8.0.1",
|
|
91
79
|
"chalk": "^5.4.0",
|
|
92
80
|
"commander": "^14.0.3",
|
|
@@ -1,201 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
id: hatch3r-agent-customize
|
|
3
|
-
type: command
|
|
4
|
-
orchestrator: false
|
|
5
|
-
description: Override agent persona, model selection, preset enablement, and repo-file apply-scope via YAML plus markdown injection under .hatch3r/agents/
|
|
6
|
-
tags: [customize]
|
|
7
|
-
quality_charter: agents/shared/quality-charter.md
|
|
8
|
-
efficiency_patterns: agents/shared/efficiency-patterns.md
|
|
9
|
-
cache_friendly: true
|
|
10
|
-
parallel_tool_default: true
|
|
11
|
-
---
|
|
12
|
-
|
|
13
|
-
## §0 Detect Ambiguity (P8 B1)
|
|
14
|
-
|
|
15
|
-
Before any action, scan the user's request and provided context for unresolved questions in scope, acceptance criteria, irreversibility, or constraint conflicts (contradictory inputs, missing target, unknown convention). If any are found, ask the user via the platform-native question tool per `agents/shared/user-question-protocol.md` — do not proceed under silent assumption. This is the default path, not an exception. Acceptable to proceed without asking ONLY when scope is single-target, single-concern, and the brief alone is testable. Any residual ambiguity discovered mid-workflow invokes the same protocol.
|
|
16
|
-
|
|
17
|
-
## Agent Pipeline
|
|
18
|
-
|
|
19
|
-
This command runs as a single orchestrator without sub-agent delegation. Customization file management is performed inline.
|
|
20
|
-
|
|
21
|
-
# Agent Customization — Per-Agent Configuration
|
|
22
|
-
|
|
23
|
-
Customize individual agent behavior for project-specific needs via `.hatch3r/agents/` configuration files. Supports structured YAML overrides and free-form markdown instruction injection, all propagated to every adapter output on sync.
|
|
24
|
-
|
|
25
|
-
---
|
|
26
|
-
|
|
27
|
-
## Customization File Locations
|
|
28
|
-
|
|
29
|
-
Each agent supports two optional customization files:
|
|
30
|
-
|
|
31
|
-
```
|
|
32
|
-
.hatch3r/agents/{agent-id}.customize.yaml # structured overrides
|
|
33
|
-
.hatch3r/agents/{agent-id}.customize.md # free-form markdown instructions
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
Both files are optional and can be used independently or together.
|
|
37
|
-
|
|
38
|
-
## YAML Customization Schema
|
|
39
|
-
|
|
40
|
-
```yaml
|
|
41
|
-
agent: hatch3r-reviewer
|
|
42
|
-
model: claude-opus-4-6
|
|
43
|
-
description: "Security-focused code reviewer for healthcare platform"
|
|
44
|
-
enabled: true
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
### Fields
|
|
48
|
-
|
|
49
|
-
| Field | Type | Default | Description |
|
|
50
|
-
|-------|------|---------|-------------|
|
|
51
|
-
| `model` | string | (from canonical/manifest) | Override the agent's model preference |
|
|
52
|
-
| `description` | string | (from canonical) | Override the agent's description in adapter frontmatter |
|
|
53
|
-
| `enabled` | boolean | `true` | Set to `false` to exclude this agent from adapter output generation |
|
|
54
|
-
|
|
55
|
-
### Model Resolution Order
|
|
56
|
-
|
|
57
|
-
Model is resolved with the following priority (highest wins):
|
|
58
|
-
|
|
59
|
-
1. `.hatch3r/agents/{id}.customize.yaml` → `model`
|
|
60
|
-
2. `hatch.json` → `models.agents.{id}`
|
|
61
|
-
3. Canonical agent frontmatter → `model`
|
|
62
|
-
4. `hatch.json` → `models.default`
|
|
63
|
-
|
|
64
|
-
Model aliases are supported: `opus`, `sonnet`, `haiku`, `codex`, `gemini-pro`, etc.
|
|
65
|
-
|
|
66
|
-
## Markdown Customization
|
|
67
|
-
|
|
68
|
-
Create `.hatch3r/agents/{agent-id}.customize.md` with free-form markdown to inject project-specific instructions into the agent's managed block. This content is appended after the canonical agent definition under a `## Project Customizations` header.
|
|
69
|
-
|
|
70
|
-
### Example
|
|
71
|
-
|
|
72
|
-
**File:** `.hatch3r/agents/hatch3r-reviewer.customize.md`
|
|
73
|
-
|
|
74
|
-
```markdown
|
|
75
|
-
## Domain-Specific Review Rules
|
|
76
|
-
|
|
77
|
-
This is a healthcare SaaS platform handling PHI data.
|
|
78
|
-
All data must be encrypted at rest and in transit. HIPAA compliance is mandatory.
|
|
79
|
-
|
|
80
|
-
### Additional Review Checklist
|
|
81
|
-
|
|
82
|
-
- Verify no PHI in logs, error messages, or client responses
|
|
83
|
-
- All data stores use AES-256 encryption
|
|
84
|
-
- All data access is logged with user ID and timestamp
|
|
85
|
-
|
|
86
|
-
### Architecture Context
|
|
87
|
-
|
|
88
|
-
Microservices architecture with event sourcing.
|
|
89
|
-
Services communicate via RabbitMQ.
|
|
90
|
-
PostgreSQL for persistence, Redis for caching.
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
### How It Works
|
|
94
|
-
|
|
95
|
-
1. During `hatch3r sync` or `hatch3r init`, adapters read the `.customize.md` file
|
|
96
|
-
2. The markdown content is appended **inside** the managed block, after the canonical agent content
|
|
97
|
-
3. All adapter outputs (Cursor, Claude, Copilot, etc.) receive the customization automatically
|
|
98
|
-
4. Changes to `.customize.md` propagate on every sync — edit once, apply everywhere
|
|
99
|
-
|
|
100
|
-
### Resulting Adapter Output
|
|
101
|
-
|
|
102
|
-
The adapter wraps the result in hatch3r-managed block comments (literal markers omitted here so this file itself stays valid):
|
|
103
|
-
|
|
104
|
-
```markdown
|
|
105
|
-
[managed-block-start]
|
|
106
|
-
{canonical agent content}
|
|
107
|
-
|
|
108
|
-
---
|
|
109
|
-
|
|
110
|
-
## Project Customizations
|
|
111
|
-
|
|
112
|
-
{content from .customize.md}
|
|
113
|
-
[managed-block-end]
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
Replace `[managed-block-start]` / `[managed-block-end]` with the actual `<!-- HATCH3R\:BEGIN -->` / `<!-- HATCH3R\:END -->` markers in real adapter output.
|
|
117
|
-
|
|
118
|
-
Content placed **outside** the managed block markers by directly editing adapter output files is always preserved.
|
|
119
|
-
|
|
120
|
-
## Per-Agent Customization Examples
|
|
121
|
-
|
|
122
|
-
| Agent | Common Customizations |
|
|
123
|
-
|-------|----------------------|
|
|
124
|
-
| reviewer | Domain review checklists, severity focus, architecture context |
|
|
125
|
-
| security-auditor | Compliance requirements (HIPAA, SOC2, PCI), custom invariants |
|
|
126
|
-
| test-writer | Coverage targets, required test types, framework preferences |
|
|
127
|
-
| implementer | Architecture constraints, coding patterns, dependency restrictions |
|
|
128
|
-
| a11y-auditor | Additional WCAG criteria, custom accessibility requirements |
|
|
129
|
-
| perf-profiler | Custom performance budgets, monitoring tool guidance |
|
|
130
|
-
| dependency-auditor | Approved/denied dependency lists, update policies |
|
|
131
|
-
| docs-writer | Documentation templates, terminology glossary |
|
|
132
|
-
| lint-fixer | Custom lint rules, auto-fix preferences |
|
|
133
|
-
| ci-watcher | Custom CI job knowledge, failure pattern library |
|
|
134
|
-
|
|
135
|
-
## Disabling an Agent
|
|
136
|
-
|
|
137
|
-
To exclude an agent from adapter output without deleting its canonical file:
|
|
138
|
-
|
|
139
|
-
```yaml
|
|
140
|
-
# .hatch3r/agents/hatch3r-a11y-auditor.customize.yaml
|
|
141
|
-
enabled: false
|
|
142
|
-
```
|
|
143
|
-
|
|
144
|
-
The agent's canonical definition remains in `.agents/agents/` but no adapter output is generated for it.
|
|
145
|
-
|
|
146
|
-
## Protected Agents
|
|
147
|
-
|
|
148
|
-
Some agents have `protected: true` in their canonical frontmatter. This field marks agents whose core behavior must not be weakened or bypassed through customization, because they enforce critical quality and security invariants.
|
|
149
|
-
|
|
150
|
-
### Currently Protected Agents
|
|
151
|
-
|
|
152
|
-
| Agent | Why Protected |
|
|
153
|
-
|-------|--------------|
|
|
154
|
-
| `hatch3r-reviewer` | Enforces code quality, privacy invariants, and security review. Weakening or disabling it would allow unsafe code to merge unreviewed. |
|
|
155
|
-
| `hatch3r-security-auditor` | Enforces security rules, access control auditing, and privacy invariant verification. Disabling it would leave security gaps undetected. |
|
|
156
|
-
| `hatch3r-test-writer` | Enforces test coverage requirements and regression testing. Disabling it would allow untested code to ship. |
|
|
157
|
-
|
|
158
|
-
### What Protection Means
|
|
159
|
-
|
|
160
|
-
- **Cannot be disabled.** Setting `enabled: false` in a `.customize.yaml` file for a protected agent is ignored. The agent is always included in adapter output.
|
|
161
|
-
- **Cannot have scope or description overridden.** The `description` field in a `.customize.yaml` file is ignored for protected agents. Their canonical description is always used to prevent narrowing or misrepresenting the agent's responsibilities.
|
|
162
|
-
- **Model overrides ARE allowed.** You can override the `model` field for protected agents via `.customize.yaml` or `hatch.json`. Choosing a more capable model for a protected agent is a valid use case.
|
|
163
|
-
- **Markdown customization IS allowed.** You can add project-specific instructions via `.customize.md` (e.g., domain-specific review checklists, compliance requirements). These are appended to the canonical content and extend the agent's scope — they cannot reduce it.
|
|
164
|
-
|
|
165
|
-
### Frontmatter Format
|
|
166
|
-
|
|
167
|
-
```yaml
|
|
168
|
-
---
|
|
169
|
-
id: hatch3r-example-agent
|
|
170
|
-
description: Expert code reviewer for the project...
|
|
171
|
-
protected: true
|
|
172
|
-
model: standard
|
|
173
|
-
---
|
|
174
|
-
```
|
|
175
|
-
|
|
176
|
-
The `protected` field is set in the canonical agent definition and cannot be overridden by customization files.
|
|
177
|
-
|
|
178
|
-
## Workflow
|
|
179
|
-
|
|
180
|
-
1. Identify which agent to customize
|
|
181
|
-
2. Create `.hatch3r/agents/{agent-id}.customize.yaml` and/or `.customize.md`
|
|
182
|
-
3. Run `npx hatch3r sync` to propagate changes to all adapter outputs
|
|
183
|
-
4. Verify the customization appears in the tool-specific files (e.g., `.cursor/agents/`)
|
|
184
|
-
|
|
185
|
-
## Guardrails
|
|
186
|
-
|
|
187
|
-
- Customization files cannot remove the agent's core role or boundaries
|
|
188
|
-
- Invalid YAML produces warnings but does not prevent agent execution (graceful degradation)
|
|
189
|
-
- Customization files should be committed to the repository
|
|
190
|
-
|
|
191
|
-
## Unified Skill
|
|
192
|
-
|
|
193
|
-
This command's workflow is handled by the `hatch3r-customize` skill with `type: agent`. The skill provides root-cause analysis, multi-stakeholder review, and quality gate steps that extend the workflow above. Invoke the skill directly or use this command for the agent-specific reference documentation (model resolution, protected agents, per-agent examples).
|
|
194
|
-
|
|
195
|
-
## Related
|
|
196
|
-
|
|
197
|
-
- Skill customization: `hatch3r-skill-customize` command
|
|
198
|
-
- Command customization: `hatch3r-command-customize` command
|
|
199
|
-
- Rule customization: `hatch3r-rule-customize` command
|
|
200
|
-
- Model selection: [Model Selection](https://docs.hatch3r.com/docs/guides/model-selection) — configuration, aliases, resolution order
|
|
201
|
-
- Platform support: [Adapter Capability Matrix](https://docs.hatch3r.com/docs/reference/adapter-capability-matrix) — model emission per adapter (native vs guidance)
|
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
id: hatch3r-command-customize
|
|
3
|
-
type: command
|
|
4
|
-
orchestrator: false
|
|
5
|
-
description: Tune slash-command display text, orchestrator sub-agent dispatch pipeline, and invocation arguments via .hatch3r/commands/ YAML and markdown overrides
|
|
6
|
-
tags: [customize]
|
|
7
|
-
quality_charter: agents/shared/quality-charter.md
|
|
8
|
-
efficiency_patterns: agents/shared/efficiency-patterns.md
|
|
9
|
-
cache_friendly: true
|
|
10
|
-
parallel_tool_default: true
|
|
11
|
-
---
|
|
12
|
-
|
|
13
|
-
## §0 Detect Ambiguity (P8 B1)
|
|
14
|
-
|
|
15
|
-
Before any action, scan the user's request and provided context for unresolved questions in scope, acceptance criteria, irreversibility, or constraint conflicts (contradictory inputs, missing target, unknown convention). If any are found, ask the user via the platform-native question tool per `agents/shared/user-question-protocol.md` — do not proceed under silent assumption. This is the default path, not an exception. Acceptable to proceed without asking ONLY when scope is single-target, single-concern, and the brief alone is testable. Any residual ambiguity discovered mid-workflow invokes the same protocol.
|
|
16
|
-
|
|
17
|
-
## Agent Pipeline
|
|
18
|
-
|
|
19
|
-
This command runs as a single orchestrator without sub-agent delegation. Customization file management is performed inline.
|
|
20
|
-
|
|
21
|
-
# Command Customization — Per-Command Configuration
|
|
22
|
-
|
|
23
|
-
Customize individual command behavior for project-specific needs via `.hatch3r/commands/` configuration files. Supports structured YAML overrides and free-form markdown instruction injection, all propagated to every adapter output on sync.
|
|
24
|
-
|
|
25
|
-
---
|
|
26
|
-
|
|
27
|
-
## Customization File Locations
|
|
28
|
-
|
|
29
|
-
Each command supports two optional customization files:
|
|
30
|
-
|
|
31
|
-
```
|
|
32
|
-
.hatch3r/commands/{command-id}.customize.yaml # structured overrides
|
|
33
|
-
.hatch3r/commands/{command-id}.customize.md # free-form markdown instructions
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
Both files are optional and can be used independently or together.
|
|
37
|
-
|
|
38
|
-
## YAML Customization Schema
|
|
39
|
-
|
|
40
|
-
```yaml
|
|
41
|
-
command: hatch3r-release
|
|
42
|
-
description: "Release workflow with mandatory staging deployment step"
|
|
43
|
-
enabled: true
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
### Fields
|
|
47
|
-
|
|
48
|
-
| Field | Type | Default | Description |
|
|
49
|
-
|-------|------|---------|-------------|
|
|
50
|
-
| `description` | string | (from canonical) | Override the command's description in adapter frontmatter |
|
|
51
|
-
| `enabled` | boolean | `true` | Set to `false` to exclude this command from adapter output generation |
|
|
52
|
-
|
|
53
|
-
## Markdown Customization
|
|
54
|
-
|
|
55
|
-
Create `.hatch3r/commands/{command-id}.customize.md` with free-form markdown to inject project-specific instructions into the command's managed block. This content is appended after the canonical command definition under a `## Project Customizations` header.
|
|
56
|
-
|
|
57
|
-
### Example
|
|
58
|
-
|
|
59
|
-
**File:** `.hatch3r/commands/hatch3r-release.customize.md`
|
|
60
|
-
|
|
61
|
-
```markdown
|
|
62
|
-
## Project-Specific Release Steps
|
|
63
|
-
|
|
64
|
-
Before creating any release:
|
|
65
|
-
|
|
66
|
-
1. Run `npm run test:e2e:staging` and confirm all E2E tests pass on staging
|
|
67
|
-
2. Verify the changelog has been updated in `CHANGELOG.md`
|
|
68
|
-
3. Confirm the release has been approved in the `#releases` Slack channel
|
|
69
|
-
4. Tag the Docker image with the release version
|
|
70
|
-
|
|
71
|
-
### Deployment Sequence
|
|
72
|
-
|
|
73
|
-
Deploy in order: database migrations → API servers → worker processes → frontend CDN
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
### How It Works
|
|
77
|
-
|
|
78
|
-
1. During `hatch3r sync`, adapters read the `.customize.md` file
|
|
79
|
-
2. The markdown content is appended inside the managed block, after the canonical command content
|
|
80
|
-
3. All adapter outputs receive the customization automatically
|
|
81
|
-
4. Changes propagate on every sync
|
|
82
|
-
|
|
83
|
-
## Disabling a Command
|
|
84
|
-
|
|
85
|
-
To exclude a command from adapter output without deleting its canonical file:
|
|
86
|
-
|
|
87
|
-
```yaml
|
|
88
|
-
# .hatch3r/commands/hatch3r-cost-tracking.customize.yaml
|
|
89
|
-
enabled: false
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
## Workflow
|
|
93
|
-
|
|
94
|
-
1. Identify which command to customize
|
|
95
|
-
2. Create `.hatch3r/commands/{command-id}.customize.yaml` and/or `.customize.md`
|
|
96
|
-
3. Run `npx hatch3r sync` to propagate changes to all adapter outputs
|
|
97
|
-
4. Verify the customization appears in the tool-specific command files
|
|
98
|
-
|
|
99
|
-
## Guardrails
|
|
100
|
-
|
|
101
|
-
- Customization files cannot remove the command's core instructions
|
|
102
|
-
- Invalid YAML produces warnings but does not prevent command execution (graceful degradation)
|
|
103
|
-
- Customization files should be committed to the repository
|
|
104
|
-
|
|
105
|
-
## Unified Skill
|
|
106
|
-
|
|
107
|
-
This command's workflow is handled by the `hatch3r-customize` skill with `type: command`. The skill provides root-cause analysis, multi-stakeholder review, and quality gate steps that extend the workflow above.
|
|
108
|
-
|
|
109
|
-
## Related
|
|
110
|
-
|
|
111
|
-
- Agent customization: `hatch3r-agent-customize` command
|
|
112
|
-
- Skill customization: `hatch3r-skill-customize` command
|
|
113
|
-
- Rule customization: `hatch3r-rule-customize` command
|