@thierrynakoa/fire-flow 10.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (215) hide show
  1. package/.claude-plugin/plugin.json +64 -0
  2. package/ARCHITECTURE-DIAGRAM.md +440 -0
  3. package/COMMAND-REFERENCE.md +172 -0
  4. package/DOMINION-FLOW-OVERVIEW.md +421 -0
  5. package/LICENSE +21 -0
  6. package/QUICK-START.md +351 -0
  7. package/README.md +398 -0
  8. package/TROUBLESHOOTING.md +264 -0
  9. package/agents/fire-codebase-mapper.md +484 -0
  10. package/agents/fire-debugger.md +535 -0
  11. package/agents/fire-executor.md +949 -0
  12. package/agents/fire-fact-checker.md +276 -0
  13. package/agents/fire-learncoding-explainer.md +237 -0
  14. package/agents/fire-learncoding-walker.md +147 -0
  15. package/agents/fire-planner.md +675 -0
  16. package/agents/fire-project-researcher.md +155 -0
  17. package/agents/fire-research-synthesizer.md +166 -0
  18. package/agents/fire-researcher.md +723 -0
  19. package/agents/fire-reviewer.md +499 -0
  20. package/agents/fire-roadmapper.md +203 -0
  21. package/agents/fire-verifier.md +880 -0
  22. package/bin/cli.js +208 -0
  23. package/commands/fire-0-orient.md +476 -0
  24. package/commands/fire-1-new.md +281 -0
  25. package/commands/fire-1a-discuss.md +455 -0
  26. package/commands/fire-2-plan.md +527 -0
  27. package/commands/fire-3-execute.md +1303 -0
  28. package/commands/fire-4-verify.md +845 -0
  29. package/commands/fire-5-handoff.md +515 -0
  30. package/commands/fire-6-resume.md +501 -0
  31. package/commands/fire-7-review.md +409 -0
  32. package/commands/fire-add-new-skill.md +598 -0
  33. package/commands/fire-analytics.md +499 -0
  34. package/commands/fire-assumptions.md +78 -0
  35. package/commands/fire-autonomous.md +528 -0
  36. package/commands/fire-brainstorm.md +413 -0
  37. package/commands/fire-complete-milestone.md +270 -0
  38. package/commands/fire-dashboard.md +375 -0
  39. package/commands/fire-debug.md +663 -0
  40. package/commands/fire-discover.md +616 -0
  41. package/commands/fire-double-check.md +460 -0
  42. package/commands/fire-execute-plan.md +182 -0
  43. package/commands/fire-learncoding.md +242 -0
  44. package/commands/fire-loop-resume.md +272 -0
  45. package/commands/fire-loop-stop.md +198 -0
  46. package/commands/fire-loop.md +1168 -0
  47. package/commands/fire-map-codebase.md +313 -0
  48. package/commands/fire-new-milestone.md +356 -0
  49. package/commands/fire-reflect.md +235 -0
  50. package/commands/fire-research.md +246 -0
  51. package/commands/fire-search.md +330 -0
  52. package/commands/fire-security-audit-repo.md +293 -0
  53. package/commands/fire-security-scan.md +484 -0
  54. package/commands/fire-session-summary.md +252 -0
  55. package/commands/fire-skills-diff.md +506 -0
  56. package/commands/fire-skills-history.md +388 -0
  57. package/commands/fire-skills-rollback.md +408 -0
  58. package/commands/fire-skills-sync.md +470 -0
  59. package/commands/fire-test.md +520 -0
  60. package/commands/fire-todos.md +335 -0
  61. package/commands/fire-transition.md +186 -0
  62. package/commands/fire-update.md +312 -0
  63. package/commands/fire-verify-uat.md +146 -0
  64. package/commands/fire-vuln-scan.md +493 -0
  65. package/hooks/hooks.json +16 -0
  66. package/hooks/run-hook.cmd +69 -0
  67. package/hooks/run-hook.sh +8 -0
  68. package/hooks/run-session-end.cmd +49 -0
  69. package/hooks/run-session-end.sh +7 -0
  70. package/hooks/session-end.sh +90 -0
  71. package/hooks/session-start.sh +111 -0
  72. package/package.json +52 -0
  73. package/plugin.json +7 -0
  74. package/references/auto-skill-extraction.md +136 -0
  75. package/references/behavioral-directives.md +365 -0
  76. package/references/blocker-tracking.md +155 -0
  77. package/references/checkpoints.md +165 -0
  78. package/references/circuit-breaker.md +410 -0
  79. package/references/context-engineering.md +587 -0
  80. package/references/decision-time-guidance.md +289 -0
  81. package/references/error-classification.md +326 -0
  82. package/references/execution-mode-intelligence.md +242 -0
  83. package/references/git-integration.md +217 -0
  84. package/references/honesty-protocols.md +304 -0
  85. package/references/integration-architecture.md +470 -0
  86. package/references/issue-to-pr-pipeline.md +150 -0
  87. package/references/metrics-and-trends.md +234 -0
  88. package/references/playwright-e2e-testing.md +326 -0
  89. package/references/questioning.md +125 -0
  90. package/references/research-improvements.md +110 -0
  91. package/references/skills-usage-guide.md +429 -0
  92. package/references/tdd.md +131 -0
  93. package/references/testing-enforcement.md +192 -0
  94. package/references/ui-brand.md +383 -0
  95. package/references/validation-checklist.md +456 -0
  96. package/references/verification-patterns.md +187 -0
  97. package/references/warrior-principles.md +173 -0
  98. package/skills-library/SKILLS-INDEX.md +588 -0
  99. package/skills-library/_general/frontend/html-visual-reports.md +292 -0
  100. package/skills-library/_general/methodology/debug-swarm-researcher-escape-hatch.md +240 -0
  101. package/skills-library/_general/methodology/learncoding-agentic-pattern.md +114 -0
  102. package/skills-library/_general/methodology/shell-autonomous-loop-fixplan.md +238 -0
  103. package/skills-library/basics/api-rest-basics.md +162 -0
  104. package/skills-library/basics/env-variables.md +96 -0
  105. package/skills-library/basics/error-handling-basics.md +125 -0
  106. package/skills-library/basics/git-commit-conventions.md +106 -0
  107. package/skills-library/basics/readme-template.md +108 -0
  108. package/skills-library/common-tasks/async-await-patterns.md +157 -0
  109. package/skills-library/common-tasks/auth-jwt-basics.md +164 -0
  110. package/skills-library/common-tasks/database-schema-design.md +166 -0
  111. package/skills-library/common-tasks/file-upload-basics.md +166 -0
  112. package/skills-library/common-tasks/form-validation.md +159 -0
  113. package/skills-library/debugging/FAILURE_TAXONOMY_CLASSIFICATION.md +117 -0
  114. package/skills-library/debugging/THREE_AGENT_HYPOTHESIS_DEBUGGING.md +86 -0
  115. package/skills-library/methodology/BREATH_BASED_PARALLEL_EXECUTION.md +678 -0
  116. package/skills-library/methodology/CONFIDENCE_GATED_EXECUTION.md +243 -0
  117. package/skills-library/methodology/EVIDENCE_BASED_VALIDATION.md +308 -0
  118. package/skills-library/methodology/MULTI_PERSPECTIVE_CODE_REVIEW.md +330 -0
  119. package/skills-library/methodology/PATH_VERIFICATION_GATE.md +211 -0
  120. package/skills-library/methodology/REFLEXION_MEMORY_PATTERN.md +183 -0
  121. package/skills-library/methodology/RESEARCH_BACKED_WORKFLOW_UPGRADE.md +263 -0
  122. package/skills-library/methodology/SABBATH_REST_PATTERN.md +267 -0
  123. package/skills-library/methodology/STONE_AND_SCAFFOLD.md +220 -0
  124. package/skills-library/performance/cache-augmented-generation.md +172 -0
  125. package/skills-library/quality-safety/debugging-steps.md +147 -0
  126. package/skills-library/quality-safety/deployment-checklist.md +155 -0
  127. package/skills-library/quality-safety/security-checklist.md +204 -0
  128. package/skills-library/quality-safety/testing-basics.md +180 -0
  129. package/skills-library/security/agent-security-scanner.md +445 -0
  130. package/skills-library/specialists/api-architecture/api-designer.md +49 -0
  131. package/skills-library/specialists/api-architecture/graphql-architect.md +49 -0
  132. package/skills-library/specialists/api-architecture/mcp-developer.md +51 -0
  133. package/skills-library/specialists/api-architecture/microservices-architect.md +50 -0
  134. package/skills-library/specialists/api-architecture/websocket-engineer.md +48 -0
  135. package/skills-library/specialists/backend/django-expert.md +52 -0
  136. package/skills-library/specialists/backend/fastapi-expert.md +52 -0
  137. package/skills-library/specialists/backend/laravel-specialist.md +52 -0
  138. package/skills-library/specialists/backend/nestjs-expert.md +51 -0
  139. package/skills-library/specialists/backend/rails-expert.md +53 -0
  140. package/skills-library/specialists/backend/spring-boot-engineer.md +56 -0
  141. package/skills-library/specialists/data-ml/fine-tuning-expert.md +48 -0
  142. package/skills-library/specialists/data-ml/ml-pipeline.md +47 -0
  143. package/skills-library/specialists/data-ml/pandas-pro.md +47 -0
  144. package/skills-library/specialists/data-ml/rag-architect.md +51 -0
  145. package/skills-library/specialists/data-ml/spark-engineer.md +47 -0
  146. package/skills-library/specialists/frontend/angular-architect.md +52 -0
  147. package/skills-library/specialists/frontend/flutter-expert.md +51 -0
  148. package/skills-library/specialists/frontend/nextjs-developer.md +54 -0
  149. package/skills-library/specialists/frontend/react-native-expert.md +50 -0
  150. package/skills-library/specialists/frontend/vue-expert.md +51 -0
  151. package/skills-library/specialists/infrastructure/chaos-engineer.md +74 -0
  152. package/skills-library/specialists/infrastructure/cloud-architect.md +70 -0
  153. package/skills-library/specialists/infrastructure/database-optimizer.md +64 -0
  154. package/skills-library/specialists/infrastructure/devops-engineer.md +70 -0
  155. package/skills-library/specialists/infrastructure/kubernetes-specialist.md +52 -0
  156. package/skills-library/specialists/infrastructure/monitoring-expert.md +70 -0
  157. package/skills-library/specialists/infrastructure/sre-engineer.md +70 -0
  158. package/skills-library/specialists/infrastructure/terraform-engineer.md +51 -0
  159. package/skills-library/specialists/languages/cpp-pro.md +74 -0
  160. package/skills-library/specialists/languages/csharp-developer.md +69 -0
  161. package/skills-library/specialists/languages/dotnet-core-expert.md +54 -0
  162. package/skills-library/specialists/languages/golang-pro.md +51 -0
  163. package/skills-library/specialists/languages/java-architect.md +49 -0
  164. package/skills-library/specialists/languages/javascript-pro.md +68 -0
  165. package/skills-library/specialists/languages/kotlin-specialist.md +68 -0
  166. package/skills-library/specialists/languages/php-pro.md +49 -0
  167. package/skills-library/specialists/languages/python-pro.md +52 -0
  168. package/skills-library/specialists/languages/react-expert.md +51 -0
  169. package/skills-library/specialists/languages/rust-engineer.md +50 -0
  170. package/skills-library/specialists/languages/sql-pro.md +56 -0
  171. package/skills-library/specialists/languages/swift-expert.md +69 -0
  172. package/skills-library/specialists/languages/typescript-pro.md +51 -0
  173. package/skills-library/specialists/platform/atlassian-mcp.md +52 -0
  174. package/skills-library/specialists/platform/embedded-systems.md +53 -0
  175. package/skills-library/specialists/platform/game-developer.md +53 -0
  176. package/skills-library/specialists/platform/salesforce-developer.md +53 -0
  177. package/skills-library/specialists/platform/shopify-expert.md +49 -0
  178. package/skills-library/specialists/platform/wordpress-pro.md +49 -0
  179. package/skills-library/specialists/quality/code-documenter.md +51 -0
  180. package/skills-library/specialists/quality/code-reviewer.md +67 -0
  181. package/skills-library/specialists/quality/debugging-wizard.md +51 -0
  182. package/skills-library/specialists/quality/fullstack-guardian.md +51 -0
  183. package/skills-library/specialists/quality/legacy-modernizer.md +50 -0
  184. package/skills-library/specialists/quality/playwright-expert.md +65 -0
  185. package/skills-library/specialists/quality/spec-miner.md +56 -0
  186. package/skills-library/specialists/quality/test-master.md +65 -0
  187. package/skills-library/specialists/security/secure-code-guardian.md +55 -0
  188. package/skills-library/specialists/security/security-reviewer.md +53 -0
  189. package/skills-library/specialists/workflow/architecture-designer.md +53 -0
  190. package/skills-library/specialists/workflow/cli-developer.md +70 -0
  191. package/skills-library/specialists/workflow/feature-forge.md +65 -0
  192. package/skills-library/specialists/workflow/prompt-engineer.md +54 -0
  193. package/skills-library/specialists/workflow/the-fool.md +62 -0
  194. package/templates/ASSUMPTIONS.md +125 -0
  195. package/templates/BLOCKERS.md +73 -0
  196. package/templates/DECISION_LOG.md +116 -0
  197. package/templates/UAT.md +96 -0
  198. package/templates/blueprint.md +94 -0
  199. package/templates/brainstorm.md +185 -0
  200. package/templates/conscience.md +92 -0
  201. package/templates/fire-handoff.md +159 -0
  202. package/templates/metrics.md +67 -0
  203. package/templates/phase-prompt.md +142 -0
  204. package/templates/record.md +131 -0
  205. package/templates/review-report.md +117 -0
  206. package/templates/skills-index.md +157 -0
  207. package/templates/verification.md +149 -0
  208. package/templates/vision.md +79 -0
  209. package/validation-config.yml +793 -0
  210. package/version.json +7 -0
  211. package/workflows/execute-phase.md +732 -0
  212. package/workflows/handoff-session.md +678 -0
  213. package/workflows/new-project.md +578 -0
  214. package/workflows/plan-phase.md +592 -0
  215. package/workflows/verify-phase.md +874 -0
