@framers/agentos 0.1.121 → 0.1.123

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 (136) hide show
  1. package/dist/api/TextToolCallParser.d.ts +61 -0
  2. package/dist/api/TextToolCallParser.d.ts.map +1 -0
  3. package/dist/api/TextToolCallParser.js +137 -0
  4. package/dist/api/TextToolCallParser.js.map +1 -0
  5. package/dist/api/agent.d.ts +7 -0
  6. package/dist/api/agent.d.ts.map +1 -1
  7. package/dist/api/agent.js +1 -0
  8. package/dist/api/agent.js.map +1 -1
  9. package/dist/api/generateText.d.ts +105 -0
  10. package/dist/api/generateText.d.ts.map +1 -1
  11. package/dist/api/generateText.js +191 -2
  12. package/dist/api/generateText.js.map +1 -1
  13. package/dist/cognitive_substrate/GMI.d.ts.map +1 -1
  14. package/dist/cognitive_substrate/GMI.js +27 -1
  15. package/dist/cognitive_substrate/GMI.js.map +1 -1
  16. package/dist/cognitive_substrate/IGMI.d.ts +5 -0
  17. package/dist/cognitive_substrate/IGMI.d.ts.map +1 -1
  18. package/dist/cognitive_substrate/IGMI.js.map +1 -1
  19. package/dist/emergent/AdaptPersonalityTool.d.ts +142 -0
  20. package/dist/emergent/AdaptPersonalityTool.d.ts.map +1 -0
  21. package/dist/emergent/AdaptPersonalityTool.js +198 -0
  22. package/dist/emergent/AdaptPersonalityTool.js.map +1 -0
  23. package/dist/emergent/CreateWorkflowTool.d.ts +182 -0
  24. package/dist/emergent/CreateWorkflowTool.d.ts.map +1 -0
  25. package/dist/emergent/CreateWorkflowTool.js +330 -0
  26. package/dist/emergent/CreateWorkflowTool.js.map +1 -0
  27. package/dist/emergent/EmergentCapabilityEngine.d.ts +68 -0
  28. package/dist/emergent/EmergentCapabilityEngine.d.ts.map +1 -1
  29. package/dist/emergent/EmergentCapabilityEngine.js +99 -0
  30. package/dist/emergent/EmergentCapabilityEngine.js.map +1 -1
  31. package/dist/emergent/ManageSkillsTool.d.ts +154 -0
  32. package/dist/emergent/ManageSkillsTool.d.ts.map +1 -0
  33. package/dist/emergent/ManageSkillsTool.js +241 -0
  34. package/dist/emergent/ManageSkillsTool.js.map +1 -0
  35. package/dist/emergent/PersonalityMutationStore.d.ts +183 -0
  36. package/dist/emergent/PersonalityMutationStore.d.ts.map +1 -0
  37. package/dist/emergent/PersonalityMutationStore.js +222 -0
  38. package/dist/emergent/PersonalityMutationStore.js.map +1 -0
  39. package/dist/emergent/SelfEvaluateTool.d.ts +199 -0
  40. package/dist/emergent/SelfEvaluateTool.d.ts.map +1 -0
  41. package/dist/emergent/SelfEvaluateTool.js +410 -0
  42. package/dist/emergent/SelfEvaluateTool.js.map +1 -0
  43. package/dist/emergent/SelfImprovementConfig.d.ts +177 -0
  44. package/dist/emergent/SelfImprovementConfig.d.ts.map +1 -0
  45. package/dist/emergent/SelfImprovementConfig.js +43 -0
  46. package/dist/emergent/SelfImprovementConfig.js.map +1 -0
  47. package/dist/emergent/index.d.ts +8 -0
  48. package/dist/emergent/index.d.ts.map +1 -1
  49. package/dist/emergent/index.js +6 -0
  50. package/dist/emergent/index.js.map +1 -1
  51. package/dist/emergent/types.d.ts +9 -0
  52. package/dist/emergent/types.d.ts.map +1 -1
  53. package/dist/emergent/types.js.map +1 -1
  54. package/dist/memory/AgentMemory.d.ts +2 -2
  55. package/dist/memory/AgentMemory.d.ts.map +1 -1
  56. package/dist/memory/AgentMemory.js +4 -3
  57. package/dist/memory/AgentMemory.js.map +1 -1
  58. package/dist/memory/consolidation/ConsolidationLoop.d.ts +31 -4
  59. package/dist/memory/consolidation/ConsolidationLoop.d.ts.map +1 -1
  60. package/dist/memory/consolidation/ConsolidationLoop.js +112 -69
  61. package/dist/memory/consolidation/ConsolidationLoop.js.map +1 -1
  62. package/dist/memory/facade/Memory.d.ts +12 -6
  63. package/dist/memory/facade/Memory.d.ts.map +1 -1
  64. package/dist/memory/facade/Memory.js +216 -212
  65. package/dist/memory/facade/Memory.js.map +1 -1
  66. package/dist/memory/facade/types.d.ts +11 -1
  67. package/dist/memory/facade/types.d.ts.map +1 -1
  68. package/dist/memory/feedback/RetrievalFeedbackSignal.d.ts +7 -10
  69. package/dist/memory/feedback/RetrievalFeedbackSignal.d.ts.map +1 -1
  70. package/dist/memory/feedback/RetrievalFeedbackSignal.js +40 -36
  71. package/dist/memory/feedback/RetrievalFeedbackSignal.js.map +1 -1
  72. package/dist/memory/io/ChatGptImporter.d.ts.map +1 -1
  73. package/dist/memory/io/ChatGptImporter.js +24 -18
  74. package/dist/memory/io/ChatGptImporter.js.map +1 -1
  75. package/dist/memory/io/CsvImporter.d.ts.map +1 -1
  76. package/dist/memory/io/CsvImporter.js +21 -8
  77. package/dist/memory/io/CsvImporter.js.map +1 -1
  78. package/dist/memory/io/JsonExporter.d.ts.map +1 -1
  79. package/dist/memory/io/JsonExporter.js +6 -17
  80. package/dist/memory/io/JsonExporter.js.map +1 -1
  81. package/dist/memory/io/JsonImporter.d.ts +3 -0
  82. package/dist/memory/io/JsonImporter.d.ts.map +1 -1
  83. package/dist/memory/io/JsonImporter.js +58 -29
  84. package/dist/memory/io/JsonImporter.js.map +1 -1
  85. package/dist/memory/io/MarkdownExporter.d.ts.map +1 -1
  86. package/dist/memory/io/MarkdownExporter.js +1 -4
  87. package/dist/memory/io/MarkdownExporter.js.map +1 -1
  88. package/dist/memory/io/MarkdownImporter.d.ts.map +1 -1
  89. package/dist/memory/io/MarkdownImporter.js +12 -7
  90. package/dist/memory/io/MarkdownImporter.js.map +1 -1
  91. package/dist/memory/io/ObsidianExporter.d.ts +14 -9
  92. package/dist/memory/io/ObsidianExporter.d.ts.map +1 -1
  93. package/dist/memory/io/ObsidianExporter.js +35 -23
  94. package/dist/memory/io/ObsidianExporter.js.map +1 -1
  95. package/dist/memory/io/ObsidianImporter.d.ts.map +1 -1
  96. package/dist/memory/io/ObsidianImporter.js +34 -27
  97. package/dist/memory/io/ObsidianImporter.js.map +1 -1
  98. package/dist/memory/io/SqliteExporter.d.ts +1 -2
  99. package/dist/memory/io/SqliteExporter.d.ts.map +1 -1
  100. package/dist/memory/io/SqliteExporter.js +2 -3
  101. package/dist/memory/io/SqliteExporter.js.map +1 -1
  102. package/dist/memory/io/SqliteImporter.d.ts +3 -0
  103. package/dist/memory/io/SqliteImporter.d.ts.map +1 -1
  104. package/dist/memory/io/SqliteImporter.js +62 -27
  105. package/dist/memory/io/SqliteImporter.js.map +1 -1
  106. package/dist/memory/store/SqliteBrain.d.ts +84 -24
  107. package/dist/memory/store/SqliteBrain.d.ts.map +1 -1
  108. package/dist/memory/store/SqliteBrain.js +139 -55
  109. package/dist/memory/store/SqliteBrain.js.map +1 -1
  110. package/dist/memory/store/SqliteKnowledgeGraph.d.ts +6 -2
  111. package/dist/memory/store/SqliteKnowledgeGraph.d.ts.map +1 -1
  112. package/dist/memory/store/SqliteKnowledgeGraph.js +94 -120
  113. package/dist/memory/store/SqliteKnowledgeGraph.js.map +1 -1
  114. package/dist/memory/store/SqliteMemoryGraph.d.ts +4 -5
  115. package/dist/memory/store/SqliteMemoryGraph.d.ts.map +1 -1
  116. package/dist/memory/store/SqliteMemoryGraph.js +31 -41
  117. package/dist/memory/store/SqliteMemoryGraph.js.map +1 -1
  118. package/dist/memory/tools/MemoryAddTool.d.ts.map +1 -1
  119. package/dist/memory/tools/MemoryAddTool.js +12 -16
  120. package/dist/memory/tools/MemoryAddTool.js.map +1 -1
  121. package/dist/memory/tools/MemoryDeleteTool.d.ts.map +1 -1
  122. package/dist/memory/tools/MemoryDeleteTool.js +1 -3
  123. package/dist/memory/tools/MemoryDeleteTool.js.map +1 -1
  124. package/dist/memory/tools/MemoryMergeTool.d.ts.map +1 -1
  125. package/dist/memory/tools/MemoryMergeTool.js +13 -22
  126. package/dist/memory/tools/MemoryMergeTool.js.map +1 -1
  127. package/dist/memory/tools/MemorySearchTool.js +4 -4
  128. package/dist/memory/tools/MemorySearchTool.js.map +1 -1
  129. package/dist/memory/tools/MemoryUpdateTool.d.ts.map +1 -1
  130. package/dist/memory/tools/MemoryUpdateTool.js +10 -18
  131. package/dist/memory/tools/MemoryUpdateTool.js.map +1 -1
  132. package/dist/orchestration/runtime/LoopController.d.ts +7 -0
  133. package/dist/orchestration/runtime/LoopController.d.ts.map +1 -1
  134. package/dist/orchestration/runtime/LoopController.js +7 -0
  135. package/dist/orchestration/runtime/LoopController.js.map +1 -1
  136. package/package.json +1 -1
