@cogitator-ai/self-modifying 17.0.18 → 18.0.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.
- package/README.md +112 -48
- package/dist/architecture-evolution/capability-analyzer.d.ts.map +1 -1
- package/dist/architecture-evolution/capability-analyzer.js +38 -37
- package/dist/architecture-evolution/capability-analyzer.js.map +1 -1
- package/dist/architecture-evolution/index.d.ts +2 -2
- package/dist/architecture-evolution/index.d.ts.map +1 -1
- package/dist/architecture-evolution/index.js +1 -1
- package/dist/architecture-evolution/index.js.map +1 -1
- package/dist/architecture-evolution/parameter-optimizer.d.ts +5 -4
- package/dist/architecture-evolution/parameter-optimizer.d.ts.map +1 -1
- package/dist/architecture-evolution/parameter-optimizer.js +36 -31
- package/dist/architecture-evolution/parameter-optimizer.js.map +1 -1
- package/dist/architecture-evolution/prompts.d.ts +21 -2
- package/dist/architecture-evolution/prompts.d.ts.map +1 -1
- package/dist/architecture-evolution/prompts.js +150 -36
- package/dist/architecture-evolution/prompts.js.map +1 -1
- package/dist/constraints/modification-validator.d.ts +1 -0
- package/dist/constraints/modification-validator.d.ts.map +1 -1
- package/dist/constraints/modification-validator.js +30 -14
- package/dist/constraints/modification-validator.js.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/meta-reasoning/meta-reasoner.d.ts +3 -0
- package/dist/meta-reasoning/meta-reasoner.d.ts.map +1 -1
- package/dist/meta-reasoning/meta-reasoner.js +101 -33
- package/dist/meta-reasoning/meta-reasoner.js.map +1 -1
- package/dist/meta-reasoning/prompts.d.ts +10 -14
- package/dist/meta-reasoning/prompts.d.ts.map +1 -1
- package/dist/meta-reasoning/prompts.js +109 -1
- package/dist/meta-reasoning/prompts.js.map +1 -1
- package/dist/self-modifying-agent.d.ts +83 -17
- package/dist/self-modifying-agent.d.ts.map +1 -1
- package/dist/self-modifying-agent.js +557 -444
- package/dist/self-modifying-agent.js.map +1 -1
- package/dist/tool-generation/gap-analyzer.d.ts +0 -1
- package/dist/tool-generation/gap-analyzer.d.ts.map +1 -1
- package/dist/tool-generation/gap-analyzer.js +14 -14
- package/dist/tool-generation/gap-analyzer.js.map +1 -1
- package/dist/tool-generation/index.d.ts +3 -3
- package/dist/tool-generation/index.d.ts.map +1 -1
- package/dist/tool-generation/index.js +2 -2
- package/dist/tool-generation/index.js.map +1 -1
- package/dist/tool-generation/prompts.d.ts +1 -0
- package/dist/tool-generation/prompts.d.ts.map +1 -1
- package/dist/tool-generation/prompts.js +33 -8
- package/dist/tool-generation/prompts.js.map +1 -1
- package/dist/tool-generation/tool-generator.d.ts +5 -5
- package/dist/tool-generation/tool-generator.d.ts.map +1 -1
- package/dist/tool-generation/tool-generator.js +41 -28
- package/dist/tool-generation/tool-generator.js.map +1 -1
- package/dist/tool-generation/tool-sandbox.d.ts +9 -6
- package/dist/tool-generation/tool-sandbox.d.ts.map +1 -1
- package/dist/tool-generation/tool-sandbox.js +257 -157
- package/dist/tool-generation/tool-sandbox.js.map +1 -1
- package/dist/tool-generation/tool-validator.d.ts +3 -8
- package/dist/tool-generation/tool-validator.d.ts.map +1 -1
- package/dist/tool-generation/tool-validator.js +53 -54
- package/dist/tool-generation/tool-validator.js.map +1 -1
- package/dist/utils/llm-helper.d.ts.map +1 -1
- package/dist/utils/llm-helper.js +1 -0
- package/dist/utils/llm-helper.js.map +1 -1
- package/package.json +3 -12
- package/src/__tests__/component-regressions.test.ts +599 -0
- package/src/__tests__/meta-reasoning.test.ts +5 -1
- package/src/__tests__/sandbox-security.test.ts +186 -0
- package/src/__tests__/self-modifying-agent.test.ts +363 -1
- package/src/architecture-evolution/capability-analyzer.ts +56 -40
- package/src/architecture-evolution/index.ts +2 -0
- package/src/architecture-evolution/parameter-optimizer.ts +52 -34
- package/src/architecture-evolution/prompts.ts +179 -41
- package/src/constraints/modification-validator.ts +30 -14
- package/src/index.ts +14 -0
- package/src/meta-reasoning/meta-reasoner.ts +105 -40
- package/src/meta-reasoning/prompts.ts +129 -15
- package/src/self-modifying-agent.ts +764 -489
- package/src/tool-generation/gap-analyzer.ts +19 -18
- package/src/tool-generation/index.ts +13 -3
- package/src/tool-generation/prompts.ts +41 -8
- package/src/tool-generation/tool-generator.ts +59 -33
- package/src/tool-generation/tool-sandbox.ts +306 -175
- package/src/tool-generation/tool-validator.ts +66 -63
- package/src/utils/llm-helper.ts +1 -0
|
@@ -75,16 +75,124 @@ Analyze the agent's reasoning process and respond with a JSON object:
|
|
|
75
75
|
}
|
|
76
76
|
}`;
|
|
77
77
|
}
|
|
78
|
+
const REASONING_MODES = [
|
|
79
|
+
'analytical',
|
|
80
|
+
'creative',
|
|
81
|
+
'systematic',
|
|
82
|
+
'intuitive',
|
|
83
|
+
'reflective',
|
|
84
|
+
'exploratory',
|
|
85
|
+
];
|
|
86
|
+
const ISSUE_TYPES = [
|
|
87
|
+
'stagnation',
|
|
88
|
+
'low_confidence',
|
|
89
|
+
'high_cost',
|
|
90
|
+
'repetition',
|
|
91
|
+
'tool_failure',
|
|
92
|
+
];
|
|
93
|
+
const SEVERITIES = ['low', 'medium', 'high'];
|
|
94
|
+
const OPPORTUNITY_TYPES = [
|
|
95
|
+
'mode_switch',
|
|
96
|
+
'parameter_tune',
|
|
97
|
+
'context_add',
|
|
98
|
+
'tool_compose',
|
|
99
|
+
];
|
|
100
|
+
const ACTIONS = [
|
|
101
|
+
'continue',
|
|
102
|
+
'switch_mode',
|
|
103
|
+
'adjust_parameters',
|
|
104
|
+
'inject_context',
|
|
105
|
+
'abort',
|
|
106
|
+
];
|
|
107
|
+
function isRecord(value) {
|
|
108
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
109
|
+
}
|
|
110
|
+
function pick(value, allowed) {
|
|
111
|
+
return typeof value === 'string' && allowed.includes(value)
|
|
112
|
+
? value
|
|
113
|
+
: undefined;
|
|
114
|
+
}
|
|
115
|
+
function probability(value) {
|
|
116
|
+
return typeof value === 'number' && Number.isFinite(value)
|
|
117
|
+
? Math.min(1, Math.max(0, value))
|
|
118
|
+
: undefined;
|
|
119
|
+
}
|
|
120
|
+
function parseParameterChanges(value) {
|
|
121
|
+
if (!isRecord(value))
|
|
122
|
+
return undefined;
|
|
123
|
+
const changes = {};
|
|
124
|
+
if (typeof value.temperature === 'number' && Number.isFinite(value.temperature)) {
|
|
125
|
+
changes.temperature = Math.min(2, Math.max(0, value.temperature));
|
|
126
|
+
}
|
|
127
|
+
if (typeof value.depth === 'number' && Number.isFinite(value.depth)) {
|
|
128
|
+
changes.depth = Math.min(10, Math.max(1, Math.round(value.depth)));
|
|
129
|
+
}
|
|
130
|
+
return Object.keys(changes).length > 0 ? changes : undefined;
|
|
131
|
+
}
|
|
132
|
+
function parseRecommendation(value) {
|
|
133
|
+
if (!isRecord(value))
|
|
134
|
+
return undefined;
|
|
135
|
+
const action = pick(value.action, ACTIONS);
|
|
136
|
+
if (!action)
|
|
137
|
+
return undefined;
|
|
138
|
+
return {
|
|
139
|
+
action,
|
|
140
|
+
newMode: pick(value.newMode, REASONING_MODES),
|
|
141
|
+
parameterChanges: parseParameterChanges(value.parameterChanges),
|
|
142
|
+
contextAddition: typeof value.contextAddition === 'string' && value.contextAddition.trim()
|
|
143
|
+
? value.contextAddition.trim()
|
|
144
|
+
: undefined,
|
|
145
|
+
confidence: probability(value.confidence) ?? 0,
|
|
146
|
+
reasoning: typeof value.reasoning === 'string' ? value.reasoning : '',
|
|
147
|
+
};
|
|
148
|
+
}
|
|
78
149
|
export function parseMetaAssessmentResponse(content) {
|
|
150
|
+
let parsed;
|
|
79
151
|
try {
|
|
80
152
|
const json = extractJson(content);
|
|
81
153
|
if (!json)
|
|
82
154
|
return null;
|
|
83
|
-
|
|
155
|
+
parsed = JSON.parse(json);
|
|
84
156
|
}
|
|
85
157
|
catch {
|
|
86
158
|
return null;
|
|
87
159
|
}
|
|
160
|
+
if (!isRecord(parsed))
|
|
161
|
+
return null;
|
|
162
|
+
const issues = [];
|
|
163
|
+
for (const raw of Array.isArray(parsed.issues) ? parsed.issues : []) {
|
|
164
|
+
if (!isRecord(raw))
|
|
165
|
+
continue;
|
|
166
|
+
const type = pick(raw.type, ISSUE_TYPES);
|
|
167
|
+
if (!type)
|
|
168
|
+
continue;
|
|
169
|
+
issues.push({
|
|
170
|
+
type,
|
|
171
|
+
severity: pick(raw.severity, SEVERITIES) ?? 'medium',
|
|
172
|
+
description: typeof raw.description === 'string' ? raw.description : '',
|
|
173
|
+
});
|
|
174
|
+
}
|
|
175
|
+
const opportunities = [];
|
|
176
|
+
for (const raw of Array.isArray(parsed.opportunities) ? parsed.opportunities : []) {
|
|
177
|
+
if (!isRecord(raw))
|
|
178
|
+
continue;
|
|
179
|
+
const type = pick(raw.type, OPPORTUNITY_TYPES);
|
|
180
|
+
if (!type)
|
|
181
|
+
continue;
|
|
182
|
+
opportunities.push({
|
|
183
|
+
type,
|
|
184
|
+
description: typeof raw.description === 'string' ? raw.description : '',
|
|
185
|
+
expectedImprovement: probability(raw.expectedImprovement) ?? 0.5,
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
return {
|
|
189
|
+
onTrack: typeof parsed.onTrack === 'boolean' ? parsed.onTrack : undefined,
|
|
190
|
+
confidence: probability(parsed.confidence),
|
|
191
|
+
reasoning: typeof parsed.reasoning === 'string' ? parsed.reasoning : undefined,
|
|
192
|
+
issues,
|
|
193
|
+
opportunities,
|
|
194
|
+
recommendation: parseRecommendation(parsed.recommendation),
|
|
195
|
+
};
|
|
88
196
|
}
|
|
89
197
|
export const META_REASONING_SYSTEM_PROMPT = `You are a meta-reasoning system analyzing an AI agent's reasoning process.
|
|
90
198
|
Your job is to assess whether the agent is on track and recommend strategic adjustments.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/meta-reasoning/prompts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/meta-reasoning/prompts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,70 @@
|
|
|
1
|
-
import type { Agent, Tool, LLMBackend,
|
|
1
|
+
import type { Agent, Tool, LLMBackend, ToolSelfGenerationConfig, ToolSandboxConfig, MetaReasoningConfig, ArchitectureEvolutionConfig, ModificationConstraintsConfig, ModificationConstraints, ArchitectureConfig, GeneratedTool, MetaObservation, MetaAssessment, MetaAdaptation, ModificationCheckpoint, AppliedModification, SelfModifyingEvent, SelfModifyingEventType, CapabilityGap, EvolutionMetrics, ReasoningMode } from '@cogitator-ai/types';
|
|
2
|
+
export interface SelfModifyingAgentConfig {
|
|
3
|
+
enabled?: boolean;
|
|
4
|
+
toolGeneration?: Partial<Omit<ToolSelfGenerationConfig, 'sandboxConfig'>> & {
|
|
5
|
+
sandboxConfig?: Partial<ToolSandboxConfig>;
|
|
6
|
+
};
|
|
7
|
+
metaReasoning?: Partial<MetaReasoningConfig>;
|
|
8
|
+
architectureEvolution?: Partial<ArchitectureEvolutionConfig>;
|
|
9
|
+
constraints?: Partial<ModificationConstraintsConfig>;
|
|
10
|
+
}
|
|
2
11
|
export interface SelfModifyingAgentOptions {
|
|
3
12
|
agent: Agent;
|
|
4
13
|
llm: LLMBackend;
|
|
5
|
-
config?:
|
|
14
|
+
config?: SelfModifyingAgentConfig;
|
|
15
|
+
/** Additional or overriding constraint sets used to validate every self-modification. */
|
|
16
|
+
modificationConstraints?: Partial<ModificationConstraints>;
|
|
17
|
+
/** Models architecture evolution may switch to. Model changes are never proposed when empty. */
|
|
18
|
+
availableModels?: string[];
|
|
19
|
+
}
|
|
20
|
+
export interface SelfModifyingEventDataMap {
|
|
21
|
+
run_started: {
|
|
22
|
+
input: string;
|
|
23
|
+
};
|
|
24
|
+
run_completed: {
|
|
25
|
+
success: boolean;
|
|
26
|
+
toolsGenerated?: number;
|
|
27
|
+
adaptationsMade?: number;
|
|
28
|
+
error?: string;
|
|
29
|
+
};
|
|
30
|
+
tool_generation_started: {
|
|
31
|
+
gap: CapabilityGap;
|
|
32
|
+
};
|
|
33
|
+
tool_generation_completed: {
|
|
34
|
+
toolId: string;
|
|
35
|
+
name: string;
|
|
36
|
+
success: boolean;
|
|
37
|
+
iterations?: number;
|
|
38
|
+
error?: string;
|
|
39
|
+
};
|
|
40
|
+
meta_assessment: {
|
|
41
|
+
observation: MetaObservation;
|
|
42
|
+
assessment: MetaAssessment;
|
|
43
|
+
};
|
|
44
|
+
strategy_changed: {
|
|
45
|
+
previousMode: ReasoningMode;
|
|
46
|
+
newMode: ReasoningMode;
|
|
47
|
+
reason: string;
|
|
48
|
+
};
|
|
49
|
+
architecture_evolved: {
|
|
50
|
+
success: boolean;
|
|
51
|
+
candidateId?: string;
|
|
52
|
+
changes?: ArchitectureConfig;
|
|
53
|
+
metrics?: EvolutionMetrics;
|
|
54
|
+
error?: string;
|
|
55
|
+
};
|
|
56
|
+
checkpoint_created: {
|
|
57
|
+
checkpointId: string;
|
|
58
|
+
};
|
|
59
|
+
rollback_performed: {
|
|
60
|
+
checkpointId: string;
|
|
61
|
+
reason: string;
|
|
62
|
+
};
|
|
6
63
|
}
|
|
64
|
+
export type TypedSelfModifyingEvent<K extends SelfModifyingEventType> = Omit<SelfModifyingEvent, 'type' | 'data'> & {
|
|
65
|
+
type: K;
|
|
66
|
+
data: SelfModifyingEventDataMap[K];
|
|
67
|
+
};
|
|
7
68
|
export interface RunContext {
|
|
8
69
|
runId: string;
|
|
9
70
|
input: string;
|
|
@@ -16,30 +77,27 @@ export interface RunContext {
|
|
|
16
77
|
checkpoints: ModificationCheckpoint[];
|
|
17
78
|
modificationsCount: number;
|
|
18
79
|
appliedModifications: AppliedModification[];
|
|
80
|
+
tokensUsed: number;
|
|
19
81
|
}
|
|
20
82
|
export declare class SelfModifyingAgent {
|
|
21
83
|
private readonly agent;
|
|
22
84
|
private readonly llm;
|
|
85
|
+
private readonly modelName;
|
|
23
86
|
private readonly config;
|
|
24
87
|
private readonly emitter;
|
|
88
|
+
private readonly listenerWrappers;
|
|
25
89
|
private readonly gapAnalyzer;
|
|
26
90
|
private readonly toolGenerator;
|
|
27
91
|
private readonly toolStore;
|
|
28
92
|
private readonly metaReasoner;
|
|
29
93
|
private readonly parameterOptimizer;
|
|
30
|
-
private readonly capabilityAnalyzer;
|
|
31
94
|
private readonly modificationValidator;
|
|
32
95
|
private readonly rollbackManager;
|
|
33
96
|
private currentContext;
|
|
34
|
-
private
|
|
35
|
-
private storedExecutableTools;
|
|
97
|
+
private runQueue;
|
|
36
98
|
constructor(options: SelfModifyingAgentOptions);
|
|
37
|
-
on<K extends
|
|
38
|
-
|
|
39
|
-
}>) => void): void;
|
|
40
|
-
off<K extends SelfModifyingEvent['type']>(event: K, handler: (event: Extract<SelfModifyingEvent, {
|
|
41
|
-
type: K;
|
|
42
|
-
}>) => void): void;
|
|
99
|
+
on<K extends SelfModifyingEventType>(event: K, handler: (event: TypedSelfModifyingEvent<K>) => void): () => void;
|
|
100
|
+
off<K extends SelfModifyingEventType>(event: K, handler: (event: TypedSelfModifyingEvent<K>) => void): void;
|
|
43
101
|
run(input: string): Promise<{
|
|
44
102
|
output: string;
|
|
45
103
|
toolsGenerated: GeneratedTool[];
|
|
@@ -50,20 +108,28 @@ export declare class SelfModifyingAgent {
|
|
|
50
108
|
recordToolUsage(toolId: string, success: boolean, executionTime: number): Promise<void>;
|
|
51
109
|
getGeneratedTools(): Promise<GeneratedTool[]>;
|
|
52
110
|
createCheckpoint(): Promise<ModificationCheckpoint | null>;
|
|
53
|
-
rollbackToCheckpoint(checkpointId: string): Promise<boolean>;
|
|
54
|
-
private
|
|
111
|
+
rollbackToCheckpoint(checkpointId: string, reason?: string): Promise<boolean>;
|
|
112
|
+
private executeRun;
|
|
113
|
+
private emit;
|
|
114
|
+
private createBaseArchitectureConfig;
|
|
55
115
|
private mergeConfig;
|
|
56
|
-
private
|
|
116
|
+
private getAgentTools;
|
|
117
|
+
private loadAvailableTools;
|
|
57
118
|
private optimizeArchitecture;
|
|
119
|
+
private recordArchitectureOutcome;
|
|
58
120
|
private analyzeAndGenerateTools;
|
|
121
|
+
private generateAndRegisterTool;
|
|
122
|
+
private checkGeneratedTool;
|
|
59
123
|
private executeWithMetaReasoning;
|
|
124
|
+
private selectTrigger;
|
|
60
125
|
private executeAgentStep;
|
|
126
|
+
private executeToolCalls;
|
|
127
|
+
private executeToolCall;
|
|
61
128
|
private buildToolSchemas;
|
|
129
|
+
private stepConfidence;
|
|
62
130
|
private validateModification;
|
|
63
131
|
private canApplyModification;
|
|
64
132
|
private recordModification;
|
|
65
|
-
private
|
|
66
|
-
private estimateConfidence;
|
|
67
|
-
private isTaskComplete;
|
|
133
|
+
private autoRollback;
|
|
68
134
|
}
|
|
69
135
|
//# sourceMappingURL=self-modifying-agent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"self-modifying-agent.d.ts","sourceRoot":"","sources":["../src/self-modifying-agent.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,KAAK,EAEL,IAAI,
|
|
1
|
+
{"version":3,"file":"self-modifying-agent.d.ts","sourceRoot":"","sources":["../src/self-modifying-agent.ts"],"names":[],"mappings":"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"}
|