package/bin/cli.js ADDED
@@ -0,0 +1,208 @@
1
+ #!/usr/bin/env node
2
+
3
+ const fs = require('fs');
4
+ const path = require('path');
5
+ const { execSync } = require('child_process');
6
+
7
+ // ─────────────────────────────────────────────
8
+ // fire-flow installer for Claude Code
9
+ // ─────────────────────────────────────────────
10
+
11
+ const PLUGIN_NAME = 'fire-flow';
12
+ const VERSION = require('../package.json').version;
13
+
14
+ // Colors for terminal output
15
+ const cyan = (s) => `\x1b[36m${s}\x1b[0m`;
16
+ const green = (s) => `\x1b[32m${s}\x1b[0m`;
17
+ const red = (s) => `\x1b[31m${s}\x1b[0m`;
18
+ const yellow = (s) => `\x1b[33m${s}\x1b[0m`;
19
+ const bold = (s) => `\x1b[1m${s}\x1b[0m`;
20
+ const dim = (s) => `\x1b[2m${s}\x1b[0m`;
21
+
22
+ function banner() {
23
+ console.log('');
24
+ console.log(cyan(' ╔══════════════════════════════════════════╗'));
25
+ console.log(cyan(' ║') + bold(' 🔥 fire-flow installer ') + cyan('║'));
26
+ console.log(cyan(' ║') + dim(` v${VERSION} — Workflow Orchestration `) + cyan('║'));
27
+ console.log(cyan(' ╚══════════════════════════════════════════╝'));
28
+ console.log('');
29
+ }
30
+
31
+ function getPluginsDir() {
32
+ const home = process.env.HOME || process.env.USERPROFILE;
33
+ if (!home) {
34
+ console.error(red('Could not determine home directory.'));
35
+ process.exit(1);
36
+ }
37
+ return path.join(home, '.claude', 'plugins');
38
+ }
39
+
40
+ function copyRecursive(src, dest) {
41
+ if (!fs.existsSync(src)) return;
42
+
43
+ const stat = fs.statSync(src);
44
+ if (stat.isDirectory()) {
45
+ fs.mkdirSync(dest, { recursive: true });
46
+ for (const item of fs.readdirSync(src)) {
47
+ // Skip files that shouldn't be installed
48
+ if (item === '.git' || item === 'node_modules' || item === 'bin' || item === 'package.json' || item === 'package-lock.json' || item === '.npmignore') continue;
49
+ copyRecursive(path.join(src, item), path.join(dest, item));
50
+ }
51
+ } else {
52
+ fs.copyFileSync(src, dest);
53
+ }
54
+ }
55
+
56
+ function countFiles(dir, ext) {
57
+ let count = 0;
58
+ if (!fs.existsSync(dir)) return 0;
59
+ for (const item of fs.readdirSync(dir, { recursive: true })) {
60
+ if (item.endsWith(ext)) count++;
61
+ }
62
+ return count;
63
+ }
64
+
65
+ function install() {
66
+ banner();
67
+
68
+ const args = process.argv.slice(2);
69
+
70
+ // Handle --help
71
+ if (args.includes('--help') || args.includes('-h')) {
72
+ console.log(` ${bold('Usage:')} npx fire-flow [options]`);
73
+ console.log('');
74
+ console.log(` ${bold('Options:')}`);
75
+ console.log(` --help, -h Show this help message`);
76
+ console.log(` --version, -v Show version`);
77
+ console.log(` --uninstall Remove fire-flow plugin`);
78
+ console.log(` --update Update existing installation`);
79
+ console.log(` --path <dir> Install to custom directory`);
80
+ console.log('');
81
+ console.log(` ${bold('Default install path:')}`);
82
+ console.log(` ~/.claude/plugins/${PLUGIN_NAME}/`);
83
+ console.log('');
84
+ console.log(` ${dim('GitHub: https://github.com/ThierryN/fire-flow')}`);
85
+ process.exit(0);
86
+ }
87
+
88
+ // Handle --version
89
+ if (args.includes('--version') || args.includes('-v')) {
90
+ console.log(` fire-flow v${VERSION}`);
91
+ process.exit(0);
92
+ }
93
+
94
+ // Determine install path
95
+ let installDir;
96
+ const pathIdx = args.indexOf('--path');
97
+ if (pathIdx !== -1 && args[pathIdx + 1]) {
98
+ installDir = path.resolve(args[pathIdx + 1]);
99
+ } else {
100
+ installDir = path.join(getPluginsDir(), PLUGIN_NAME);
101
+ }
102
+
103
+ // Handle --uninstall
104
+ if (args.includes('--uninstall')) {
105
+ if (fs.existsSync(installDir)) {
106
+ console.log(` Removing ${yellow(installDir)}...`);
107
+ fs.rmSync(installDir, { recursive: true, force: true });
108
+ console.log(green(' fire-flow has been uninstalled.'));
109
+ } else {
110
+ console.log(yellow(' fire-flow is not installed at ' + installDir));
111
+ }
112
+ process.exit(0);
113
+ }
114
+
115
+ // Check for existing installation
116
+ const isUpdate = args.includes('--update');
117
+ if (fs.existsSync(installDir) && !isUpdate) {
118
+ console.log(yellow(` fire-flow is already installed at:`));
119
+ console.log(` ${installDir}`);
120
+ console.log('');
121
+ console.log(` Run ${cyan('npx fire-flow --update')} to update.`);
122
+ console.log(` Run ${cyan('npx fire-flow --uninstall')} to remove.`);
123
+ process.exit(0);
124
+ }
125
+
126
+ // Source directory (the npm package root, one level up from bin/)
127
+ const srcDir = path.join(__dirname, '..');
128
+
129
+ console.log(` Installing to: ${cyan(installDir)}`);
130
+ console.log('');
131
+
132
+ // Create plugins directory if needed
133
+ const pluginsDir = path.dirname(installDir);
134
+ fs.mkdirSync(pluginsDir, { recursive: true });
135
+
136
+ // Copy plugin files
137
+ const filesToCopy = [
138
+ 'agents',
139
+ 'commands',
140
+ 'hooks',
141
+ 'skills-library',
142
+ 'templates',
143
+ 'references',
144
+ 'workflows',
145
+ '.claude-plugin',
146
+ 'plugin.json',
147
+ 'validation-config.yml',
148
+ 'version.json',
149
+ 'README.md',
150
+ 'QUICK-START.md',
151
+ 'COMMAND-REFERENCE.md',
152
+ 'DOMINION-FLOW-OVERVIEW.md',
153
+ 'ARCHITECTURE-DIAGRAM.md',
154
+ 'TROUBLESHOOTING.md',
155
+ ];
156
+
157
+ let copiedDirs = 0;
158
+ let copiedFiles = 0;
159
+
160
+ for (const item of filesToCopy) {
161
+ const src = path.join(srcDir, item);
162
+ const dest = path.join(installDir, item);
163
+
164
+ if (!fs.existsSync(src)) {
165
+ continue;
166
+ }
167
+
168
+ const stat = fs.statSync(src);
169
+ if (stat.isDirectory()) {
170
+ copyRecursive(src, dest);
171
+ copiedDirs++;
172
+ console.log(` ${green('+')} ${item}/`);
173
+ } else {
174
+ fs.mkdirSync(path.dirname(dest), { recursive: true });
175
+ fs.copyFileSync(src, dest);
176
+ copiedFiles++;
177
+ console.log(` ${green('+')} ${item}`);
178
+ }
179
+ }
180
+
181
+ // Count what was installed
182
+ const cmdCount = countFiles(path.join(installDir, 'commands'), '.md');
183
+ const agentCount = countFiles(path.join(installDir, 'agents'), '.md');
184
+ const skillCount = countFiles(path.join(installDir, 'skills-library'), '.md');
185
+
186
+ console.log('');
187
+ console.log(green(' Installation complete!'));
188
+ console.log('');
189
+ console.log(` ${bold('Installed:')}`);
190
+ console.log(` ${cyan(cmdCount)} commands`);
191
+ console.log(` ${cyan(agentCount)} agents`);
192
+ console.log(` ${cyan(skillCount)} skills`);
193
+ console.log('');
194
+ console.log(` ${bold('Location:')}`);
195
+ console.log(` ${installDir}`);
196
+ console.log('');
197
+ console.log(` ${bold('Quick start:')}`);
198
+ console.log(` 1. Open Claude Code in any project`);
199
+ console.log(` 2. Type ${cyan('/fire-0-orient')} to orient on your project`);
200
+ console.log(` 3. Type ${cyan('/fire-1-new')} to start a new project workflow`);
201
+ console.log(` 4. Type ${cyan('/fire-debug')} when you hit a bug`);
202
+ console.log('');
203
+ console.log(` ${bold('Docs:')} ${dim('https://github.com/ThierryN/fire-flow')}`);
204
+ console.log(` ${bold('Help:')} ${dim('/fire-dashboard for full command overview')}`);
205
+ console.log('');
206
+ }
207
+
208
+ install();