faf-mcp 2.3.0 → 3.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 (178) hide show
  1. package/CHANGELOG.md +42 -3
  2. package/CLAUDE.md +7 -7
  3. package/README.md +73 -74
  4. package/dist/src/faf-core/commands/bi-sync.d.ts +1 -3
  5. package/dist/src/faf-core/commands/bi-sync.js +21 -64
  6. package/dist/src/faf-core/commands/bi-sync.js.map +1 -1
  7. package/dist/src/faf-core/commands/sync.js.map +1 -1
  8. package/dist/src/faf-core/engines/dependency-tsa.js.map +1 -1
  9. package/dist/src/faf-core/fix-once/colors.js +1 -1
  10. package/dist/src/faf-core/fix-once/colors.js.map +1 -1
  11. package/dist/src/faf-core/parsers/agents-parser.d.ts +15 -0
  12. package/dist/src/faf-core/parsers/agents-parser.js +29 -123
  13. package/dist/src/faf-core/parsers/agents-parser.js.map +1 -1
  14. package/dist/src/faf-core/parsers/conductor-parser.js +1 -1
  15. package/dist/src/faf-core/parsers/conductor-parser.js.map +1 -1
  16. package/dist/src/faf-core/parsers/cursorrules-parser.d.ts +15 -0
  17. package/dist/src/faf-core/parsers/cursorrules-parser.js +54 -111
  18. package/dist/src/faf-core/parsers/cursorrules-parser.js.map +1 -1
  19. package/dist/src/faf-core/parsers/faf-git-generator.js +0 -1
  20. package/dist/src/faf-core/parsers/faf-git-generator.js.map +1 -1
  21. package/dist/src/faf-core/parsers/gemini-parser.d.ts +10 -0
  22. package/dist/src/faf-core/parsers/gemini-parser.js +19 -77
  23. package/dist/src/faf-core/parsers/gemini-parser.js.map +1 -1
  24. package/dist/src/handlers/engine-adapter.d.ts +13 -12
  25. package/dist/src/handlers/engine-adapter.js +124 -688
  26. package/dist/src/handlers/engine-adapter.js.map +1 -1
  27. package/dist/src/handlers/resources.d.ts +19 -1
  28. package/dist/src/handlers/resources.js +108 -23
  29. package/dist/src/handlers/resources.js.map +1 -1
  30. package/dist/src/handlers/skills.d.ts +70 -0
  31. package/dist/src/handlers/skills.js +174 -0
  32. package/dist/src/handlers/skills.js.map +1 -0
  33. package/dist/src/handlers/tools.d.ts +41 -5
  34. package/dist/src/handlers/tools.js +213 -258
  35. package/dist/src/handlers/tools.js.map +1 -1
  36. package/dist/src/server.d.ts +4 -0
  37. package/dist/src/server.js +51 -6
  38. package/dist/src/server.js.map +1 -1
  39. package/dist/src/utils/faf-cli-bridge.d.ts +2 -0
  40. package/dist/src/utils/faf-cli-bridge.js +16 -0
  41. package/dist/src/utils/faf-cli-bridge.js.map +1 -1
  42. package/package.json +17 -14
  43. package/project.faf +23 -5
  44. package/scripts/check-engines.mjs +53 -0
  45. package/scripts/run-tests.sh +54 -0
  46. package/scripts/sync-version.js +33 -19
  47. package/skills/faf-ide/SKILL.md +40 -0
  48. package/dist/src/config/visibility.d.ts +0 -41
  49. package/dist/src/config/visibility.js +0 -158
  50. package/dist/src/config/visibility.js.map +0 -1
  51. package/dist/src/faf-core/commands/audit.d.ts +0 -21
  52. package/dist/src/faf-core/commands/audit.js +0 -83
  53. package/dist/src/faf-core/commands/audit.js.map +0 -1
  54. package/dist/src/faf-core/commands/auto.d.ts +0 -25
  55. package/dist/src/faf-core/commands/auto.js +0 -74
  56. package/dist/src/faf-core/commands/auto.js.map +0 -1
  57. package/dist/src/faf-core/commands/doctor.d.ts +0 -17
  58. package/dist/src/faf-core/commands/doctor.js +0 -198
  59. package/dist/src/faf-core/commands/doctor.js.map +0 -1
  60. package/dist/src/faf-core/commands/enhance.d.ts +0 -46
  61. package/dist/src/faf-core/commands/enhance.js +0 -360
  62. package/dist/src/faf-core/commands/enhance.js.map +0 -1
  63. package/dist/src/faf-core/commands/formats.d.ts +0 -22
  64. package/dist/src/faf-core/commands/formats.js +0 -117
  65. package/dist/src/faf-core/commands/formats.js.map +0 -1
  66. package/dist/src/faf-core/commands/human.d.ts +0 -27
  67. package/dist/src/faf-core/commands/human.js +0 -183
  68. package/dist/src/faf-core/commands/human.js.map +0 -1
  69. package/dist/src/faf-core/commands/init.d.ts +0 -26
  70. package/dist/src/faf-core/commands/init.js +0 -114
  71. package/dist/src/faf-core/commands/init.js.map +0 -1
  72. package/dist/src/faf-core/commands/innit.d.ts +0 -7
  73. package/dist/src/faf-core/commands/innit.js +0 -13
  74. package/dist/src/faf-core/commands/innit.js.map +0 -1
  75. package/dist/src/faf-core/commands/migrate.d.ts +0 -15
  76. package/dist/src/faf-core/commands/migrate.js +0 -86
  77. package/dist/src/faf-core/commands/migrate.js.map +0 -1
  78. package/dist/src/faf-core/commands/quick.d.ts +0 -16
  79. package/dist/src/faf-core/commands/quick.js +0 -184
  80. package/dist/src/faf-core/commands/quick.js.map +0 -1
  81. package/dist/src/faf-core/commands/readme.d.ts +0 -47
  82. package/dist/src/faf-core/commands/readme.js +0 -361
  83. package/dist/src/faf-core/commands/readme.js.map +0 -1
  84. package/dist/src/faf-core/commands/score.d.ts +0 -47
  85. package/dist/src/faf-core/commands/score.js +0 -49
  86. package/dist/src/faf-core/commands/score.js.map +0 -1
  87. package/dist/src/faf-core/commands/update.d.ts +0 -12
  88. package/dist/src/faf-core/commands/update.js +0 -46
  89. package/dist/src/faf-core/commands/update.js.map +0 -1
  90. package/dist/src/faf-core/commands/validate.d.ts +0 -21
  91. package/dist/src/faf-core/commands/validate.js +0 -81
  92. package/dist/src/faf-core/commands/validate.js.map +0 -1
  93. package/dist/src/faf-core/compiler/faf-compiler.d.ts +0 -138
  94. package/dist/src/faf-core/compiler/faf-compiler.js +0 -1362
  95. package/dist/src/faf-core/compiler/faf-compiler.js.map +0 -1
  96. package/dist/src/faf-core/engines/fab-formats-processor.d.ts +0 -166
  97. package/dist/src/faf-core/engines/fab-formats-processor.js +0 -1274
  98. package/dist/src/faf-core/engines/fab-formats-processor.js.map +0 -1
  99. package/dist/src/faf-core/engines/faf-dna.d.ts +0 -159
  100. package/dist/src/faf-core/engines/faf-dna.js +0 -555
  101. package/dist/src/faf-core/engines/faf-dna.js.map +0 -1
  102. package/dist/src/faf-core/engines/relentless-context-extractor.d.ts +0 -100
  103. package/dist/src/faf-core/engines/relentless-context-extractor.js +0 -625
  104. package/dist/src/faf-core/engines/relentless-context-extractor.js.map +0 -1
  105. package/dist/src/faf-core/fix-once/types.d.ts +0 -257
  106. package/dist/src/faf-core/fix-once/types.js +0 -26
  107. package/dist/src/faf-core/fix-once/types.js.map +0 -1
  108. package/dist/src/faf-core/generators/faf-generator-championship.d.ts +0 -16
  109. package/dist/src/faf-core/generators/faf-generator-championship.js +0 -463
  110. package/dist/src/faf-core/generators/faf-generator-championship.js.map +0 -1
  111. package/dist/src/faf-core/inject.d.ts +0 -19
  112. package/dist/src/faf-core/inject.js +0 -57
  113. package/dist/src/faf-core/inject.js.map +0 -1
  114. package/dist/src/faf-core/parsers/index.d.ts +0 -12
  115. package/dist/src/faf-core/parsers/index.js +0 -29
  116. package/dist/src/faf-core/parsers/index.js.map +0 -1
  117. package/dist/src/faf-core/utils/balance-visualizer.d.ts +0 -37
  118. package/dist/src/faf-core/utils/balance-visualizer.js +0 -197
  119. package/dist/src/faf-core/utils/balance-visualizer.js.map +0 -1
  120. package/dist/src/faf-core/utils/championship-style.d.ts +0 -109
  121. package/dist/src/faf-core/utils/championship-style.js +0 -219
  122. package/dist/src/faf-core/utils/championship-style.js.map +0 -1
  123. package/dist/src/faf-core/utils/chrome-extension-detector.d.ts +0 -73
  124. package/dist/src/faf-core/utils/chrome-extension-detector.js +0 -268
  125. package/dist/src/faf-core/utils/chrome-extension-detector.js.map +0 -1
  126. package/dist/src/faf-core/utils/platform-detector.d.ts +0 -30
  127. package/dist/src/faf-core/utils/platform-detector.js +0 -218
  128. package/dist/src/faf-core/utils/platform-detector.js.map +0 -1
  129. package/dist/src/faf-core/utils/technical-credit.d.ts +0 -35
  130. package/dist/src/faf-core/utils/technical-credit.js +0 -286
  131. package/dist/src/faf-core/utils/technical-credit.js.map +0 -1
  132. package/dist/src/faf-core/utils/yaml-generator.d.ts +0 -41
  133. package/dist/src/faf-core/utils/yaml-generator.js +0 -360
  134. package/dist/src/faf-core/utils/yaml-generator.js.map +0 -1
  135. package/dist/src/handlers/behavioral-instruction.d.ts +0 -16
  136. package/dist/src/handlers/behavioral-instruction.js +0 -43
  137. package/dist/src/handlers/behavioral-instruction.js.map +0 -1
  138. package/dist/src/handlers/championship-tools.d.ts +0 -116
  139. package/dist/src/handlers/championship-tools.js +0 -2320
  140. package/dist/src/handlers/championship-tools.js.map +0 -1
  141. package/dist/src/handlers/cloud-handler.d.ts +0 -59
  142. package/dist/src/handlers/cloud-handler.js +0 -348
  143. package/dist/src/handlers/cloud-handler.js.map +0 -1
  144. package/dist/src/handlers/tool-registry.d.ts +0 -23
  145. package/dist/src/handlers/tool-registry.js +0 -68
  146. package/dist/src/handlers/tool-registry.js.map +0 -1
  147. package/dist/src/handlers/tool-types.d.ts +0 -167
  148. package/dist/src/handlers/tool-types.js +0 -7
  149. package/dist/src/handlers/tool-types.js.map +0 -1
  150. package/dist/src/test-all-functions.d.ts +0 -15
  151. package/dist/src/test-all-functions.js +0 -163
  152. package/dist/src/test-all-functions.js.map +0 -1
  153. package/dist/src/types/mcp-tools.d.ts +0 -53
  154. package/dist/src/types/mcp-tools.js +0 -77
  155. package/dist/src/types/mcp-tools.js.map +0 -1
  156. package/dist/src/types/tool-visibility.d.ts +0 -36
  157. package/dist/src/types/tool-visibility.js +0 -551
  158. package/dist/src/types/tool-visibility.js.map +0 -1
  159. package/dist/src/utils/auto-path-detection.d.ts +0 -26
  160. package/dist/src/utils/auto-path-detection.js +0 -198
  161. package/dist/src/utils/auto-path-detection.js.map +0 -1
  162. package/dist/src/utils/championship-format.d.ts +0 -30
  163. package/dist/src/utils/championship-format.js +0 -81
  164. package/dist/src/utils/championship-format.js.map +0 -1
  165. package/dist/src/utils/cli-detector.d.ts +0 -17
  166. package/dist/src/utils/cli-detector.js +0 -247
  167. package/dist/src/utils/cli-detector.js.map +0 -1
  168. package/dist/src/utils/display-protocol.d.ts +0 -57
  169. package/dist/src/utils/display-protocol.js +0 -131
  170. package/dist/src/utils/display-protocol.js.map +0 -1
  171. package/dist/src/utils/username-detector.d.ts +0 -27
  172. package/dist/src/utils/username-detector.js +0 -90
  173. package/dist/src/utils/username-detector.js.map +0 -1
  174. package/dist/src/utils/visual-style.d.ts +0 -62
  175. package/dist/src/utils/visual-style.js +0 -166
  176. package/dist/src/utils/visual-style.js.map +0 -1
  177. package/scripts/postinstall.js +0 -50
  178. package/skill/SKILL.md +0 -385
