@sema-agent/core 1.327.0 → 1.329.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/agents/subagent.d.ts.map +1 -1
  2. package/dist/agents/subagent.js +45 -10
  3. package/dist/agents/subagent.js.map +1 -1
  4. package/dist/core/runner/prepare-task.d.ts +2 -0
  5. package/dist/core/runner/prepare-task.d.ts.map +1 -1
  6. package/dist/core/runner/prepare-task.js +19 -0
  7. package/dist/core/runner/prepare-task.js.map +1 -1
  8. package/dist/core/tools.d.ts.map +1 -1
  9. package/dist/core/tools.js +1 -0
  10. package/dist/core/tools.js.map +1 -1
  11. package/dist/core/types.d.ts +3 -0
  12. package/dist/core/types.d.ts.map +1 -1
  13. package/dist/engine/llm/types.d.ts +1 -0
  14. package/dist/engine/llm/types.d.ts.map +1 -1
  15. package/dist/orchestration/run-workflow-tool.d.ts +1 -0
  16. package/dist/orchestration/run-workflow-tool.d.ts.map +1 -1
  17. package/dist/orchestration/run-workflow-tool.js +3 -2
  18. package/dist/orchestration/run-workflow-tool.js.map +1 -1
  19. package/dist/prompt-assembly/assemble.d.ts.map +1 -1
  20. package/dist/prompt-assembly/assemble.js +12 -2
  21. package/dist/prompt-assembly/assemble.js.map +1 -1
  22. package/dist/prompt-assembly/packs/sema-default.d.ts.map +1 -1
  23. package/dist/prompt-assembly/packs/sema-default.js +10 -0
  24. package/dist/prompt-assembly/packs/sema-default.js.map +1 -1
  25. package/dist/prompt-assembly/types.d.ts +2 -0
  26. package/dist/prompt-assembly/types.d.ts.map +1 -1
  27. package/dist/prompts/default.d.ts +2 -0
  28. package/dist/prompts/default.d.ts.map +1 -1
  29. package/dist/prompts/default.js +14 -0
  30. package/dist/prompts/default.js.map +1 -1
  31. package/dist/prompts/simple-sections.d.ts +11 -0
  32. package/dist/prompts/simple-sections.d.ts.map +1 -0
  33. package/dist/prompts/simple-sections.js +31 -0
  34. package/dist/prompts/simple-sections.js.map +1 -0
  35. package/dist/tools/fs/index.d.ts.map +1 -1
  36. package/dist/tools/fs/index.js +20 -0
  37. package/dist/tools/fs/index.js.map +1 -1
  38. package/dist/tools/todo.d.ts.map +1 -1
  39. package/dist/tools/todo.js +6 -1
  40. package/dist/tools/todo.js.map +1 -1
  41. package/package.json +1 -1
@@ -73,6 +73,10 @@ const ungatedWarnedShapes = new WeakMap();
73
73
  const advisedPolicyNames = new WeakMap();
74
74
  const ADVISED_KEYS_CAP = 64;
75
75
  export const DEFAULT_IRREVERSIBLE_SCOPE = "irreversible";
