@cubis/foundry 0.3.71 → 0.3.73

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 (276) hide show
  1. package/CHANGELOG.md +23 -2
  2. package/dist/cli/core.js +9 -22
  3. package/dist/cli/core.js.map +1 -1
  4. package/package.json +1 -1
  5. package/src/cli/core.ts +13 -22
  6. package/workflows/powers/accessibility/POWER.md +83 -94
  7. package/workflows/powers/accessibility/SKILL.md +82 -94
  8. package/workflows/powers/agent-design/POWER.md +201 -0
  9. package/workflows/powers/agent-design/SKILL.md +198 -0
  10. package/workflows/powers/agent-design/references/clarification-patterns.md +153 -0
  11. package/workflows/powers/agent-design/references/skill-testing.md +164 -0
  12. package/workflows/powers/agent-design/references/workflow-patterns.md +226 -0
  13. package/workflows/powers/agentic-eval/POWER.md +62 -0
  14. package/workflows/powers/agentic-eval/SKILL.md +59 -0
  15. package/workflows/powers/agentic-eval/references/rubric-and-regression-checklist.md +11 -0
  16. package/workflows/powers/api-designer/POWER.md +43 -71
  17. package/workflows/powers/api-designer/SKILL.md +43 -71
  18. package/workflows/powers/api-patterns/POWER.md +42 -56
  19. package/workflows/powers/api-patterns/SKILL.md +42 -57
  20. package/workflows/powers/architecture-designer/POWER.md +43 -60
  21. package/workflows/powers/architecture-designer/SKILL.md +43 -60
  22. package/workflows/powers/ask-questions-if-underspecified/POWER.md +51 -3
  23. package/workflows/powers/auth-architect/POWER.md +69 -0
  24. package/workflows/powers/auth-architect/SKILL.md +66 -0
  25. package/workflows/powers/auth-architect/references/session-token-policy-checklist.md +45 -0
  26. package/workflows/powers/behavioral-modes/POWER.md +100 -9
  27. package/workflows/powers/c-pro/POWER.md +105 -0
  28. package/workflows/powers/c-pro/SKILL.md +102 -0
  29. package/workflows/powers/c-pro/references/build-systems-and-toolchains.md +148 -0
  30. package/workflows/powers/c-pro/references/common-ub-and-portability.md +166 -0
  31. package/workflows/powers/c-pro/references/debugging-with-sanitizers.md +205 -0
  32. package/workflows/powers/c-pro/references/memory-safety-and-build-checklist.md +60 -0
  33. package/workflows/powers/c-pro/references/posix-and-platform-apis.md +244 -0
  34. package/workflows/powers/changelog-generator/POWER.md +127 -63
  35. package/workflows/powers/changelog-generator/SKILL.md +126 -63
  36. package/workflows/powers/ci-cd-pipelines/POWER.md +156 -0
  37. package/workflows/powers/ci-cd-pipelines/SKILL.md +153 -0
  38. package/workflows/powers/ci-cd-pipelines/references/github-actions-patterns.md +160 -0
  39. package/workflows/powers/ci-cd-pipelines/references/pipeline-security-checklist.md +57 -0
  40. package/workflows/powers/cli-developer/POWER.md +152 -95
  41. package/workflows/powers/cli-developer/SKILL.md +152 -95
  42. package/workflows/powers/cpp-pro/POWER.md +111 -0
  43. package/workflows/powers/cpp-pro/SKILL.md +108 -0
  44. package/workflows/powers/cpp-pro/references/concurrency-primitives.md +266 -0
  45. package/workflows/powers/cpp-pro/references/move-semantics-and-value-types.md +149 -0
  46. package/workflows/powers/cpp-pro/references/performance-and-profiling.md +191 -0
  47. package/workflows/powers/cpp-pro/references/raii-and-modern-cpp-checklist.md +87 -0
  48. package/workflows/powers/cpp-pro/references/template-and-concepts-patterns.md +205 -0
  49. package/workflows/powers/csharp-pro/POWER.md +47 -22
  50. package/workflows/powers/csharp-pro/SKILL.md +47 -22
  51. package/workflows/powers/dart-pro/POWER.md +68 -0
  52. package/workflows/powers/dart-pro/SKILL.md +65 -0
  53. package/workflows/powers/dart-pro/references/isolate-and-concurrency.md +180 -0
  54. package/workflows/powers/dart-pro/references/null-safety-and-async-patterns.md +133 -0
  55. package/workflows/powers/dart-pro/references/package-structure-and-linting.md +193 -0
  56. package/workflows/powers/dart-pro/references/sealed-records-patterns.md +173 -0
  57. package/workflows/powers/dart-pro/references/testing-and-mocking.md +235 -0
  58. package/workflows/powers/database-design/POWER.md +47 -33
  59. package/workflows/powers/database-design/SKILL.md +47 -33
  60. package/workflows/powers/database-optimizer/POWER.md +43 -64
  61. package/workflows/powers/database-optimizer/SKILL.md +43 -64
  62. package/workflows/powers/database-skills/POWER.md +59 -93
  63. package/workflows/powers/database-skills/SKILL.md +59 -93
  64. package/workflows/powers/debugging-strategies/POWER.md +69 -0
  65. package/workflows/powers/debugging-strategies/SKILL.md +66 -0
  66. package/workflows/powers/debugging-strategies/references/reproduce-isolate-verify-checklist.md +42 -0
  67. package/workflows/powers/deep-research/POWER.md +67 -0
  68. package/workflows/powers/deep-research/SKILL.md +64 -0
  69. package/workflows/powers/deep-research/references/multi-round-research-loop.md +80 -0
  70. package/workflows/powers/design-system-builder/POWER.md +130 -116
  71. package/workflows/powers/design-system-builder/SKILL.md +130 -116
  72. package/workflows/powers/devops-engineer/POWER.md +120 -57
  73. package/workflows/powers/devops-engineer/SKILL.md +120 -57
  74. package/workflows/powers/docker-kubernetes/POWER.md +94 -0
  75. package/workflows/powers/docker-kubernetes/SKILL.md +91 -0
  76. package/workflows/powers/docker-kubernetes/references/dockerfile-optimization-checklist.md +35 -0
  77. package/workflows/powers/docker-kubernetes/references/kubernetes-deployment-patterns.md +59 -0
  78. package/workflows/powers/documentation-templates/POWER.md +158 -127
  79. package/workflows/powers/documentation-templates/SKILL.md +158 -127
  80. package/workflows/powers/drizzle-expert/POWER.md +66 -0
  81. package/workflows/powers/drizzle-expert/SKILL.md +63 -0
  82. package/workflows/powers/drizzle-expert/references/runtime-pairing-matrix.md +16 -0
  83. package/workflows/powers/drizzle-expert/references/schema-and-migration-playbook.md +18 -0
  84. package/workflows/powers/error-ux-observability/POWER.md +144 -131
  85. package/workflows/powers/error-ux-observability/SKILL.md +143 -131
  86. package/workflows/powers/fastapi-expert/POWER.md +46 -60
  87. package/workflows/powers/fastapi-expert/SKILL.md +46 -60
  88. package/workflows/powers/firebase/POWER.md +65 -0
  89. package/workflows/powers/firebase/SKILL.md +62 -0
  90. package/workflows/powers/firebase/references/platform-routing.md +16 -0
  91. package/workflows/powers/firebase/references/rules-and-indexes-checklist.md +11 -0
  92. package/workflows/powers/flutter-design-system/POWER.md +63 -0
  93. package/workflows/powers/flutter-design-system/SKILL.md +60 -0
  94. package/workflows/powers/flutter-design-system/references/shared-widgets.md +29 -0
  95. package/workflows/powers/flutter-design-system/references/tokens-and-theme.md +34 -0
  96. package/workflows/powers/flutter-drift/POWER.md +65 -0
  97. package/workflows/powers/flutter-drift/SKILL.md +62 -0
  98. package/workflows/powers/flutter-drift/references/migrations.md +22 -0
  99. package/workflows/powers/flutter-drift/references/query-patterns.md +26 -0
  100. package/workflows/powers/flutter-feature/POWER.md +65 -0
  101. package/workflows/powers/flutter-feature/SKILL.md +62 -0
  102. package/workflows/powers/flutter-feature/references/architecture-rules.md +85 -0
  103. package/workflows/powers/flutter-feature/references/composite-provider.md +58 -0
  104. package/workflows/powers/flutter-feature/references/outbox-pattern.md +87 -0
  105. package/workflows/powers/flutter-feature/references/testing-patterns.md +218 -0
  106. package/workflows/powers/flutter-go-router/POWER.md +64 -0
  107. package/workflows/powers/flutter-go-router/SKILL.md +61 -0
  108. package/workflows/powers/flutter-go-router/references/guards-and-deeplinks.md +20 -0
  109. package/workflows/powers/flutter-go-router/references/typed-routes.md +27 -0
  110. package/workflows/powers/flutter-offline-sync/POWER.md +62 -0
  111. package/workflows/powers/flutter-offline-sync/SKILL.md +59 -0
  112. package/workflows/powers/flutter-offline-sync/references/outbox-full.md +44 -0
  113. package/workflows/powers/flutter-repository/POWER.md +64 -0
  114. package/workflows/powers/flutter-repository/SKILL.md +61 -0
  115. package/workflows/powers/flutter-repository/references/drift-patterns.md +21 -0
  116. package/workflows/powers/flutter-repository/references/retrofit-patterns.md +20 -0
  117. package/workflows/powers/flutter-riverpod/POWER.md +70 -0
  118. package/workflows/powers/flutter-riverpod/SKILL.md +67 -0
  119. package/workflows/powers/flutter-riverpod/references/async-and-mutations.md +19 -0
  120. package/workflows/powers/flutter-riverpod/references/async-lifecycle.md +19 -0
  121. package/workflows/powers/flutter-riverpod/references/provider-selection.md +20 -0
  122. package/workflows/powers/flutter-riverpod/references/testing.md +21 -0
  123. package/workflows/powers/flutter-riverpod/references/version-matrix.md +24 -0
  124. package/workflows/powers/flutter-state-machine/POWER.md +62 -0
  125. package/workflows/powers/flutter-state-machine/SKILL.md +59 -0
  126. package/workflows/powers/flutter-state-machine/references/app-state-contract.md +23 -0
  127. package/workflows/powers/flutter-state-machine/references/ui-rendering.md +14 -0
  128. package/workflows/powers/flutter-testing/POWER.md +64 -0
  129. package/workflows/powers/flutter-testing/SKILL.md +61 -0
  130. package/workflows/powers/flutter-testing/references/offline-sync-tests.md +16 -0
  131. package/workflows/powers/flutter-testing/references/test-layers.md +33 -0
  132. package/workflows/powers/frontend-code-review/POWER.md +137 -0
  133. package/workflows/powers/frontend-code-review/SKILL.md +134 -0
  134. package/workflows/powers/frontend-code-review/references/common-antipatterns.md +86 -0
  135. package/workflows/powers/frontend-code-review/references/performance-budgets.md +56 -0
  136. package/workflows/powers/frontend-code-review/references/review-checklists.md +47 -0
  137. package/workflows/powers/frontend-design/POWER.md +163 -362
  138. package/workflows/powers/frontend-design/SKILL.md +163 -362
  139. package/workflows/powers/game-development/POWER.md +57 -140
  140. package/workflows/powers/game-development/SKILL.md +57 -140
  141. package/workflows/powers/geo-fundamentals/POWER.md +64 -126
  142. package/workflows/powers/geo-fundamentals/SKILL.md +64 -127
  143. package/workflows/powers/git-workflow/POWER.md +135 -0
  144. package/workflows/powers/git-workflow/SKILL.md +132 -0
  145. package/workflows/powers/git-workflow/references/pr-review-checklist.md +63 -0
  146. package/workflows/powers/golang-pro/POWER.md +46 -35
  147. package/workflows/powers/golang-pro/SKILL.md +46 -35
  148. package/workflows/powers/graphql-architect/POWER.md +44 -62
  149. package/workflows/powers/graphql-architect/SKILL.md +44 -62
  150. package/workflows/powers/i18n-localization/POWER.md +118 -103
  151. package/workflows/powers/i18n-localization/SKILL.md +118 -103
  152. package/workflows/powers/java-pro/POWER.md +47 -22
  153. package/workflows/powers/java-pro/SKILL.md +47 -22
  154. package/workflows/powers/javascript-pro/POWER.md +47 -34
  155. package/workflows/powers/javascript-pro/SKILL.md +47 -34
  156. package/workflows/powers/kotlin-pro/POWER.md +46 -23
  157. package/workflows/powers/kotlin-pro/SKILL.md +46 -23
  158. package/workflows/powers/legacy-modernizer/POWER.md +43 -60
  159. package/workflows/powers/legacy-modernizer/SKILL.md +43 -60
  160. package/workflows/powers/mcp-builder/POWER.md +65 -0
  161. package/workflows/powers/mcp-builder/SKILL.md +62 -0
  162. package/workflows/powers/mcp-builder/references/testing-and-evals.md +17 -0
  163. package/workflows/powers/mcp-builder/references/transport-and-tool-design.md +17 -0
  164. package/workflows/powers/microservices-architect/POWER.md +43 -70
  165. package/workflows/powers/microservices-architect/SKILL.md +43 -70
  166. package/workflows/powers/mobile-design/POWER.md +110 -345
  167. package/workflows/powers/mobile-design/SKILL.md +110 -345
  168. package/workflows/powers/mongodb/POWER.md +67 -0
  169. package/workflows/powers/mongodb/SKILL.md +64 -0
  170. package/workflows/powers/mongodb/references/mongodb-checklist.md +20 -0
  171. package/workflows/powers/mysql/POWER.md +67 -0
  172. package/workflows/powers/mysql/SKILL.md +64 -0
  173. package/workflows/powers/mysql/references/mysql-checklist.md +20 -0
  174. package/workflows/powers/neki/POWER.md +67 -0
  175. package/workflows/powers/neki/SKILL.md +64 -0
  176. package/workflows/powers/neki/references/neki-checklist.md +18 -0
  177. package/workflows/powers/nestjs-expert/POWER.md +45 -91
  178. package/workflows/powers/nestjs-expert/SKILL.md +45 -91
  179. package/workflows/powers/nextjs-developer/POWER.md +51 -44
  180. package/workflows/powers/nextjs-developer/SKILL.md +51 -44
  181. package/workflows/powers/nodejs-best-practices/POWER.md +48 -29
  182. package/workflows/powers/nodejs-best-practices/SKILL.md +48 -29
  183. package/workflows/powers/observability/POWER.md +109 -0
  184. package/workflows/powers/observability/SKILL.md +106 -0
  185. package/workflows/powers/observability/references/alerting-and-slo-checklist.md +87 -0
  186. package/workflows/powers/observability/references/opentelemetry-setup-guide.md +121 -0
  187. package/workflows/powers/openai-docs/POWER.md +61 -0
  188. package/workflows/powers/openai-docs/SKILL.md +58 -0
  189. package/workflows/powers/openai-docs/references/official-source-playbook.md +10 -0
  190. package/workflows/powers/performance-profiling/POWER.md +61 -114
  191. package/workflows/powers/performance-profiling/SKILL.md +61 -114
  192. package/workflows/powers/php-pro/POWER.md +116 -0
  193. package/workflows/powers/php-pro/SKILL.md +113 -0
  194. package/workflows/powers/php-pro/references/architecture-and-di.md +239 -0
  195. package/workflows/powers/php-pro/references/modern-php-features.md +189 -0
  196. package/workflows/powers/php-pro/references/performance-and-deployment.md +197 -0
  197. package/workflows/powers/php-pro/references/php84-strict-typing-checklist.md +161 -0
  198. package/workflows/powers/php-pro/references/testing-and-static-analysis.md +235 -0
  199. package/workflows/powers/playwright-e2e/POWER.md +85 -0
  200. package/workflows/powers/playwright-e2e/SKILL.md +82 -0
  201. package/workflows/powers/playwright-e2e/references/locator-trace-flake-checklist.md +80 -0
  202. package/workflows/powers/postgres/POWER.md +67 -0
  203. package/workflows/powers/postgres/SKILL.md +64 -0
  204. package/workflows/powers/postgres/references/postgres-checklist.md +20 -0
  205. package/workflows/powers/prompt-engineer/POWER.md +47 -30
  206. package/workflows/powers/prompt-engineer/SKILL.md +47 -30
  207. package/workflows/powers/python-pro/POWER.md +47 -36
  208. package/workflows/powers/python-pro/SKILL.md +47 -36
  209. package/workflows/powers/react-best-practices/POWER.md +56 -33
  210. package/workflows/powers/react-best-practices/SKILL.md +56 -33
  211. package/workflows/powers/react-expert/POWER.md +47 -37
  212. package/workflows/powers/react-expert/SKILL.md +47 -37
  213. package/workflows/powers/redis/POWER.md +67 -0
  214. package/workflows/powers/redis/SKILL.md +64 -0
  215. package/workflows/powers/redis/references/redis-checklist.md +19 -0
  216. package/workflows/powers/ruby-pro/POWER.md +118 -0
  217. package/workflows/powers/ruby-pro/SKILL.md +115 -0
  218. package/workflows/powers/ruby-pro/references/modern-ruby-features.md +189 -0
  219. package/workflows/powers/ruby-pro/references/object-design-patterns.md +220 -0
  220. package/workflows/powers/ruby-pro/references/performance-and-profiling.md +224 -0
  221. package/workflows/powers/ruby-pro/references/ruby-concurrency-and-testing.md +190 -0
  222. package/workflows/powers/ruby-pro/references/testing-and-rspec.md +236 -0
  223. package/workflows/powers/rust-pro/POWER.md +45 -31
  224. package/workflows/powers/rust-pro/SKILL.md +45 -31
  225. package/workflows/powers/security-engineer/POWER.md +129 -0
  226. package/workflows/powers/security-engineer/SKILL.md +126 -0
  227. package/workflows/powers/seo-fundamentals/POWER.md +59 -102
  228. package/workflows/powers/seo-fundamentals/SKILL.md +59 -102
  229. package/workflows/powers/serverless-patterns/POWER.md +171 -0
  230. package/workflows/powers/serverless-patterns/SKILL.md +168 -0
  231. package/workflows/powers/skill-creator/POWER.md +90 -0
  232. package/workflows/powers/skill-creator/SKILL.md +87 -0
  233. package/workflows/powers/skill-creator/references/platform-formats.md +181 -0
  234. package/workflows/powers/skill-creator/references/schemas.md +430 -0
  235. package/workflows/powers/spec-miner/POWER.md +49 -57
  236. package/workflows/powers/spec-miner/SKILL.md +49 -57
  237. package/workflows/powers/sqlite/POWER.md +67 -0
  238. package/workflows/powers/sqlite/SKILL.md +64 -0
  239. package/workflows/powers/sqlite/references/sqlite-checklist.md +19 -0
  240. package/workflows/powers/sre-engineer/POWER.md +123 -64
  241. package/workflows/powers/sre-engineer/SKILL.md +123 -64
  242. package/workflows/powers/static-analysis/POWER.md +121 -77
  243. package/workflows/powers/static-analysis/SKILL.md +121 -77
  244. package/workflows/powers/stripe-best-practices/POWER.md +140 -17
  245. package/workflows/powers/stripe-best-practices/SKILL.md +139 -17
  246. package/workflows/powers/supabase/POWER.md +67 -0
  247. package/workflows/powers/supabase/SKILL.md +64 -0
  248. package/workflows/powers/supabase/references/supabase-checklist.md +19 -0
  249. package/workflows/powers/swift-pro/POWER.md +118 -0
  250. package/workflows/powers/swift-pro/SKILL.md +115 -0
  251. package/workflows/powers/swift-pro/references/concurrency-patterns.md +165 -0
  252. package/workflows/powers/swift-pro/references/protocol-and-generics.md +172 -0
  253. package/workflows/powers/swift-pro/references/sendable-and-isolation.md +116 -0
  254. package/workflows/powers/swift-pro/references/swift-concurrency-and-protocols.md +260 -0
  255. package/workflows/powers/swift-pro/references/testing-and-packages.md +192 -0
  256. package/workflows/powers/tailwind-patterns/POWER.md +71 -240
  257. package/workflows/powers/tailwind-patterns/SKILL.md +71 -240
  258. package/workflows/powers/testing-patterns/POWER.md +155 -10
  259. package/workflows/powers/testing-patterns/SKILL.md +155 -10
  260. package/workflows/powers/typescript-pro/POWER.md +47 -38
  261. package/workflows/powers/typescript-pro/SKILL.md +47 -38
  262. package/workflows/powers/vitess/POWER.md +67 -0
  263. package/workflows/powers/vitess/SKILL.md +64 -0
  264. package/workflows/powers/vitess/references/vitess-checklist.md +19 -0
  265. package/workflows/powers/vulnerability-scanner/POWER.md +146 -10
  266. package/workflows/powers/vulnerability-scanner/SKILL.md +146 -10
  267. package/workflows/powers/web-perf/POWER.md +43 -170
  268. package/workflows/powers/web-perf/SKILL.md +43 -170
  269. package/workflows/powers/webapp-testing/POWER.md +43 -164
  270. package/workflows/powers/webapp-testing/SKILL.md +43 -164
  271. package/workflows/workflows/agent-environment-setup/platforms/antigravity/rules/GEMINI.md +65 -42
  272. package/workflows/workflows/agent-environment-setup/platforms/claude/rules/CLAUDE.md +8 -6
  273. package/workflows/workflows/agent-environment-setup/platforms/codex/rules/AGENTS.md +65 -41
  274. package/workflows/workflows/agent-environment-setup/platforms/copilot/rules/copilot-instructions.md +8 -6
  275. package/workflows/workflows/agent-environment-setup/shared/rules/STEERING.md +9 -8
  276. package/workflows/workflows/agent-environment-setup/shared/rules/overrides/codex.md +1 -1
