hatch3r 1.7.1 → 1.8.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 (189) hide show
  1. package/README.md +38 -12
  2. package/agents/hatch3r-a11y-auditor.md +4 -0
  3. package/agents/hatch3r-architect.md +4 -0
  4. package/agents/hatch3r-ci-watcher.md +4 -0
  5. package/agents/hatch3r-context-rules.md +26 -6
  6. package/agents/hatch3r-creator.md +6 -1
  7. package/agents/hatch3r-dependency-auditor.md +4 -0
  8. package/agents/hatch3r-devops.md +4 -0
  9. package/agents/hatch3r-docs-writer.md +4 -0
  10. package/agents/hatch3r-fixer.md +4 -0
  11. package/agents/hatch3r-handoff-loader.md +243 -0
  12. package/agents/hatch3r-handoff-preparer.md +134 -0
  13. package/agents/hatch3r-implementer.md +12 -0
  14. package/agents/hatch3r-learnings-loader.md +5 -1
  15. package/agents/hatch3r-lint-fixer.md +4 -0
  16. package/agents/hatch3r-perf-profiler.md +8 -0
  17. package/agents/hatch3r-researcher.md +4 -0
  18. package/agents/hatch3r-reviewer.md +94 -0
  19. package/agents/hatch3r-security-auditor.md +24 -0
  20. package/agents/hatch3r-test-writer.md +4 -0
  21. package/agents/modes/requirements-elicitation.md +4 -1
  22. package/agents/modes/similar-implementation.md +6 -0
  23. package/agents/modes/user-flows.md +76 -0
  24. package/agents/shared/quality-charter.md +128 -0
  25. package/agents/shared/user-content-templates.md +31 -1
  26. package/commands/hatch3r-agent-customize.md +4 -0
  27. package/commands/hatch3r-api-spec.md +7 -0
  28. package/commands/hatch3r-benchmark.md +7 -0
  29. package/commands/hatch3r-board-fill.md +8 -0
  30. package/commands/hatch3r-board-groom.md +4 -0
  31. package/commands/hatch3r-board-init.md +51 -0
  32. package/commands/hatch3r-board-pickup.md +8 -0
  33. package/commands/hatch3r-board-refresh.md +4 -0
  34. package/commands/hatch3r-board-shared.md +6 -6
  35. package/commands/hatch3r-bug-plan.md +7 -0
  36. package/commands/hatch3r-codebase-map.md +8 -0
  37. package/commands/hatch3r-command-customize.md +4 -0
  38. package/commands/hatch3r-context-health.md +5 -0
  39. package/commands/hatch3r-create.md +59 -4
  40. package/commands/hatch3r-debug.md +7 -0
  41. package/commands/hatch3r-dep-audit.md +4 -0
  42. package/commands/hatch3r-feature-plan.md +7 -0
  43. package/commands/hatch3r-handoff.md +133 -0
  44. package/commands/hatch3r-healthcheck.md +4 -0
  45. package/commands/hatch3r-hooks.md +4 -0
  46. package/commands/hatch3r-learn.md +16 -0
  47. package/commands/hatch3r-migration-plan.md +7 -0
  48. package/commands/hatch3r-onboard.md +7 -0
  49. package/commands/hatch3r-pr-resolve.md +12 -1
  50. package/commands/hatch3r-project-spec.md +8 -0
  51. package/commands/hatch3r-quick-change.md +11 -2
  52. package/commands/hatch3r-recipe.md +4 -0
  53. package/commands/hatch3r-refactor-plan.md +7 -0
  54. package/commands/hatch3r-release.md +5 -0
  55. package/commands/hatch3r-revision.md +7 -0
  56. package/commands/hatch3r-roadmap.md +8 -0
  57. package/commands/hatch3r-rule-customize.md +4 -0
  58. package/commands/hatch3r-security-audit.md +4 -0
  59. package/commands/hatch3r-skill-customize.md +4 -0
  60. package/commands/hatch3r-test-plan.md +7 -0
  61. package/commands/hatch3r-workflow.md +11 -1
  62. package/dist/cli/index.js +4814 -1130
  63. package/dist/cli/index.js.map +1 -1
  64. package/package.json +10 -5
  65. package/rules/hatch3r-accessibility-standards.md +21 -0
  66. package/rules/hatch3r-accessibility-standards.mdc +21 -0
  67. package/rules/hatch3r-agent-orchestration-detail.md +3 -0
  68. package/rules/hatch3r-agent-orchestration-detail.mdc +3 -0
  69. package/rules/hatch3r-agent-orchestration.md +34 -3
  70. package/rules/hatch3r-agent-orchestration.mdc +34 -3
  71. package/rules/hatch3r-ai-evals.md +158 -0
  72. package/rules/hatch3r-ai-evals.mdc +154 -0
  73. package/rules/hatch3r-ai-ux-patterns.md +131 -0
  74. package/rules/hatch3r-ai-ux-patterns.mdc +127 -0
  75. package/rules/hatch3r-api-design.md +67 -9
  76. package/rules/hatch3r-api-design.mdc +67 -9
  77. package/rules/hatch3r-api-versioning.md +119 -0
  78. package/rules/hatch3r-api-versioning.mdc +115 -0
  79. package/rules/hatch3r-auth-patterns.md +170 -0
  80. package/rules/hatch3r-auth-patterns.mdc +166 -0
  81. package/rules/hatch3r-component-conventions.md +30 -0
  82. package/rules/hatch3r-component-conventions.mdc +30 -0
  83. package/rules/hatch3r-container-hardening.md +131 -0
  84. package/rules/hatch3r-container-hardening.mdc +127 -0
  85. package/rules/hatch3r-contract-testing.md +117 -0
  86. package/rules/hatch3r-contract-testing.mdc +113 -0
  87. package/rules/hatch3r-deep-context.md +2 -0
  88. package/rules/hatch3r-deep-context.mdc +2 -0
  89. package/rules/hatch3r-dependency-management.md +73 -1
  90. package/rules/hatch3r-dependency-management.mdc +72 -0
  91. package/rules/hatch3r-design-system-detection.md +142 -0
  92. package/rules/hatch3r-design-system-detection.mdc +138 -0
  93. package/rules/hatch3r-event-schema-evolution.md +90 -0
  94. package/rules/hatch3r-event-schema-evolution.mdc +86 -0
  95. package/rules/hatch3r-handoff-readiness.md +45 -0
  96. package/rules/hatch3r-handoff-readiness.mdc +40 -0
  97. package/rules/hatch3r-i18n.md +13 -0
  98. package/rules/hatch3r-i18n.mdc +13 -0
  99. package/rules/hatch3r-iteration-summary.md +2 -0
  100. package/rules/hatch3r-iteration-summary.mdc +2 -0
  101. package/rules/hatch3r-migrations.md +61 -16
  102. package/rules/hatch3r-migrations.mdc +61 -16
  103. package/rules/hatch3r-observability-logging.md +1 -1
  104. package/rules/hatch3r-observability-logging.mdc +1 -1
  105. package/rules/hatch3r-observability-metrics.md +1 -1
  106. package/rules/hatch3r-observability-metrics.mdc +1 -1
  107. package/rules/hatch3r-observability-tracing-detail.md +8 -149
  108. package/rules/hatch3r-observability-tracing-detail.mdc +7 -149
  109. package/rules/hatch3r-observability-tracing.md +154 -6
  110. package/rules/hatch3r-observability-tracing.mdc +154 -6
  111. package/rules/hatch3r-observability.md +1 -0
  112. package/rules/hatch3r-observability.mdc +1 -0
  113. package/rules/hatch3r-operability.md +149 -0
  114. package/rules/hatch3r-operability.mdc +145 -0
  115. package/rules/hatch3r-passkey-server.md +181 -0
  116. package/rules/hatch3r-passkey-server.mdc +177 -0
  117. package/rules/hatch3r-progressive-delivery.md +120 -0
  118. package/rules/hatch3r-progressive-delivery.mdc +116 -0
  119. package/rules/hatch3r-resilience-patterns.md +154 -0
  120. package/rules/hatch3r-resilience-patterns.mdc +150 -0
  121. package/rules/hatch3r-secrets-management.md +29 -0
  122. package/rules/hatch3r-secrets-management.mdc +29 -0
  123. package/rules/hatch3r-testing.md +139 -43
  124. package/rules/hatch3r-testing.mdc +139 -43
  125. package/rules/hatch3r-ux-states-and-flows.md +149 -0
  126. package/rules/hatch3r-ux-states-and-flows.mdc +145 -0
  127. package/skills/hatch3r-a11y-audit/SKILL.md +14 -0
  128. package/skills/hatch3r-agent-customize/SKILL.md +10 -0
  129. package/skills/hatch3r-ai-feature/SKILL.md +136 -0
  130. package/skills/hatch3r-api-spec/SKILL.md +73 -0
  131. package/skills/hatch3r-architecture-review/SKILL.md +14 -0
  132. package/skills/hatch3r-bug-fix/SKILL.md +5 -0
  133. package/skills/hatch3r-ci-pipeline/SKILL.md +14 -0
  134. package/skills/hatch3r-cli-aichat/SKILL.md +84 -0
  135. package/skills/hatch3r-cli-ast-grep/SKILL.md +85 -0
  136. package/skills/hatch3r-cli-az-devops/SKILL.md +89 -0
  137. package/skills/hatch3r-cli-bat/SKILL.md +85 -0
  138. package/skills/hatch3r-cli-comby/SKILL.md +85 -0
  139. package/skills/hatch3r-cli-csvkit/SKILL.md +84 -0
  140. package/skills/hatch3r-cli-delta/SKILL.md +86 -0
  141. package/skills/hatch3r-cli-difftastic/SKILL.md +84 -0
  142. package/skills/hatch3r-cli-docker/SKILL.md +89 -0
  143. package/skills/hatch3r-cli-duckdb/SKILL.md +84 -0
  144. package/skills/hatch3r-cli-fd/SKILL.md +85 -0
  145. package/skills/hatch3r-cli-fzf/SKILL.md +84 -0
  146. package/skills/hatch3r-cli-gh/SKILL.md +90 -0
  147. package/skills/hatch3r-cli-glab/SKILL.md +89 -0
  148. package/skills/hatch3r-cli-jq/SKILL.md +89 -0
  149. package/skills/hatch3r-cli-lazygit/SKILL.md +78 -0
  150. package/skills/hatch3r-cli-llm/SKILL.md +84 -0
  151. package/skills/hatch3r-cli-miller/SKILL.md +84 -0
  152. package/skills/hatch3r-cli-mods/SKILL.md +84 -0
  153. package/skills/hatch3r-cli-overview/SKILL.md +60 -0
  154. package/skills/hatch3r-cli-playwright/SKILL.md +89 -0
  155. package/skills/hatch3r-cli-podman/SKILL.md +84 -0
  156. package/skills/hatch3r-cli-qsv/SKILL.md +91 -0
  157. package/skills/hatch3r-cli-ripgrep/SKILL.md +85 -0
  158. package/skills/hatch3r-cli-rtk/SKILL.md +91 -0
  159. package/skills/hatch3r-cli-sd/SKILL.md +85 -0
  160. package/skills/hatch3r-cli-stagehand/SKILL.md +111 -0
  161. package/skills/hatch3r-cli-taplo/SKILL.md +84 -0
  162. package/skills/hatch3r-cli-yq/SKILL.md +85 -0
  163. package/skills/hatch3r-cli-zstd/SKILL.md +85 -0
  164. package/skills/hatch3r-command-customize/SKILL.md +10 -0
  165. package/skills/hatch3r-context-health/SKILL.md +14 -0
  166. package/skills/hatch3r-cost-tracking/SKILL.md +14 -0
  167. package/skills/hatch3r-customize/SKILL.md +17 -0
  168. package/skills/hatch3r-dep-audit/SKILL.md +14 -0
  169. package/skills/hatch3r-design-system-detect/SKILL.md +164 -0
  170. package/skills/hatch3r-feature/SKILL.md +2 -0
  171. package/skills/hatch3r-gh-agentic-workflows/SKILL.md +13 -0
  172. package/skills/hatch3r-handoff-prepare/SKILL.md +160 -0
  173. package/skills/hatch3r-handoff-resume/SKILL.md +171 -0
  174. package/skills/hatch3r-incident-response/SKILL.md +14 -0
  175. package/skills/hatch3r-issue-workflow/SKILL.md +5 -0
  176. package/skills/hatch3r-logical-refactor/SKILL.md +14 -0
  177. package/skills/hatch3r-migration/SKILL.md +14 -0
  178. package/skills/hatch3r-observability-verify/SKILL.md +134 -0
  179. package/skills/hatch3r-perf-audit/SKILL.md +14 -0
  180. package/skills/hatch3r-pr-creation/SKILL.md +14 -0
  181. package/skills/hatch3r-qa-validation/SKILL.md +18 -0
  182. package/skills/hatch3r-recipe/SKILL.md +14 -0
  183. package/skills/hatch3r-refactor/SKILL.md +14 -0
  184. package/skills/hatch3r-release/SKILL.md +14 -0
  185. package/skills/hatch3r-reliability-verify/SKILL.md +146 -0
  186. package/skills/hatch3r-rule-customize/SKILL.md +10 -0
  187. package/skills/hatch3r-skill-customize/SKILL.md +10 -0
  188. package/skills/hatch3r-ui-ux-verify/SKILL.md +138 -0
  189. package/skills/hatch3r-visual-refactor/SKILL.md +15 -1
