@4da/mcp-server 4.5.0 → 4.6.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 (155) hide show
  1. package/README.md +61 -81
  2. package/dist/db.d.ts +12 -1
  3. package/dist/db.d.ts.map +1 -1
  4. package/dist/db.js +71 -8
  5. package/dist/db.js.map +1 -1
  6. package/dist/index.d.ts +9 -14
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +12 -17
  9. package/dist/index.js.map +1 -1
  10. package/dist/schema-registry.d.ts +4 -2
  11. package/dist/schema-registry.d.ts.map +1 -1
  12. package/dist/schema-registry.js +55 -235
  13. package/dist/schema-registry.js.map +1 -1
  14. package/dist/tool-dispatch.d.ts +1 -7
  15. package/dist/tool-dispatch.d.ts.map +1 -1
  16. package/dist/tool-dispatch.js +14 -48
  17. package/dist/tool-dispatch.js.map +1 -1
  18. package/dist/tools/index.d.ts +13 -42
  19. package/dist/tools/index.d.ts.map +1 -1
  20. package/dist/tools/index.js +18 -54
  21. package/dist/tools/index.js.map +1 -1
  22. package/dist/tools/what-should-i-know.d.ts +4 -12
  23. package/dist/tools/what-should-i-know.d.ts.map +1 -1
  24. package/dist/tools/what-should-i-know.js +11 -102
  25. package/dist/tools/what-should-i-know.js.map +1 -1
  26. package/package.json +2 -2
  27. package/dist/schemas/agent-feedback-stats.json +0 -14
  28. package/dist/schemas/agent-session-brief.json +0 -25
  29. package/dist/schemas/attention-report.json +0 -13
  30. package/dist/schemas/autophagy-status.json +0 -13
  31. package/dist/schemas/compound-advantage.json +0 -14
  32. package/dist/schemas/config-validator.json +0 -18
  33. package/dist/schemas/context-analysis.json +0 -25
  34. package/dist/schemas/daily-briefing.json +0 -34
  35. package/dist/schemas/decision-windows.json +0 -22
  36. package/dist/schemas/delegation-score.json +0 -18
  37. package/dist/schemas/explain-relevance.json +0 -19
  38. package/dist/schemas/export-context.json +0 -17
  39. package/dist/schemas/llm-status.json +0 -13
  40. package/dist/schemas/preemption-feed.json +0 -18
  41. package/dist/schemas/project-health.json +0 -13
  42. package/dist/schemas/record-agent-feedback.json +0 -28
  43. package/dist/schemas/reverse-mentions.json +0 -13
  44. package/dist/schemas/score-autopsy.json +0 -30
  45. package/dist/schemas/semantic-shifts.json +0 -17
  46. package/dist/schemas/signal-chains.json +0 -19
  47. package/dist/schemas/source-health.json +0 -17
  48. package/dist/schemas/tech-radar.json +0 -23
  49. package/dist/schemas/topic-connections.json +0 -34
  50. package/dist/schemas/trend-analysis.json +0 -29
  51. package/dist/schemas/trust-summary.json +0 -13
  52. package/dist/tools/agent-feedback-stats.d.ts +0 -30
  53. package/dist/tools/agent-feedback-stats.d.ts.map +0 -1
  54. package/dist/tools/agent-feedback-stats.js +0 -41
  55. package/dist/tools/agent-feedback-stats.js.map +0 -1
  56. package/dist/tools/agent-session-brief.d.ts +0 -44
  57. package/dist/tools/agent-session-brief.d.ts.map +0 -1
  58. package/dist/tools/agent-session-brief.js +0 -179
  59. package/dist/tools/agent-session-brief.js.map +0 -1
  60. package/dist/tools/attention-report.d.ts +0 -40
  61. package/dist/tools/attention-report.d.ts.map +0 -1
  62. package/dist/tools/attention-report.js +0 -73
  63. package/dist/tools/attention-report.js.map +0 -1
  64. package/dist/tools/autophagy-status.d.ts +0 -25
  65. package/dist/tools/autophagy-status.d.ts.map +0 -1
  66. package/dist/tools/autophagy-status.js +0 -56
  67. package/dist/tools/autophagy-status.js.map +0 -1
  68. package/dist/tools/compound-advantage.d.ts +0 -30
  69. package/dist/tools/compound-advantage.d.ts.map +0 -1
  70. package/dist/tools/compound-advantage.js +0 -133
  71. package/dist/tools/compound-advantage.js.map +0 -1
  72. package/dist/tools/config-validator.d.ts +0 -59
  73. package/dist/tools/config-validator.d.ts.map +0 -1
  74. package/dist/tools/config-validator.js +0 -417
  75. package/dist/tools/config-validator.js.map +0 -1
  76. package/dist/tools/context-analysis.d.ts +0 -108
  77. package/dist/tools/context-analysis.d.ts.map +0 -1
  78. package/dist/tools/context-analysis.js +0 -301
  79. package/dist/tools/context-analysis.js.map +0 -1
  80. package/dist/tools/daily-briefing.d.ts +0 -103
  81. package/dist/tools/daily-briefing.d.ts.map +0 -1
  82. package/dist/tools/daily-briefing.js +0 -294
  83. package/dist/tools/daily-briefing.js.map +0 -1
  84. package/dist/tools/decision-windows.d.ts +0 -37
  85. package/dist/tools/decision-windows.d.ts.map +0 -1
  86. package/dist/tools/decision-windows.js +0 -67
  87. package/dist/tools/decision-windows.js.map +0 -1
  88. package/dist/tools/delegation-score.d.ts +0 -34
  89. package/dist/tools/delegation-score.d.ts.map +0 -1
  90. package/dist/tools/delegation-score.js +0 -260
  91. package/dist/tools/delegation-score.js.map +0 -1
  92. package/dist/tools/explain-relevance.d.ts +0 -36
  93. package/dist/tools/explain-relevance.d.ts.map +0 -1
  94. package/dist/tools/explain-relevance.js +0 -51
  95. package/dist/tools/explain-relevance.js.map +0 -1
  96. package/dist/tools/export-context.d.ts +0 -60
  97. package/dist/tools/export-context.d.ts.map +0 -1
  98. package/dist/tools/export-context.js +0 -179
  99. package/dist/tools/export-context.js.map +0 -1
  100. package/dist/tools/llm-status.d.ts +0 -45
  101. package/dist/tools/llm-status.d.ts.map +0 -1
  102. package/dist/tools/llm-status.js +0 -93
  103. package/dist/tools/llm-status.js.map +0 -1
  104. package/dist/tools/muse-context.d.ts +0 -195
  105. package/dist/tools/muse-context.d.ts.map +0 -1
  106. package/dist/tools/muse-context.js +0 -284
  107. package/dist/tools/muse-context.js.map +0 -1
  108. package/dist/tools/preemption-feed.d.ts +0 -55
  109. package/dist/tools/preemption-feed.d.ts.map +0 -1
  110. package/dist/tools/preemption-feed.js +0 -124
  111. package/dist/tools/preemption-feed.js.map +0 -1
  112. package/dist/tools/project-health.d.ts +0 -53
  113. package/dist/tools/project-health.d.ts.map +0 -1
  114. package/dist/tools/project-health.js +0 -122
  115. package/dist/tools/project-health.js.map +0 -1
  116. package/dist/tools/record-agent-feedback.d.ts +0 -46
  117. package/dist/tools/record-agent-feedback.d.ts.map +0 -1
  118. package/dist/tools/record-agent-feedback.js +0 -71
  119. package/dist/tools/record-agent-feedback.js.map +0 -1
  120. package/dist/tools/reverse-mentions.d.ts +0 -38
  121. package/dist/tools/reverse-mentions.d.ts.map +0 -1
  122. package/dist/tools/reverse-mentions.js +0 -75
  123. package/dist/tools/reverse-mentions.js.map +0 -1
  124. package/dist/tools/score-autopsy.d.ts +0 -93
  125. package/dist/tools/score-autopsy.d.ts.map +0 -1
  126. package/dist/tools/score-autopsy.js +0 -295
  127. package/dist/tools/score-autopsy.js.map +0 -1
  128. package/dist/tools/semantic-shifts.d.ts +0 -53
  129. package/dist/tools/semantic-shifts.d.ts.map +0 -1
  130. package/dist/tools/semantic-shifts.js +0 -74
  131. package/dist/tools/semantic-shifts.js.map +0 -1
  132. package/dist/tools/signal-chains.d.ts +0 -52
  133. package/dist/tools/signal-chains.d.ts.map +0 -1
  134. package/dist/tools/signal-chains.js +0 -63
  135. package/dist/tools/signal-chains.js.map +0 -1
  136. package/dist/tools/source-health.d.ts +0 -64
  137. package/dist/tools/source-health.d.ts.map +0 -1
  138. package/dist/tools/source-health.js +0 -205
  139. package/dist/tools/source-health.js.map +0 -1
  140. package/dist/tools/tech-radar.d.ts +0 -38
  141. package/dist/tools/tech-radar.d.ts.map +0 -1
  142. package/dist/tools/tech-radar.js +0 -249
  143. package/dist/tools/tech-radar.js.map +0 -1
  144. package/dist/tools/topic-connections.d.ts +0 -112
  145. package/dist/tools/topic-connections.d.ts.map +0 -1
  146. package/dist/tools/topic-connections.js +0 -319
  147. package/dist/tools/topic-connections.js.map +0 -1
  148. package/dist/tools/trend-analysis.d.ts +0 -105
  149. package/dist/tools/trend-analysis.d.ts.map +0 -1
  150. package/dist/tools/trend-analysis.js +0 -296
  151. package/dist/tools/trend-analysis.js.map +0 -1
  152. package/dist/tools/trust-summary.d.ts +0 -38
  153. package/dist/tools/trust-summary.d.ts.map +0 -1
  154. package/dist/tools/trust-summary.js +0 -89
  155. package/dist/tools/trust-summary.js.map +0 -1