@@ -0,0 +1,330 @@
1
+ /**
2
+ * @fileoverview CreateWorkflowTool — ITool implementation that enables agents
3
+ * to compose multi-step tool workflows at runtime and execute them as a unit.
4
+ *
5
+ * @module @framers/agentos/emergent/CreateWorkflowTool
6
+ *
7
+ * Agents call `create_workflow` to define, run, and list workflows. A workflow
8
+ * is a named sequence of tool invocations with reference resolution:
9
+ * - `$input` — the workflow's input argument
10
+ * - `$prev` — the output of the immediately preceding step
11
+ * - `$steps[N]` — the output of the Nth step (zero-indexed)
12
+ *
13
+ * Constraints:
14
+ * - Maximum step count is enforced via `config.maxSteps`.
15
+ * - Only tools from `config.allowedTools` may be used in steps.
16
+ * - Recursive workflow creation is blocked (`create_workflow` cannot appear in steps).
17
+ * - Each step execution has a 30-second timeout enforced via `Promise.race`.
18
+ */
19
+ // ============================================================================
20
+ // TOOL IMPLEMENTATION
21
+ // ============================================================================
22
+ /** Default per-step execution timeout in milliseconds. */
23
+ const STEP_TIMEOUT_MS = 30000;
24
+ function isToolAllowed(toolName, allowedTools) {
25
+ return allowedTools.includes('*') || allowedTools.includes(toolName);
26
+ }
27
+ /**
28
+ * ITool implementation enabling agents to compose, execute, and list
29
+ * multi-step tool workflows at runtime.
30
+ *
31
+ * @example
32
+ * ```ts
33
+ * const tool = new CreateWorkflowTool({
34
+ * config: { maxSteps: 10, allowedTools: ['web_search', 'summarize'] },
35
+ * executeTool: (name, args) => orchestrator.execute(name, args),
36
+ * listTools: () => orchestrator.listToolNames(),
37
+ * });
38
+ *
39
+ * // Create a workflow
40
+ * const createResult = await tool.execute({
41
+ * action: 'create',
42
+ * name: 'search-and-summarize',
43
+ * description: 'Search the web and summarize results.',
44
+ * steps: [
45
+ * { tool: 'web_search', args: { query: '$input' } },
46
+ * { tool: 'summarize', args: { text: '$prev' } },
47
+ * ],
48
+ * }, context);
49
+ * ```
50
+ */
51
+ export class CreateWorkflowTool {
52
+ /**
53
+ * Create a new CreateWorkflowTool.
54
+ *
55
+ * @param deps - Injected dependencies including config, tool executor,
56
+ * and tool lister.
57
+ */
58
+ constructor(deps) {
59
+ /** @inheritdoc */
60
+ this.id = 'com.framers.emergent.create-workflow';
61
+ /** @inheritdoc */
62
+ this.name = 'create_workflow';
63
+ /** @inheritdoc */
64
+ this.displayName = 'Create Workflow';
65
+ /** @inheritdoc */
66
+ this.description = 'Create, run, or list multi-step tool workflows. Steps execute sequentially ' +
67
+ 'with reference resolution ($input, $prev, $steps[N]).';
68
+ /** @inheritdoc */
69
+ this.category = 'emergent';
70
+ /** @inheritdoc */
71
+ this.hasSideEffects = true;
72
+ /** @inheritdoc */
73
+ this.inputSchema = {
74
+ type: 'object',
75
+ properties: {
76
+ action: {
77
+ type: 'string',
78
+ enum: ['create', 'run', 'list'],
79
+ description: 'The workflow action to perform.',
80
+ },
81
+ name: {
82
+ type: 'string',
83
+ description: 'Workflow name (required for create).',
84
+ },
85
+ description: {
86
+ type: 'string',
87
+ description: 'Workflow description (required for create).',
88
+ },
89
+ steps: {
90
+ type: 'array',
91
+ description: 'Ordered list of workflow steps (required for create).',
92
+ items: {
93
+ type: 'object',
94
+ properties: {
95
+ tool: { type: 'string' },
96
+ args: { type: 'object' },
97
+ },
98
+ required: ['tool', 'args'],
99
+ },
100
+ },
101
+ workflowId: {
102
+ type: 'string',
103
+ description: 'Workflow ID (required for run).',
104
+ },
105
+ input: {
106
+ description: 'Input data passed to the workflow when running.',
107
+ },
108
+ },
109
+ required: ['action'],
110
+ };
111
+ /** Session-scoped workflow storage. */
112
+ this.workflows = new Map();
113
+ /** Monotonic counter for generating workflow IDs. */
114
+ this.nextId = 1;
115
+ this.deps = deps;
116
+ }
117
+ // --------------------------------------------------------------------------
118
+ // EXECUTE
119
+ // --------------------------------------------------------------------------
120
+ /**
121
+ * Execute the requested workflow action.
122
+ *
123
+ * @param args - Action type and associated parameters.
124
+ * @param _context - Tool execution context (unused but required by ITool).
125
+ * @returns A {@link ToolExecutionResult} wrapping the action outcome.
126
+ */
127
+ async execute(args, _context) {
128
+ switch (args.action) {
129
+ case 'create':
130
+ return this.handleCreate(args);
131
+ case 'run':
132
+ return this.handleRun(args);
133
+ case 'list':
134
+ return this.handleList();
135
+ default:
136
+ return {
137
+ success: false,
138
+ error: `Unknown action "${args.action}". Must be one of: create, run, list`,
139
+ };
140
+ }
141
+ }
142
+ // --------------------------------------------------------------------------
143
+ // ACTION HANDLERS
144
+ // --------------------------------------------------------------------------
145
+ /**
146
+ * Create and store a new workflow definition.
147
+ *
148
+ * Validates:
149
+ * - Required fields (name, description, steps) are present
150
+ * - Step count does not exceed maxSteps
151
+ * - No step references `create_workflow` (prevent recursion)
152
+ * - All step tools exist in the available tool list
153
+ */
154
+ async handleCreate(args) {
155
+ const { name, description, steps } = args;
156
+ if (!name || typeof name !== 'string') {
157
+ return { success: false, error: 'name is required for the create action' };
158
+ }
159
+ if (!description || typeof description !== 'string') {
160
+ return { success: false, error: 'description is required for the create action' };
161
+ }
162
+ if (!steps || !Array.isArray(steps) || steps.length === 0) {
163
+ return { success: false, error: 'steps is required and must be a non-empty array' };
164
+ }
165
+ // Check maxSteps
166
+ if (steps.length > this.deps.config.maxSteps) {
167
+ return {
168
+ success: false,
169
+ error: `Workflow exceeds maxSteps limit (${steps.length} > ${this.deps.config.maxSteps})`,
170
+ };
171
+ }
172
+ // Block recursive workflow creation
173
+ for (const step of steps) {
174
+ if (step.tool === 'create_workflow') {
175
+ return {
176
+ success: false,
177
+ error: 'Workflows cannot contain create_workflow steps (recursion not allowed)',
178
+ };
179
+ }
180
+ }
181
+ // Validate all tools exist
182
+ const availableTools = this.deps.listTools();
183
+ for (const step of steps) {
184
+ if (!availableTools.includes(step.tool)) {
185
+ return {
186
+ success: false,
187
+ error: `Tool "${step.tool}" referenced in step is not available`,
188
+ };
189
+ }
190
+ if (!isToolAllowed(step.tool, this.deps.config.allowedTools)) {
191
+ return {
192
+ success: false,
193
+ error: `Tool "${step.tool}" is not permitted by the workflow allowedTools configuration`,
194
+ };
195
+ }
196
+ }
197
+ const id = `workflow-${this.nextId++}`;
198
+ const workflow = {
199
+ id,
200
+ name,
201
+ description,
202
+ steps,
203
+ createdAt: new Date().toISOString(),
204
+ runCount: 0,
205
+ };
206
+ this.workflows.set(id, workflow);
207
+ return {
208
+ success: true,
209
+ output: { workflowId: id, name, stepCount: steps.length },
210
+ };
211
+ }
212
+ /**
213
+ * Run a stored workflow, executing steps sequentially with reference resolution.
214
+ *
215
+ * Reference resolution:
216
+ * - `$input` — the workflow's input argument
217
+ * - `$prev` — the output of the immediately preceding step
218
+ * - `$steps[N]` — the output of the Nth step (zero-indexed)
219
+ *
220
+ * Each step has a 30-second timeout enforced via Promise.race.
221
+ */
222
+ async handleRun(args) {
223
+ const { workflowId, input } = args;
224
+ if (!workflowId) {
225
+ return { success: false, error: 'workflowId is required for the run action' };
226
+ }
227
+ const workflow = this.workflows.get(workflowId);
228
+ if (!workflow) {
229
+ return { success: false, error: `Workflow "${workflowId}" not found` };
230
+ }
231
+ const stepResults = [];
232
+ let prev = undefined;
233
+ for (let i = 0; i < workflow.steps.length; i++) {
234
+ const step = workflow.steps[i];
235
+ // Resolve references in step args
236
+ const resolvedArgs = this.resolveReferences(step.args, input, prev, stepResults);
237
+ try {
238
+ const result = await this.executeStepWithTimeout(step.tool, resolvedArgs, i);
239
+ stepResults.push(result);
240
+ prev = result;
241
+ }
242
+ catch (err) {
243
+ return {
244
+ success: false,
245
+ error: `Workflow failed at step ${i} ("${step.tool}"): ${err.message ?? String(err)}`,
246
+ output: { completedSteps: i, stepResults },
247
+ };
248
+ }
249
+ }
250
+ workflow.runCount++;
251
+ return {
252
+ success: true,
253
+ output: {
254
+ workflowId: workflow.id,
255
+ runCount: workflow.runCount,
256
+ stepResults,
257
+ finalOutput: prev,
258
+ },
259
+ };
260
+ }
261
+ /**
262
+ * List all stored workflows.
263
+ */
264
+ async handleList() {
265
+ const workflows = Array.from(this.workflows.values()).map((w) => ({
266
+ id: w.id,
267
+ name: w.name,
268
+ description: w.description,
269
+ stepCount: w.steps.length,
270
+ runCount: w.runCount,
271
+ createdAt: w.createdAt,
272
+ }));
273
+ return { success: true, output: { workflows } };
274
+ }
275
+ // --------------------------------------------------------------------------
276
+ // REFERENCE RESOLUTION
277
+ // --------------------------------------------------------------------------
278
+ /**
279
+ * Resolve `$input`, `$prev`, and `$steps[N]` references in step arguments.
280
+ *
281
+ * Uses JSON.stringify → string replacement → JSON.parse cycle for simple
282
+ * reference resolution. References appearing as standalone string values
283
+ * are replaced with the actual object; references embedded in larger strings
284
+ * are serialized inline.
285
+ *
286
+ * @param args - The step arguments potentially containing references.
287
+ * @param input - The workflow input value.
288
+ * @param prev - The output of the previous step.
289
+ * @param stepResults - Array of all completed step outputs.
290
+ * @returns Resolved arguments with references replaced by actual values.
291
+ */
292
+ resolveReferences(args, input, prev, stepResults) {
293
+ const serialized = JSON.stringify(args);
294
+ // Replace $steps[N] references first (more specific pattern)
295
+ let resolved = serialized.replace(/"\$steps\[(\d+)\]"/g, (_match, idx) => {
296
+ const index = parseInt(idx, 10);
297
+ return JSON.stringify(stepResults[index] ?? null);
298
+ });
299
+ // Replace $input references
300
+ resolved = resolved.replace(/"\$input"/g, JSON.stringify(input ?? null));
301
+ // Replace $prev references
302
+ resolved = resolved.replace(/"\$prev"/g, JSON.stringify(prev ?? null));
303
+ try {
304
+ return JSON.parse(resolved);
305
+ }
306
+ catch {
307
+ // If parsing fails (unlikely), return original args
308
+ return args;
309
+ }
310
+ }
311
+ async executeStepWithTimeout(toolName, args, stepIndex) {
312
+ let timeoutId;
313
+ try {
314
+ return await Promise.race([
315
+ this.deps.executeTool(toolName, args),
316
+ new Promise((_, reject) => {
317
+ timeoutId = setTimeout(() => {
318
+ reject(new Error(`Step ${stepIndex} ("${toolName}") timed out after ${STEP_TIMEOUT_MS}ms`));
319
+ }, STEP_TIMEOUT_MS);
320
+ }),
321
+ ]);
322
+ }
323
+ finally {
324
+ if (timeoutId) {
325
+ clearTimeout(timeoutId);
326
+ }
327
+ }
328
+ }
329
+ }
330
+ //# sourceMappingURL=CreateWorkflowTool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CreateWorkflowTool.js","sourceRoot":"","sources":["../../src/emergent/CreateWorkflowTool.ts"],"names":[],"mappings":"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"}
@@ -15,10 +15,60 @@
15
15
  */