@@ -0,0 +1,85 @@
1
+ ---
2
+ id: hatch3r-cli-bat
3
+ description: "cat clone with syntax highlighting and git integration. Use when scrolling one source file with syntax colours, line numbers, and header decorations; invoke `bat`. Prints to a terminal pager (`less`-compatible) for quick visual inspection."
4
+ tags: ["cli-tools", "view", "core"]
5
+ quality_charter: agents/shared/quality-charter.md
6
+ efficiency_patterns: agents/shared/efficiency-patterns.md
7
+ cache_friendly: true
8
+ cli_tool:
9
+ id: bat
10
+ bin: bat
11
+ tier: 1
12
+ category: view
13
+ homepage: https://github.com/sharkdp/bat
14
+ ---
15
+ <!-- HATCH3R-CLI-SKILL-GENERATED v1 -->
16
+ # bat
17
+
18
+ cat clone with syntax highlighting and git integration
19
+
20
+ ## When to Use
21
+
22
+ Reach for `bat` when the task is in the **view** category and the agent would otherwise call an MCP tool or read large outputs into context.
23
+
24
+ ## Token Cost
25
+
26
+ CLI tools return structured stdout that fits in <1KB for typical queries; equivalent MCP calls regularly exceed 10KB.
27
+ Reference: Anthropic engineering (Nov 4 2025) — code-execution-over-MCP yields 98.7% token reduction.
28
+
29
+ ## Recipes
30
+
31
+ ```bash
32
+ bat src/cli/commands/init.ts
33
+ ```
34
+ Default view — syntax-highlighted output with line numbers and git modification markers.
35
+
36
+ ```bash
37
+ bat --plain --line-range 50:100 src/adapters/cursor.ts
38
+ ```
39
+ `--plain` strips decorations; range syntax mimics `sed -n '50,100p'` without invoking sed.
40
+
41
+ ```bash
42
+ bat --paging=never -A whitespace.txt
43
+ ```
44
+ `-A` reveals tabs, trailing spaces, and CRLF — handy when debugging YAML indentation failures.
45
+
46
+ ```bash
47
+ git diff | bat --language=diff
48
+ ```
49
+ Force a language when stdin lacks a filename hint — `--language=diff` produces a unified-diff colorscheme.
50
+
51
+ ```bash
52
+ fd '\.md$' governance/ -x bat --style=plain
53
+ ```
54
+ Pipeline: list files with `fd`, render each through `bat` with no header — bulk preview of canonical content.
55
+
56
+ ## Wrong Choice When
57
+
58
+ - Don't use `bat` against binary files (`.zst`, executables); it prints the bytes verbatim and pollutes the terminal. Reach for `xxd | bat --language=hex` or `file <path>` first.
59
+ - Don't pipe `bat` into machine consumers in a strict POSIX environment — ANSI escapes and `--paging=auto` defaults break grep/awk chains. Reach for plain `cat`.
60
+ - Don't reach for `bat` to compare two files; it views one at a time. Reach for `delta` (`hatch3r-cli-delta`) or `diff -u | bat --language=diff`.
61
+
62
+ ## Alternatives
63
+
64
+ | Tool | When to prefer |
65
+ |------|----------------|
66
+ | `cat` (POSIX) | Strict scripted pipelines, embedded systems, environments where escape sequences break consumers. |
67
+ | `less` | Paginate raw text without coloring; large files where rebuilding the syntax tree is wasted work. |
68
+ | `delta` (`hatch3r-cli-delta`) | Diff view rather than single-file render. |
69
+ | `xxd \| bat --language=hex` | Inspect binary payloads with column-aligned hex + ASCII. |
70
+
71
+ ## Detection / Install
72
+
73
+ Verify with:
74
+ ```bash
75
+ command -v bat
76
+ ```
77
+
78
+ Install (mac):
79
+
80
+ ```bash
81
+ # brew
82
+ brew install bat
83
+ ```
84
+
85
+ Homepage: https://github.com/sharkdp/bat
@@ -0,0 +1,85 @@
1
+ ---
2
+ id: hatch3r-cli-comby
3
+ description: "Structural search and replace across languages with declarative patterns. Use when declarative pattern match-and-rewrite spanning mixed-language repositories; invoke `comby`. Language-agnostic: a single `{:[hole]}` template works against any of 30+ grammars."
4
+ tags: ["cli-tools", "search", "opt-in"]
5
+ quality_charter: agents/shared/quality-charter.md
6
+ efficiency_patterns: agents/shared/efficiency-patterns.md
7
+ cache_friendly: true
8
+ cli_tool:
9
+ id: comby
10
+ bin: comby
11
+ tier: 3
12
+ category: search
13
+ homepage: https://comby.dev/
14
+ ---
15
+ <!-- HATCH3R-CLI-SKILL-GENERATED v1 -->
16
+ # comby
17
+
18
+ Structural search and replace across languages with declarative patterns
19
+
20
+ ## When to Use
21
+
22
+ Reach for `comby` when the task is in the **search** category and the agent would otherwise call an MCP tool or read large outputs into context.
23
+
24
+ ## Token Cost
25
+
26
+ CLI tools return structured stdout that fits in <1KB for typical queries; equivalent MCP calls regularly exceed 10KB.
27
+ Reference: Anthropic engineering (Nov 4 2025) — code-execution-over-MCP yields 98.7% token reduction.
28
+
29
+ ## Recipes
30
+
31
+ ```bash
32
+ comby 'console.log(:[arg])' 'logger.info(:[arg])' -i src/
33
+ ```
34
+ Rewrite every `console.log(...)` to `logger.info(...)` in `src/`, preserving the captured argument.
35
+
36
+ ```bash
37
+ comby 'if :[cond] { return :[ret] }' 'if (:[cond]) return :[ret];' -i .
38
+ ```
39
+ Reshape brace-style returns into single-line returns — works across Go, Rust, TypeScript, Java.
40
+
41
+ ```bash
42
+ comby -config patterns.toml -d src/
43
+ ```
44
+ Run a batch of templated rewrites from a TOML config (each `[[match]]` entry holds a match/rewrite pair).
45
+
46
+ ```bash
47
+ comby 'TODO(:[author]): :[msg]' 'FIXME(:[author]): :[msg]' -i -extensions js,ts,go
48
+ ```
49
+ Restrict the rewrite to specific file extensions.
50
+
51
+ ```bash
52
+ comby 'foo(:[args])' 'bar(:[args])' -stats -d src/
53
+ ```
54
+ Preview-only run with summary stats — no files written. Useful before a destructive rewrite.
55
+
56
+ ## Wrong Choice When
57
+
58
+ - **Security/SAST policy enforcement:** semgrep has a vetted rule registry, dataflow analysis, and CI-grade reporting — comby's surface-level templates miss taint flow.
59
+ - **Pure-text find/replace (no balanced delimiters):** `hatch3r-cli-ripgrep` + `hatch3r-cli-sd` (both tier 1) are faster and have no template parser overhead.
60
+ - **Language-precise refactors that need type info:** `hatch3r-cli-ast-grep` (tier 1) operates on the parse tree; comby is brace-aware but not type-aware.
61
+
62
+ ## Alternatives
63
+
64
+ | Tool | When to prefer |
65
+ |------|----------------|
66
+ | `hatch3r-cli-ast-grep` (tier 1) | Tree-sitter-backed, language-precise rewrites |
67
+ | `hatch3r-cli-sd` (tier 1) | Plain literal-text replacement, no template syntax |
68
+ | semgrep | SAST rule registry, taint analysis, CI integration |
69
+ | `hatch3r-cli-ripgrep` (tier 1) | Read-only inventory before deciding on a rewrite tool |
70
+
71
+ ## Detection / Install
72
+
73
+ Verify with:
74
+ ```bash
75
+ command -v comby
76
+ ```
77
+
78
+ Install (mac):
79
+
80
+ ```bash
81
+ # brew
82
+ brew install comby
83
+ ```
84
+
85
+ Homepage: https://comby.dev/
@@ -0,0 +1,84 @@
1
+ ---
2
+ id: hatch3r-cli-csvkit
3
+ description: "csvkit — Python CSV toolkit (csvlook, csvsql, csvjoin, csvstat). Use when Python-powered CSV toolkit covering csvlook, csvsql, csvjoin, csvstat; invoke `csvlook`. Streams records lazily; works on datasets that exceed available RAM."
4
+ tags: ["cli-tools", "data", "opt-in"]
5
+ quality_charter: agents/shared/quality-charter.md
6
+ efficiency_patterns: agents/shared/efficiency-patterns.md
7
+ cache_friendly: true
8
+ cli_tool:
9
+ id: csvkit
10
+ bin: csvlook
11
+ tier: 3
12
+ category: data
13
+ homepage: https://csvkit.readthedocs.io/
14
+ ---
15
+ <!-- HATCH3R-CLI-SKILL-GENERATED v1 -->
16
+ # csvkit
17
+
18
+ csvkit — Python CSV toolkit (csvlook, csvsql, csvjoin, csvstat)
19
+
20
+ ## When to Use
21
+
22
+ Reach for `csvlook` when the task is in the **data** category and the agent would otherwise call an MCP tool or read large outputs into context.
23
+
24
+ ## Token Cost
25
+
26
+ CLI tools return structured stdout that fits in <1KB for typical queries; equivalent MCP calls regularly exceed 10KB.
27
+ Reference: Anthropic engineering (Nov 4 2025) — code-execution-over-MCP yields 98.7% token reduction.
28
+
29
+ ## Recipes
30
+
31
+ ```bash
32
+ csvcut -c name,email records.csv
33
+ ```
34
+ Project two named columns from a CSV — column-name addressing instead of positional.
35
+
36
+ ```bash
37
+ csvstat records.csv
38
+ ```
39
+ One-shot column-by-column summary: type, count, null %, min/max/mean. Drop-in EDA.
40
+
41
+ ```bash
42
+ csvgrep -c status -m active records.csv
43
+ ```
44
+ Row filter where column `status` matches literal `active`.
45
+
46
+ ```bash
47
+ csvjoin -c id a.csv b.csv
48
+ ```
49
+ Join two CSVs on column `id` (inner join by default; `--left` / `--outer` available).
50
+
51
+ ```bash
52
+ csvsql --query 'SELECT name FROM data WHERE active = 1' data.csv
53
+ ```
54
+ Run SQL directly against a CSV using an in-memory SQLite — no schema file required.
55
+
56
+ ## Wrong Choice When
57
+
58
+ - **Files larger than ~1M rows:** csvkit is Python-startup-heavy; `hatch3r-cli-duckdb` (tier 2) loads and queries the same file in a fraction of the time.
59
+ - **Production SQL workloads:** csvsql is convenient but evaluates against in-memory SQLite — use a real database for anything served.
60
+ - **Single-column slice or count under a few hundred MB:** `hatch3r-cli-qsv` (tier 2) is faster with lower memory pressure.
61
+
62
+ ## Alternatives
63
+
64
+ | Tool | When to prefer |
65
+ |------|----------------|
66
+ | `hatch3r-cli-duckdb` (tier 2) | Large files, analytical SQL, Parquet, multi-file joins |
67
+ | `hatch3r-cli-qsv` (tier 2) | Fast column slicing, sampling, deduping |
68
+ | `hatch3r-cli-miller` (tier 3) | Streaming put/filter DSL, format conversion |
69
+
70
+ ## Detection / Install
71
+
72
+ Verify with:
73
+ ```bash
74
+ command -v csvlook
75
+ ```
76
+
77
+ Install (mac):
78
+
79
+ ```bash
80
+ # pipx
81
+ pipx install csvkit
82
+ ```
83
+
84
+ Homepage: https://csvkit.readthedocs.io/
@@ -0,0 +1,86 @@
1
+ ---
2
+ id: hatch3r-cli-delta
3
+ description: "Syntax-highlighting git diff pager. Use when viewing unified git diffs with side-by-side syntax colourised hunks; invoke `delta`. Replaces the legacy `less`-based diff renderer with terminal-native ANSI colour blocks."
4
+ tags: ["cli-tools", "git", "core"]
5
+ quality_charter: agents/shared/quality-charter.md
6
+ efficiency_patterns: agents/shared/efficiency-patterns.md
7
+ cache_friendly: true
8
+ cli_tool:
9
+ id: delta
10
+ bin: delta
11
+ tier: 1
12
+ category: git
13
+ homepage: https://github.com/dandavison/delta
14
+ ---
15
+ <!-- HATCH3R-CLI-SKILL-GENERATED v1 -->
16
+ # delta
17
+
18
+ Syntax-highlighting git diff pager
19
+
20
+ ## When to Use
21
+
22
+ Reach for `delta` when the task is in the **git** category and the agent would otherwise call an MCP tool or read large outputs into context.
23
+
24
+ ## Token Cost
25
+
26
+ CLI tools return structured stdout that fits in <1KB for typical queries; equivalent MCP calls regularly exceed 10KB.
27
+ Reference: Anthropic engineering (Nov 4 2025) — code-execution-over-MCP yields 98.7% token reduction.
28
+
29
+ ## Recipes
30
+
31
+ ```bash
32
+ git config --global core.pager delta
33
+ git config --global interactive.diffFilter 'delta --color-only'
34
+ ```
35
+ Enables delta as the diff pager for `git diff`, `git log -p`, and interactive add/stash.
36
+
37
+ ```ini
38
+ # ~/.gitconfig
39
+ [delta]
40
+ side-by-side = true
41
+ line-numbers = true
42
+ syntax-theme = Monokai Extended
43
+ navigate = true
44
+ ```
45
+ Side-by-side panes with line numbers and `n`/`N` hunk navigation — the high-signal review layout.
46
+
47
+ ```bash
48
+ git diff HEAD~5..HEAD -- 'src/**/*.ts' | delta --features=side-by-side
49
+ ```
50
+ Pipe a constrained diff range into delta directly when the pager is not globally configured.
51
+
52
+ ```bash
53
+ delta --list-syntax-themes | rg -i 'mono\|gruv\|night'
54
+ ```
55
+ Inventory available syntax themes — use the output to set `syntax-theme` in `~/.gitconfig`.
56
+
57
+ ## Wrong Choice When
58
+
59
+ - Don't pipe `delta` output into another script — it injects ANSI escape sequences that break downstream parsing. Reach for plain `diff -u` or `git diff --no-color` for machine consumers.
60
+ - Don't use `delta` to review semantic refactors (renames across files, signature reshapes); line-by-line color highlight misses tree-level moves. Reach for `difftastic` (`hatch3r-cli-difftastic`).
61
+ - Don't expect `delta` to fix the diff itself — it is a pager, not a merge tool. Reach for `git mergetool` or your editor's diff view.
62
+
63
+ ## Alternatives
64
+
65
+ | Tool | When to prefer |
66
+ |------|----------------|
67
+ | `difftastic` (`hatch3r-cli-difftastic`) | Tree-aware diff that understands renames and reshaped expressions. |
68
+ | `diff -u` | Scripted consumers needing plain unified text without ANSI. |
69
+ | GitHub web UI / `gh pr diff 123` | Review on the forge with inline comments. |
70
+ | `git diff --word-diff=color` | Quick word-granularity diff without a separate binary. |
71
+
72
+ ## Detection / Install
73
+
74
+ Verify with:
75
+ ```bash
76
+ command -v delta
77
+ ```
78
+
79
+ Install (mac):
80
+
81
+ ```bash
82
+ # brew
83
+ brew install git-delta
84
+ ```
85
+
86
+ Homepage: https://github.com/dandavison/delta
@@ -0,0 +1,84 @@
1
+ ---
2
+ id: hatch3r-cli-difftastic
3
+ description: "Structural diff that understands syntax. Use when syntax-aware diffing that reports semantic edits instead of textual lines; invoke `difft`. Skips whitespace and reordering noise by computing edits over parsed syntax trees."
4
+ tags: ["cli-tools", "git"]
5
+ quality_charter: agents/shared/quality-charter.md
6
+ efficiency_patterns: agents/shared/efficiency-patterns.md
7
+ cache_friendly: true
8
+ cli_tool:
9
+ id: difftastic
10
+ bin: difft
11
+ tier: 2
12
+ category: git
13
+ homepage: https://difftastic.wilfred.me.uk/
14
+ ---
15
+ <!-- HATCH3R-CLI-SKILL-GENERATED v1 -->
16
+ # difftastic
17
+
18
+ Structural diff that understands syntax
19
+
20
+ ## When to Use
21
+
22
+ Reach for `difft` when the task is in the **git** category and the agent would otherwise call an MCP tool or read large outputs into context.
23
+
24
+ ## Token Cost
25
+
26
+ CLI tools return structured stdout that fits in <1KB for typical queries; equivalent MCP calls regularly exceed 10KB.
27
+ Reference: Anthropic engineering (Nov 4 2025) — code-execution-over-MCP yields 98.7% token reduction.
28
+
29
+ ## Recipes
30
+
31
+ ```bash
32
+ difft a.ts b.ts
33
+ ```
34
+ Compare two files using a syntax-aware tree diff; rename-of-block does not show as wholesale rewrite.
35
+
36
+ ```bash
37
+ git -c diff.external=difft diff HEAD~1 HEAD
38
+ ```
39
+ One-shot syntactic git diff for the last commit without mutating global config.
40
+
41
+ ```bash
42
+ git config --global diff.external difft
43
+ ```
44
+ Wire `difft` as the default git external diff (human setup; agents should prefer the `-c` form above for transparency).
45
+
46
+ ```bash
47
+ difft --background light a.ts b.ts
48
+ ```
49
+ Render with a light-background palette — pick to match the terminal theme.
50
+
51
+ ```bash
52
+ difft --display side-by-side a.py b.py
53
+ ```
54
+ Side-by-side layout for review; fall back to the default inline mode for narrow terminals.
55
+
56
+ ## Wrong Choice When
57
+
58
+ - A script needs stable, parseable diff output — `diff -u` or `git diff --no-color` produce deterministic POSIX output; `difft` is for human reading.
59
+ - You only need a prettier pager for unified diffs — `delta` (Tier 1) renders standard git output with syntax highlighting and is faster.
60
+ - The languages involved are unsupported by tree-sitter parsers `difft` ships — fall back to `diff -u`.
61
+
62
+ ## Alternatives
63
+
64
+ | Tool | When to prefer |
65
+ |------|----------------|
66
+ | `delta` | Want syntax-highlighted unified diff for git output. |
67
+ | `diff -u` | Script consumes the output; need POSIX stability. |
68
+ | `git diff --word-diff` | Care about prose changes; line-noise from refactors is acceptable. |
69
+
70
+ ## Detection / Install
71
+
72
+ Verify with:
73
+ ```bash
74
+ command -v difft
75
+ ```
76
+
77
+ Install (mac):
78
+
79
+ ```bash
80
+ # brew
81
+ brew install difftastic
82
+ ```
83
+
84
+ Homepage: https://difftastic.wilfred.me.uk/
@@ -0,0 +1,89 @@
1
+ ---
2
+ id: hatch3r-cli-docker
3
+ description: "Container runtime and CLI. Use when image build, container run, exec inspection, or registry push commands; invoke `docker`. Talks to a running Docker Engine daemon over a Unix socket; perfect for x86 build hosts."
4
+ tags: ["cli-tools", "container"]
5
+ quality_charter: agents/shared/quality-charter.md
6
+ efficiency_patterns: agents/shared/efficiency-patterns.md
7
+ cache_friendly: true
8
+ cli_tool:
9
+ id: docker
10
+ bin: docker
11
+ tier: 2
12
+ category: container
13
+ homepage: https://docs.docker.com/get-docker/
14
+ ---
15
+ <!-- HATCH3R-CLI-SKILL-GENERATED v1 -->
16
+ # docker
17
+
18
+ Container runtime and CLI
19
+
20
+ ## When to Use
21
+
22
+ Reach for `docker` when the task is in the **container** category and the agent would otherwise call an MCP tool or read large outputs into context.
23
+
24
+ ## Token Cost
25
+
26
+ CLI tools return structured stdout that fits in <1KB for typical queries; equivalent MCP calls regularly exceed 10KB.
27
+ Reference: Anthropic engineering (Nov 4 2025) — code-execution-over-MCP yields 98.7% token reduction.
28
+
29
+ ## Recipes
30
+
31
+ ```bash
32
+ docker build -t myapp:dev .
33
+ ```
34
+ Build a local tag from the cwd Dockerfile; layer cache hits keep rebuilds under a second.
35
+
36
+ ```bash
37
+ docker run --rm -v "$PWD":/app -w /app node:22 npm test
38
+ ```
39
+ Run a one-shot test container with the host repo mounted — no image rebuild, no leftover container.
40
+
41
+ ```bash
42
+ docker compose up -d --build
43
+ ```
44
+ Bring up the multi-service stack from `docker-compose.yml` in the background, rebuilding stale images.
45
+
46
+ ```bash
47
+ docker run --rm -e DEBUG=1 myapp:dev sh -c 'env | sort'
48
+ ```
49
+ Inspect the runtime environment a container actually sees; useful for diagnosing missing env vars.
50
+
51
+ ```bash
52
+ docker inspect myapp:dev --format '{{.Config.Cmd}} {{.Config.Entrypoint}}'
53
+ ```
54
+ Extract a single image setting via Go template — avoids piping 10KB of JSON to `jq`.
55
+
56
+ ```bash
57
+ docker ps --format '{{.ID}} {{.Names}} {{.Status}}' --filter status=running
58
+ ```
59
+ Compact running-container summary; one line per container, easy to grep.
60
+
61
+ ## Wrong Choice When
62
+
63
+ - The goal is per-agent isolation only (file scoping, no service runtime) — `container-use` provides that without a long-running daemon.
64
+ - You are deploying to a Kubernetes cluster — go through `kubectl`/`helm`; `docker run` does not understand cluster semantics.
65
+ - The host already has `podman` and rootless containers — prefer it for security; the CLI surface is nearly identical.
66
+
67
+ ## Alternatives
68
+
69
+ | Tool | When to prefer |
70
+ |------|----------------|
71
+ | `podman` | Want rootless containers and a daemonless model. |
72
+ | `container-use` | Need lightweight per-agent isolation; no service orchestration. |
73
+ | `nerdctl` | Existing containerd installation; do not need Docker Desktop. |
74
+
75
+ ## Detection / Install
76
+
77
+ Verify with:
78
+ ```bash
79
+ command -v docker
80
+ ```
81
+
82
+ Install (mac):
83
+
84
+ ```bash
85
+ # brew
86
+ brew install --cask docker
87
+ ```
88
+
89
+ Homepage: https://docs.docker.com/get-docker/
@@ -0,0 +1,84 @@
1
+ ---
2
+ id: hatch3r-cli-duckdb
3
+ description: "Embedded analytical database with first-class CSV/Parquet support. Use when ad-hoc analytical SQL over local Parquet, CSV, and JSON files; invoke `duckdb`. Streams records lazily; works on datasets that exceed available RAM."
4
+ tags: ["cli-tools", "data"]
5
+ quality_charter: agents/shared/quality-charter.md
6
+ efficiency_patterns: agents/shared/efficiency-patterns.md
7
+ cache_friendly: true
8
+ cli_tool:
9
+ id: duckdb
10
+ bin: duckdb
11
+ tier: 2
12
+ category: data
13
+ homepage: https://duckdb.org/
14
+ ---
15
+ <!-- HATCH3R-CLI-SKILL-GENERATED v1 -->
16
+ # duckdb
17
+
18
+ Embedded analytical database with first-class CSV/Parquet support
19
+
20
+ ## When to Use
21
+
22
+ Reach for `duckdb` when the task is in the **data** category and the agent would otherwise call an MCP tool or read large outputs into context.
23
+
24
+ ## Token Cost
25
+
26
+ CLI tools return structured stdout that fits in <1KB for typical queries; equivalent MCP calls regularly exceed 10KB.
27
+ Reference: Anthropic engineering (Nov 4 2025) — code-execution-over-MCP yields 98.7% token reduction.
28
+
29
+ ## Recipes
30
+
31
+ ```bash
32
+ duckdb -c "SELECT count(*) FROM 'data/*.parquet'"
33
+ ```
34
+ Count rows across a Parquet glob — no schema declaration, no import step.
35
+
36
+ ```bash
37
+ duckdb -c "COPY (SELECT * FROM 'in.csv' WHERE active) TO 'out.parquet' (FORMAT PARQUET)"
38
+ ```
39
+ Filter a CSV and emit columnar Parquet in one pass; ideal for downstream `qsv`/`jq` chains.
40
+
41
+ ```bash
42
+ duckdb -c "ATTACH 'app.sqlite' AS sqlite; SELECT * FROM sqlite.users LIMIT 10"
43
+ ```
44
+ Query a SQLite file without conversion — useful for app debugging from the terminal.
45
+
46
+ ```bash
47
+ duckdb -json -c "DESCRIBE 'data.parquet'"
48
+ ```
49
+ Emit JSON schema rows for column inspection; pipe to `jq` to extract specific column types.
50
+
51
+ ```bash
52
+ duckdb -c "SELECT date_trunc('day', ts) AS d, count(*) FROM 'events/*.csv' GROUP BY 1 ORDER BY 1"
53
+ ```
54
+ Aggregate over a CSV directory; DuckDB streams the read so memory stays bounded.
55
+
56
+ ## Wrong Choice When
57
+
58
+ - The CSV has <10k rows and you only need to slice/select columns — `qsv` (Tier 2 sibling) starts faster and has no install dependency in many environments.
59
+ - The workload is transactional (writes from multiple clients, ACID across rows) — use SQLite or Postgres; DuckDB is read-optimized OLAP.
60
+ - A single `jq` filter would do the job (the data is already JSON, the operation is field extraction) — skip the SQL detour.
61
+
62
+ ## Alternatives
63
+
64
+ | Tool | When to prefer |
65
+ |------|----------------|
66
+ | `qsv` | Single CSV file, <100MB, just need slice/select/sort. |
67
+ | `sqlite3` | Need OLTP writes or row-level updates rather than analytics. |
68
+ | `python -m pandas` | Already in a Python script and the data fits in memory. |
69
+
70
+ ## Detection / Install
71
+
72
+ Verify with:
73
+ ```bash
74
+ command -v duckdb
75
+ ```
76
+
77
+ Install (mac):
78
+
79
+ ```bash
80
+ # brew
81
+ brew install duckdb
82
+ ```
83
+
84
+ Homepage: https://duckdb.org/
@@ -0,0 +1,85 @@
1
+ ---
2
+ id: hatch3r-cli-fd
3
+ description: "User-friendly find replacement, gitignore-aware. Use when locating filenames or directories by glob with parallel walking; invoke `fd`. Outputs newline-separated hit records; bound results with `-c` or `--max-count`."
4
+ tags: ["cli-tools", "search", "core"]
5
+ quality_charter: agents/shared/quality-charter.md
6
+ efficiency_patterns: agents/shared/efficiency-patterns.md
7
+ cache_friendly: true
8
+ cli_tool:
9
+ id: fd
10
+ bin: fd
11
+ tier: 1
12
+ category: search
13
+ homepage: https://github.com/sharkdp/fd
14
+ ---
15
+ <!-- HATCH3R-CLI-SKILL-GENERATED v1 -->
16
+ # fd
17
+
18
+ User-friendly find replacement, gitignore-aware
19
+
20
+ ## When to Use
21
+
22
+ Reach for `fd` when the task is in the **search** category and the agent would otherwise call an MCP tool or read large outputs into context.
23
+
24
+ ## Token Cost
25
+
26
+ CLI tools return structured stdout that fits in <1KB for typical queries; equivalent MCP calls regularly exceed 10KB.
27
+ Reference: Anthropic engineering (Nov 4 2025) — code-execution-over-MCP yields 98.7% token reduction.
28
+
29
+ ## Recipes
30
+
31
+ ```bash
32
+ fd '\.test\.ts$' src/
33
+ ```
34
+ Regex match against the path tail — locates every test file under `src/` without traversing `node_modules` or `.git` (gitignore-aware by default).
35
+
36
+ ```bash
37
+ fd -e ts -e tsx --exec wc -l
38
+ ```
39
+ Extension filter plus parallel `--exec` — one process per match, returns line counts for sizing audits.
40
+
41
+ ```bash
42
+ fd -H -E .git -E node_modules 'config'
43
+ ```
44
+ Includes hidden files (`-H`) and explicitly excludes vendor trees — useful when scanning dotfiles for stale config.
45
+
46
+ ```bash
47
+ fd --changed-within 7d -e md
48
+ ```
49
+ Time-windowed query for recent edits — pairs with `gh pr list` to spot undocumented changes.
50
+
51
+ ```bash
52
+ fd 'SKILL\.md$' skills/ -x rg -l 'placeholder'
53
+ ```
54
+ Pipeline: locate every `SKILL.md`, then `rg`-search each for a marker string in one parallel batch.
55
+
56
+ ## Wrong Choice When
57
+
58
+ - Don't reach for `fd` when the recursive predicate needs POSIX `find` features like `-mtime +N -delete`, `-path` with mixed Boolean operators, or NFS-mount handling. Reach for system `find`.
59
+ - Don't use `fd` as a content searcher — it matches paths, not file bodies. Reach for `ripgrep` (`hatch3r-cli-ripgrep`), optionally piped after `fd` for filename pre-filtering.
60
+ - Don't use `fd` against a system-wide indexed search ("which package owns this file?"); it walks the live filesystem each call. Reach for `locate` / `mlocate`.
61
+
62
+ ## Alternatives
63
+
64
+ | Tool | When to prefer |
65
+ |------|----------------|
66
+ | `find` (POSIX) | Mixed predicates with `-and`/`-or`, `-mtime`, `-prune`, or actions like `-delete` and `-execdir`. |
67
+ | `locate` | Pre-indexed lookups across the entire filesystem (no live walk). |
68
+ | `ripgrep` (`hatch3r-cli-ripgrep`) | When you want content matches, not path matches — `fd ... -x rg` if both. |
69
+ | `git ls-files` | Restrict to tracked files only; ignores untracked even if not in `.gitignore`. |
70
+
71
+ ## Detection / Install
72
+
73
+ Verify with:
74
+ ```bash
75
+ command -v fd
76
+ ```
77
+
78
+ Install (mac):
79
+
80
+ ```bash
81
+ # brew
82
+ brew install fd
83
+ ```
84
+
85
+ Homepage: https://github.com/sharkdp/fd