76
+ export function isFableFamilyModelId(id) {
77
+ const tail = id.toLowerCase().split("/").pop() ?? "";
78
+ return /^claude-fable-\d/.test(tail) || /^claude-mythos-5(?!\d)/.test(tail);
79
+ }
76
80
  function batchContextAt(messages, currentId) {
77
81
  let batch = [];
78
82
  for (const m of messages) {
@@ -141,6 +145,7 @@ export async function prepareTask(spec, deps, sessions, resume, _memorySelector,
141
145
  exclude: spec.excludeTools ? Object.freeze([...spec.excludeTools]) : undefined,
142
146
  defer: spec.deferTools ? Object.freeze([...spec.deferTools]) : undefined,
143
147
  };
148
+ const promptProfile = spec.promptProfile ?? internals?.promptProfile ?? "simple";
144
149
  if (spec.resumeAt !== undefined) {
145
150
  if (resume) {
146
151
  const e = new Error("resumeAt cannot be combined with a durable resume");
@@ -182,6 +187,7 @@ export async function prepareTask(spec, deps, sessions, resume, _memorySelector,
182
187
  }
183
188
  const resolvedRole = resolveTaskModel(spec, deps);
184
189
  const model = resolvedRole.model;
190
+ const fableMitigations = isFableFamilyModelId(model.id);
185
191
  const thinking = spec.thinking ?? resolvedRole.thinking ?? model.defaultThinking;
186
192
  const compModel = spec.compactionModel
187
193
  ? resolveModel(spec.compactionModel, deps.models)
@@ -670,6 +676,7 @@ export async function prepareTask(spec, deps, sessions, resume, _memorySelector,
670
676
  clientContext: spec.clientContext,
671
677
  excludeTools: toolFaceSnapshot.exclude,
672
678
  deferTools: toolFaceSnapshot.defer,
679
+ promptProfile,
673
680
  getApiKeyAndHeaders: spec.getApiKeyAndHeaders,
674
681
  parentCwd: taskRootPath,
675
682
  activeSkillScope: () => skillScope.active(),
@@ -766,6 +773,7 @@ export async function prepareTask(spec, deps, sessions, resume, _memorySelector,
766
773
  governanceBaseline: deps.workflowGovernanceBaseline,
767
774
  parentExcludeTools: toolFaceSnapshot.exclude,
768
775
  parentDeferTools: toolFaceSnapshot.defer,
776
+ parentPromptProfile: promptProfile,
769
777
  models: deps.models,
770
778
  agents: deps.agents,
771
779
  builtinAgents: deps.builtinAgents,
@@ -1395,6 +1403,8 @@ export async function prepareTask(spec, deps, sessions, resume, _memorySelector,
1395
1403
  isolationEnabled: isIsolated(executionEnv),
1396
1404
  orchestrationEnabled: selfOrchestrationActive,
1397
1405
  orchestrationDeferred: selfOrchestrationActive && (toolFaceSnapshot.defer?.includes("Workflow") ?? false),
1406
+ promptProfile,
1407
+ fableMitigations,
1398
1408
  goalEnabled: internals?.goalMode === true,
1399
1409
  awarenessEnabled: thinking !== undefined && ULTRA_REASONING_TIERS.has(thinking),
1400
1410
  worktreeIsolated: internals?.isolation === "worktree" && ownedEnv !== undefined,
@@ -1500,6 +1510,13 @@ export async function prepareTask(spec, deps, sessions, resume, _memorySelector,
1500
1510
  if (excluded.has(tools[i].name))
1501
1511
  tools.splice(i, 1);
1502
1512
  }
1513
+ if (promptProfile === "classic") {
1514
+ for (let i = 0; i < tools.length; i++) {
1515
+ const t = tools[i];
1516
+ if (t.descriptionClassic !== undefined)
1517
+ tools[i] = { ...t, description: t.descriptionClassic };
1518
+ }
1519
+ }
1503
1520
  const assembled = assemblePrompt({
1504
1521
  provider,
1505
1522
  isDefaultProvider: provider === defaultPromptProvider,
@@ -1512,6 +1529,8 @@ export async function prepareTask(spec, deps, sessions, resume, _memorySelector,
1512
1529
  ...featureFlags,
1513
1530
  orchestrationEnabled: featureFlags.orchestrationEnabled && tools.some((t) => t.name === "Workflow"),
1514
1531
  orchestrationDeferred: featureFlags.orchestrationDeferred && tools.some((t) => t.name === "Workflow"),
1532
+ promptProfile,
1533
+ fableMitigations,
1515
1534
  },
1516
1535
  mcpInstructionsBlock,
1517
1536
  memoryBlock,