deepclause-sdk 0.0.59 → 0.0.61

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 (103) hide show
  1. package/README.md +326 -57
  2. package/dist/cli/compile.d.ts +9 -0
  3. package/dist/cli/compile.d.ts.map +1 -1
  4. package/dist/cli/compile.js +106 -138
  5. package/dist/cli/compile.js.map +1 -1
  6. package/dist/cli/config.d.ts +74 -23
  7. package/dist/cli/config.d.ts.map +1 -1
  8. package/dist/cli/config.js +162 -58
  9. package/dist/cli/config.js.map +1 -1
  10. package/dist/cli/default-skills.d.ts +9 -0
  11. package/dist/cli/default-skills.d.ts.map +1 -0
  12. package/dist/cli/default-skills.js +175 -0
  13. package/dist/cli/default-skills.js.map +1 -0
  14. package/dist/cli/index.js +79 -14
  15. package/dist/cli/index.js.map +1 -1
  16. package/dist/cli/interactive.d.ts +2 -0
  17. package/dist/cli/interactive.d.ts.map +1 -0
  18. package/dist/cli/interactive.js +20 -0
  19. package/dist/cli/interactive.js.map +1 -0
  20. package/dist/cli/prompt.d.ts +1 -19
  21. package/dist/cli/prompt.d.ts.map +1 -1
  22. package/dist/cli/prompt.js +1 -869
  23. package/dist/cli/prompt.js.map +1 -1
  24. package/dist/cli/run.d.ts +7 -1
  25. package/dist/cli/run.d.ts.map +1 -1
  26. package/dist/cli/run.js +79 -337
  27. package/dist/cli/run.js.map +1 -1
  28. package/dist/cli/search.d.ts +1 -0
  29. package/dist/cli/search.d.ts.map +1 -1
  30. package/dist/cli/search.js +10 -4
  31. package/dist/cli/search.js.map +1 -1
  32. package/dist/cli/tools.d.ts +2 -2
  33. package/dist/cli/tools.d.ts.map +1 -1
  34. package/dist/cli/tools.js +30 -5
  35. package/dist/cli/tools.js.map +1 -1
  36. package/dist/cli/tui.d.ts +83 -0
  37. package/dist/cli/tui.d.ts.map +1 -0
  38. package/dist/cli/tui.js +3552 -0
  39. package/dist/cli/tui.js.map +1 -0
  40. package/dist/compiler_prompt.d.ts +1 -1
  41. package/dist/compiler_prompt.d.ts.map +1 -1
  42. package/dist/compiler_prompt.js +8 -10
  43. package/dist/compiler_prompt.js.map +1 -1
  44. package/dist/prolog/bridge.js +1 -1
  45. package/dist/prolog/bridge.js.map +1 -1
  46. package/dist/runner.d.ts.map +1 -1
  47. package/dist/runner.js +5 -0
  48. package/dist/runner.js.map +1 -1
  49. package/dist/system/assets/docs/CONDUCTOR_PROMPT.md +46 -0
  50. package/dist/system/assets/docs/DML_COMPILER_PROMPT.md +664 -0
  51. package/dist/system/assets/index.d.ts +9 -0
  52. package/dist/system/assets/index.d.ts.map +1 -0
  53. package/dist/system/assets/index.js +47 -0
  54. package/dist/system/assets/index.js.map +1 -0
  55. package/dist/system/assets/skills/conductor.dml +70 -0
  56. package/dist/system/assets/skills/skill-creator.dml +186 -0
  57. package/dist/system/config/model-slots.d.ts +34 -0
  58. package/dist/system/config/model-slots.d.ts.map +1 -0
  59. package/dist/system/config/model-slots.js +121 -0
  60. package/dist/system/config/model-slots.js.map +1 -0
  61. package/dist/system/runtime/agentvm-manager.d.ts +18 -0
  62. package/dist/system/runtime/agentvm-manager.d.ts.map +1 -0
  63. package/dist/system/runtime/agentvm-manager.js +98 -0
  64. package/dist/system/runtime/agentvm-manager.js.map +1 -0
  65. package/dist/system/runtime/catalog-skills.d.ts +45 -0
  66. package/dist/system/runtime/catalog-skills.d.ts.map +1 -0
  67. package/dist/system/runtime/catalog-skills.js +110 -0
  68. package/dist/system/runtime/catalog-skills.js.map +1 -0
  69. package/dist/system/runtime/conductor.d.ts +68 -0
  70. package/dist/system/runtime/conductor.d.ts.map +1 -0
  71. package/dist/system/runtime/conductor.js +407 -0
  72. package/dist/system/runtime/conductor.js.map +1 -0
  73. package/dist/system/runtime/console-capture.d.ts +9 -0
  74. package/dist/system/runtime/console-capture.d.ts.map +1 -0
  75. package/dist/system/runtime/console-capture.js +67 -0
  76. package/dist/system/runtime/console-capture.js.map +1 -0
  77. package/dist/system/runtime/dml-executor.d.ts +49 -0
  78. package/dist/system/runtime/dml-executor.d.ts.map +1 -0
  79. package/dist/system/runtime/dml-executor.js +185 -0
  80. package/dist/system/runtime/dml-executor.js.map +1 -0
  81. package/dist/system/runtime/dml-params.d.ts +11 -0
  82. package/dist/system/runtime/dml-params.d.ts.map +1 -0
  83. package/dist/system/runtime/dml-params.js +45 -0
  84. package/dist/system/runtime/dml-params.js.map +1 -0
  85. package/dist/system/runtime/runtime-tools.d.ts +20 -0
  86. package/dist/system/runtime/runtime-tools.d.ts.map +1 -0
  87. package/dist/system/runtime/runtime-tools.js +170 -0
  88. package/dist/system/runtime/runtime-tools.js.map +1 -0
  89. package/dist/system/runtime/shell-manager.d.ts +20 -0
  90. package/dist/system/runtime/shell-manager.d.ts.map +1 -0
  91. package/dist/system/runtime/shell-manager.js +133 -0
  92. package/dist/system/runtime/shell-manager.js.map +1 -0
  93. package/dist/system/runtime/skill-creator.d.ts +33 -0
  94. package/dist/system/runtime/skill-creator.d.ts.map +1 -0
  95. package/dist/system/runtime/skill-creator.js +529 -0
  96. package/dist/system/runtime/skill-creator.js.map +1 -0
  97. package/dist/system/runtime/token-usage.d.ts +16 -0
  98. package/dist/system/runtime/token-usage.d.ts.map +1 -0
  99. package/dist/system/runtime/token-usage.js +45 -0
  100. package/dist/system/runtime/token-usage.js.map +1 -0
  101. package/dist/tools.js +1 -1
  102. package/dist/tools.js.map +1 -1
  103. package/package.json +4 -3
