@soleri/forge 3.0.0 → 4.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 (44) hide show
  1. package/dist/index.js +0 -0
  2. package/dist/knowledge-installer.d.ts +2 -1
  3. package/dist/scaffolder.js +1 -91
  4. package/dist/scaffolder.js.map +1 -1
  5. package/dist/templates/activate.js +1 -2
  6. package/dist/templates/activate.js.map +1 -1
  7. package/dist/templates/core-facade.js +1 -6
  8. package/dist/templates/core-facade.js.map +1 -1
  9. package/dist/templates/domain-facade.js +1 -3
  10. package/dist/templates/domain-facade.js.map +1 -1
  11. package/dist/templates/entry-point.js +2 -7
  12. package/dist/templates/entry-point.js.map +1 -1
  13. package/dist/templates/llm-client.js +3 -4
  14. package/dist/templates/llm-client.js.map +1 -1
  15. package/dist/templates/package-json.js +1 -2
  16. package/dist/templates/package-json.js.map +1 -1
  17. package/dist/templates/test-facades.js +2 -5
  18. package/dist/templates/test-facades.js.map +1 -1
  19. package/package.json +1 -1
  20. package/src/__tests__/scaffolder.test.ts +35 -47
  21. package/src/knowledge-installer.ts +1 -1
  22. package/src/scaffolder.ts +1 -97
  23. package/src/templates/activate.ts +1 -2
  24. package/src/templates/core-facade.ts +1 -6
  25. package/src/templates/domain-facade.ts +1 -3
  26. package/src/templates/entry-point.ts +2 -7
  27. package/src/templates/llm-client.ts +3 -4
  28. package/src/templates/package-json.ts +1 -2
  29. package/src/templates/test-facades.ts +2 -5
  30. package/src/templates/brain.ts +0 -478
  31. package/src/templates/facade-factory.ts +0 -62
  32. package/src/templates/facade-types.ts +0 -45
  33. package/src/templates/intelligence-loader.ts +0 -42
  34. package/src/templates/intelligence-types.ts +0 -23
  35. package/src/templates/llm-key-pool.ts +0 -212
  36. package/src/templates/llm-types.ts +0 -160
  37. package/src/templates/llm-utils.ts +0 -259
  38. package/src/templates/planner.ts +0 -150
  39. package/src/templates/test-brain.ts +0 -474
  40. package/src/templates/test-llm.ts +0 -575
  41. package/src/templates/test-loader.ts +0 -146
  42. package/src/templates/test-planner.ts +0 -271
  43. package/src/templates/test-vault.ts +0 -380
  44. package/src/templates/vault.ts +0 -263
package/dist/index.js CHANGED
File without changes
@@ -5,7 +5,7 @@ import type { InstallKnowledgeResult } from './types.js';
5
5
  * vault.add() instead of brain.enrichAndCapture().
6
6
  */
7
7
  export declare function generateVaultOnlyDomainFacade(agentId: string, domain: string): string;
