deepclause-sdk 0.0.65 → 0.0.67

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 (92) hide show
  1. package/README.md +83 -6
  2. package/dist/agent.d.ts +1 -0
  3. package/dist/agent.d.ts.map +1 -1
  4. package/dist/agent.js +153 -30
  5. package/dist/agent.js.map +1 -1
  6. package/dist/cli/commands.d.ts +5 -0
  7. package/dist/cli/commands.d.ts.map +1 -1
  8. package/dist/cli/commands.js +75 -5
  9. package/dist/cli/commands.js.map +1 -1
  10. package/dist/cli/compile.d.ts +3 -0
  11. package/dist/cli/compile.d.ts.map +1 -1
  12. package/dist/cli/compile.js.map +1 -1
  13. package/dist/cli/config.d.ts +177 -8
  14. package/dist/cli/config.d.ts.map +1 -1
  15. package/dist/cli/config.js +128 -2
  16. package/dist/cli/config.js.map +1 -1
  17. package/dist/cli/index.js +34 -7
  18. package/dist/cli/index.js.map +1 -1
  19. package/dist/cli/run.d.ts.map +1 -1
  20. package/dist/cli/run.js +1 -0
  21. package/dist/cli/run.js.map +1 -1
  22. package/dist/cli/tui.d.ts +9 -0
  23. package/dist/cli/tui.d.ts.map +1 -1
  24. package/dist/cli/tui.js +118 -30
  25. package/dist/cli/tui.js.map +1 -1
  26. package/dist/compaction.d.ts +70 -0
  27. package/dist/compaction.d.ts.map +1 -0
  28. package/dist/compaction.js +286 -0
  29. package/dist/compaction.js.map +1 -0
  30. package/dist/compiler.d.ts.map +1 -1
  31. package/dist/compiler.js +6 -8
  32. package/dist/compiler.js.map +1 -1
  33. package/dist/index.d.ts +1 -1
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js.map +1 -1
  36. package/dist/prolog/bridge.d.ts +10 -1
  37. package/dist/prolog/bridge.d.ts.map +1 -1
  38. package/dist/prolog/bridge.js +26 -1
  39. package/dist/prolog/bridge.js.map +1 -1
  40. package/dist/prolog/loader.d.ts.map +1 -1
  41. package/dist/prolog/loader.js +8 -3
  42. package/dist/prolog/loader.js.map +1 -1
  43. package/dist/prolog-src/deepclause_mi.pl +27 -8
  44. package/dist/runner.d.ts +8 -1
  45. package/dist/runner.d.ts.map +1 -1
  46. package/dist/runner.js +241 -47
  47. package/dist/runner.js.map +1 -1
  48. package/dist/sdk.d.ts.map +1 -1
  49. package/dist/sdk.js +2 -0
  50. package/dist/sdk.js.map +1 -1
  51. package/dist/system/assets/compactors/default-loop-compactor.dml +20 -0
  52. package/dist/system/assets/compactors/default-memory-compactor.dml +6 -0
  53. package/dist/system/assets/compactors/default-session-compactor.dml +20 -0
  54. package/dist/system/assets/docs/CONDUCTOR_PROMPT.md +39 -5
  55. package/dist/system/assets/docs/DML_COMPILER_PROMPT.md +17 -4
  56. package/dist/system/assets/index.d.ts +4 -0
  57. package/dist/system/assets/index.d.ts.map +1 -1
  58. package/dist/system/assets/index.js +19 -0
  59. package/dist/system/assets/index.js.map +1 -1
  60. package/dist/system/assets/recipes/deepclause-coding-workflow/SKILL.md +45 -0
  61. package/dist/system/assets/skills/conductor.dml +20 -14
  62. package/dist/system/runtime/catalog-recipes.d.ts +24 -0
  63. package/dist/system/runtime/catalog-recipes.d.ts.map +1 -0
  64. package/dist/system/runtime/catalog-recipes.js +273 -0
  65. package/dist/system/runtime/catalog-recipes.js.map +1 -0
  66. package/dist/system/runtime/catalog-skills.d.ts +6 -1
  67. package/dist/system/runtime/catalog-skills.d.ts.map +1 -1
  68. package/dist/system/runtime/catalog-skills.js +28 -0
  69. package/dist/system/runtime/catalog-skills.js.map +1 -1
  70. package/dist/system/runtime/conductor.d.ts +29 -0
  71. package/dist/system/runtime/conductor.d.ts.map +1 -1
  72. package/dist/system/runtime/conductor.js +350 -55
  73. package/dist/system/runtime/conductor.js.map +1 -1
  74. package/dist/system/runtime/dml-executor.d.ts +1 -0
  75. package/dist/system/runtime/dml-executor.d.ts.map +1 -1
  76. package/dist/system/runtime/dml-executor.js +4 -1
  77. package/dist/system/runtime/dml-executor.js.map +1 -1
  78. package/dist/system/runtime/runtime-tools.d.ts +6 -0
  79. package/dist/system/runtime/runtime-tools.d.ts.map +1 -1
  80. package/dist/system/runtime/runtime-tools.js +26 -1
  81. package/dist/system/runtime/runtime-tools.js.map +1 -1
  82. package/dist/system/runtime/shell-manager.d.ts.map +1 -1
  83. package/dist/system/runtime/shell-manager.js +112 -29
  84. package/dist/system/runtime/shell-manager.js.map +1 -1
  85. package/dist/system/runtime/skill-creator.d.ts +2 -0
  86. package/dist/system/runtime/skill-creator.d.ts.map +1 -1
  87. package/dist/system/runtime/skill-creator.js +201 -15
  88. package/dist/system/runtime/skill-creator.js.map +1 -1
  89. package/dist/types.d.ts +57 -1
  90. package/dist/types.d.ts.map +1 -1
  91. package/package.json +2 -3
  92. package/src/prolog-src/deepclause_mi.pl +27 -8