@@ -1,116 +1,173 @@
1
1
  ---
2
- name: "cli-developer"
3
- displayName: "CLI Developer"
4
- description: "Build intuitive, cross-platform CLI tools with argument parsing, interactive prompts, progress indicators, and shell completions across Node.js, Python, and Go"
5
- keywords:
6
- [
7
- "cli",
8
- "command-line",
9
- "terminal",
10
- "argument parsing",
11
- "shell completion",
12
- "interactive prompt",
13
- "progress bar",
14
- "commander",
15
- "click",
16
- "typer",
17
- "cobra",
18
- ]
2
+ name: cli-developer
3
+ description: Build command-line interfaces with argument parsing, subcommands, interactive prompts, terminal UX, output formatting, and cross-platform compatibility.
4
+ license: Apache-2.0
5
+ metadata:
6
+ author: cubis-foundry
7
+ version: "3.0"
8
+ compatibility: Claude Code, Codex, GitHub Copilot, Gemini CLI
19
9
  ---
20
10
 
21
11
  # CLI Developer
22
12
 
23
- ## Overview
13
+ ## Purpose
24
14
 
25
- Senior CLI developer expertise for building fast, intuitive command-line tools across Node.js, Python, and Go ecosystems. Focus on <50ms startup time, comprehensive shell completions, and delightful developer UX.
15
+ Guide the design and implementation of command-line interfaces. Covers argument parsing, subcommand architecture, interactive prompts, terminal UX patterns, and cross-platform compatibility.
26
16
 