8
- export interface InstallKnowledgeParams {
8
+ interface InstallKnowledgeParams {
9
9
  agentPath: string;
10
10
  bundlePath: string;
11
11
  generateFacades?: boolean;
@@ -28,3 +28,4 @@ export declare function patchIndexTs(source: string, newDomains: string[], hasBr
28
28
  * Fallback anchor: line containing `## Intent Detection` (older agents without memory/brain rows)
29
29
  */
30
30
  export declare function patchClaudeMdContent(source: string, agentId: string, newDomains: string[]): string | null;
31
+ export {};
@@ -4,32 +4,17 @@ import { homedir } from 'node:os';
4
4
  import { generatePackageJson } from './templates/package-json.js';
5
5
  import { generateTsconfig } from './templates/tsconfig.js';
6
6
  import { generateVitestConfig } from './templates/vitest-config.js';
7
- import { generateFacadeTypes } from './templates/facade-types.js';
8
- import { generateFacadeFactory } from './templates/facade-factory.js';
9
- import { generateVault } from './templates/vault.js';
10
- import { generateIntelligenceTypes } from './templates/intelligence-types.js';
11
- import { generateIntelligenceLoader } from './templates/intelligence-loader.js';
12
7
  import { generatePersona } from './templates/persona.js';
13
8
  import { generateDomainFacade } from './templates/domain-facade.js';
14
9
  import { generateCoreFacade } from './templates/core-facade.js';
15
10
  import { generateEntryPoint } from './templates/entry-point.js';
16
- import { generateVaultTest } from './templates/test-vault.js';
17
- import { generateLoaderTest } from './templates/test-loader.js';
18
11
  import { generateFacadesTest } from './templates/test-facades.js';
19
12
  import { generateClaudeMdTemplate } from './templates/claude-md-template.js';
20
13
  import { generateInjectClaudeMd } from './templates/inject-claude-md.js';
21
14
  import { generateActivate } from './templates/activate.js';
22
15
  import { generateReadme } from './templates/readme.js';
23
16
  import { generateSetupScript } from './templates/setup-script.js';
24
- import { generatePlanner } from './templates/planner.js';
25
- import { generatePlannerTest } from './templates/test-planner.js';
26
- import { generateBrain } from './templates/brain.js';
27
- import { generateBrainTest } from './templates/test-brain.js';
28
- import { generateLLMTypes } from './templates/llm-types.js';
29
- import { generateLLMUtils } from './templates/llm-utils.js';
30
- import { generateLLMKeyPool } from './templates/llm-key-pool.js';
31
17
  import { generateLLMClient } from './templates/llm-client.js';
32
- import { generateLLMTest } from './templates/test-llm.js';
33
18
  /**
34
19
  * Preview what scaffold will create without writing anything.
35
20
  */
@@ -48,35 +33,10 @@ export function previewScaffold(config) {
48
33
  path: 'src/index.ts',
49
34
  description: 'Entry point — initializes vault, planner, brain, registers facades, starts stdio',
50
35
  },
51
- {
52
- path: 'src/planning/planner.ts',
53
- description: 'Plan state machine — draft → approved → executing → completed',
54
- },
55
- {
56
- path: 'src/brain/brain.ts',
57
- description: 'Intelligence layer — TF-IDF scoring, auto-tagging, duplicate detection, adaptive weights',
58
- },
59
- {
60
- path: 'src/llm/types.ts',
61
- description: 'LLM types — SecretString, LLMError, call options/result, circuit breaker, key pool, routing',
62
- },
63
- {
64
- path: 'src/llm/utils.ts',
65
- description: 'LLM utilities — CircuitBreaker, retry with backoff+jitter, rate limit header parser',
66
- },
67
- {
68
- path: 'src/llm/key-pool.ts',
69
- description: 'Key pool — multi-key rotation with per-key circuit breakers, preemptive quota rotation',
70
- },
71
36
  {
72
37
  path: 'src/llm/llm-client.ts',
73
38
  description: 'LLM client — unified OpenAI/Anthropic caller with model routing (optional, needs API keys)',
74
39
  },
75
- { path: 'src/facades/types.ts', description: 'Facade type system (OpHandler, FacadeConfig)' },
76
- {
77
- path: 'src/facades/facade-factory.ts',
78
- description: 'Registers facades as MCP tools with op dispatch',
79
- },
80
40
  {
81
41
  path: 'src/facades/core.facade.ts',
82
42
  description: 'Core facade — search, vault stats, health, identity',
@@ -85,18 +45,6 @@ export function previewScaffold(config) {
85
45
  path: `src/facades/${d}.facade.ts`,
86
46
  description: `${d} facade — search, get_patterns, capture, remove`,
87
47
  })),
88
- {
89
- path: 'src/vault/vault.ts',
90
- description: 'SQLite vault with FTS5 full-text search (BM25 ranking)',
91
- },
92
- {
93
- path: 'src/intelligence/types.ts',
94
- description: 'IntelligenceEntry and IntelligenceBundle types',
95
- },
96
- {
97
- path: 'src/intelligence/loader.ts',
98
- description: 'Loads and validates JSON intelligence data files',
99
- },
100
48
  ...config.domains.map((d) => ({
101
49
  path: `src/intelligence/data/${d}.json`,
102
50
  description: `Empty ${d} intelligence bundle — ready for knowledge capture`,
@@ -117,30 +65,10 @@ export function previewScaffold(config) {
117
65
  path: 'src/activation/activate.ts',
118
66
  description: `${config.name} activation system — persona adoption, setup status, tool recommendations`,
119
67
  },
120
- {
121
- path: 'src/__tests__/vault.test.ts',
122
- description: 'Vault tests — CRUD, FTS5 search, stats, project registration (32 tests)',
123
- },
124
- {
125
- path: 'src/__tests__/loader.test.ts',
126
- description: 'Intelligence loader tests — valid/invalid JSON, edge cases (9 tests)',
127
- },
128
68
  {
129
69
  path: 'src/__tests__/facades.test.ts',
130
70
  description: `Facade integration tests — all ${config.domains.length + 1} facades`,
131
71
  },
132
- {
133
- path: 'src/__tests__/planner.test.ts',
134
- description: 'Planner tests — state machine, task lifecycle, persistence (~20 tests)',
135
- },
136
- {
137
- path: 'src/__tests__/brain.test.ts',
138
- description: 'Brain tests — TF-IDF scoring, auto-tagging, duplicate detection, adaptive weights (~38 tests)',
139
- },
140
- {
141
- path: 'src/__tests__/llm.test.ts',
142
- description: 'LLM tests — SecretString, CircuitBreaker, retry, rate limits, KeyPool, ModelRouter (~30 tests)',
143
- },
144
72
  { path: '.mcp.json', description: 'MCP client config for connecting to this agent' },
145
73
  {
146
74
  path: 'README.md',
@@ -214,13 +142,10 @@ export function scaffold(config) {
214
142
  'scripts',
215
143
  'src',
216
144
  'src/facades',
217
- 'src/vault',
218
145
  'src/intelligence',
219
146
  'src/intelligence/data',
220
147
  'src/identity',
221
148
  'src/activation',
222
- 'src/planning',
223
- 'src/brain',
224
149
  'src/llm',
225
150
  'src/__tests__',
226
151
  ];
@@ -249,29 +174,14 @@ export function scaffold(config) {
249
174
  chmodSync(join(agentDir, 'scripts', 'setup.sh'), 0o755);
250
175
  // Write source files
251
176
  const sourceFiles = [
252
- ['src/facades/types.ts', generateFacadeTypes()],
253
- ['src/facades/facade-factory.ts', generateFacadeFactory()],
254
177
  ['src/facades/core.facade.ts', generateCoreFacade(config)],
255
- ['src/vault/vault.ts', generateVault()],
256
- ['src/intelligence/types.ts', generateIntelligenceTypes()],
257
- ['src/intelligence/loader.ts', generateIntelligenceLoader()],
258
178
  ['src/identity/persona.ts', generatePersona(config)],
259
179
  ['src/activation/claude-md-content.ts', generateClaudeMdTemplate(config)],
260
180
  ['src/activation/inject-claude-md.ts', generateInjectClaudeMd(config)],
261
181
  ['src/activation/activate.ts', generateActivate(config)],
262
182
  ['src/index.ts', generateEntryPoint(config)],
263
- ['src/planning/planner.ts', generatePlanner()],
264
- ['src/brain/brain.ts', generateBrain()],
265
- ['src/llm/types.ts', generateLLMTypes()],
266
- ['src/llm/utils.ts', generateLLMUtils()],
267
- ['src/llm/key-pool.ts', generateLLMKeyPool(config)],
268
183
  ['src/llm/llm-client.ts', generateLLMClient(config)],
269
- ['src/__tests__/vault.test.ts', generateVaultTest()],
270
- ['src/__tests__/loader.test.ts', generateLoaderTest()],
271
184
  ['src/__tests__/facades.test.ts', generateFacadesTest(config)],
272
- ['src/__tests__/planner.test.ts', generatePlannerTest()],
273
- ['src/__tests__/brain.test.ts', generateBrainTest()],
274
- ['src/__tests__/llm.test.ts', generateLLMTest(config)],
275
185
  ];
276
186
  // Domain facades and empty data files
277
187
  for (const domain of config.domains) {
@@ -291,7 +201,7 @@ export function scaffold(config) {
291
201
  `${config.domains.length} empty knowledge domains ready for capture`,
292
202
  `Intelligence layer (Brain) — TF-IDF scoring, auto-tagging, duplicate detection`,
293
203
  `Activation system included — say "Hello, ${config.name}!" to activate`,
294
- `6 test suites — vault, loader, facades, planner, brain, llm`,
204
+ `1 test suitefacades (vault, brain, planner, llm tests provided by @soleri/core)`,
295
205
  ];
296
206
  if (mcpReg.registered) {
297
207
  summaryLines.push(`MCP server registered in ${mcpReg.path}`);
@@ -1 +1 @@
1
- {"version":3,"file":"scaffolder.js","sourceRoot":"","sources":["../src/scaffolder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scaffolder.js","sourceRoot":"","sources":["../src/scaffolder.ts"],"names":[],"mappings":"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"}
@@ -28,8 +28,7 @@ export function generateActivate(config) {
28
28
  "import { homedir } from 'node:os';",
29
29
  "import { PERSONA } from '../identity/persona.js';",
30
30
  "import { hasAgentMarker } from './inject-claude-md.js';",
31
- "import type { Vault } from '../vault/vault.js';",
32
- "import type { Planner, Plan } from '../planning/planner.js';",
31
+ "import type { Vault, Planner, Plan } from '@soleri/core';",
33
32
  '',
34
33
  'export interface ActivationResult {',
35
34
  ' activated: boolean;',
@@ -1 +1 @@
1
- {"version":3,"file":"activate.js","sourceRoot":"","sources":["../../src/templates/activate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"activate.js","sourceRoot":"","sources":["../../src/templates/activate.ts"],"names":[],"mappings":"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"}
@@ -4,16 +4,11 @@
4
4
  */
5
5
  export function generateCoreFacade(config) {
6
6
  return `import { z } from 'zod';
7
- import type { FacadeConfig } from './types.js';
8
- import type { Vault } from '../vault/vault.js';
9
- import type { IntelligenceEntry } from '../intelligence/types.js';
7
+ import type { FacadeConfig, Vault, IntelligenceEntry, Planner, Brain, KeyPool } from '@soleri/core';
10
8
  import { PERSONA } from '../identity/persona.js';
11
9
  import { activateAgent, deactivateAgent } from '../activation/activate.js';
12
10
  import { injectClaudeMd, injectClaudeMdGlobal, hasAgentMarker } from '../activation/inject-claude-md.js';
13
- import type { Planner } from '../planning/planner.js';
14
- import type { Brain } from '../brain/brain.js';
15
11
  import type { LLMClient } from '../llm/llm-client.js';
16
- import type { KeyPool } from '../llm/key-pool.js';
17
12
 
18
13
  export function createCoreFacade(vault: Vault, planner: Planner, brain: Brain, llmClient?: LLMClient, openaiKeyPool?: KeyPool, anthropicKeyPool?: KeyPool): FacadeConfig {
19
14
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"core-facade.js","sourceRoot":"","sources":["../../src/templates/core-facade.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAmB;IACpD,OAAO;;;;;;;;;;;;;;aAcI,MAAM,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uGA2EiF,MAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCA6D9E,MAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gEAiCiB,MAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8Q1E,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"core-facade.js","sourceRoot":"","sources":["../../src/templates/core-facade.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAmB;IACpD,OAAO;;;;;;;;;aASI,MAAM,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uGA2EiF,MAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCA6D9E,MAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gEAiCiB,MAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8Q1E,CAAC;AACF,CAAC"}
@@ -5,9 +5,7 @@
5
5
  export function generateDomainFacade(agentId, domain) {
6
6
  const facadeName = `${agentId}_${domain.replace(/-/g, '_')}`;
7
7
  return `import { z } from 'zod';
8
- import type { FacadeConfig } from './types.js';
9
- import type { Vault } from '../vault/vault.js';
10
- import type { Brain } from '../brain/brain.js';
8
+ import type { FacadeConfig, Vault, Brain } from '@soleri/core';
11
9
 
12
10
  export function create${pascalCase(domain)}Facade(vault: Vault, brain: Brain): FacadeConfig {
13
11
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"domain-facade.js","sourceRoot":"","sources":["../../src/templates/domain-facade.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAe,EAAE,MAAc;IAClE,MAAM,UAAU,GAAG,GAAG,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;IAE7D,OAAO;;;;;wBAKe,UAAU,CAAC,MAAM,CAAC;;aAE7B,UAAU;oBACH,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;;;;4BAI7B,MAAM;;;;;;;;;;uBAUX,MAAM;;;;;;;;;;+BAUE,MAAM;;;;;;;;;uBASd,MAAM;;;;;;;;uCAQU,MAAM;;;;;;;;;;;sCAWP,MAAM;;;;;;;;;;;;;;;;;;uBAkBrB,MAAM;;;;;;;;;;;;;;iCAcI,MAAM;;;;;;;;;;;CAWtC,CAAC;AACF,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,CAAS;IAClC,OAAO,CAAC;SACL,KAAK,CAAC,SAAS,CAAC;SAChB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAClD,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,CAAS;IAClC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAChD,CAAC"}
1
+ {"version":3,"file":"domain-facade.js","sourceRoot":"","sources":["../../src/templates/domain-facade.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAe,EAAE,MAAc;IAClE,MAAM,UAAU,GAAG,GAAG,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;IAE7D,OAAO;;;wBAGe,UAAU,CAAC,MAAM,CAAC;;aAE7B,UAAU;oBACH,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;;;;4BAI7B,MAAM;;;;;;;;;;uBAUX,MAAM;;;;;;;;;;+BAUE,MAAM;;;;;;;;;uBASd,MAAM;;;;;;;;uCAQU,MAAM;;;;;;;;;;;sCAWP,MAAM;;;;;;;;;;;;;;;;;;uBAkBrB,MAAM;;;;;;;;;;;;;;iCAcI,MAAM;;;;;;;;;;;CAWtC,CAAC;AACF,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,CAAS;IAClC,OAAO,CAAC;SACL,KAAK,CAAC,SAAS,CAAC;SAChB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAClD,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,CAAS;IAClC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAChD,CAAC"}
@@ -20,15 +20,10 @@ import { dirname, join } from 'node:path';
20
20
  import { fileURLToPath } from 'node:url';
21
21
  import { homedir } from 'node:os';
22
22
 
23
- import { registerAllFacades } from './facades/facade-factory.js';
23
+ import { Vault, Brain, Planner, KeyPool, loadKeyPoolConfig, loadIntelligenceData, registerAllFacades } from '@soleri/core';
24
24
  ${facadeImports}
25
25
  import { createCoreFacade } from './facades/core.facade.js';
26
- import { loadIntelligenceData } from './intelligence/loader.js';
27
- import { Vault } from './vault/vault.js';
28
- import { Planner } from './planning/planner.js';
29
- import { Brain } from './brain/brain.js';
30
26
  import { LLMClient } from './llm/llm-client.js';
31
- import { KeyPool, loadKeyPoolConfig } from './llm/key-pool.js';
32
27
  import { PERSONA, getPersonaPrompt } from './identity/persona.js';
33
28
 
34
29
  const __dirname = dirname(fileURLToPath(import.meta.url));
@@ -59,7 +54,7 @@ async function main(): Promise<void> {
59
54
  console.error(\`[\${PERSONA.name.toLowerCase()}] Brain: vocabulary \${brain.getVocabularySize()} terms\`);
60
55
 
61
56
  // Initialize LLM client (optional — works without API keys)
62
- const keyPoolFiles = loadKeyPoolConfig();
57
+ const keyPoolFiles = loadKeyPoolConfig('${config.id}');
63
58
  const openaiKeyPool = new KeyPool(keyPoolFiles.openai);
64
59
  const anthropicKeyPool = new KeyPool(keyPoolFiles.anthropic);
65
60
  const llmClient = new LLMClient(openaiKeyPool, anthropicKeyPool);
@@ -1 +1 @@
1
- {"version":3,"file":"entry-point.js","sourceRoot":"","sources":["../../src/templates/entry-point.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAmB;IACpD,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO;SACjC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,EAAE,GAAG,SAAS,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC1C,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC;QAC9B,OAAO,YAAY,EAAE,sBAAsB,IAAI,IAAI,CAAC;IACtD,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO;SACnC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,UAAU,CAAC,CAAC,CAAC,uBAAuB,CAAC;SAC7D,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,OAAO;;;;;;;;;EASP,aAAa;;;;;;;;;;;;;yCAa0B,MAAM,CAAC,EAAE;wCACV,MAAM,CAAC,EAAE;;;;;;;;;;;;;;gCAcjB,MAAM,CAAC,EAAE;wCACD,MAAM,CAAC,EAAE;;;;;;;;;;;;;;;;;;aAkBpC,MAAM,CAAC,EAAE;;;;;;;;;;;EAWpB,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBA4BG,MAAM,CAAC,EAAE;;;CAG5B,CAAC;AACF,CAAC;AAED,SAAS,UAAU,CAAC,CAAS;IAC3B,OAAO,CAAC;SACL,KAAK,CAAC,SAAS,CAAC;SAChB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAClD,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"entry-point.js","sourceRoot":"","sources":["../../src/templates/entry-point.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAmB;IACpD,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO;SACjC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,EAAE,GAAG,SAAS,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC1C,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC;QAC9B,OAAO,YAAY,EAAE,sBAAsB,IAAI,IAAI,CAAC;IACtD,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO;SACnC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,UAAU,CAAC,CAAC,CAAC,uBAAuB,CAAC;SAC7D,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,OAAO;;;;;;;;;EASP,aAAa;;;;;;;;yCAQ0B,MAAM,CAAC,EAAE;wCACV,MAAM,CAAC,EAAE;;;;;;;;;;;;;;gCAcjB,MAAM,CAAC,EAAE;wCACD,MAAM,CAAC,EAAE;;;;;;;;;4CASL,MAAM,CAAC,EAAE;;;;;;;;;aASxC,MAAM,CAAC,EAAE;;;;;;;;;;;EAWpB,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBA4BG,MAAM,CAAC,EAAE;;;CAG5B,CAAC;AACF,CAAC;AAED,SAAS,UAAU,CAAC,CAAS;IAC3B,OAAO,CAAC;SACL,KAAK,CAAC,SAAS,CAAC;SAChB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAClD,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC"}
@@ -10,15 +10,14 @@ export function generateLLMClient(config) {
10
10
  */
11
11
 
12
12
  import Anthropic from '@anthropic-ai/sdk';
13
- import { SecretString, LLMError } from './types.js';
13
+ import { SecretString, LLMError, CircuitBreaker, retry, parseRateLimitHeaders } from '@soleri/core';
14
14
  import type {
15
15
  LLMCallOptions,
16
16
  LLMCallResult,
17
17
  RouteEntry,
18
18
  RoutingConfig,
19
- } from './types.js';
20
- import { CircuitBreaker, retry, parseRateLimitHeaders } from './utils.js';
21
- import type { KeyPool } from './key-pool.js';
19
+ KeyPool,
20
+ } from '@soleri/core';
22
21
  import * as fs from 'node:fs';
23
22
  import * as path from 'node:path';
24
23
  import { homedir } from 'node:os';
@@ -1 +1 @@
1
- {"version":3,"file":"llm-client.js","sourceRoot":"","sources":["../../src/templates/llm-client.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAmB;IACnD,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAsCD,MAAM,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8PhB,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"llm-client.js","sourceRoot":"","sources":["../../src/templates/llm-client.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAmB;IACnD,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAqCD,MAAM,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8PhB,CAAC;AACF,CAAC"}
@@ -21,11 +21,10 @@ export function generatePackageJson(config) {
21
21
  dependencies: {
22
22
  '@anthropic-ai/sdk': '^0.39.0',
23
23
  '@modelcontextprotocol/sdk': '^1.12.1',
24
- 'better-sqlite3': '^11.8.1',
24
+ '@soleri/core': '^1.0.0',
25
25
  zod: '^3.24.2',
26
26
  },
27
27
  devDependencies: {
28
- '@types/better-sqlite3': '^7.6.12',
29
28
  '@types/node': '^22.13.4',
30
29
  '@vitest/coverage-v8': '^3.0.5',
31
30
  tsx: '^4.19.2',
@@ -1 +1 @@
1
- {"version":3,"file":"package-json.js","sourceRoot":"","sources":["../../src/templates/package-json.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,mBAAmB,CAAC,MAAmB;IACrD,MAAM,GAAG,GAAG;QACV,IAAI,EAAE,GAAG,MAAM,CAAC,EAAE,MAAM;QACxB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,eAAe;QACrB,GAAG,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,eAAe,EAAE;QAC9C,OAAO,EAAE;YACP,GAAG,EAAE,kBAAkB;YACvB,KAAK,EAAE,oCAAoC;YAC3C,KAAK,EAAE,oBAAoB;YAC3B,SAAS,EAAE,cAAc;YACzB,IAAI,EAAE,YAAY;YAClB,YAAY,EAAE,QAAQ;YACtB,eAAe,EAAE,uBAAuB;SACzC;QACD,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACpE,OAAO,EAAE,KAAK;QACd,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;QAC7B,YAAY,EAAE;YACZ,mBAAmB,EAAE,SAAS;YAC9B,2BAA2B,EAAE,SAAS;YACtC,gBAAgB,EAAE,SAAS;YAC3B,GAAG,EAAE,SAAS;SACf;QACD,eAAe,EAAE;YACf,uBAAuB,EAAE,SAAS;YAClC,aAAa,EAAE,UAAU;YACzB,qBAAqB,EAAE,QAAQ;YAC/B,GAAG,EAAE,SAAS;YACd,UAAU,EAAE,QAAQ;YACpB,MAAM,EAAE,QAAQ;SACjB;KACF,CAAC;IAEF,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACtC,CAAC"}
1
+ {"version":3,"file":"package-json.js","sourceRoot":"","sources":["../../src/templates/package-json.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,mBAAmB,CAAC,MAAmB;IACrD,MAAM,GAAG,GAAG;QACV,IAAI,EAAE,GAAG,MAAM,CAAC,EAAE,MAAM;QACxB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,eAAe;QACrB,GAAG,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,eAAe,EAAE;QAC9C,OAAO,EAAE;YACP,GAAG,EAAE,kBAAkB;YACvB,KAAK,EAAE,oCAAoC;YAC3C,KAAK,EAAE,oBAAoB;YAC3B,SAAS,EAAE,cAAc;YACzB,IAAI,EAAE,YAAY;YAClB,YAAY,EAAE,QAAQ;YACtB,eAAe,EAAE,uBAAuB;SACzC;QACD,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACpE,OAAO,EAAE,KAAK;QACd,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;QAC7B,YAAY,EAAE;YACZ,mBAAmB,EAAE,SAAS;YAC9B,2BAA2B,EAAE,SAAS;YACtC,cAAc,EAAE,QAAQ;YACxB,GAAG,EAAE,SAAS;SACf;QACD,eAAe,EAAE;YACf,aAAa,EAAE,UAAU;YACzB,qBAAqB,EAAE,QAAQ;YAC/B,GAAG,EAAE,SAAS;YACd,UAAU,EAAE,QAAQ;YACpB,MAAM,EAAE,QAAQ;SACjB;KACF,CAAC;IAEF,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACtC,CAAC"}
@@ -13,17 +13,14 @@ export function generateFacadesTest(config) {
13
13
  .map((d) => generateDomainDescribe(config.id, d))
14
14
  .join('\n\n');
15
15
  return `import { describe, it, expect, beforeEach, afterEach } from 'vitest';
16
- import { Vault } from '../vault/vault.js';
17
- import { Brain } from '../brain/brain.js';
18
- import type { IntelligenceEntry } from '../intelligence/types.js';
16
+ import { Vault, Brain, Planner, KeyPool } from '@soleri/core';
17
+ import type { IntelligenceEntry } from '@soleri/core';
19
18
  import { mkdirSync, readFileSync, rmSync, writeFileSync, existsSync } from 'node:fs';
20
19
  import { join } from 'node:path';
21
20
  import { tmpdir } from 'node:os';
22
21
  ${domainImports}
23
22
  import { createCoreFacade } from '../facades/core.facade.js';
24
- import { Planner } from '../planning/planner.js';
25
23
  import { LLMClient } from '../llm/llm-client.js';
26
- import { KeyPool } from '../llm/key-pool.js';
27
24
 
28
25
  function makeEntry(overrides: Partial<IntelligenceEntry> = {}): IntelligenceEntry {
29
26
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"test-facades.js","sourceRoot":"","sources":["../../src/templates/test-facades.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-facades.js","sourceRoot":"","sources":["../../src/templates/test-facades.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@soleri/forge",
3
- "version": "3.0.0",
3
+ "version": "4.0.0",
4
4
  "description": "Scaffold AI agents that learn, remember, and grow with you.",
5
5
  "keywords": [
6
6
  "agent",
@@ -44,15 +44,16 @@ describe('Scaffolder', () => {
44
44
  expect(preview.domains).toEqual(['data-pipelines', 'data-quality', 'etl']);
45
45
  expect(preview.files.length).toBeGreaterThan(15);
46
46
 
47
- // Should include README, setup script, and brain
47
+ // Should include README, setup script, and LLM client (static modules now in @soleri/core)
48
48
  const paths = preview.files.map((f) => f.path);
49
49
  expect(paths).toContain('README.md');
50
50
  expect(paths).toContain('scripts/setup.sh');
51
- expect(paths).toContain('src/brain/brain.ts');
52
- expect(paths).toContain('src/llm/types.ts');
53
51
  expect(paths).toContain('src/llm/llm-client.ts');
54
- expect(paths).toContain('src/__tests__/llm.test.ts');
55
- expect(paths).toContain('src/__tests__/brain.test.ts');
52
+ expect(paths).toContain('src/__tests__/facades.test.ts');
53
+ // Static modules should NOT be in preview (they live in @soleri/core now)
54
+ expect(paths).not.toContain('src/vault/vault.ts');
55
+ expect(paths).not.toContain('src/brain/brain.ts');
56
+ expect(paths).not.toContain('src/planning/planner.ts');
56
57
 
57
58
  // Should have domain facades + core facade
58
59
  expect(preview.facades).toHaveLength(4); // 3 domains + core
@@ -78,13 +79,14 @@ describe('Scaffolder', () => {
78
79
  const agentDir = join(tempDir, 'atlas');
79
80
 
80
81
  expect(existsSync(join(agentDir, 'src', 'facades'))).toBe(true);
81
- expect(existsSync(join(agentDir, 'src', 'vault'))).toBe(true);
82
82
  expect(existsSync(join(agentDir, 'src', 'intelligence', 'data'))).toBe(true);
83
83
  expect(existsSync(join(agentDir, 'src', 'identity'))).toBe(true);
84
84
  expect(existsSync(join(agentDir, 'src', 'activation'))).toBe(true);
85
- expect(existsSync(join(agentDir, 'src', 'planning'))).toBe(true);
86
- expect(existsSync(join(agentDir, 'src', 'brain'))).toBe(true);
87
85
  expect(existsSync(join(agentDir, 'src', 'llm'))).toBe(true);
86
+ // Static module directories should NOT exist (now in @soleri/core)
87
+ expect(existsSync(join(agentDir, 'src', 'vault'))).toBe(false);
88
+ expect(existsSync(join(agentDir, 'src', 'planning'))).toBe(false);
89
+ expect(existsSync(join(agentDir, 'src', 'brain'))).toBe(false);
88
90
  });
89
91
 
90
92
  it('should create valid package.json', () => {
@@ -94,9 +96,11 @@ describe('Scaffolder', () => {
94
96
  expect(pkg.name).toBe('atlas-mcp');
95
97
  expect(pkg.type).toBe('module');
96
98
  expect(pkg.dependencies['@modelcontextprotocol/sdk']).toBeDefined();
97
- expect(pkg.dependencies['better-sqlite3']).toBeDefined();
99
+ expect(pkg.dependencies['@soleri/core']).toBeDefined();
98
100
  expect(pkg.dependencies['zod']).toBeDefined();
99
101
  expect(pkg.dependencies['@anthropic-ai/sdk']).toBeDefined();
102
+ // better-sqlite3 is now transitive via @soleri/core
103
+ expect(pkg.dependencies['better-sqlite3']).toBeUndefined();
100
104
  });
101
105
 
102
106
  it('should create persona with correct config', () => {
@@ -120,8 +124,9 @@ describe('Scaffolder', () => {
120
124
  expect(files).toContain('data-quality.facade.ts');
121
125
  expect(files).toContain('etl.facade.ts');
122
126
  expect(files).toContain('core.facade.ts');
123
- expect(files).toContain('facade-factory.ts');
124
- expect(files).toContain('types.ts');
127
+ // facade-factory.ts and types.ts are now in @soleri/core
128
+ expect(files).not.toContain('facade-factory.ts');
129
+ expect(files).not.toContain('types.ts');
125
130
  });
126
131
 
127
132
  it('should create empty intelligence data files', () => {
@@ -139,7 +144,7 @@ describe('Scaffolder', () => {
139
144
  expect(bundle.entries).toEqual([]);
140
145
  });
141
146
 
142
- it('should create entry point importing all facades', () => {
147
+ it('should create entry point importing from @soleri/core', () => {
143
148
  scaffold(testConfig);
144
149
  const entry = readFileSync(join(tempDir, 'atlas', 'src', 'index.ts'), 'utf-8');
145
150
 
@@ -153,6 +158,9 @@ describe('Scaffolder', () => {
153
158
  expect(entry).toContain('KeyPool');
154
159
  expect(entry).toContain('loadKeyPoolConfig');
155
160
  expect(entry).toContain('Hello');
161
+ // Should import shared modules from @soleri/core
162
+ expect(entry).toContain("from '@soleri/core'");
163
+ expect(entry).toContain("loadKeyPoolConfig('atlas')");
156
164
  });
157
165
 
158
166
  it('should create .mcp.json for client config', () => {
@@ -225,56 +233,34 @@ describe('Scaffolder', () => {
225
233
  expect(isExecutable).toBe(true);
226
234
  });
227
235
 
228
- it('should create planner file', () => {
229
- scaffold(testConfig);
230
- const plannerPath = join(tempDir, 'atlas', 'src', 'planning', 'planner.ts');
231
- expect(existsSync(plannerPath)).toBe(true);
232
- const content = readFileSync(plannerPath, 'utf-8');
233
- expect(content).toContain('class Planner');
234
- expect(content).toContain('getExecuting');
235
- });
236
-
237
- it('should create LLM files', () => {
236
+ it('should create LLM client file importing from @soleri/core', () => {
238
237
  scaffold(testConfig);
239
238
  const llmDir = join(tempDir, 'atlas', 'src', 'llm');
240
- expect(existsSync(join(llmDir, 'types.ts'))).toBe(true);
241
- expect(existsSync(join(llmDir, 'utils.ts'))).toBe(true);
242
- expect(existsSync(join(llmDir, 'key-pool.ts'))).toBe(true);
239
+ // Only llm-client.ts should exist (types, utils, key-pool are in @soleri/core)
243
240
  expect(existsSync(join(llmDir, 'llm-client.ts'))).toBe(true);
241
+ expect(existsSync(join(llmDir, 'types.ts'))).toBe(false);
242
+ expect(existsSync(join(llmDir, 'utils.ts'))).toBe(false);
243
+ expect(existsSync(join(llmDir, 'key-pool.ts'))).toBe(false);
244
244
 
245
245
  const client = readFileSync(join(llmDir, 'llm-client.ts'), 'utf-8');
246
246
  expect(client).toContain('class LLMClient');
247
247
  expect(client).toContain('class ModelRouter');
248
248
  expect(client).toContain('.atlas');
249
-
250
- const keyPool = readFileSync(join(llmDir, 'key-pool.ts'), 'utf-8');
251
- expect(keyPool).toContain('class KeyPool');
252
- expect(keyPool).toContain('.atlas');
253
- });
254
-
255
- it('should create brain file with intelligence layer', () => {
256
- scaffold(testConfig);
257
- const brainPath = join(tempDir, 'atlas', 'src', 'brain', 'brain.ts');
258
- expect(existsSync(brainPath)).toBe(true);
259
- const content = readFileSync(brainPath, 'utf-8');
260
- expect(content).toContain('class Brain');
261
- expect(content).toContain('intelligentSearch');
262
- expect(content).toContain('enrichAndCapture');
263
- expect(content).toContain('recordFeedback');
264
- expect(content).toContain('rebuildVocabulary');
249
+ expect(client).toContain("from '@soleri/core'");
265
250
  });
266
251
 
267
- it('should create test files', () => {
252
+ it('should only create facades test file (static tests in @soleri/core)', () => {
268
253
  scaffold(testConfig);
269
254
  const testsDir = join(tempDir, 'atlas', 'src', '__tests__');
270
255
  const files = readdirSync(testsDir);
271
256
 
272
- expect(files).toContain('vault.test.ts');
273
- expect(files).toContain('loader.test.ts');
274
257
  expect(files).toContain('facades.test.ts');
275
- expect(files).toContain('planner.test.ts');
276
- expect(files).toContain('brain.test.ts');
277
- expect(files).toContain('llm.test.ts');
258
+ // Static module tests are now in @soleri/core
259
+ expect(files).not.toContain('vault.test.ts');
260
+ expect(files).not.toContain('loader.test.ts');
261
+ expect(files).not.toContain('planner.test.ts');
262
+ expect(files).not.toContain('brain.test.ts');
263
+ expect(files).not.toContain('llm.test.ts');
278
264
  });
279
265
 
280
266
  it('should generate facade tests referencing all domains', () => {
@@ -289,6 +275,8 @@ describe('Scaffolder', () => {
289
275
  expect(facadesTest).toContain('atlas_etl');
290
276
  expect(facadesTest).toContain('atlas_core');
291
277
  expect(facadesTest).toContain('createDataPipelinesFacade');
278
+ // Should import shared modules from @soleri/core
279
+ expect(facadesTest).toContain("from '@soleri/core'");
292
280
  // Activation ops should be tested
293
281
  expect(facadesTest).toContain('activate');
294
282
  expect(facadesTest).toContain('inject_claude_md');
@@ -149,7 +149,7 @@ export function create${pascalCase(domain)}Facade(vault: Vault): FacadeConfig {
149
149
 
150
150
  // ---------- Main installer ----------
151
151
 
152
- export interface InstallKnowledgeParams {
152
+ interface InstallKnowledgeParams {
153
153
  agentPath: string;
154
154
  bundlePath: string;
155
155
  generateFacades?: boolean;