@@ -4,10 +4,12 @@ import * as path from 'path';
4
4
  import { createDeepClause } from '../../sdk.js';
5
5
  import { analyzeAndAuditDML, analyzeDML, extractDescription, extractParameters, validateWithProlog } from '../../compiler.js';
6
6
  import { newsSearch, webSearch } from '../../cli/search.js';
7
+ import { resolveCompactionConfig } from '../../cli/config.js';
7
8
  import { readSystemPromptAsset, readSystemSkillAsset } from '../assets/index.js';
8
9
  import { listLocalSkillCatalog } from './catalog-skills.js';
9
10
  import { withCapturedConsole } from './console-capture.js';
10
11
  import { executeDml } from './dml-executor.js';
12
+ import { truncateUrlFetchTextBody } from './runtime-tools.js';
11
13
  import { createShellManager } from './shell-manager.js';
12
14
  import { createShellToolEventBridge } from './shell-tool-events.js';
13
15
  import { recordTokenUsage } from './token-usage.js';
@@ -51,6 +53,7 @@ async function compileWithSkillCreatorInternal(markdown, options) {
51
53
  trace: !!options.trace,
52
54
  streaming: (options.stream ?? false) || !!options.onEvent,
53
55
  maxTokens: 65536,
56
+ compaction: resolveCompactionConfig(options.config, path.resolve(options.workspaceRoot ?? workspacePath)),
54
57
  });
55
58
  let published;
56
59
  let finalAnswer = '';
@@ -264,7 +267,7 @@ function registerSkillCreatorTools(sdk, context) {
264
267
  context.onPublish(published);
265
268
  return {
266
269
  ok: true,
267
- slug: context.baseName,
270
+ slug: published.slug,
268
271
  version: published.meta.history.length,
269
272
  };
270
273
  },
@@ -281,7 +284,7 @@ async function buildSkillCreatorSystemPrompt(workspaceRoot, config, compileSelec
281
284
  '## LLM Access from Scripts',
282
285
  '',
283
286
  'The local CLI runtime does not provide an extra proxy-only script API.',
284
- 'Use DML task()/prompt() for LLM work unless you explicitly configure provider SDK access in your shell environment.',
287
+ 'Use DML task()/prompt() when the skill needs open-ended LLM reasoning or text generation. Deterministic or simple skills can be pure Prolog plus exec()/consult() with no task() at all.',
285
288
  `The compile slot currently resolves to \`${compileSelection.id}\`.`,
286
289
  ].join('\n');
287
290
  const runtimeSection = sandbox