@@ -1,257 +0,0 @@
1
- /**
2
- * 🏗️ FIX-ONCE Type Registry
3
- * Single source of truth for all types in FAF CLI
4
- *
5
- * APPROVAL REQUIRED TO MODIFY THIS FILE
6
- * This registry prevents type conflicts and cascade errors
7
- * Fix once = Works indefinitely
8
- */
9
- /**
10
- * FAB-FORMATS Analysis Result
11
- * The new championship engine output
12
- */
13
- export interface FabFormatsAnalysis {
14
- discoveredFormats: FormatInfo[];
15
- technicalStack: TechnologyStack;
16
- humanContext: HumanContext;
17
- intelligenceScore: number;
18
- performanceMs: number;
19
- filesProcessed: number;
20
- quality: QualityAssessment;
21
- }
22
- /**
23
- * Legacy compatibility - maps old to new
24
- * Prevents breaking existing code
25
- */
26
- export type TurboCatAnalysis = FabFormatsAnalysis;
27
- export interface FormatInfo {
28
- fileName: string;
29
- formatType: string;
30
- fileType: 'code' | 'config' | 'doc' | 'data' | 'test';
31
- intelligenceBonus: number;
32
- quality?: 'EXCEPTIONAL' | 'PROFESSIONAL' | 'GOOD' | 'BASIC' | 'MINIMAL';
33
- }
34
- export interface TechnologyStack {
35
- frontend?: string;
36
- backend?: string;
37
- database?: string;
38
- runtime?: string;
39
- buildTool?: string;
40
- packageManager?: string;
41
- testing?: string;
42
- cicd?: string;
43
- cloud?: string;
44
- }
45
- export interface HumanContext {
46
- who?: {
47
- value: string;
48
- confidence: 'CERTAIN' | 'PROBABLE' | 'INFERRED';
49
- };
50
- what?: {
51
- value: string;
52
- confidence: 'CERTAIN' | 'PROBABLE' | 'INFERRED';
53
- };
54
- why?: {
55
- value: string;
56
- confidence: 'CERTAIN' | 'PROBABLE' | 'INFERRED';
57
- };
58
- where?: {
59
- value: string;
60
- confidence: 'CERTAIN' | 'PROBABLE' | 'INFERRED';
61
- };
62
- when?: {
63
- value: string;
64
- confidence: 'CERTAIN' | 'PROBABLE' | 'INFERRED';
65
- };
66
- how?: {
67
- value: string;
68
- confidence: 'CERTAIN' | 'PROBABLE' | 'INFERRED';
69
- };
70
- additionalContext?: Record<string, any>;
71
- contextScore: number;
72
- totalPRDScore: number;
73
- successRate: string;
74
- }
75
- export interface QualityAssessment {
76
- grade: 'EXCEPTIONAL' | 'PROFESSIONAL' | 'GOOD' | 'BASIC' | 'MINIMAL';
77
- score: number;
78
- improvements: string[];
79
- }
80
- export interface FafScore {
81
- totalScore: number;
82
- breakdown: ScoreBreakdown;
83
- balance: BalanceData;
84
- recommendations: string[];
85
- timestamp: Date;
86
- }
87
- export interface ScoreBreakdown {
88
- technical: number;
89
- human: number;
90
- freshness: number;
91
- completeness: number;
92
- }
93
- export interface BalanceData {
94
- aiPercentage: number;
95
- humanPercentage: number;
96
- isBalanced: boolean;
97
- }
98
- export interface TrustScore {
99
- overall: number;
100
- contextCompleteness: number;
101
- aiCompatibility: number;
102
- freshnessScore: number;
103
- verificationStatus: 'verified' | 'unverified' | 'failed';
104
- }
105
- export interface TrustDashboardOptions {
106
- detailed?: boolean;
107
- confidence?: boolean;
108
- garage?: boolean;
109
- panic?: boolean;
110
- quality?: boolean;
111
- }
112
- export interface CoachingMessage {
113
- text: string;
114
- type: 'ai' | 'human' | 'system' | 'trust';
115
- priority: number;
116
- }
117
- export interface FileTypePriority {
118
- pattern: string;
119
- name: string;
120
- value: number;
121
- reason: string;
122
- category: 'foundation' | 'framework' | 'quality' | 'deployment';
123
- }
124
- export interface ProcessedFile {
125
- fileName: string;
126
- fileType: string;
127
- intelligenceBonus: number;
128
- }
129
- export interface CommandOptions {
130
- force?: boolean;
131
- detailed?: boolean;
132
- output?: string;
133
- template?: string;
134
- minimum?: string;
135
- format?: 'json' | 'yaml' | 'text';
136
- color?: boolean;
137
- }
138
- export interface InitOptions extends CommandOptions {
139
- projectType?: string;
140
- skipIgnore?: boolean;
141
- }
142
- export interface ScoreOptions extends CommandOptions {
143
- details?: boolean;
144
- minimum?: string;
145
- }
146
- export interface TrustOptions extends TrustDashboardOptions {
147
- }
148
- export interface FafFile {
149
- ai_scoring_system: string;
150
- ai_score: string;
151
- ai_confidence: string;
152
- ai_value: string;
153
- ai_tldr: {
154
- project: string;
155
- stack: string;
156
- quality_bar: string;
157
- current_focus: string;
158
- your_role: string;
159
- };
160
- instant_context: {
161
- what_building: string;
162
- tech_stack: string;
163
- main_language: string;
164
- deployment: string;
165
- key_files: string[];
166
- };
167
- context_quality: {
168
- slots_filled: string;
169
- ai_confidence: string;
170
- handoff_ready: boolean;
171
- missing_context: string[];
172
- };
173
- project: ProjectInfo;
174
- ai_instructions: AIInstructions;
175
- stack: TechnologyStack;
176
- preferences: Preferences;
177
- state: ProjectState;
178
- tags: Tags;
179
- human_context?: HumanContext;
180
- ai_scoring_details: ScoringDetails;
181
- }
182
- export interface ProjectInfo {
183
- name: string;
184
- goal: string;
185
- main_language: string;
186
- generated: string;
187
- mission: string;
188
- revolution: string;
189
- brand: string;
190
- }
191
- export interface AIInstructions {
192
- priority_order: string[];
193
- working_style: {
194
- code_first: boolean;
195
- explanations: string;
196
- quality_bar: string;
197
- testing: string;
198
- };
199
- warnings: string[];
200
- }
201
- export interface Preferences {
202
- quality_bar: string;
203
- commit_style: string;
204
- response_style: string;
205
- explanation_level: string;
206
- communication: string;
207
- testing: string;
208
- documentation: string;
209
- }
210
- export interface ProjectState {
211
- phase: string;
212
- version: string;
213
- focus: string;
214
- status: string;
215
- next_milestone: string;
216
- blockers: string[];
217
- }
218
- export interface Tags {
219
- auto_generated: string[];
220
- smart_defaults: string[];
221
- user_defined: string[];
222
- }
223
- export interface ScoringDetails {
224
- system_date: string;
225
- slot_based_percentage: number;
226
- ai_score: number;
227
- total_slots: number;
228
- filled_slots: number;
229
- scoring_method: string;
230
- trust_embedded: string;
231
- }
232
- export type DeepPartial<T> = {
233
- [P in keyof T]?: T[P] extends object ? DeepPartial<T[P]> : T[P];
234
- };
235
- export type RequireAtLeastOne<T> = {
236
- [K in keyof T]-?: Required<Pick<T, K>> & Partial<Pick<T, Exclude<keyof T, K>>>;
237
- }[keyof T];
238
- export type Analysis = FabFormatsAnalysis;
239
- export type Score = FafScore;
240
- export type Trust = TrustScore;
241
- export type Context = HumanContext;
242
- export type Stack = TechnologyStack;
243
- /**
244
- * CASCADE EFFECTS OF THIS MODULE:
245
- *
246
- * 1. Fixes ALL TypeScript type errors immediately
247
- * 2. Provides single source of truth for types
248
- * 3. Enables safe refactoring (change once, update everywhere)
249
- * 4. Prevents type conflicts between modules
250
- * 5. Makes IDE autocomplete work perfectly
251
- * 6. Simplifies testing (clear type contracts)
252
- * 7. Documents expected data structures
253
- * 8. Enables type-safe communication between modules
254
- *
255
- * MAINTENANCE: All types should be defined HERE
256
- * Individual modules should ONLY import from this registry
257
- */
@@ -1,26 +0,0 @@
1
- "use strict";
2
- /**
3
- * 🏗️ FIX-ONCE Type Registry
4
- * Single source of truth for all types in FAF CLI
5
- *
6
- * APPROVAL REQUIRED TO MODIFY THIS FILE
7
- * This registry prevents type conflicts and cascade errors
8
- * Fix once = Works indefinitely
9
- */
10
- Object.defineProperty(exports, "__esModule", { value: true });
11
- /**
12
- * CASCADE EFFECTS OF THIS MODULE:
13
- *
14
- * 1. Fixes ALL TypeScript type errors immediately
15
- * 2. Provides single source of truth for types
16
- * 3. Enables safe refactoring (change once, update everywhere)
17
- * 4. Prevents type conflicts between modules
18
- * 5. Makes IDE autocomplete work perfectly
19
- * 6. Simplifies testing (clear type contracts)
20
- * 7. Documents expected data structures
21
- * 8. Enables type-safe communication between modules
22
- *
23
- * MAINTENANCE: All types should be defined HERE
24
- * Individual modules should ONLY import from this registry
25
- */
26
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/faf-core/fix-once/types.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;AAwRH;;;;;;;;;;;;;;GAcG"}
@@ -1,16 +0,0 @@
1
- /**
2
- * 🏎️ Championship .faf Generator
3
- * Uses FAB-FORMATS Power Unit for 86%+ context extraction
4
- */
5
- export interface GenerateOptions {
6
- projectType?: string;
7
- outputPath: string;
8
- projectRoot: string;
9
- projectName?: string;
10
- projectGoal?: string;
11
- mainLanguage?: string;
12
- framework?: string;
13
- hosting?: string;
14
- [key: string]: any;
15
- }
16
- export declare function generateFafFromProject(options: GenerateOptions): Promise<string>;