27
17
  ## When to Use
28
18
 
29
- - Building CLI tools and terminal applications
30
- - Implementing argument parsing and subcommands
31
- - Creating interactive prompts and forms
32
- - Adding progress bars and spinners
33
- - Implementing shell completions (bash, zsh, fish)
34
- - Optimizing CLI performance and startup time
35
- - Designing command hierarchies and flag conventions
19
+ - Building a new CLI tool from scratch
20
+ - Adding subcommands or flags to an existing CLI
21
+ - Implementing interactive prompts and wizards
22
+ - Designing CLI output formats (tables, JSON, progress bars)
23
+ - Making CLIs cross-platform (Windows, macOS, Linux)
24
+ - Reviewing CLI usability and documentation
36
25
 
37
- ## Core Workflow
26
+ ## Instructions
38
27
 
39
- 1. Analyze UXidentify user workflows, command hierarchy, common tasks
40
- 2. Design commands — plan subcommands, flags, arguments, configuration
41
- 3. Implement — build with appropriate CLI framework for the language
42
- 4. Polish — add completions, help text, error messages, progress indicators
43
- 5. Test — cross-platform testing, performance benchmarks
28
+ ### Step 1Design the Command Structure
44
29
 
45
- ## Quick Reference
30
+ **Naming conventions**:
46
31
 