@@ -6,6 +6,9 @@
6
6
  import { z } from 'zod';
7
7
  import * as fs from 'fs/promises';
8
8
  import * as path from 'path';
9
+ import { writeDefaultSkillSeeds } from './default-skills.js';
10
+ import { DEFAULT_MODEL_IDS, DEFAULT_TEMPERATURES, buildModelOverride, formatModelId, normalizeModelId, resolveModelSlotConfig, } from '../system/config/model-slots.js';
11
+ export { buildModelOverride } from '../system/config/model-slots.js';
9
12
  // =============================================================================
10
13
  // Configuration Schema
11
14
  // =============================================================================
@@ -31,21 +34,33 @@ const ProvidersSchema = z.object({
31
34
  google: ProviderConfigSchema.optional(),
32
35
  openrouter: ProviderConfigSchema.optional()
33
36
  }).optional().default({});
37
+ const ModelsSchema = z.object({
38
+ gateway: z.string().min(1).default(DEFAULT_MODEL_IDS.gateway),
39
+ run: z.string().min(1).default(DEFAULT_MODEL_IDS.run),
40
+ compile: z.string().min(1).default(DEFAULT_MODEL_IDS.compile),
41
+ });
42
+ const TemperaturesSchema = z.object({
43
+ gateway: z.number().min(0).max(2).default(DEFAULT_TEMPERATURES.gateway),
44
+ run: z.number().min(0).max(2).default(DEFAULT_TEMPERATURES.run),
45
+ compile: z.number().min(0).max(2).default(DEFAULT_TEMPERATURES.compile),
46
+ });
34
47
  export const ConfigSchema = z.object({
35
- model: z.string().min(1, 'Model is required'),
36
- provider: z.enum(['openai', 'anthropic', 'google', 'openrouter']).default('openai'),
48
+ models: ModelsSchema.default(DEFAULT_MODEL_IDS),
49
+ temperatures: TemperaturesSchema.default(DEFAULT_TEMPERATURES),
37
50
  providers: ProvidersSchema,
38
51
  mcp: MCPConfigSchema.optional().default({ servers: {} }),
39
52
  agentvm: AgentVMConfigSchema,
40
53
  dmlBase: z.string().optional().default('.deepclause/tools'),
41
- workspace: z.string().optional().default('./')
54
+ workspace: z.string().optional().default('./'),
55
+ model: z.string().optional(),
56
+ provider: z.enum(['openai', 'anthropic', 'google', 'openrouter']).optional(),
42
57
  });