@@ -1,93 +0,0 @@
1
- // SPDX-License-Identifier: FSL-1.1-Apache-2.0
2
- /**
3
- * LLM Status Tool
4
- *
5
- * Check the status of the LLM configuration and Ollama availability.
6
- * Helps diagnose why AI synthesis might not be working.
7
- */
8
- import { getLLMConfig, canSynthesize, checkOllamaStatus, DEFAULT_OLLAMA_MODELS, RECOMMENDED_MODELS, } from "../llm.js";
9
- export const llmStatusTool = {
10
- name: "llm_status",
11
- description: `Check LLM configuration and availability.
12
- Returns:
13
- - Current LLM provider configuration
14
- - Ollama status (if configured)
15
- - Available models
16
- - Recommended models for your hardware
17
- - Configuration recommendations
18
-
19
- Use this to diagnose AI synthesis issues.`,
20
- inputSchema: {
21
- type: "object",
22
- properties: {
23
- check_ollama: {
24
- type: "boolean",
25
- description: "Check Ollama connectivity (default: true)",
26
- },
27
- },
28
- },
29
- };
30
- export async function executeLLMStatus(db, params) {
31
- const { check_ollama = true } = params;
32
- const dbInstance = db.db;
33
- const config = getLLMConfig(dbInstance);
34
- const result = {
35
- provider: config.provider,
36
- can_synthesize: canSynthesize(config),
37
- config: {
38
- model: config.model || null,
39
- model_light: config.model_light || null,
40
- model_heavy: config.model_heavy || null,
41
- ollama_url: config.ollama_url || null,
42
- },
43
- recommendations: [],
44
- };
45
- // Check Ollama if configured
46
- if (config.provider === "ollama" && check_ollama) {
47
- const ollamaUrl = config.ollama_url || "http://localhost:11434";
48
- const status = await checkOllamaStatus(ollamaUrl);
49
- const recommendedModels = [
50
- DEFAULT_OLLAMA_MODELS.light,
51
- DEFAULT_OLLAMA_MODELS.medium,
52
- DEFAULT_OLLAMA_MODELS.heavy,
53
- ];
54
- const missingModels = recommendedModels.filter(m => !status.models.some(installed => installed.startsWith(m.split(":")[0])));
55
- result.ollama = {
56
- available: status.available,
57
- models: status.models,
58
- has_recommended: missingModels.length === 0,
59
- missing_models: missingModels,
60
- error: status.error,
61
- };
62
- // Generate recommendations
63
- if (!status.available) {
64
- result.recommendations.push("Ollama is not running. Start it with: ollama serve");
65
- result.setup_commands = ["ollama serve"];
66
- }
67
- else if (status.models.length === 0) {
68
- result.recommendations.push("No models installed. Pull recommended models.");
69
- result.setup_commands = [
70
- RECOMMENDED_MODELS["16GB_VRAM"].install,
71
- `ollama pull ${DEFAULT_OLLAMA_MODELS.light}`,
72
- ];
73
- }
74
- else if (missingModels.length > 0) {
75
- result.recommendations.push(`Missing recommended models: ${missingModels.join(", ")}`);
76
- result.setup_commands = missingModels.map(m => `ollama pull ${m}`);
77
- }
78
- else {
79
- result.recommendations.push("Ollama is properly configured with recommended models.");
80
- }
81
- }
82
- else if (!config.provider) {
83
- result.recommendations.push("No LLM provider configured. Set llm_provider to 'ollama', 'anthropic', or 'openai' in settings.");
84
- }
85
- else if (config.provider === "anthropic" && !config.anthropic_api_key) {
86
- result.recommendations.push("Anthropic selected but no API key configured.");
87
- }
88
- else if (config.provider === "openai" && !config.openai_api_key) {
89
- result.recommendations.push("OpenAI selected but no API key configured.");
90
- }
91
- return result;
92
- }
93
- //# sourceMappingURL=llm-status.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"llm-status.js","sourceRoot":"","sources":["../../src/tools/llm-status.ts"],"names":[],"mappings":"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"}
@@ -1,195 +0,0 @@
1
- /**
2
- * 4DA MUSE MCP Tools
3
- *
4
- * Creative context engine tools for managing context packs,
5
- * enriching generation prompts, and querying creative profiles.
6
- *
7
- * MUSE is a private parallel development track — these tools are
8
- * available to Claude/agents but not user-facing in the current app.
9
- */
10
- import type { FourDADatabase } from "../db.js";
11
- export interface MuseCreatePackParams {
12
- name: string;
13
- description?: string;
14
- }
15
- export interface MuseListPacksParams {
16
- active_only?: boolean;
17
- }
18
- export interface MuseEnrichPromptParams {
19
- prompt: string;
20
- pack_id?: string;
21
- }
22
- export interface MuseAddSourcesParams {
23
- pack_id: string;
24
- file_paths: string[];
25
- }
26
- export interface MusePackActionParams {
27
- pack_id: string;
28
- }
29
- export interface MuseActivateParams {
30
- pack_id: string;
31
- active: boolean;
32
- }
33
- export declare const museCreatePackTool: {
34
- name: string;
35
- description: string;
36
- inputSchema: {
37
- type: "object";
38
- properties: {
39
- name: {
40
- type: string;
41
- description: string;
42
- };
43
- description: {
44
- type: string;
45
- description: string;
46
- };
47
- };
48
- required: string[];
49
- };
50
- };
51
- export declare const museListPacksTool: {
52
- name: string;
53
- description: string;
54
- inputSchema: {
55
- type: "object";
56
- properties: {
57
- active_only: {
58
- type: string;
59
- description: string;
60
- default: boolean;
61
- };
62
- };
63
- };
64
- };
65
- export declare const museEnrichPromptTool: {
66
- name: string;
67
- description: string;
68
- inputSchema: {
69
- type: "object";
70
- properties: {
71
- prompt: {
72
- type: string;
73
- description: string;
74
- };
75
- pack_id: {
76
- type: string;
77
- description: string;
78
- };
79
- };
80
- required: string[];
81
- };
82
- };
83
- export declare const museAddSourcesTool: {
84
- name: string;
85
- description: string;
86
- inputSchema: {
87
- type: "object";
88
- properties: {
89
- pack_id: {
90
- type: string;
91
- description: string;
92
- };
93
- file_paths: {
94
- type: string;
95
- items: {
96
- type: string;
97
- };
98
- description: string;
99
- };
100
- };
101
- required: string[];
102
- };
103
- };
104
- export declare const museGetStatsTool: {
105
- name: string;
106
- description: string;
107
- inputSchema: {
108
- type: "object";
109
- properties: {};
110
- };
111
- };
112
- export declare const museActivatePackTool: {
113
- name: string;
114
- description: string;
115
- inputSchema: {
116
- type: "object";
117
- properties: {
118
- pack_id: {
119
- type: string;
120
- description: string;
121
- };
122
- active: {
123
- type: string;
124
- description: string;
125
- };
126
- };
127
- required: string[];
128
- };
129
- };
130
- export declare function executeMuseCreatePack(db: FourDADatabase, params: MuseCreatePackParams): {
131
- id: `${string}-${string}-${string}-${string}-${string}`;
132
- name: string;
133
- description: string | null;
134
- pack_type: string;
135
- is_active: boolean;
136
- source_count: number;
137
- confidence: number;
138
- message: string;
139
- };
140
- export declare function executeMuseListPacks(db: FourDADatabase, params: MuseListPacksParams): {
141
- packs: {
142
- id: string;
143
- name: string;
144
- description: string | null;
145
- pack_type: string;
146
- is_active: boolean;
147
- source_count: number;
148
- confidence: number;
149
- topics: any;
150
- anti_patterns: any;
151
- created_at: string;
152
- updated_at: string;
153
- }[];
154
- total: number;
155
- };
156
- export declare function executeMuseEnrichPrompt(db: FourDADatabase, params: MuseEnrichPromptParams): {
157
- original_prompt: string;
158
- enriched_prompt: string;
159
- pack_used: null;
160
- enrichment_applied: boolean;
161
- message: string;
162
- } | {
163
- original_prompt: string;
164
- enriched_prompt: string;
165
- pack_used: {
166
- id: string;
167
- name: string;
168
- confidence: number;
169
- };
170
- enrichment_applied: boolean;
171
- message?: undefined;
172
- };
173
- export declare function executeMuseAddSources(db: FourDADatabase, params: MuseAddSourcesParams): {
174
- added: number;
175
- skipped: number;
176
- total: number;
177
- message: string;
178
- };
179
- export declare function executeMuseGetStats(db: FourDADatabase): {
180
- total_packs: number;
181
- active_packs: number;
182
- total_sources: number;
183
- total_generations: number;
184
- source_breakdown: {
185
- file_type: string;
186
- count: number;
187
- }[];
188
- status: string;
189
- };
190
- export declare function executeMuseActivatePack(db: FourDADatabase, params: MuseActivateParams): {
191
- pack_id: string;
192
- active: boolean;
193
- message: string;
194
- };
195
- //# sourceMappingURL=muse-context.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"muse-context.d.ts","sourceRoot":"","sources":["../../src/tools/muse-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAM/C,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;CACjB;AAMD,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;CAkB9B,CAAC;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;CAc7B,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;CAkBhC,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;CAmB9B,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;;CAQ5B,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;CAkBhC,CAAC;AAyCF,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,cAAc,EAClB,MAAM,EAAE,oBAAoB;;;;;;;;;EAuB7B;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,cAAc,EAClB,MAAM,EAAE,mBAAmB;;;;;;;;;;;;;;;EA6B5B;AAED,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,cAAc,EAClB,MAAM,EAAE,sBAAsB;;;;;;;;;;;;;;;;EAuD/B;AAED,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,cAAc,EAClB,MAAM,EAAE,oBAAoB;;;;;EAuD7B;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,cAAc;;;;;;mBAqBrB,MAAM;eAAS,MAAM;;;EAUrD;AAED,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,cAAc,EAClB,MAAM,EAAE,kBAAkB;;;;EAiB3B"}
@@ -1,284 +0,0 @@
1
- /**
2
- * 4DA MUSE MCP Tools
3
- *
4
- * Creative context engine tools for managing context packs,
5
- * enriching generation prompts, and querying creative profiles.
6
- *
7
- * MUSE is a private parallel development track — these tools are
8
- * available to Claude/agents but not user-facing in the current app.
9
- */
10
- // =============================================================================
11
- // Tool Definitions
12
- // =============================================================================
13
- export const museCreatePackTool = {
14
- name: "muse_create_pack",
15
- description: "Create a new MUSE context pack — a named collection of creative signals derived from local files. Packs capture color language, compositional patterns, sonic palette, and thematic tendencies.",
16
- inputSchema: {
17
- type: "object",
18
- properties: {
19
- name: {
20
- type: "string",
21
- description: "Pack name (e.g., 'Meridian Album Art', 'Cyberpunk Stills')",
22
- },
23
- description: {
24
- type: "string",
25
- description: "Optional description of the pack's purpose or aesthetic direction",
26
- },
27
- },
28
- required: ["name"],
29
- },
30
- };
31
- export const museListPacksTool = {
32
- name: "muse_list_packs",
33
- description: "List all MUSE context packs with their status, source count, and confidence. Use active_only=true to see only packs currently influencing generation.",
34
- inputSchema: {
35
- type: "object",
36
- properties: {
37
- active_only: {
38
- type: "boolean",
39
- description: "Only show active packs. Default: false",
40
- default: false,
41
- },
42
- },
43
- },
44
- };
45
- export const museEnrichPromptTool = {
46
- name: "muse_enrich_prompt",
47
- description: "Enrich a generation prompt with creative context from the active MUSE pack. Prepends style guidance (color, composition, themes, anti-patterns) to make any AI generation tool context-aware. Works with any text-accepting API (Sora, Runway, Midjourney, DALL-E, Udio, etc.).",
48
- inputSchema: {
49
- type: "object",
50
- properties: {
51
- prompt: {
52
- type: "string",
53
- description: "The original generation prompt to enrich",
54
- },
55
- pack_id: {
56
- type: "string",
57
- description: "Specific pack to use. If omitted, uses the first active pack.",
58
- },
59
- },
60
- required: ["prompt"],
61
- },
62
- };
63
- export const museAddSourcesTool = {
64
- name: "muse_add_sources",
65
- description: "Add source files to a MUSE context pack. Files are classified by type (image, video, audio, project file) and queued for extraction. Unsupported file types are skipped.",
66
- inputSchema: {
67
- type: "object",
68
- properties: {
69
- pack_id: {
70
- type: "string",
71
- description: "ID of the pack to add sources to",
72
- },
73
- file_paths: {
74
- type: "array",
75
- items: { type: "string" },
76
- description: "Array of file paths to add (images, videos, audio, project files)",
77
- },
78
- },
79
- required: ["pack_id", "file_paths"],
80
- },
81
- };
82
- export const museGetStatsTool = {
83
- name: "muse_stats",
84
- description: "Get MUSE system statistics — total packs, active packs, source file count, generation history count. Quick health check for the creative context engine.",
85
- inputSchema: {
86
- type: "object",
87
- properties: {},
88
- },
89
- };
90
- export const museActivatePackTool = {
91
- name: "muse_activate_pack",
92
- description: "Activate or deactivate a MUSE context pack. Active packs influence generation prompts via muse_enrich_prompt.",
93
- inputSchema: {
94
- type: "object",
95
- properties: {
96
- pack_id: {
97
- type: "string",
98
- description: "ID of the pack to activate/deactivate",
99
- },
100
- active: {
101
- type: "boolean",
102
- description: "true to activate, false to deactivate",
103
- },
104
- },
105
- required: ["pack_id", "active"],
106
- },
107
- };
108
- // =============================================================================
109
- // Execute Functions
110
- // =============================================================================
111
- export function executeMuseCreatePack(db, params) {
112
- const id = crypto.randomUUID();
113
- const name = params.name;
114
- const description = params.description ?? null;
115
- db.getRawDb()
116
- .prepare(`INSERT INTO muse_packs (id, name, description, pack_type, is_active, source_count, confidence)
117
- VALUES (?, ?, ?, 'custom', 0, 0, 0.0)`)
118
- .run(id, name, description);
119
- return {
120
- id,
121
- name,
122
- description,
123
- pack_type: "custom",
124
- is_active: false,
125
- source_count: 0,
126
- confidence: 0,
127
- message: `Created MUSE pack "${name}" (${id})`,
128
- };
129
- }
130
- export function executeMuseListPacks(db, params) {
131
- const activeOnly = params.active_only ?? false;
132
- const query = activeOnly
133
- ? `SELECT id, name, description, pack_type, is_active, source_count, confidence,
134
- thematic_topics, anti_patterns, created_at, updated_at
135
- FROM muse_packs WHERE is_active = 1 ORDER BY updated_at DESC`
136
- : `SELECT id, name, description, pack_type, is_active, source_count, confidence,
137
- thematic_topics, anti_patterns, created_at, updated_at
138
- FROM muse_packs ORDER BY updated_at DESC`;
139
- const rows = db.getRawDb().prepare(query).all();
140
- return {
141
- packs: rows.map((r) => ({
142
- id: r.id,
143
- name: r.name,
144
- description: r.description,
145
- pack_type: r.pack_type,
146
- is_active: r.is_active === 1,
147
- source_count: r.source_count,
148
- confidence: r.confidence,
149
- topics: r.thematic_topics ? JSON.parse(r.thematic_topics) : [],
150
- anti_patterns: r.anti_patterns ? JSON.parse(r.anti_patterns) : [],
151
- created_at: r.created_at,
152
- updated_at: r.updated_at,
153
- })),
154
- total: rows.length,
155
- };
156
- }
157
- export function executeMuseEnrichPrompt(db, params) {
158
- const prompt = params.prompt;
159
- // Find the pack to use
160
- let pack;
161
- if (params.pack_id) {
162
- pack = db.getRawDb()
163
- .prepare("SELECT * FROM muse_packs WHERE id = ?")
164
- .get(params.pack_id);
165
- }
166
- else {
167
- pack = db.getRawDb()
168
- .prepare("SELECT * FROM muse_packs WHERE is_active = 1 ORDER BY updated_at DESC LIMIT 1")
169
- .get();
170
- }
171
- if (!pack) {
172
- return {
173
- original_prompt: prompt,
174
- enriched_prompt: prompt,
175
- pack_used: null,
176
- enrichment_applied: false,
177
- message: "No active MUSE pack found — returning original prompt",
178
- };
179
- }
180
- // Build enrichment from pack data
181
- const parts = [];
182
- // Parse topics and anti-patterns
183
- const topics = pack.thematic_topics
184
- ? JSON.parse(pack.thematic_topics)
185
- : [];
186
- const antiPatterns = pack.anti_patterns
187
- ? JSON.parse(pack.anti_patterns)
188
- : [];
189
- if (topics.length > 0) {
190
- parts.push(`Themes: ${topics.slice(0, 5).map((t) => t.label).join(", ")}`);
191
- }
192
- if (antiPatterns.length > 0) {
193
- parts.push(`Avoid: ${antiPatterns.slice(0, 4).map((a) => a.label).join(", ")}`);
194
- }
195
- const enriched = parts.length > 0
196
- ? `Style context: ${parts.join(". ")}.\n\n${prompt}`
197
- : prompt;
198
- return {
199
- original_prompt: prompt,
200
- enriched_prompt: enriched,
201
- pack_used: { id: pack.id, name: pack.name, confidence: pack.confidence },
202
- enrichment_applied: parts.length > 0,
203
- };
204
- }
205
- export function executeMuseAddSources(db, params) {
206
- const MUSE_EXT_MAP = {
207
- // Image
208
- png: "image", jpg: "image", jpeg: "image", gif: "image", webp: "image",
209
- svg: "image", tiff: "image", tif: "image", bmp: "image", psd: "image",
210
- raw: "image", cr2: "image", nef: "image", arw: "image", dng: "image",
211
- heic: "image", heif: "image", exr: "image",
212
- // Video
213
- mp4: "video", mov: "video", avi: "video", mkv: "video", webm: "video",
214
- flv: "video", wmv: "video", m4v: "video",
215
- // Audio
216
- wav: "audio", flac: "audio", mp3: "audio", aiff: "audio", aif: "audio",
217
- ogg: "audio", m4a: "audio", aac: "audio", wma: "audio", opus: "audio",
218
- // Project files
219
- aep: "project_file", prproj: "project_file", drp: "project_file",
220
- als: "project_file", flp: "project_file", blend: "project_file",
221
- c4d: "project_file", sketch: "project_file", fig: "project_file",
222
- xd: "project_file",
223
- };
224
- let added = 0;
225
- let skipped = 0;
226
- const insert = db.getRawDb().prepare(`INSERT INTO muse_pack_sources (pack_id, file_path, file_type, extraction_status)
227
- VALUES (?, ?, ?, 'pending')`);
228
- for (const filePath of params.file_paths) {
229
- const ext = filePath.split(".").pop()?.toLowerCase() ?? "";
230
- const mediaType = MUSE_EXT_MAP[ext];
231
- if (mediaType) {
232
- insert.run(params.pack_id, filePath, mediaType);
233
- added++;
234
- }
235
- else {
236
- skipped++;
237
- }
238
- }
239
- // Update source count
240
- db.getRawDb()
241
- .prepare(`UPDATE muse_packs SET source_count = (SELECT COUNT(*) FROM muse_pack_sources WHERE pack_id = ?),
242
- updated_at = datetime('now') WHERE id = ?`)
243
- .run(params.pack_id, params.pack_id);
244
- return {
245
- added,
246
- skipped,
247
- total: params.file_paths.length,
248
- message: `Added ${added} source(s) to pack (${skipped} skipped — unsupported type)`,
249
- };
250
- }
251
- export function executeMuseGetStats(db) {
252
- const totalPacks = db.getRawDb().prepare("SELECT COUNT(*) as c FROM muse_packs").get().c;
253
- const activePacks = db.getRawDb().prepare("SELECT COUNT(*) as c FROM muse_packs WHERE is_active = 1").get().c;
254
- const totalSources = db.getRawDb().prepare("SELECT COUNT(*) as c FROM muse_pack_sources").get().c;
255
- const totalGenerations = db.getRawDb().prepare("SELECT COUNT(*) as c FROM muse_generations").get().c;
256
- // Source breakdown by type
257
- const typeBreakdown = db.getRawDb()
258
- .prepare("SELECT file_type, COUNT(*) as count FROM muse_pack_sources GROUP BY file_type ORDER BY count DESC")
259
- .all();
260
- return {
261
- total_packs: totalPacks,
262
- active_packs: activePacks,
263
- total_sources: totalSources,
264
- total_generations: totalGenerations,
265
- source_breakdown: typeBreakdown,
266
- status: totalPacks > 0 ? "active" : "no_packs",
267
- };
268
- }
269
- export function executeMuseActivatePack(db, params) {
270
- db.getRawDb()
271
- .prepare("UPDATE muse_packs SET is_active = ?, updated_at = datetime('now') WHERE id = ?")
272
- .run(params.active ? 1 : 0, params.pack_id);
273
- const pack = db.getRawDb()
274
- .prepare("SELECT name FROM muse_packs WHERE id = ?")
275
- .get(params.pack_id);
276
- return {
277
- pack_id: params.pack_id,
278
- active: params.active,
279
- message: pack
280
- ? `Pack "${pack.name}" ${params.active ? "activated" : "deactivated"}`
281
- : `Pack ${params.pack_id} not found`,
282
- };
283
- }
284
- //# sourceMappingURL=muse-context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"muse-context.js","sourceRoot":"","sources":["../../src/tools/muse-context.ts"],"names":[],"mappings":"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"}
@@ -1,55 +0,0 @@
1
- /**
2
- * preemption_feed tool
3
- *
4
- * Returns forward-looking intelligence alerts — what's likely to matter
5
- * soon based on signal chains, dependency health, and knowledge gaps.
6
- * Use before starting work to check for upcoming risks.
7
- */
8
- import type { FourDADatabase } from "../db.js";
9
- export interface PreemptionFeedParams {
10
- urgency_filter?: string;
11
- limit?: number;
12
- }
13
- export declare const preemptionFeedTool: {
14
- name: string;
15
- description: string;
16
- inputSchema: {
17
- type: "object";
18
- properties: {
19
- urgency_filter: {
20
- type: string;
21
- description: string;
22
- enum: string[];
23
- };
24
- limit: {
25
- type: string;
26
- description: string;
27
- default: number;
28
- };
29
- };
30
- };
31
- };
32
- export declare function executePreemptionFeed(db: FourDADatabase, params: PreemptionFeedParams): {
33
- signal_chains: {
34
- id: string;
35
- chain_name: string;
36
- overall_priority: string;
37
- confidence: number;
38
- suggested_action: string;
39
- link_count: number;
40
- }[];
41
- health_alerts: {
42
- project: string;
43
- severity: string;
44
- message: string;
45
- dep: string | null;
46
- }[];
47
- blind_spots: {
48
- dep: string;
49
- days_stale: number;
50
- missed_count: number;
51
- }[];
52
- total_alerts: number;
53
- recommendation: string;
54
- };
55
- //# sourceMappingURL=preemption-feed.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"preemption-feed.d.ts","sourceRoot":"","sources":["../../src/tools/preemption-feed.ts"],"names":[],"mappings":"AACA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C,MAAM,WAAW,oBAAoB;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;CAoB9B,CAAC;AAEF,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,cAAc,EAClB,MAAM,EAAE,oBAAoB;;YAStB,MAAM;oBACE,MAAM;0BACA,MAAM;oBACZ,MAAM;0BACA,MAAM;oBACZ,MAAM;;;iBA2CT,MAAM;kBACL,MAAM;iBACP,MAAM;aACV,MAAM,GAAG,IAAI;;;aAgCb,MAAM;oBACC,MAAM;sBACJ,MAAM;;;;EA2CvB"}