47
- ### Framework Selection
32
+ - Use verb-noun pattern for commands: `create project`, `list users`, `delete cache`
33
+ - Short flags for common options: `-v` (verbose), `-q` (quiet), `-f` (force)
34
+ - Long flags for clarity: `--output`, `--format`, `--dry-run`
35
+ - Positional arguments for required inputs: `mycli deploy <environment>`
48
36
 
49
- | Language | Recommended | Alternative |
50
- | -------- | ------------- | --------------- |
51
- | Node.js | Commander.js | Yargs, oclif |
52
- | Python | Typer | Click, argparse |
53
- | Go | Cobra + Viper | urfave/cli |
54
-
55
- ### Command Structure
37
+ **Subcommand architecture**:
56
38
 
57
39
  ```
58
- mycli # Root command
59
- ├── init [options] # Simple command
40
+ mycli
41
+ ├── init (one-time setup)
60
42
  ├── config
61
- │ ├── get <key> # Nested subcommand
43
+ │ ├── get <key>
62
44
  │ ├── set <key> <value>
63
45
  │ └── list
64
- ├── deploy [environment] # Command with args
65
- │ ├── --dry-run # Flag
66
- │ ├── --force
67
- │ └── --config <file> # Option with value
68
- └── plugins
69
- ├── install <name>
70
- ├── list
71
- └── remove <name>
46
+ ├── project
47
+ │ ├── create <name>
48
+ │ ├── list
49
+ │ └── delete <id>
50
+ └── deploy <env> (positional argument)
72
51
  ```