16
16
  import type { EmergentConfig, ForgeToolRequest, ForgeResult, PromotionResult, EmergentTool } from './types.js';
17
17
  import type { ITool } from '../core/tools/ITool.js';
18
+ import type { PersonalityMutationStore } from './PersonalityMutationStore.js';
18
19
  import { ComposableToolBuilder } from './ComposableToolBuilder.js';
19
20
  import { SandboxedToolForge } from './SandboxedToolForge.js';
20
21
  import { EmergentJudge } from './EmergentJudge.js';
21
22
  import { EmergentToolRegistry } from './EmergentToolRegistry.js';
23
+ /**
24
+ * Dependencies required to construct the four self-improvement tools.
25
+ *
26
+ * Callers provide runtime hooks for personality access, skill management,
27
+ * tool execution, and optional memory storage. The engine uses these to
28
+ * wire each tool without hard-coupling to specific service implementations.
29
+ */
30
+ export interface SelfImprovementToolDeps {
31
+ /** Returns the current HEXACO personality trait values as a trait→value map. */
32
+ getPersonality: () => Record<string, number>;
33
+ /** Sets a single HEXACO personality trait to the given value (already clamped). */
34
+ setPersonality: (trait: string, value: number) => void;
35
+ /** Durable store for personality mutations (used by AdaptPersonalityTool for persistence). */
36
+ mutationStore?: PersonalityMutationStore;
37
+ /** Returns the agent's currently active skills. */
38
+ getActiveSkills: () => Array<{
39
+ skillId: string;
40
+ name: string;
41
+ category: string;
42
+ }>;
43
+ /** Returns skill IDs that may not be disabled (core skills). */
44
+ getLockedSkills: () => string[];
45
+ /** Dynamically loads a skill by ID and returns its metadata. */
46
+ loadSkill: (id: string) => Promise<{
47
+ skillId: string;
48
+ name: string;
49
+ category: string;
50
+ }>;
51
+ /** Unloads (disables) a previously loaded skill. */
52
+ unloadSkill: (id: string) => void;
53
+ /** Searches the skill registry by query string, returning matching skill metadata. */
54
+ searchSkills: (query: string) => Array<{
55
+ skillId: string;
56
+ name: string;
57
+ category: string;
58
+ description: string;
59
+ }>;
60
+ /** Executes a registered tool by name with the given arguments. */
61
+ executeTool: (name: string, args: unknown) => Promise<unknown>;
62
+ /** Returns the names of all currently registered tools. */
63
+ listTools: () => string[];
64
+ /** Optional callback for persisting self-improvement trace memories. */
65
+ storeMemory?: (trace: {
66
+ type: string;
67
+ scope: string;
68
+ content: string;
69
+ tags: string[];
70
+ }) => Promise<void>;
71
+ }
22
72
  /**
23
73
  * Dependencies injected into the {@link EmergentCapabilityEngine} constructor.
24
74
  *
@@ -161,6 +211,24 @@ export declare class EmergentCapabilityEngine {
161
211
  * Remove a previously synced tool from the live runtime and registry.
162
212
  */
