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.
- package/README.md +326 -57
- package/dist/cli/compile.d.ts +9 -0
- package/dist/cli/compile.d.ts.map +1 -1
- package/dist/cli/compile.js +106 -138
- package/dist/cli/compile.js.map +1 -1
- package/dist/cli/config.d.ts +74 -23
- package/dist/cli/config.d.ts.map +1 -1
- package/dist/cli/config.js +162 -58
- package/dist/cli/config.js.map +1 -1
- package/dist/cli/default-skills.d.ts +9 -0
- package/dist/cli/default-skills.d.ts.map +1 -0
- package/dist/cli/default-skills.js +175 -0
- package/dist/cli/default-skills.js.map +1 -0
- package/dist/cli/index.js +79 -14
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/interactive.d.ts +2 -0
- package/dist/cli/interactive.d.ts.map +1 -0
- package/dist/cli/interactive.js +20 -0
- package/dist/cli/interactive.js.map +1 -0
- package/dist/cli/prompt.d.ts +1 -19
- package/dist/cli/prompt.d.ts.map +1 -1
- package/dist/cli/prompt.js +1 -869
- package/dist/cli/prompt.js.map +1 -1
- package/dist/cli/run.d.ts +7 -1
- package/dist/cli/run.d.ts.map +1 -1
- package/dist/cli/run.js +79 -337
- package/dist/cli/run.js.map +1 -1
- package/dist/cli/search.d.ts +1 -0
- package/dist/cli/search.d.ts.map +1 -1
- package/dist/cli/search.js +10 -4
- package/dist/cli/search.js.map +1 -1
- package/dist/cli/tools.d.ts +2 -2
- package/dist/cli/tools.d.ts.map +1 -1
- package/dist/cli/tools.js +30 -5
- package/dist/cli/tools.js.map +1 -1
- package/dist/cli/tui.d.ts +83 -0
- package/dist/cli/tui.d.ts.map +1 -0
- package/dist/cli/tui.js +3552 -0
- package/dist/cli/tui.js.map +1 -0
- package/dist/compiler_prompt.d.ts +1 -1
- package/dist/compiler_prompt.d.ts.map +1 -1
- package/dist/compiler_prompt.js +8 -10
- package/dist/compiler_prompt.js.map +1 -1
- package/dist/prolog/bridge.js +1 -1
- package/dist/prolog/bridge.js.map +1 -1
- package/dist/runner.d.ts.map +1 -1
- package/dist/runner.js +5 -0
- package/dist/runner.js.map +1 -1
- package/dist/system/assets/docs/CONDUCTOR_PROMPT.md +46 -0
- package/dist/system/assets/docs/DML_COMPILER_PROMPT.md +664 -0
- package/dist/system/assets/index.d.ts +9 -0
- package/dist/system/assets/index.d.ts.map +1 -0
- package/dist/system/assets/index.js +47 -0
- package/dist/system/assets/index.js.map +1 -0
- package/dist/system/assets/skills/conductor.dml +70 -0
- package/dist/system/assets/skills/skill-creator.dml +186 -0
- package/dist/system/config/model-slots.d.ts +34 -0
- package/dist/system/config/model-slots.d.ts.map +1 -0
- package/dist/system/config/model-slots.js +121 -0
- package/dist/system/config/model-slots.js.map +1 -0
- package/dist/system/runtime/agentvm-manager.d.ts +18 -0
- package/dist/system/runtime/agentvm-manager.d.ts.map +1 -0
- package/dist/system/runtime/agentvm-manager.js +98 -0
- package/dist/system/runtime/agentvm-manager.js.map +1 -0
- package/dist/system/runtime/catalog-skills.d.ts +45 -0
- package/dist/system/runtime/catalog-skills.d.ts.map +1 -0
- package/dist/system/runtime/catalog-skills.js +110 -0
- package/dist/system/runtime/catalog-skills.js.map +1 -0
- package/dist/system/runtime/conductor.d.ts +68 -0
- package/dist/system/runtime/conductor.d.ts.map +1 -0
- package/dist/system/runtime/conductor.js +407 -0
- package/dist/system/runtime/conductor.js.map +1 -0
- package/dist/system/runtime/console-capture.d.ts +9 -0
- package/dist/system/runtime/console-capture.d.ts.map +1 -0
- package/dist/system/runtime/console-capture.js +67 -0
- package/dist/system/runtime/console-capture.js.map +1 -0
- package/dist/system/runtime/dml-executor.d.ts +49 -0
- package/dist/system/runtime/dml-executor.d.ts.map +1 -0
- package/dist/system/runtime/dml-executor.js +185 -0
- package/dist/system/runtime/dml-executor.js.map +1 -0
- package/dist/system/runtime/dml-params.d.ts +11 -0
- package/dist/system/runtime/dml-params.d.ts.map +1 -0
- package/dist/system/runtime/dml-params.js +45 -0
- package/dist/system/runtime/dml-params.js.map +1 -0
- package/dist/system/runtime/runtime-tools.d.ts +20 -0
- package/dist/system/runtime/runtime-tools.d.ts.map +1 -0
- package/dist/system/runtime/runtime-tools.js +170 -0
- package/dist/system/runtime/runtime-tools.js.map +1 -0
- package/dist/system/runtime/shell-manager.d.ts +20 -0
- package/dist/system/runtime/shell-manager.d.ts.map +1 -0
- package/dist/system/runtime/shell-manager.js +133 -0
- package/dist/system/runtime/shell-manager.js.map +1 -0
- package/dist/system/runtime/skill-creator.d.ts +33 -0
- package/dist/system/runtime/skill-creator.d.ts.map +1 -0
- package/dist/system/runtime/skill-creator.js +529 -0
- package/dist/system/runtime/skill-creator.js.map +1 -0
- package/dist/system/runtime/token-usage.d.ts +16 -0
- package/dist/system/runtime/token-usage.d.ts.map +1 -0
- package/dist/system/runtime/token-usage.js +45 -0
- package/dist/system/runtime/token-usage.js.map +1 -0
- package/dist/tools.js +1 -1
- package/dist/tools.js.map +1 -1
- package/package.json +4 -3
package/dist/cli/config.js
CHANGED
|
@@ -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
|
-
|
|
36
|
-
|
|
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
|
-
|
|
48
|
-
|
|
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
|
-
|
|
111
|
+
models: {
|
|
112
|
+
gateway: initialModelId,
|
|
113
|
+
run: initialModelId,
|
|
114
|
+
compile: initialModelId,
|
|
115
|
+
},
|
|
96
116
|
};
|
|
97
117
|
// Write config
|
|
98
|
-
await fs.writeFile(configPath,
|
|
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(
|
|
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
|
|
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
|
|
146
|
-
*
|
|
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
|
-
|
|
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
|
|
181
|
+
* Format a model id as canonical provider:model
|
|
182
182
|
*/
|
|
183
|
-
export function formatModelString(
|
|
184
|
-
return
|
|
183
|
+
export function formatModelString(modelId) {
|
|
184
|
+
return formatModelId(modelId);
|
|
185
185
|
}
|
|
186
186
|
/**
|
|
187
|
-
* Set the default model in configuration
|
|
188
|
-
*
|
|
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
|
|
190
|
+
export async function setModel(workspaceRoot, modelString, slot) {
|
|
191
|
+
const modelId = parseModelString(modelString);
|
|
192
192
|
const config = await loadConfig(workspaceRoot);
|
|
193
|
-
|
|
194
|
-
|
|
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,
|
|
197
|
-
return {
|
|
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
|
-
|
|
206
|
-
|
|
207
|
-
formatted:
|
|
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 = {
|
|
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,
|
|
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
|
*/
|
package/dist/cli/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/cli/config.ts"],"names":[],"mappings":"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"}
|
|
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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"}
|