43
58
  // =============================================================================
44
59
  // Default Configuration
45
60
  // =============================================================================
46
61
  const DEFAULT_CONFIG = {
47
- model: 'gpt-4o',
48
- provider: 'openai',
62
+ models: { ...DEFAULT_MODEL_IDS },
63
+ temperatures: { ...DEFAULT_TEMPERATURES },
49
64
  providers: {},
50
65
  mcp: { servers: {} },
51
66
  agentvm: { network: false },
@@ -90,12 +105,17 @@ export async function initConfig(workspaceRoot, options = {}) {
90
105
  await fs.mkdir(configDir, { recursive: true });
91
106
  await fs.mkdir(toolsDir, { recursive: true });
92
107
  // Create config with optional model override
108
+ const initialModelId = options.model ? normalizeModelId(options.model) : DEFAULT_MODEL_IDS.run;
93
109
  const config = {
94
110
  ...DEFAULT_CONFIG,
95
- model: options.model || DEFAULT_CONFIG.model
111
+ models: {
112
+ gateway: initialModelId,
113
+ run: initialModelId,
114
+ compile: initialModelId,
115
+ },
96
116
  };
97
117
  // Write config
98
- await fs.writeFile(configPath, JSON.stringify(config, null, 2) + '\n');
118
+ await fs.writeFile(configPath, serializeConfig(config));
99
119
  // Create .gitignore for the .deepclause directory
100
120
  const gitignorePath = path.join(configDir, '.gitignore');
101
121
  const gitignoreContent = `# DeepClause generated files
@@ -106,6 +126,7 @@ export async function initConfig(workspaceRoot, options = {}) {
106
126
  # !tools/*.dml
107
127
  `;
108
128
  await fs.writeFile(gitignorePath, gitignoreContent);
129
+ await writeDefaultSkillSeeds(toolsDir, initialModelId);
109
130
  }
110
131
  /**
111
132
  * Load and validate configuration
@@ -125,8 +146,9 @@ export async function loadConfig(workspaceRoot) {
125
146
  }
126
147
  // Resolve environment variables in config
127
148
  const resolvedConfig = resolveEnvVars(rawConfig);
149
+ const migratedConfig = migrateLegacyConfig(resolvedConfig);
128
150
  // Validate
129
- return validateConfig(resolvedConfig);
151
+ return validateConfig(migratedConfig);
130
152
  }
131
153
  /**
132
154
  * Validate configuration object
@@ -139,72 +161,89 @@ export function validateConfig(config) {
139
161
  .join('\n');
140
162
  throw new Error(`Invalid configuration:\n${errors}`);
141
163
  }
142
- return result.data;
164
+ return {
165
+ ...result.data,
166
+ models: {
167
+ gateway: normalizeModelId(result.data.models.gateway),
168
+ run: normalizeModelId(result.data.models.run),
169
+ compile: normalizeModelId(result.data.models.compile),
170
+ },
171
+ };
143
172
  }
144
173
  /**
145
- * Parse a model string in format "provider/model" or just "model"
146
- * If no provider specified, attempts to infer from model name
174
+ * Parse a model string in either canonical provider:model form, legacy provider/model form,
175
+ * or just model name form.
147
176
  */
148
177
  export function parseModelString(modelString) {
149
- if (!modelString || modelString.trim() === '') {
150
- throw new Error('Invalid model: model name cannot be empty');
151
- }
152
- // Check for provider/model format
153
- if (modelString.includes('/')) {
154
- const [providerPart, ...modelParts] = modelString.split('/');
155
- const provider = providerPart.toLowerCase();
156
- const model = modelParts.join('/'); // Handle models with / in name
157
- if (!['openai', 'anthropic', 'google', 'openrouter'].includes(provider)) {
158
- throw new Error(`Unknown provider: ${provider}. Valid providers: openai, anthropic, google, openrouter`);
159
- }
160
- return { provider, model };
161
- }
162
- // Infer provider from model name
163
- const model = modelString;
164
- let provider;
165
- if (model.startsWith('gpt-') || model.startsWith('o1') || model.startsWith('o3')) {
166
- provider = 'openai';
167
- }
168
- else if (model.startsWith('claude-')) {
169
- provider = 'anthropic';
170
- }
171
- else if (model.startsWith('gemini-')) {
172
- provider = 'google';
173
- }
174
- else {
175
- // Default to openrouter for unknown models
176
- provider = 'openrouter';
177
- }
178
- return { provider, model };
178
+ return normalizeModelId(modelString);
179
179
  }
180
180
  /**
181
- * Format provider and model as a single string
181
+ * Format a model id as canonical provider:model
182
182
  */
183
- export function formatModelString(provider, model) {
184
- return `${provider}/${model}`;
183
+ export function formatModelString(modelId) {
184
+ return formatModelId(modelId);
185
185
  }
186
186
  /**
187
- * Set the default model in configuration
188
- * Accepts format: "provider/model" or just "model" (provider inferred)
187
+ * Set the default model in configuration.
188
+ * When slot is omitted, all slots are updated for backward compatibility.
189
189
  */
190
- export async function setModel(workspaceRoot, modelString) {
191
- const { provider, model } = parseModelString(modelString);
190
+ export async function setModel(workspaceRoot, modelString, slot) {
191
+ const modelId = parseModelString(modelString);
192
192
  const config = await loadConfig(workspaceRoot);
193
- config.model = model;
194
- config.provider = provider;
193
+ const updatedSlots = slot ? [slot] : ['gateway', 'run', 'compile'];
194
+ for (const nextSlot of updatedSlots) {
195
+ config.models[nextSlot] = modelId;
196
+ }
195
197
  const configPath = getConfigPath(workspaceRoot);
196
- await fs.writeFile(configPath, JSON.stringify(config, null, 2) + '\n');
197
- return { provider, model };
198
+ await fs.writeFile(configPath, serializeConfig(config));
199
+ return { modelId, updatedSlots };
198
200
  }
199
201
  /**
200
- * Get the current model from configuration
202
+ * Get the current model configuration from configuration
201
203
  */
202
204
  export async function showModel(workspaceRoot) {
203
205
  const config = await loadConfig(workspaceRoot);
206
+ const lines = ['gateway', 'run', 'compile'].map((slotName) => {
207
+ const modelId = formatModelString(config.models[slotName]);
208
+ const temperature = config.temperatures[slotName];
209
+ return `${slotName}: ${modelId} (temperature=${temperature})`;
210
+ });
204
211
  return {
205
- provider: config.provider,
206
- model: config.model,
207
- formatted: formatModelString(config.provider, config.model)
212
+ models: { ...config.models },
213
+ temperatures: { ...config.temperatures },
214
+ formatted: lines.join('\n'),
215
+ };
216
+ }
217
+ export function resolveModelSlot(config, slot, overrides = {}) {
218
+ return resolveModelSlotConfig(config, slot, overrides);
219
+ }
220
+ export function applyResolvedModelConfig(selection) {
221
+ if (!selection.apiKey) {
222
+ return;
223
+ }
224
+ switch (selection.provider) {
225
+ case 'openai':
226
+ process.env.OPENAI_API_KEY = selection.apiKey;
227
+ break;
228
+ case 'anthropic':
229
+ process.env.ANTHROPIC_API_KEY = selection.apiKey;
230
+ break;
231
+ case 'google':
232
+ process.env.GOOGLE_GENERATIVE_AI_API_KEY = selection.apiKey;
233
+ break;
234
+ case 'openrouter':
235
+ process.env.OPENROUTER_API_KEY = selection.apiKey;
236
+ break;
237
+ }
238
+ }
239
+ export function getDefaultConfig() {
240
+ return {
241
+ ...DEFAULT_CONFIG,
242
+ models: { ...DEFAULT_CONFIG.models },
243
+ temperatures: { ...DEFAULT_CONFIG.temperatures },
244
+ providers: { ...DEFAULT_CONFIG.providers },
245
+ mcp: { servers: {} },
246
+ agentvm: { network: DEFAULT_CONFIG.agentvm?.network ?? false },
208
247
  };
209
248
  }
210
249
  /**
@@ -212,11 +251,19 @@ export async function showModel(workspaceRoot) {
212
251
  */
213
252
  export async function updateConfig(workspaceRoot, updates) {
214
253
  const config = await loadConfig(workspaceRoot);
215
- const updated = { ...config, ...updates };
254
+ const updated = {
255
+ ...config,
256
+ ...updates,
257
+ models: { ...config.models, ...updates.models },
258
+ temperatures: { ...config.temperatures, ...updates.temperatures },
259
+ providers: { ...config.providers, ...updates.providers },
260
+ mcp: updates.mcp ? { ...config.mcp, ...updates.mcp } : config.mcp,
261
+ agentvm: updates.agentvm ? { ...config.agentvm, ...updates.agentvm } : config.agentvm,
262
+ };
216
263
  // Re-validate
217
264
  const validated = validateConfig(updated);
218
265
  const configPath = getConfigPath(workspaceRoot);
219
- await fs.writeFile(configPath, JSON.stringify(validated, null, 2) + '\n');
266
+ await fs.writeFile(configPath, serializeConfig(validated));
220
267
  return validated;
221
268
  }
222
269
  // =============================================================================
@@ -251,6 +298,54 @@ function resolveEnvVars(obj) {
251
298
  }
252
299
  return obj;
253
300
  }
301
+ function migrateLegacyConfig(config) {
302
+ if (config === null || typeof config !== 'object' || Array.isArray(config)) {
303
+ return config;
304
+ }
305
+ const record = { ...config };
306
+ const legacyModel = typeof record.model === 'string' ? record.model : undefined;
307
+ const legacyProvider = typeof record.provider === 'string' ? record.provider : undefined;
308
+ const legacyModelId = legacyModel ? buildModelOverride(legacyModel, legacyProvider) : undefined;
309
+ const rawModels = record.models && typeof record.models === 'object' && !Array.isArray(record.models)
310
+ ? record.models
311
+ : {};
312
+ const rawTemperatures = record.temperatures && typeof record.temperatures === 'object' && !Array.isArray(record.temperatures)
313
+ ? record.temperatures
314
+ : {};
315
+ record.models = {
316
+ gateway: typeof rawModels.gateway === 'string'
317
+ ? normalizeModelId(rawModels.gateway)
318
+ : legacyModelId ?? DEFAULT_MODEL_IDS.gateway,
319
+ run: typeof rawModels.run === 'string'
320
+ ? normalizeModelId(rawModels.run)
321
+ : legacyModelId ?? DEFAULT_MODEL_IDS.run,
322
+ compile: typeof rawModels.compile === 'string'
323
+ ? normalizeModelId(rawModels.compile)
324
+ : legacyModelId ?? DEFAULT_MODEL_IDS.compile,
325
+ };
326
+ record.temperatures = {
327
+ gateway: coerceTemperature(rawTemperatures.gateway, DEFAULT_TEMPERATURES.gateway),
328
+ run: coerceTemperature(rawTemperatures.run, DEFAULT_TEMPERATURES.run),
329
+ compile: coerceTemperature(rawTemperatures.compile, DEFAULT_TEMPERATURES.compile),
330
+ };
331
+ return record;
332
+ }
333
+ function coerceTemperature(value, fallback) {
334
+ if (typeof value === 'number' && value >= 0 && value <= 2) {
335
+ return value;
336
+ }
337
+ if (typeof value === 'string') {
338
+ const parsed = Number.parseFloat(value);
339
+ if (Number.isFinite(parsed) && parsed >= 0 && parsed <= 2) {
340
+ return parsed;
341
+ }
342
+ }
343
+ return fallback;
344
+ }
345
+ function serializeConfig(config) {
346
+ const { model, provider, ...rest } = config;
347
+ return JSON.stringify(rest, null, 2) + '\n';
348
+ }
254
349
  /**
255
350
  * Check if configuration exists
256
351
  */
@@ -263,6 +358,15 @@ export async function configExists(workspaceRoot) {
263
358
  return false;
264
359
  }
265
360
  }
361
+ export async function deepClauseDirExists(workspaceRoot) {
362
+ try {
363
+ await fs.access(getConfigDir(workspaceRoot));
364
+ return true;
365
+ }
366
+ catch {
367
+ return false;
368
+ }
369
+ }
266
370
  /**
267
371
  * Get list of configured MCP servers
268
372
  */
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/cli/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,gFAAgF;AAChF,uBAAuB;AACvB,gFAAgF;AAEhF,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,gCAAgC,CAAC;IAC5D,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAChD,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;CACjD,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/B,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;CAC1D,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,gEAAgE;IAChE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CAC/C,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;AAE1C,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC/B,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/B,MAAM,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IACvC,SAAS,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IAC1C,MAAM,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IACvC,UAAU,EAAE,oBAAoB,CAAC,QAAQ,EAAE;CAC5C,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AAE1B,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,mBAAmB,CAAC;IAC7C,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;IACnF,SAAS,EAAE,eAAe;IAC1B,GAAG,EAAE,eAAe,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IACxD,OAAO,EAAE,mBAAmB;IAC5B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC;IAC3D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;CAC/C,CAAC,CAAC;AAOH,gFAAgF;AAChF,wBAAwB;AACxB,gFAAgF;AAEhF,MAAM,cAAc,GAAW;IAC7B,KAAK,EAAE,QAAQ;IACf,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,EAAE;IACb,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;IACpB,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;IAC3B,OAAO,EAAE,mBAAmB;IAC5B,SAAS,EAAE,IAAI;CAChB,CAAC;AAEF,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF,MAAM,UAAU,YAAY,CAAC,aAAqB;IAChD,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,aAAqB;IACjD,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,aAAqB;IAC/C,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC,CAAC;AACzD,CAAC;AAED,gFAAgF;AAChF,2BAA2B;AAC3B,gFAAgF;AAEhF;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,aAAqB,EACrB,UAA+C,EAAE;IAEjD,MAAM,SAAS,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC;IAChD,MAAM,QAAQ,GAAG,WAAW,CAAC,aAAa,CAAC,CAAC;IAE5C,4BAA4B;IAC5B,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC5B,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CACb,yDAAyD,CAC1D,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,qBAAqB;IACrB,MAAM,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE9C,6CAA6C;IAC7C,MAAM,MAAM,GAAW;QACrB,GAAG,cAAc;QACjB,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,cAAc,CAAC,KAAK;KAC7C,CAAC;IAEF,eAAe;IACf,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IAEvE,kDAAkD;IAClD,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IACzD,MAAM,gBAAgB,GAAG;;;;;;CAM1B,CAAC;IACA,MAAM,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;AACtD,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,aAAqB;IACpD,MAAM,UAAU,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC;IAEhD,IAAI,SAAkB,CAAC;IACvB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACvD,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CACb,8BAA8B,UAAU,gCAAgC,CACzE,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,0BAA2B,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,0CAA0C;IAC1C,MAAM,cAAc,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IAEjD,WAAW;IACX,OAAO,cAAc,CAAC,cAAc,CAAC,CAAC;AACxC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,MAAe;IAC5C,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAE9C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM;aAC/B,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;aAC7D,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,2BAA2B,MAAM,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC;AACrB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,WAAmB;IAClD,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IAED,kCAAkC;IAClC,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,CAAC,YAAY,EAAE,GAAG,UAAU,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7D,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,EAAc,CAAC;QACxD,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,+BAA+B;QAEnE,IAAI,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxE,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,0DAA0D,CAAC,CAAC;QAC3G,CAAC;QAED,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC7B,CAAC;IAED,iCAAiC;IACjC,MAAM,KAAK,GAAG,WAAW,CAAC;IAC1B,IAAI,QAAkB,CAAC;IAEvB,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACjF,QAAQ,GAAG,QAAQ,CAAC;IACtB,CAAC;SAAM,IAAI,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACvC,QAAQ,GAAG,WAAW,CAAC;IACzB,CAAC;SAAM,IAAI,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACvC,QAAQ,GAAG,QAAQ,CAAC;IACtB,CAAC;SAAM,CAAC;QACN,2CAA2C;QAC3C,QAAQ,GAAG,YAAY,CAAC;IAC1B,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAkB,EAAE,KAAa;IACjE,OAAO,GAAG,QAAQ,IAAI,KAAK,EAAE,CAAC;AAChC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,aAAqB,EAAE,WAAmB;IACvE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAE1D,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,aAAa,CAAC,CAAC;IAC/C,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAE3B,MAAM,UAAU,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC;IAChD,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IAEvE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,aAAqB;IACnD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,aAAa,CAAC,CAAC;IAC/C,OAAO;QACL,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,SAAS,EAAE,iBAAiB,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC;KAC5D,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,aAAqB,EACrB,OAAwB;IAExB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,aAAa,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,EAAE,GAAG,MAAM,EAAE,GAAG,OAAO,EAAE,CAAC;IAE1C,cAAc;IACd,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IAE1C,MAAM,UAAU,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC;IAChD,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IAE1E,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,gFAAgF;AAChF,mBAAmB;AACnB,gFAAgF;AAEhF;;;GAGG;AACH,SAAS,cAAc,CAAC,GAAY;IAClC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,kCAAkC;QAClC,OAAO,GAAG,CAAC,OAAO,CAAC,sCAAsC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;YAClF,MAAM,OAAO,GAAG,MAAM,IAAI,KAAK,CAAC;YAChC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACnC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,8DAA8D;gBAC9D,OAAO,KAAK,CAAC;YACf,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5C,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/C,MAAM,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,aAAqB;IACtD,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,MAAc;IAC1C,OAAO,MAAM,CAAC,GAAG,EAAE,OAAO,IAAI,EAAE,CAAC;AACnC,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/cli/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { MetaFile } from './compile.js';
2
+ export interface DefaultSkillSeed {
3
+ slug: string;
4
+ dml: string;
5
+ meta: MetaFile;
6
+ }
7
+ export declare function writeDefaultSkillSeeds(toolsDir: string, modelId: string): Promise<void>;
8
+ export declare function getDefaultSkillSeeds(modelId: string, compiledAt?: string): DefaultSkillSeed[];
9
+ //# sourceMappingURL=default-skills.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-skills.d.ts","sourceRoot":"","sources":["../../src/cli/default-skills.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,QAAQ,CAAC;CAChB;AA8GD,wBAAsB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAO7F;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,SAA2B,GAAG,gBAAgB,EAAE,CAuB/G"}
@@ -0,0 +1,175 @@
1
+ import { createHash } from 'crypto';
2
+ import * as fs from 'fs/promises';
3
+ import * as path from 'path';
4
+ const RESEARCH_SEARCH_READER_DML = `% Deep research helper skill that turns raw search results into readable notes.
5
+
6
+ tool(search_web(Query, Results),
7
+ "Search the web for background sources and evergreen references.") :-
8
+ exec(web_search(query: Query, count: 8), Results).
9
+
10
+ tool(search_news(Query, Results),
11
+ "Search recent news when the topic is time-sensitive or fast-moving.") :-
12
+ exec(news_search(query: Query, count: 5), Results).
13
+
14
+ agent_main(Query) :-
15
+ system("You turn raw search results into readable research notes.
16
+ - Always call search_web.
17
+ - Also call search_news when the query is time-sensitive, recent, or news-driven.
18
+ - Convert the raw results into concise Markdown that a parent research skill can reuse.
19
+ - Under Sources, list each source with its title, URL, and a one-line reason it matters.
20
+ - Do not invent facts. If the search results are sparse or conflicting, say so clearly."),
21
+
22
+ output("Gathering search results..."),
23
+ task("For the query '{Query}':
24
+ 1. Call search_web.
25
+ 2. Call search_news as well if recency matters.
26
+ 3. Convert the raw search results into a readable Markdown brief with these sections:
27
+ - Overview
28
+ - Key Findings
29
+ - Sources
30
+ Under Sources, list each source with its title, URL, and one-line relevance note.
31
+ Store the final brief in SearchBrief.", SearchBrief),
32
+
33
+ answer(SearchBrief).
34
+ `;
35
+ const DEEP_RESEARCH_DML = `% Deep research skill that builds a research plan, confirms it, and writes a cited report.
36
+ % Adapted from the platform default deep-research example, but delegates searching to a child skill.
37
+
38
+ tool(search_topic(Query, Summary),
39
+ "Delegate a focused search to the research-search-reader child skill and return a readable digest.") :-
40
+ exec(run_skill(slug: "research-search-reader", args: [Query]), Raw),
41
+ ( get_dict(answer, Raw, Answer) ->
42
+ Summary = Answer
43
+ ; get_dict(error, Raw, Error) ->
44
+ format(string(Summary), "Search helper failed: ~w", [Error])
45
+ ; Summary = "Search helper returned no final answer."
46
+ ).
47
+
48
+ tool(ask_user(Prompt, Response), "Ask the user for clarification or plan approval.") :-
49
+ exec(ask_user(prompt: Prompt), Result),
50
+ get_dict(user_response, Result, Response).
51
+
52
+ agent_main(Question) :-
53
+ system("You are a meticulous research assistant. Your goal is to conduct comprehensive research, synthesize findings, and generate a detailed report with citations.
54
+ - If the user's question is ambiguous, you must ask for clarification using the ask_user tool.
55
+ - Build a clear research plan before doing the full investigation.
56
+ - Use the search_topic tool to gather readable research notes with source links.
57
+ - For controversial topics, present multiple viewpoints.
58
+ - If you find limited sources, state this and describe your confidence level.
59
+ - Always cite sources inline and include a Sources section at the end."),
60
+
61
+ output("Step 1: Analyzing the research question..."),
62
+ task("Analyze the user's question to identify key topics and sub-questions for research. Question: '{Question}'. Store the key topics as a formatted list in KeyTopics.", KeyTopics),
63
+
64
+ output("Step 2: Creating a research plan..."),
65
+ task("Based on these key topics, create a step-by-step research plan. Topics: {KeyTopics}. The plan should be clear and concise. Store the plan as a formatted string in ResearchPlan.", ResearchPlan),
66
+
67
+ output("Step 3: Confirming the plan with the user..."),
68
+ confirm_plan(ResearchPlan),
69
+
70
+ output("Step 4: Executing research and generating the report..."),
71
+ task("Execute the approved research plan: {ResearchPlan}.
72
+ For each topic or sub-question, call search_topic to gather readable research notes with source links.
73
+ Synthesize the returned digests into a coherent, well-structured Markdown report.
74
+ The report must include inline citations and a Sources section at the end.
75
+ Store the final, complete report in FinalReport.", FinalReport),
76
+
77
+ output("Step 5: Saving the report to a file..."),
78
+ generate_filename(Question, Filename),
79
+ open(Filename, write, Stream),
80
+ write(Stream, FinalReport),
81
+ close(Stream),
82
+
83
+ format(string(AnswerMsg), "Research complete. Report saved to ~s.", [Filename]),
84
+ answer(AnswerMsg).
85
+
86
+ confirm_plan(Plan) :-
87
+ task("Present this research plan to the user and get their approval:
88
+
89
+ {Plan}
90
+
91
+ Use the ask_user tool to present the plan and ask if they approve.
92
+ - If they approve (yes/ok/looks good/etc.), set Approved to 'yes'.
93
+ - If they want changes, use ask_user to clarify what changes they want, then revise the plan and ask again. Continue this dialog until they approve.
94
+ - If they want to cancel entirely, set Approved to 'cancelled'.
95
+
96
+ Store 'yes' or 'cancelled' in Approved.", Approved),
97
+ ( Approved == "yes" ->
98
+ output("Plan approved. Proceeding with research.")
99
+ ;
100
+ answer("Research cancelled by user."), !, fail
101
+ ).
102
+
103
+ generate_filename(Question, Filename) :-
104
+ task("Generate a short, file-safe slug from this question: '{Question}'. For example, 'What is the future of AI?' could become 'future_of_ai'. Use underscores instead of spaces. Store only the slug in Slug.", Slug),
105
+ atom_string(SlugAtom, Slug),
106
+ atom_concat('report_', SlugAtom, BaseName),
107
+ atom_concat(BaseName, '.md', FilenameAtom),
108
+ atom_string(FilenameAtom, Filename).
109
+ `;
110
+ export async function writeDefaultSkillSeeds(toolsDir, modelId) {
111
+ const seeds = getDefaultSkillSeeds(modelId);
112
+ for (const seed of seeds) {
113
+ await fs.writeFile(path.join(toolsDir, `${seed.slug}.dml`), seed.dml, 'utf8');
114
+ await fs.writeFile(path.join(toolsDir, `${seed.slug}.meta.json`), JSON.stringify(seed.meta, null, 2) + '\n', 'utf8');
115
+ }
116
+ }
117
+ export function getDefaultSkillSeeds(modelId, compiledAt = new Date().toISOString()) {
118
+ const provider = getProviderFromModelId(modelId);
119
+ return [
120
+ createSeed({
121
+ slug: 'research-search-reader',
122
+ description: 'Helper skill that wraps web and news search and rewrites raw results into readable research notes.',
123
+ dml: RESEARCH_SEARCH_READER_DML,
124
+ parameters: [
125
+ { name: 'query', description: 'Focused search query to summarize', required: true, position: 0 },
126
+ ],
127
+ tools: ['news_search', 'web_search'],
128
+ }, modelId, provider, compiledAt),
129
+ createSeed({
130
+ slug: 'deep-research',
131
+ description: 'Conducts multi-source web research on any topic and saves a cited Markdown report to your workspace.',
132
+ dml: DEEP_RESEARCH_DML,
133
+ parameters: [
134
+ { name: 'question', description: 'Research question or topic', required: true, position: 0 },
135
+ ],
136
+ tools: ['ask_user', 'run_skill'],
137
+ }, modelId, provider, compiledAt),
138
+ ];
139
+ }
140
+ function createSeed(seed, modelId, provider, compiledAt) {
141
+ const dml = ensureTrailingNewline(seed.dml);
142
+ const sourceHash = `sha256:${createHash('sha256').update(dml).digest('hex').slice(0, 16)}`;
143
+ return {
144
+ slug: seed.slug,
145
+ dml,
146
+ meta: {
147
+ version: '1.0.0',
148
+ source: `deepclause:init:${seed.slug}`,
149
+ sourceHash,
150
+ compiledAt,
151
+ model: modelId,
152
+ provider,
153
+ description: seed.description,
154
+ parameters: seed.parameters,
155
+ tools: [...seed.tools],
156
+ history: [
157
+ {
158
+ version: 1,
159
+ timestamp: compiledAt,
160
+ sourceHash,
161
+ model: modelId,
162
+ provider,
163
+ },
164
+ ],
165
+ },
166
+ };
167
+ }
168
+ function getProviderFromModelId(modelId) {
169
+ const [provider] = modelId.split(':', 1);
170
+ return provider || 'openai';
171
+ }
172
+ function ensureTrailingNewline(value) {
173
+ return value.endsWith('\n') ? value : `${value}\n`;
174
+ }
175
+ //# sourceMappingURL=default-skills.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-skills.js","sourceRoot":"","sources":["../../src/cli/default-skills.ts"],"names":[],"mappings":"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"}