@@ -318,6 +321,11 @@ async function buildSkillCreatorSystemPrompt(workspaceRoot, config, compileSelec
318
321
  ## File-Based DML Only
319
322
  validate_dml, test_dml, and deploy_skill only accept file paths. Write the DML to disk first.
320
323
 
324
+ ## Deterministic Skills
325
+ - It is fine for a skill to use no task()/prompt() when the workflow is mostly deterministic or simple.
326
+ - In those cases, prefer direct Prolog predicates, consult/use_module, and exec() calls.
327
+ - Add task()/prompt() only when the skill needs open-ended reasoning, extraction, summarization, classification, or free-form text generation.
328
+
321
329
  ## Reusing Existing Skills
322
330
  - Call list_skills when the requested functionality overlaps with an existing local skill.
323
331
  - Prefer narrow wrapper tool predicates that internally call exec(run_skill(...)) for one specific child skill.
@@ -325,25 +333,185 @@ validate_dml, test_dml, and deploy_skill only accept file paths. Write the DML t
325
333
 
326
334
  ${runtimeSection}${attemptSection}`;
327
335
  }
328
- function buildLocalMetadata(markdown, baseName) {
329
- const name = baseName
330
- .split(/[-_\s]+/)
336
+ const SKILL_NAME_PATTERNS = [
337
+ /(?:called|named)\s+["']?([A-Za-z0-9][A-Za-z0-9 _-]{1,79})["']?/i,
338
+ /(?:create|build|make|write|generate|implement)(?:\s+me)?\s+(?:a|an|the)?\s*["']?([A-Za-z0-9][A-Za-z0-9 _-]{1,79}?)(?:["']?\s+skill\b|["']?$)/i,
339
+ /(?:create|build|make|write|generate|implement)(?:\s+me)?\s+(?:a|an|the)?\s+skill\s+(?:to|for|that)\s+["']?([A-Za-z0-9][A-Za-z0-9 _-]{1,79})["']?/i,
340
+ ];
341
+ function cleanSkillLabel(value) {
342
+ return value
343
+ .trim()
344
+ .replace(/[`"']/g, '')
345
+ .replace(/\s+/g, ' ')
346
+ .trim();
347
+ }
348
+ function findSkillNameCandidate(source) {
349
+ const heading = source.match(/^#\s+(.+)$/m)?.[1];
350
+ if (heading) {
351
+ const cleaned = cleanSkillLabel(heading);
352
+ if (cleaned) {
353
+ return cleaned;
354
+ }
355
+ }
356
+ for (const pattern of SKILL_NAME_PATTERNS) {
357
+ const match = pattern.exec(source);
358
+ if (!match?.[1]) {
359
+ continue;
360
+ }
361
+ const cleaned = cleanSkillLabel(match[1]);
362
+ if (cleaned) {
363
+ return cleaned;
364
+ }
365
+ }
366
+ return null;
367
+ }
368
+ function shortenSlug(slug, maxLength = 40) {
369
+ if (slug.length <= maxLength) {
370
+ return slug;
371
+ }
372
+ const boundary = slug.lastIndexOf('-', maxLength);
373
+ if (boundary >= Math.floor(maxLength / 2)) {
374
+ return slug.slice(0, boundary);
375
+ }
376
+ return slug.slice(0, maxLength).replace(/-+$/g, '');
377
+ }
378
+ export function normalizeSkillSlug(value, fallback = 'skill') {
379
+ const slug = shortenSlug(value
380
+ .trim()
381
+ .replace(/[`"']/g, '')
382
+ .toLowerCase()
383
+ .replace(/[^a-z0-9]+/g, '-')
384
+ .replace(/^-+|-+$/g, '')
385
+ .replace(/-+/g, '-'));
386
+ if (slug) {
387
+ return slug;
388
+ }
389
+ const fallbackSlug = fallback
390
+ .trim()
391
+ .replace(/[`"']/g, '')
392
+ .toLowerCase()
393
+ .replace(/[^a-z0-9]+/g, '-')
394
+ .replace(/^-+|-+$/g, '')
395
+ .replace(/-+/g, '-');
396
+ return fallbackSlug || 'skill';
397
+ }
398
+ function formatSkillName(value) {
399
+ return cleanSkillLabel(value)
400
+ .replace(/[-_]+/g, ' ')
401
+ .split(/\s+/)
331
402
  .filter(Boolean)
332
403
  .map((part) => part.charAt(0).toUpperCase() + part.slice(1))
333
404
  .join(' ');
405
+ }
406
+ export function deriveSkillSlugFromMarkdown(markdown, fallbackBaseName = 'skill') {
407
+ const fallbackSlug = normalizeSkillSlug(fallbackBaseName, 'skill');
408
+ const directCandidate = findSkillNameCandidate(markdown);
409
+ if (directCandidate) {
410
+ return normalizeSkillSlug(directCandidate, fallbackSlug);
411
+ }
412
+ const fallbackCandidate = findSkillNameCandidate(fallbackBaseName.replace(/[-_]+/g, ' '));
413
+ if (fallbackCandidate) {
414
+ return normalizeSkillSlug(fallbackCandidate, fallbackSlug);
415
+ }
416
+ return fallbackSlug;
417
+ }
418
+ function buildLocalMetadata(markdown, baseName) {
419
+ const slug = deriveSkillSlugFromMarkdown(markdown, baseName);
420
+ const nameCandidate = findSkillNameCandidate(markdown)
421
+ ?? findSkillNameCandidate(baseName.replace(/[-_]+/g, ' '))
422
+ ?? slug;
423
+ const name = formatSkillName(nameCandidate) || formatSkillName(slug);
334
424
  const description = extractDescription(markdown);
425
+ const triggerPhraseBase = name.replace(/\s+/g, ' ').trim().toLowerCase() || slug.replace(/[-_]+/g, ' ');
335
426
  const triggerPhrases = Array.from(new Set([
336
- baseName.replace(/[-_]+/g, ' '),
337
- `run ${baseName.replace(/[-_]+/g, ' ')}`,
338
- `use ${baseName.replace(/[-_]+/g, ' ')}`,
427
+ triggerPhraseBase,
428
+ `run ${triggerPhraseBase}`,
429
+ `use ${triggerPhraseBase}`,
339
430
  ])).slice(0, 3);
340
431
  return {
341
- slug: baseName,
342
- name: name || baseName,
432
+ slug,
433
+ name: name || formatSkillName(slug),
343
434
  description,
344
435
  trigger_phrases: triggerPhrases,
345
436
  };
346
437
  }
438
+ function normalizeParameterName(name) {
439
+ return name
440
+ .trim()
441
+ .replace(/[`"']/g, '')
442
+ .replace(/([A-Z])/g, (_m, c, i) => (i > 0 ? '_' : '') + c.toLowerCase())
443
+ .replace(/[\s-]+/g, '_')
444
+ .replace(/[^a-z0-9_]/g, '')
445
+ .replace(/_+/g, '_')
446
+ .replace(/^_+|_+$/g, '');
447
+ }
448
+ function extractParameterDocs(markdown) {
449
+ const parameterDocs = [];
450
+ const lines = markdown.split('\n');
451
+ let inParametersSection = false;
452
+ for (const line of lines) {
453
+ const trimmed = line.trim();
454
+ if (!inParametersSection) {
455
+ if (/^##\s+Parameters\b/i.test(trimmed)) {
456
+ inParametersSection = true;
457
+ }
458
+ continue;
459
+ }
460
+ if (/^##\s+/.test(trimmed)) {
461
+ break;
462
+ }
463
+ const match = /^-\s+`?([^`:(]+)`?\s*(?:\(([^)]*)\))?\s*:\s*(.+)$/.exec(trimmed);
464
+ if (!match) {
465
+ continue;
466
+ }
467
+ const [, rawName, qualifiers = '', description] = match;
468
+ const defaultMatch = /default\s*:\s*(?:"([^"]+)"|'([^']+)'|([^,]+))/i.exec(qualifiers);
469
+ const qualifierText = qualifiers.toLowerCase();
470
+ parameterDocs.push({
471
+ name: normalizeParameterName(rawName),
472
+ description: description.trim(),
473
+ required: qualifierText.includes('required')
474
+ ? true
475
+ : (qualifierText.includes('optional') || !!defaultMatch ? false : undefined),
476
+ default: defaultMatch
477
+ ? (defaultMatch[1] ?? defaultMatch[2] ?? defaultMatch[3]).trim()
478
+ : undefined,
479
+ });
480
+ }
481
+ return parameterDocs;
482
+ }
483
+ function mergeParameterDocs(parameters, parameterDocs) {
484
+ const docsByName = new Map(parameterDocs.map((parameterDoc) => [parameterDoc.name, parameterDoc]));
485
+ return parameters.map((parameter) => {
486
+ const parameterDoc = docsByName.get(parameter.name);
487
+ if (!parameterDoc) {
488
+ return parameter;
489
+ }
490
+ return {
491
+ ...parameter,
492
+ description: parameterDoc.description ?? parameter.description,
493
+ required: parameterDoc.required ?? parameter.required,
494
+ default: parameterDoc.default ?? parameter.default,
495
+ };
496
+ });
497
+ }
498
+ function extractSkillCapabilities(analysis) {
499
+ return Array.from(new Set(analysis.capabilities.filter((capability) => !capability.startsWith('tool_use('))));
500
+ }
501
+ function readMetadataName(metadata, fallbackName) {
502
+ const name = metadata['name'];
503
+ return typeof name === 'string' && name.trim() ? name.trim() : fallbackName;
504
+ }
505
+ function readMetadataTriggerPhrases(metadata, fallbackTriggerPhrases) {
506
+ const rawTriggerPhrases = Array.isArray(metadata['trigger_phrases'])
507
+ ? metadata['trigger_phrases']
508
+ : (Array.isArray(metadata['triggerPhrases']) ? metadata['triggerPhrases'] : fallbackTriggerPhrases);
509
+ return Array.from(new Set(rawTriggerPhrases
510
+ .filter((triggerPhrase) => typeof triggerPhrase === 'string')
511
+ .map((triggerPhrase) => triggerPhrase.trim())
512
+ .filter((triggerPhrase) => triggerPhrase.length > 0)))
513
+ .slice(0, 5);
514
+ }
347
515
  async function writeWorkspaceFile(workspacePath, args) {
348
516
  const relPath = String(args.path ?? '');
349
517
  const content = String(args.content ?? '');
@@ -416,9 +584,13 @@ async function runLocalTestDml(context, args) {
416
584
  async function publishSkill(context, args) {
417
585
  const dmlPath = resolveWorkspacePath(context.workspacePath, String(args.dml_file ?? ''));
418
586
  const dml = await fs.readFile(dmlPath, 'utf8');
587
+ const fallbackMetadata = buildLocalMetadata(context.markdown, context.baseName);
419
588
  const normalized = normalizeDeployInputs(String(args.spec_markdown ?? context.markdown), String(args.metadata_json ?? ''));
420
- const metadata = parseMetadataJson(normalized.metadataJson, buildLocalMetadata(context.markdown, context.baseName));
421
- const publishName = context.baseName || String(args.slug_override ?? metadata.slug ?? 'skill');
589
+ const metadata = parseMetadataJson(normalized.metadataJson, fallbackMetadata);
590
+ const requestedSlug = typeof args.slug_override === 'string' && args.slug_override.trim()
591
+ ? args.slug_override
592
+ : (typeof metadata.slug === 'string' && metadata.slug.trim() ? metadata.slug : fallbackMetadata.slug);
593
+ const publishName = normalizeSkillSlug(requestedSlug, fallbackMetadata.slug);
422
594
  const meta = await buildMetaFile({
423
595
  dml,
424
596
  markdown: normalized.specMarkdown,
@@ -426,6 +598,8 @@ async function publishSkill(context, args) {
426
598
  publishName,
427
599
  model: context.compileSelection.model,
428
600
  provider: context.compileSelection.provider,
601
+ name: readMetadataName(metadata, fallbackMetadata.name),
602
+ triggerPhrases: readMetadataTriggerPhrases(metadata, fallbackMetadata.trigger_phrases),
429
603
  description: typeof metadata.description === 'string' ? metadata.description : extractDescription(normalized.specMarkdown),
430
604
  });
431
605
  const outputPath = path.join(context.outputDir, `${publishName}.dml`);
@@ -438,6 +612,7 @@ async function publishSkill(context, args) {
438
612
  dml,
439
613
  meta,
440
614
  outputPath,
615
+ slug: publishName,
441
616
  };
442
617
  }
443
618
  async function buildMetaFile(input) {
@@ -447,6 +622,8 @@ async function buildMetaFile(input) {
447
622
  const history = existing?.history ?? [];
448
623
  const analysis = await analyzeDML(input.dml);
449
624
  const tools = extractToolNames(analysis);
625
+ const parameters = mergeParameterDocs(extractParameters(input.dml), extractParameterDocs(input.markdown));
626
+ const capabilities = extractSkillCapabilities(analysis);
450
627
  return {
451
628
  version: '1.0.0',
452
629
  source: input.publishName,
@@ -454,8 +631,11 @@ async function buildMetaFile(input) {
454
631
  compiledAt: new Date().toISOString(),
455
632
  model: input.model,
456
633
  provider: input.provider,
634
+ name: input.name,
635
+ triggerPhrases: input.triggerPhrases.length > 0 ? input.triggerPhrases : undefined,
636
+ capabilities: capabilities.length > 0 ? capabilities : undefined,
457
637
  description: input.description,
458
- parameters: extractParameters(input.dml),
638
+ parameters,
459
639
  tools,
460
640
  history: [
461
641
  ...history,
@@ -493,8 +673,13 @@ async function urlFetch(workspacePath, args, signal) {
493
673
  headers,
494
674
  };
495
675
  }
676
+ const body = await response.text();
677
+ const truncated = truncateUrlFetchTextBody(body);
496
678
  return {
497
- body: await response.text(),
679
+ body: truncated.body,
680
+ truncated: truncated.truncated,
681
+ original_length: truncated.originalLength,
682
+ returned_length: truncated.returnedLength,
498
683
  status: response.status,
499
684
  headers,
500
685
  };
@@ -524,7 +709,8 @@ function looksLikeJsonObject(value) {
524
709
  }
525
710
  function parseMetadataJson(metadataJson, fallback) {
526
711
  try {
527
- return JSON.parse(metadataJson);
712
+ const parsed = JSON.parse(metadataJson);
713
+ return parsed && typeof parsed === 'object' ? parsed : fallback;
528
714
  }
529
715
  catch {
530
716
  return fallback;
@@ -1 +1 @@
1
- {"version":3,"file":"skill-creator.js","sourceRoot":"","sources":["../../../src/system/runtime/skill-creator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill-creator.js","sourceRoot":"","sources":["../../../src/system/runtime/skill-creator.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -26,6 +26,46 @@ export interface CreateOptions {
26
26
  debug?: boolean;
27
27
  /** Provider-specific options passed to the AI SDK (e.g. Google thinkingConfig, OpenAI reasoningEffort) */
28
28
  providerOptions?: Record<string, Record<string, any>>;
29
+ /** Optional memory compaction settings for task()/prompt() execution */
30
+ compaction?: CompactionOptions;
31
+ }
32
+ export type CompactorSourceType = 'inline' | 'file' | 'auto';
33
+ export type CompactionScope = 'session' | 'loop' | 'run';
34
+ export type CompactionTrigger = 'before_user_message' | 'before_model_call' | 'before_task' | 'after_task';
35
+ export type CompactionAction = 'applied' | 'skipped' | 'failed';
36
+ export interface CompactorDefinition {
37
+ /** Inline DML source or a path to a DML file */
38
+ source: string;
39
+ /** How to interpret the source field. Defaults to 'auto'. */
40
+ sourceType?: CompactorSourceType;
41
+ /** Timeout for the DML compactor run in milliseconds. */
42
+ timeoutMs?: number;
43
+ /** Optional gas limit for the compactor DML run. */
44
+ gasLimit?: number;
45
+ /** Optional model override for compactor task()/prompt() calls. */
46
+ model?: string;
47
+ /** Optional provider override for the compactor model. */
48
+ provider?: 'openai' | 'anthropic' | 'google' | 'openrouter';
49
+ /** Whether the compactor may access the caller's registered exec() tools. Defaults to false. */
50
+ inheritTools?: boolean;
51
+ /** Optional tool policy applied to the compactor run. */
52
+ toolPolicy?: ToolPolicy | null;
53
+ }
54
+ export interface CompactorBinding {
55
+ /** Optional binding label used in logs and events. */
56
+ name?: string;
57
+ /** Runtime scope to which this compactor is attached. */
58
+ scope: CompactionScope;
59
+ /** Trigger point within the scope. */
60
+ trigger: CompactionTrigger;
61
+ /** The DML compactor to run when this binding is evaluated. */
62
+ compactor: CompactorDefinition;
63
+ }
64
+ export interface CompactionOptions {
65
+ /** Enables compactor evaluation. Defaults to false. */
66
+ enabled?: boolean;
67
+ /** Compactor bindings evaluated at specific runtime hook points. */
68
+ bindings?: CompactorBinding[];
29
69
  }
30
70
  /**
31
71
  * Options for running DML code
@@ -49,6 +89,8 @@ export interface RunOptions {
49
89
  role: 'user' | 'assistant';
50
90
  content: string;
51
91
  }>;
92
+ /** Per-run override for SDK compaction settings. */
93
+ compaction?: CompactionOptions;
52
94
  }
53
95
  /**
54
96
  * Trace entry for execution logging
@@ -82,7 +124,7 @@ export interface LLMUsage {
82
124
  reasoningTokens?: number;
83
125
  }
84
126
  export interface DMLEvent {
85
- type: 'output' | 'log' | 'answer' | 'input_required' | 'error' | 'finished' | 'stream' | 'tool_call' | 'usage';
127
+ type: 'output' | 'log' | 'answer' | 'input_required' | 'error' | 'finished' | 'stream' | 'tool_call' | 'usage' | 'memory_compaction';
86
128
  content?: string;
87
129
  prompt?: string;
88
130
  /** Execution trace (only present in 'finished' event when trace mode enabled) */
@@ -109,6 +151,20 @@ export interface DMLEvent {
109
151
  toolError?: string;
110
152
  /** Token usage from an LLM call (only for 'usage' events) */
111
153
  usage?: LLMUsage;
154
+ /** Compaction scope (only for 'memory_compaction' events) */
155
+ compactionScope?: CompactionScope;
156
+ /** Compaction trigger (only for 'memory_compaction' events) */
157
+ compactionTrigger?: CompactionTrigger;
158
+ /** Compaction action outcome (only for 'memory_compaction' events) */
159
+ compactionAction?: CompactionAction;
160
+ /** Binding label used for the compaction event when available */
161
+ compactionBindingName?: string;
162
+ /** Estimated tokens before compaction (only for 'memory_compaction' events) */
163
+ beforeTokens?: number;
164
+ /** Estimated tokens after compaction (only for 'memory_compaction' events) */
165
+ afterTokens?: number;
166
+ /** Optional failure reason when compaction could not be applied */
167
+ compactionError?: string;
112
168
  }
113
169
  /**
114
170
  * Tool definition for registering external tools
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "deepclause-sdk",
3
- "version": "0.0.65",
3
+ "version": "0.0.67",
4
4
  "description": "DeepClause CLI Tool, TUI and Typescript SDK",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -21,7 +21,7 @@
21
21
  "scripts": {
22
22
  "build": "tsc && npm run copy:prolog && npm run copy:assets",
23
23
  "copy:prolog": "cp src/prolog-src/*.pl dist/prolog-src/",
24
- "copy:assets": "mkdir -p dist/system/assets/skills dist/system/assets/docs && cp src/system/assets/skills/*.dml dist/system/assets/skills/ && cp src/system/assets/docs/*.md dist/system/assets/docs/",
24
+ "copy:assets": "mkdir -p dist/system/assets/skills dist/system/assets/compactors dist/system/assets/docs dist/system/assets/recipes && cp src/system/assets/skills/*.dml dist/system/assets/skills/ && cp src/system/assets/compactors/*.dml dist/system/assets/compactors/ && cp src/system/assets/docs/*.md dist/system/assets/docs/ && cp -R src/system/assets/recipes/. dist/system/assets/recipes/",
25
25
  "test": "vitest run",
26
26
  "test:watch": "vitest",
27
27
  "test:coverage": "vitest run --coverage",
@@ -39,7 +39,6 @@
39
39
  "ai": "^6.0.116",
40
40
  "commander": "^12.1.0",
41
41
  "deepclause-agentvm": "^0.0.5",
42
- "swipl-wasm": "file:./vendor/swipl-wasm",
43
42
  "zod": "^3.23.0"
44
43
  },
45
44
  "devDependencies": {
@@ -578,9 +578,16 @@ destroy_engine(SessionId) :-
578
578
  %% ============================================================
579
579
 
580
580
  %% post_agent_result(+SessionId, +Success, +Variables, +Messages)
581
- %% Messages is a list of message{role: Role, content: Content} dicts
581
+ %% Legacy form without a full memory replacement snapshot.
582
582
  post_agent_result(SessionId, Success, Variables, Messages) :-
583
- assertz(session_agent_result(SessionId, result{success: Success, variables: Variables, messages: Messages})),
583
+ post_agent_result(SessionId, Success, Variables, Messages, none).
584
+
585
+ %% post_agent_result(+SessionId, +Success, +Variables, +Messages, +FullMemory)
586
+ %% Messages is a list of message{role: Role, content: Content} dicts.
587
+ %% FullMemory optionally replaces the entire state memory, including compacted system summaries.
588
+ post_agent_result(SessionId, Success, Variables, Messages, FullMemory) :-
589
+ retractall(session_agent_result(SessionId, _)),
590
+ assertz(session_agent_result(SessionId, result{success: Success, variables: Variables, messages: Messages, full_memory: FullMemory})),
584
591
  post_signal_to_engine(SessionId, agent_done).
585
592
 
586
593
  %% post_exec_result(+SessionId, +Status, +Result)
@@ -936,12 +943,17 @@ destroy_tool_engine(ToolEngineId) :-
936
943
  retractall(tool_engine(ToolEngineId, _)).
937
944
 
938
945
  %% post_tool_agent_result(+SessionId, +ToolEngineId, +Success, +Variables, +Messages)
946
+ %% Legacy form without a full memory replacement snapshot.
947
+ post_tool_agent_result(SessionId, ToolEngineId, Success, Variables, Messages) :-
948
+ post_tool_agent_result(SessionId, ToolEngineId, Success, Variables, Messages, none).
949
+
950
+ %% post_tool_agent_result(+SessionId, +ToolEngineId, +Success, +Variables, +Messages, +FullMemory)
939
951
  %% Posts the result of a nested agent loop back to the tool engine.
940
952
  %% Also stores in session_agent_result so the meta-interpreter can retrieve it.
941
953
  :- dynamic tool_engine_agent_result/2. % tool_engine_agent_result(ToolEngineId, Result)
942
954
 
943
- post_tool_agent_result(SessionId, ToolEngineId, Success, Variables, Messages) :-
944
- Result = result{success: Success, variables: Variables, messages: Messages},
955
+ post_tool_agent_result(SessionId, ToolEngineId, Success, Variables, Messages, FullMemory) :-
956
+ Result = result{success: Success, variables: Variables, messages: Messages, full_memory: FullMemory},
945
957
  % Store in tool_engine_agent_result (for future use)
946
958
  retractall(tool_engine_agent_result(ToolEngineId, _)),
947
959
  assertz(tool_engine_agent_result(ToolEngineId, Result)),
@@ -1031,8 +1043,11 @@ mi_call(task(Desc), StateIn, StateOut) :-
1031
1043
  engine_yield(output(WarnMsg)),
1032
1044
  fail
1033
1045
  ),
1034
- % Use full messages from agent loop result
1035
- ( get_dict(messages, Result, Messages), Messages \= []
1046
+ % Use full memory from agent loop result when available
1047
+ ( get_dict(full_memory, Result, FullMemory), is_list(FullMemory)
1048
+ -> set_memory(StateAfterAgent, FullMemory, StateOut),
1049
+ add_trace_entry(SessionId, exit, task, [InterpDesc], Depth)
1050
+ ; get_dict(messages, Result, Messages), Messages \= []
1036
1051
  -> % Preserve system messages from current memory (agent only returns user/assistant)
1037
1052
  get_memory(StateAfterAgent, OldMemory),
1038
1053
  include(is_system_memory_message, OldMemory, SystemMessages),
@@ -1156,8 +1171,12 @@ mi_call_task_n(Desc, Vars, VarNames, StateIn, StateOut) :-
1156
1171
  fail
1157
1172
  ),
1158
1173
  bind_task_variables(Result.variables, VarNames, Vars),
1159
- % Use full messages from agent loop result
1160
- ( get_dict(messages, Result, Messages), Messages \= []
1174
+ % Use full memory from agent loop result when available
1175
+ ( get_dict(full_memory, Result, FullMemory), is_list(FullMemory)
1176
+ -> set_memory(StateAfterAgent, FullMemory, StateOut),
1177
+ % Add exit trace for task_n
1178
+ add_trace_entry(SessionId, exit, task, [InterpDesc], Depth)
1179
+ ; get_dict(messages, Result, Messages), Messages \= []
1161
1180
  -> % Preserve system messages from current memory (agent only returns user/assistant)
1162
1181
  get_memory(StateAfterAgent, OldMemory),
1163
1182
  include(is_system_memory_message, OldMemory, SystemMessages),