163
213
  removeTool(toolId: string): Promise<EmergentTool | undefined>;
214
+ /**
215
+ * Factory method that creates the four self-improvement tools when
216
+ * `config.selfImprovement?.enabled` is `true`.
217
+ *
218
+ * Returns an array containing:
219
+ * 1. **AdaptPersonalityTool** — bounded HEXACO trait mutation.
220
+ * 2. **ManageSkillsTool** — runtime skill enable/disable/search.
221
+ * 3. **CreateWorkflowTool** — multi-step tool composition.
222
+ * 4. **SelfEvaluateTool** — self-scoring with parameter adjustment.
223
+ *
224
+ * Returns an empty array when self-improvement is disabled or the
225
+ * config is absent. Uses dynamic imports to avoid hard compile-time
226
+ * coupling to tool modules that may not yet exist.
227
+ *
228
+ * @param deps - Runtime hooks for personality, skills, tools, and memory.
229
+ * @returns Array of 0 or 4 {@link ITool} instances.
230
+ */
231
+ createSelfImprovementTools(deps: SelfImprovementToolDeps): Promise<ITool[]>;
164
232
  /**
165
233
  * Create an executable ITool wrapper for a forged emergent tool.
166
234
  *
@@ -1 +1 @@
1
- {"version":3,"file":"EmergentCapabilityEngine.d.ts","sourceRoot":"","sources":["../../src/emergent/EmergentCapabilityEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EmergentCapabilityEngine.d.ts","sourceRoot":"","sources":["../../src/emergent/EmergentCapabilityEngine.ts"],"names":[],"mappings":"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"}
@@ -365,6 +365,105 @@ export class EmergentCapabilityEngine {
365
365
  }
366
366
  return tool;
367
367
  }
368
+ // --------------------------------------------------------------------------
369
+ // PUBLIC: createSelfImprovementTools
370
+ // --------------------------------------------------------------------------
371
+ /**
372
+ * Factory method that creates the four self-improvement tools when
373
+ * `config.selfImprovement?.enabled` is `true`.
374
+ *
375
+ * Returns an array containing:
376
+ * 1. **AdaptPersonalityTool** — bounded HEXACO trait mutation.
377
+ * 2. **ManageSkillsTool** — runtime skill enable/disable/search.
378
+ * 3. **CreateWorkflowTool** — multi-step tool composition.
379
+ * 4. **SelfEvaluateTool** — self-scoring with parameter adjustment.
380
+ *
381
+ * Returns an empty array when self-improvement is disabled or the
382
+ * config is absent. Uses dynamic imports to avoid hard compile-time
383
+ * coupling to tool modules that may not yet exist.
384
+ *
385
+ * @param deps - Runtime hooks for personality, skills, tools, and memory.
386
+ * @returns Array of 0 or 4 {@link ITool} instances.
387
+ */
388
+ async createSelfImprovementTools(deps) {
389
+ const selfConfig = this.config.selfImprovement;
390
+ if (!selfConfig?.enabled) {
391
+ return [];
392
+ }
393
+ const tools = [];
394
+ let adaptPersonalityTool;
395
+ try {
396
+ // Dynamic import to avoid hard coupling — these modules may be created
397
+ // by other agents or added later. Each import is individually try-caught
398
+ // so a missing module doesn't prevent the others from loading.
399
+ try {
400
+ const { AdaptPersonalityTool } = await import('./AdaptPersonalityTool.js');
401
+ adaptPersonalityTool = new AdaptPersonalityTool({
402
+ config: {
403
+ maxDeltaPerSession: selfConfig.personality.maxDeltaPerSession,
404
+ },
405
+ getPersonality: deps.getPersonality,
406
+ setPersonality: deps.setPersonality,
407
+ mutationStore: selfConfig.personality.persistWithDecay ? deps.mutationStore : undefined,
408
+ });
409
+ tools.push(adaptPersonalityTool);
410
+ }
411
+ catch {
412
+ // AdaptPersonalityTool module not available — skip.
413
+ }
414
+ try {
415
+ const { ManageSkillsTool } = await import('./ManageSkillsTool.js');
416
+ tools.push(new ManageSkillsTool({
417
+ config: {
418
+ allowlist: selfConfig.skills.allowlist,
419
+ requireApprovalForNewCategories: selfConfig.skills.requireApprovalForNewCategories,
420
+ },
421
+ getActiveSkills: deps.getActiveSkills,
422
+ getLockedSkills: deps.getLockedSkills,
423
+ loadSkill: deps.loadSkill,
424
+ unloadSkill: deps.unloadSkill,
425
+ searchSkills: deps.searchSkills,
426
+ }));
427
+ }
428
+ catch {
429
+ // ManageSkillsTool module not available — skip.
430
+ }
431
+ try {
432
+ const { CreateWorkflowTool } = await import('./CreateWorkflowTool.js');
433
+ tools.push(new CreateWorkflowTool({
434
+ config: {
435
+ maxSteps: selfConfig.workflows.maxSteps,
436
+ allowedTools: selfConfig.workflows.allowedTools,
437
+ },
438
+ executeTool: deps.executeTool,
439
+ listTools: deps.listTools,
440
+ }));
441
+ }
442
+ catch {
443
+ // CreateWorkflowTool module not available — skip.
444
+ }
445
+ try {
446
+ const { SelfEvaluateTool } = await import('./SelfEvaluateTool.js');
447
+ tools.push(new SelfEvaluateTool({
448
+ config: {
449
+ autoAdjust: selfConfig.selfEval.autoAdjust,
450
+ adjustableParams: selfConfig.selfEval.adjustableParams,
451
+ maxEvaluationsPerSession: selfConfig.selfEval.maxEvaluationsPerSession,
452
+ evaluationModel: selfConfig.selfEval.evaluationModel,
453
+ },
454
+ adaptPersonality: adaptPersonalityTool,
455
+ storeMemory: deps.storeMemory,
456
+ }));
457
+ }
458
+ catch {
459
+ // SelfEvaluateTool module not available — skip.
460
+ }
461
+ }
462
+ catch {
463
+ // Outer catch for any unexpected dynamic import infrastructure failures.
464
+ }
465
+ return tools;
466
+ }
368
467
  /**
369
468
  * Create an executable ITool wrapper for a forged emergent tool.
370
469
  *
@@ -1 +1 @@
1
- {"version":3,"file":"EmergentCapabilityEngine.js","sourceRoot":"","sources":["../../src/emergent/EmergentCapabilityEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EmergentCapabilityEngine.js","sourceRoot":"","sources":["../../src/emergent/EmergentCapabilityEngine.ts"],"names":[],"mappings":"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"}