73
52
 
74
- ### Exit Codes
75
-
76
- | Code | Meaning |
77
- | ---- | ----------------- |
78
- | 0 | Success |
79
- | 1 | General error |
80
- | 2 | Invalid arguments |
81
- | 77 | Permission denied |
82
- | 127 | Not found |
83
- | 130 | Ctrl+C (SIGINT) |
84
-
85
- ## Constraints
86
-
87
- ### MUST DO
88
-
89
- - Keep startup time under 50ms
90
- - Provide clear, actionable error messages
91
- - Support `--help` and `--version` flags
92
- - Use consistent flag naming conventions
93
- - Handle SIGINT (Ctrl+C) gracefully
94
- - Validate user input early
95
- - Support both interactive and non-interactive modes
96
- - Test on Windows, macOS, and Linux
97
-
98
- ### MUST NOT DO
99
-
100
- - Block on synchronous I/O unnecessarily
101
- - Print to stdout if output will be piped
102
- - Use colors when output is not a TTY
103
- - Break existing command signatures (breaking changes)
104
- - Require interactive input in CI/CD environments
105
- - Hardcode paths or platform-specific logic
106
- - Ship without shell completions
107
-
108
- ## Steering Files
109
-
110
- | File | Load When |
111
- | -------------------- | ------------------------------------------------------------ |
112
- | `design-patterns.md` | Command hierarchy, flags, config layers, plugin architecture |
113
- | `node-cli.md` | Commander, Yargs, Inquirer, Chalk, Ora |
114
- | `python-cli.md` | Typer, Click, argparse, Rich, questionary |
115
- | `go-cli.md` | Cobra, Viper, Bubble Tea, progress bars |
116
- | `ux-patterns.md` | Progress indicators, colors, help text, error messages |
53
+ **Rules**:
54
+
55
+ - Every command has `--help` (automatic with good parsers)
56
+ - Support `--version` at the root level
57
+ - Common flags go on the root command, specific flags on subcommands
58
+ - Use `--dry-run` for destructive operations
59
+
60
+ ### Step 2 Implement Argument Parsing
61
+
62
+ **Choose the right parser**:
63
+ | Language | Recommended |
64
+ |----------|-------------|
65
+ | Node.js | Commander, yargs, citty |
66
+ | Python | Click, Typer |
67
+ | Go | Cobra, urfave/cli |
68
+ | Rust | Clap |
69
+
70
+ **Validation**:
71
+
72
+ - Validate early, fail with clear error messages
73
+ - Show the closest valid option on typos (did-you-mean)
74
+ - Report all validation errors at once, not one at a time
75
+
76
+ ### Step 3 — Design Terminal UX
77
+
78
+ **Output hierarchy**:
79
+
80
+ 1. Primary output goes to stdout (pipeable)
81
+ 2. Status messages go to stderr (logs, progress)
82
+ 3. Errors go to stderr with non-zero exit code
83
+
84
+ **Formatting**:
85
+
86
+ - Default: human-readable (tables, colors, emoji)
87
+ - `--json`: machine-parseable JSON output
88
+ - `--quiet`: errors only, minimal output
89
+ - Detect TTY: disable colors and interactivity when piped
90
+
91
+ **Progress feedback**:
92
+
93
+ - Spinner for short operations (< 10s)
94
+ - Progress bar for operations with known total
95
+ - Log lines for multi-step operations (✓ Step 1... Step 2...)
96
+
97
+ **Colors** (use sparingly):
98
+
99
+ - Green: success
100
+ - Red: error
101
+ - Yellow: warning
102
+ - Blue/cyan: information
103
+ - Dim/gray: secondary information
104
+ - Always support `NO_COLOR` environment variable
105
+
106
+ ### Step 4 — Interactive Prompts
107
+
108
+ **When to prompt**:
109
+
110
+ - Missing required information not provided as flags
111
+ - Confirmation before destructive operations
112
+ - Multi-step wizards for complex setup
113
+
114
+ **Prompt types**:
115
+ | Type | When |
116
+ |------|------|
117
+ | Text input | Free-form strings (names, paths) |
118
+ | Password | Secrets (mask input) |
119
+ | Select | Single choice from a list |
120
+ | Multi-select | Multiple choices from a list |
121
+ | Confirm | Yes/no decision |
122
+
123
+ **Rules**:
124
+
125
+ - Show defaults in brackets: `Port [3000]:`
126
+ - Allow non-interactive mode via flags (CI environments)
127
+ - Validate input inline and let the user retry
128
+ - Support Ctrl+C graceful cancellation
129
+
130
+ ### Step 5 — Error Handling & Exit Codes
131
+
132
+ **Exit codes**:
133
+ | Code | Meaning |
134
+ |------|---------|
135
+ | 0 | Success |
136
+ | 1 | General error |
137
+ | 2 | Misuse / invalid arguments |
138
+ | 126 | Permission denied |
139
+ | 127 | Command not found |
140
+ | 130 | Terminated by Ctrl+C (SIGINT) |
141
+
142
+ **Error messages**:
143
+
144
+ ```
145
+ Error: Could not connect to database at localhost:5432
146
+ Cause: Connection refused
147
+ Fix: Ensure PostgreSQL is running: `pg_ctl start`
148
+ ```
149
+
150
+ Include: what failed, why, and how to fix.
151
+
152
+ ## Output Format
153
+
154
+ ```
155
+ ## CLI Architecture
156
+ [command structure and flag design]
157
+
158
+ ## Implementation
159
+ [code with argument parsing and command handlers]
160
+
161
+ ## UX Considerations
162
+ [output formatting, interactivity, error handling]
163
+ ```
164
+
165
+ ## Examples
166
+
167
+ **User**: "Build a CLI for managing our API deployments"
168
+
169
+ **Response approach**: Design subcommand structure (deploy, rollback, status, logs). Implement with Commander/Click/Cobra. Add deploy confirmation prompt, progress bar for upload, JSON output for CI. Handle rollback with `--to-version` flag.
170
+
171
+ **User**: "Our CLI has bad error messages — users don't know what went wrong"
172
+
173
+ **Response approach**: Audit error handling. Add context to every error (what, why, fix). Implement did-you-mean for typos. Add `--verbose` flag for debug output. Ensure proper exit codes for scripting.
@@ -0,0 +1,111 @@
1
+ ````markdown
2
+ ---
3
+ inclusion: manual
4
+ name: cpp-pro
5
+ description: "Use for modern C++23-era systems and application engineering with RAII, value semantics, toolchain awareness, and performance-safe design."
6
+ license: MIT
7
+ metadata:
8
+ author: cubis-foundry
9
+ version: "2.0"
10
+ compatibility: Claude Code, Codex, GitHub Copilot
11
+ ---
12
+
13
+ # Cpp Pro
14
+
15
+ ## Purpose
16
+
17
+ Use for modern C++23-era systems and application engineering with RAII, value semantics, toolchain awareness, and performance-safe design.
18
+
19
+ ## When to Use
20
+
21
+ - Building or refactoring modern C++ libraries, services, or native apps.
22
+ - Improving ownership, templates, performance boundaries, or build structure.
23
+ - Fixing correctness or maintainability issues in large native codebases.
24
+
25
+ ## Instructions
26
+
27
+ 1. Confirm toolchain, standard level, and module/library boundaries.
28
+ 2. Prefer RAII, value semantics, and explicit ownership over raw lifetime juggling.
29
+ 3. Keep templates readable and avoid metaprogramming when simpler designs suffice.
30
+ 4. Separate correctness fixes from performance tuning unless the two are inseparable.
31
+ 5. Validate with targeted tests, warnings, and native build checks.
32
+
33
+ ### Baseline standards
34
+
35
+ - Compile with `-std=c++23` (or project minimum). Enable `-Wall -Wextra -Wpedantic -Werror`.
36
+ - Use smart pointers (`unique_ptr`, `shared_ptr`) instead of raw `new`/`delete`. Raw pointers are non-owning observers only.
37
+ - Prefer value types and move semantics over heap allocation and pointer indirection.
38
+ - Mark functions `[[nodiscard]]` when ignoring the return value is always a bug.
39
+ - Use `constexpr` and `consteval` for compile-time computation where possible.
40
+ - Keep header includes minimal. Use forward declarations to reduce coupling.
41
+
42
+ ### RAII and ownership
43
+
44
+ - Every resource (memory, file handle, mutex lock, socket) must be managed by an RAII wrapper.
45
+ - Use `unique_ptr` for exclusive ownership, `shared_ptr` only when shared ownership is genuinely required.
46
+ - Prefer moving over copying for expensive types. Delete copy constructors when copying is semantically wrong.
47
+ - Use `std::optional` instead of nullable pointers for optional values.
48
+ - Scope-guard patterns for cleanup when RAII wrappers don't exist yet.
49
+
50
+ ### Templates and generics
51
+
52
+ - Use concepts (C++20/23) to constrain template parameters. Unconstrained templates produce unreadable error messages.
53
+ - Prefer `auto` with trailing return types for function templates. Avoid deep template nesting.
54
+ - Keep template definitions in headers. Use explicit instantiation only for build-time improvement in large projects.
55
+ - Prefer `std::variant` and `std::visit` over inheritance hierarchies for closed type sets.
56
+
57
+ ### Concurrency
58
+
59
+ - Use `std::jthread` and `std::stop_token` for manageable thread lifecycles.
60
+ - Prefer `std::mutex` with `std::lock_guard`/`std::scoped_lock` — never lock/unlock manually.
61
+ - Use `std::atomic` for lock-free counters and flags. Profile before choosing lock-free data structures.
62
+ - Propagate cancellation through `stop_token` rather than shared booleans.
63
+ - Run ThreadSanitizer in CI for all concurrent code paths.
64
+
65
+ ### Performance
66
+
67
+ - Profile with `perf`, `VTune`, or `Instruments` before optimizing. Measure hot paths, not hunches.
68
+ - Prefer contiguous containers (`std::vector`) over node-based containers (`std::list`, `std::map`) for cache efficiency.
69
+ - Use `std::string_view` and `std::span` to avoid unnecessary copies at function boundaries.
70
+ - Avoid virtual dispatch in hot loops. Prefer CRTP or `std::variant` when static dispatch suffices.
71
+ - Enable LTO for release builds. Benchmark with and without to verify gains.
72
+
73
+ ### Debugging
74
+
75
+ - Compile debug builds with `-g -O0 -fsanitize=address,undefined`.
76
+ - Use `static_assert` for compile-time invariants. Use `assert` for runtime invariants in debug mode.
77
+ - When debugging crashes: reproduce under sanitizers first, then inspect with gdb/lldb.
78
+ - Use structured error types (`std::expected` in C++23) instead of exceptions for recoverable errors in performance-sensitive code.
79
+
80
+ ### Constraints
81
+
82
+ - Avoid raw `new`/`delete` — use smart pointers or containers.
83
+ - Avoid c-style casts — use `static_cast`, `dynamic_cast`, `const_cast`, or `reinterpret_cast` with justification.
84
+ - Avoid deep inheritance hierarchies — prefer composition and type erasure.
85
+ - Avoid `using namespace std;` in headers — pollutes all includers.
86
+ - Avoid exceptions for control flow — use them for truly exceptional conditions only.
87
+ - Avoid premature micro-optimization without profiling evidence.
88
+
89
+ ## Output Format
90
+
91
+ Provide implementation guidance, code examples, and configuration as appropriate to the task.
92
+
93
+ ## References
94
+
95
+ | File | Load when |
96
+ | ---------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
97
+ | `references/raii-and-modern-cpp-checklist.md` | RAII patterns, smart pointer selection, value semantics, move correctness, or template constraint review is needed. |
98
+ | `references/move-semantics-and-value-types.md` | Move constructor/assignment design, perfect forwarding, copy elision, or value category questions arise. |
99
+ | `references/template-and-concepts-patterns.md` | Concept constraints, SFINAE replacement, variadic templates, or compile-time computation patterns are needed. |
100
+ | `references/concurrency-primitives.md` | Thread management, mutex strategies, atomic operations, lock-free patterns, or coroutine design is needed. |
101
+ | `references/performance-and-profiling.md` | Cache optimization, allocation reduction, benchmark setup, or profiler-driven tuning is needed. |
102
+
103
+ ## Scripts
104
+
105
+ No helper scripts are required for this skill right now. Keep execution in `SKILL.md` and `references/` unless repeated automation becomes necessary.
106
+
107
+ ## Examples
108
+
109
+ - "Help me with cpp pro best practices in this project"
110
+ - "Review my cpp pro implementation for issues"
111
+ ````
@@ -0,0 +1,108 @@
1
+ ---
2
+ name: cpp-pro
3
+ description: "Use for modern C++23-era systems and application engineering with RAII, value semantics, toolchain awareness, and performance-safe design."
4
+ license: MIT
5
+ metadata:
6
+ author: cubis-foundry
7
+ version: "2.0"
8
+ compatibility: Claude Code, Codex, GitHub Copilot
9
+ ---
10
+
11
+ # Cpp Pro
12
+
13
+ ## Purpose
14
+
15
+ Use for modern C++23-era systems and application engineering with RAII, value semantics, toolchain awareness, and performance-safe design.
16
+
17
+ ## When to Use
18
+
19
+ - Building or refactoring modern C++ libraries, services, or native apps.
20
+ - Improving ownership, templates, performance boundaries, or build structure.
21
+ - Fixing correctness or maintainability issues in large native codebases.
22
+
23
+ ## Instructions
24
+
25
+ 1. Confirm toolchain, standard level, and module/library boundaries.
26
+ 2. Prefer RAII, value semantics, and explicit ownership over raw lifetime juggling.
27
+ 3. Keep templates readable and avoid metaprogramming when simpler designs suffice.
28
+ 4. Separate correctness fixes from performance tuning unless the two are inseparable.
29
+ 5. Validate with targeted tests, warnings, and native build checks.
30
+
31
+ ### Baseline standards
32
+
33
+ - Compile with `-std=c++23` (or project minimum). Enable `-Wall -Wextra -Wpedantic -Werror`.
34
+ - Use smart pointers (`unique_ptr`, `shared_ptr`) instead of raw `new`/`delete`. Raw pointers are non-owning observers only.
35
+ - Prefer value types and move semantics over heap allocation and pointer indirection.
36
+ - Mark functions `[[nodiscard]]` when ignoring the return value is always a bug.
37
+ - Use `constexpr` and `consteval` for compile-time computation where possible.
38
+ - Keep header includes minimal. Use forward declarations to reduce coupling.
39
+
40
+ ### RAII and ownership
41
+
42
+ - Every resource (memory, file handle, mutex lock, socket) must be managed by an RAII wrapper.
43
+ - Use `unique_ptr` for exclusive ownership, `shared_ptr` only when shared ownership is genuinely required.
44
+ - Prefer moving over copying for expensive types. Delete copy constructors when copying is semantically wrong.
45
+ - Use `std::optional` instead of nullable pointers for optional values.
46
+ - Scope-guard patterns for cleanup when RAII wrappers don't exist yet.
47
+
48
+ ### Templates and generics
49
+
50
+ - Use concepts (C++20/23) to constrain template parameters. Unconstrained templates produce unreadable error messages.
51
+ - Prefer `auto` with trailing return types for function templates. Avoid deep template nesting.
52
+ - Keep template definitions in headers. Use explicit instantiation only for build-time improvement in large projects.
53
+ - Prefer `std::variant` and `std::visit` over inheritance hierarchies for closed type sets.
54
+
55
+ ### Concurrency
56
+
57
+ - Use `std::jthread` and `std::stop_token` for manageable thread lifecycles.
58
+ - Prefer `std::mutex` with `std::lock_guard`/`std::scoped_lock` — never lock/unlock manually.
59
+ - Use `std::atomic` for lock-free counters and flags. Profile before choosing lock-free data structures.
60
+ - Propagate cancellation through `stop_token` rather than shared booleans.
61
+ - Run ThreadSanitizer in CI for all concurrent code paths.
62
+
63
+ ### Performance
64
+
65
+ - Profile with `perf`, `VTune`, or `Instruments` before optimizing. Measure hot paths, not hunches.
66
+ - Prefer contiguous containers (`std::vector`) over node-based containers (`std::list`, `std::map`) for cache efficiency.
67
+ - Use `std::string_view` and `std::span` to avoid unnecessary copies at function boundaries.
68
+ - Avoid virtual dispatch in hot loops. Prefer CRTP or `std::variant` when static dispatch suffices.
69
+ - Enable LTO for release builds. Benchmark with and without to verify gains.
70
+
71
+ ### Debugging
72
+
73
+ - Compile debug builds with `-g -O0 -fsanitize=address,undefined`.
74
+ - Use `static_assert` for compile-time invariants. Use `assert` for runtime invariants in debug mode.
75
+ - When debugging crashes: reproduce under sanitizers first, then inspect with gdb/lldb.
76
+ - Use structured error types (`std::expected` in C++23) instead of exceptions for recoverable errors in performance-sensitive code.
77
+
78
+ ### Constraints
79
+
80
+ - Avoid raw `new`/`delete` — use smart pointers or containers.
81
+ - Avoid c-style casts — use `static_cast`, `dynamic_cast`, `const_cast`, or `reinterpret_cast` with justification.
82
+ - Avoid deep inheritance hierarchies — prefer composition and type erasure.
83
+ - Avoid `using namespace std;` in headers — pollutes all includers.
84
+ - Avoid exceptions for control flow — use them for truly exceptional conditions only.
85
+ - Avoid premature micro-optimization without profiling evidence.
86
+
87
+ ## Output Format
88
+
89
+ Provide implementation guidance, code examples, and configuration as appropriate to the task.
90
+
91
+ ## References
92
+
93
+ | File | Load when |
94
+ | ---------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
95
+ | `references/raii-and-modern-cpp-checklist.md` | RAII patterns, smart pointer selection, value semantics, move correctness, or template constraint review is needed. |
96
+ | `references/move-semantics-and-value-types.md` | Move constructor/assignment design, perfect forwarding, copy elision, or value category questions arise. |
97
+ | `references/template-and-concepts-patterns.md` | Concept constraints, SFINAE replacement, variadic templates, or compile-time computation patterns are needed. |
98
+ | `references/concurrency-primitives.md` | Thread management, mutex strategies, atomic operations, lock-free patterns, or coroutine design is needed. |
99
+ | `references/performance-and-profiling.md` | Cache optimization, allocation reduction, benchmark setup, or profiler-driven tuning is needed. |
100
+
101
+ ## Scripts
102
+
103
+ No helper scripts are required for this skill right now. Keep execution in `SKILL.md` and `references/` unless repeated automation becomes necessary.
104
+
105
+ ## Examples
106
+
107
+ - "Help me with cpp pro best practices in this project"
108
+ - "Review my cpp pro implementation for issues"