opencode-agentic-engine 0.1.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 (81) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +499 -0
  3. package/dist/agents/agent-runtime.d.ts +51 -0
  4. package/dist/agents/agent-runtime.d.ts.map +1 -0
  5. package/dist/agents/coordinator.d.ts +84 -0
  6. package/dist/agents/coordinator.d.ts.map +1 -0
  7. package/dist/agents/orchestrator.d.ts +56 -0
  8. package/dist/agents/orchestrator.d.ts.map +1 -0
  9. package/dist/agents/role-registry.d.ts +71 -0
  10. package/dist/agents/role-registry.d.ts.map +1 -0
  11. package/dist/core/agent-loop.d.ts +39 -0
  12. package/dist/core/agent-loop.d.ts.map +1 -0
  13. package/dist/core/config.d.ts +76 -0
  14. package/dist/core/config.d.ts.map +1 -0
  15. package/dist/core/error-analyzer.d.ts +37 -0
  16. package/dist/core/error-analyzer.d.ts.map +1 -0
  17. package/dist/core/executor.d.ts +73 -0
  18. package/dist/core/executor.d.ts.map +1 -0
  19. package/dist/core/git.d.ts +38 -0
  20. package/dist/core/git.d.ts.map +1 -0
  21. package/dist/core/intent-parser.d.ts +26 -0
  22. package/dist/core/intent-parser.d.ts.map +1 -0
  23. package/dist/core/llm.d.ts +90 -0
  24. package/dist/core/llm.d.ts.map +1 -0
  25. package/dist/core/model-registry.d.ts +65 -0
  26. package/dist/core/model-registry.d.ts.map +1 -0
  27. package/dist/core/navigator.d.ts +28 -0
  28. package/dist/core/navigator.d.ts.map +1 -0
  29. package/dist/core/parallel.d.ts +63 -0
  30. package/dist/core/parallel.d.ts.map +1 -0
  31. package/dist/core/planner.d.ts +19 -0
  32. package/dist/core/planner.d.ts.map +1 -0
  33. package/dist/core/task-classifier.d.ts +24 -0
  34. package/dist/core/task-classifier.d.ts.map +1 -0
  35. package/dist/core/tech-debt-scorer.d.ts +20 -0
  36. package/dist/core/tech-debt-scorer.d.ts.map +1 -0
  37. package/dist/core/verifier.d.ts +43 -0
  38. package/dist/core/verifier.d.ts.map +1 -0
  39. package/dist/drift/checkpoints.d.ts +23 -0
  40. package/dist/drift/checkpoints.d.ts.map +1 -0
  41. package/dist/drift/context-compressor.d.ts +28 -0
  42. package/dist/drift/context-compressor.d.ts.map +1 -0
  43. package/dist/drift/dependency-tracker.d.ts +75 -0
  44. package/dist/drift/dependency-tracker.d.ts.map +1 -0
  45. package/dist/drift/hallucination-guard.d.ts +25 -0
  46. package/dist/drift/hallucination-guard.d.ts.map +1 -0
  47. package/dist/drift/pattern-discovery.d.ts +138 -0
  48. package/dist/drift/pattern-discovery.d.ts.map +1 -0
  49. package/dist/evaluation/live-evaluator.d.ts +71 -0
  50. package/dist/evaluation/live-evaluator.d.ts.map +1 -0
  51. package/dist/evolution/continuous-evolution.d.ts +92 -0
  52. package/dist/evolution/continuous-evolution.d.ts.map +1 -0
  53. package/dist/evolution/self-evolver.d.ts +85 -0
  54. package/dist/evolution/self-evolver.d.ts.map +1 -0
  55. package/dist/index.d.ts +16 -0
  56. package/dist/index.d.ts.map +1 -0
  57. package/dist/index.js +22069 -0
  58. package/dist/index.js.map +7 -0
  59. package/dist/memory/episodic-store.d.ts +40 -0
  60. package/dist/memory/episodic-store.d.ts.map +1 -0
  61. package/dist/memory/local-embedder.d.ts +17 -0
  62. package/dist/memory/local-embedder.d.ts.map +1 -0
  63. package/dist/memory/persistence.d.ts +17 -0
  64. package/dist/memory/persistence.d.ts.map +1 -0
  65. package/dist/memory/schema-version.d.ts +29 -0
  66. package/dist/memory/schema-version.d.ts.map +1 -0
  67. package/dist/memory/session-store.d.ts +50 -0
  68. package/dist/memory/session-store.d.ts.map +1 -0
  69. package/dist/memory/skill-format.d.ts +51 -0
  70. package/dist/memory/skill-format.d.ts.map +1 -0
  71. package/dist/memory/skill-store.d.ts +30 -0
  72. package/dist/memory/skill-store.d.ts.map +1 -0
  73. package/dist/memory/skill-training.d.ts +37 -0
  74. package/dist/memory/skill-training.d.ts.map +1 -0
  75. package/dist/memory/vector-store.d.ts +67 -0
  76. package/dist/memory/vector-store.d.ts.map +1 -0
  77. package/dist/observability/dashboard.d.ts +34 -0
  78. package/dist/observability/dashboard.d.ts.map +1 -0
  79. package/dist/observability/trace-logger.d.ts +27 -0
  80. package/dist/observability/trace-logger.d.ts.map +1 -0
  81. package/package.json +57 -0
@@ -0,0 +1,92 @@
1
+ /**
2
+ * ContinuousEvolution — auto-feedback pipeline for self-evolving agents.
3
+ *
4
+ * Tracks a rolling window of step results, detects performance degradation,
5
+ * and triggers evolution analysis when anomalies are found.
6
+ *
7
+ * Aligns with the paper's "continuous evolution" vision:
8
+ * agents that monitor their own performance and self-improve over time.
9
+ */
10
+ export interface StepResult {
11
+ stepId: string;
12
+ success: boolean;
13
+ output: string;
14
+ sessionId: string;
15
+ timestamp: number;
16
+ category?: string;
17
+ }
18
+ export interface ForecastData {
19
+ /** Predicted success rate for the next window */
20
+ nextWindowRate: number;
21
+ /** Estimated remaining steps until success rate drops below 50%, or null if not predictable */
22
+ stepsUntilCritical: number | null;
23
+ /** True if the forecast shows imminent critical degradation */
24
+ critical: boolean;
25
+ /** Per-bucket success rates for transparency */
26
+ bucketRates: number[];
27
+ }
28
+ export interface PerformanceTrend {
29
+ overall: {
30
+ total: number;
31
+ success: number;
32
+ successRate: number;
33
+ };
34
+ rolling: {
35
+ windowSize: number;
36
+ successRate: number;
37
+ direction: "improving" | "stable" | "degrading";
38
+ };
39
+ degradationDetected: boolean;
40
+ anomalyCount: number;
41
+ recentErrors: Array<{
42
+ stepId: string;
43
+ output: string;
44
+ category: string;
45
+ timestamp: number;
46
+ }>;
47
+ recommendations: string[];
48
+ /** Predictive degradation forecast (Gap #12) */
49
+ forecast: ForecastData;
50
+ }
51
+ export interface EvolutionTrigger {
52
+ reason: string;
53
+ type: "degradation" | "anomaly_spike" | "milestone";
54
+ metrics: {
55
+ recentRate: number;
56
+ overallRate: number;
57
+ anomalyRatio: number;
58
+ };
59
+ }
60
+ export type DegradationCallback = (trend: PerformanceTrend, trigger: EvolutionTrigger) => void;
61
+ export declare class ContinuousEvolution {
62
+ private windowSize;
63
+ private results;
64
+ private degradationCallbacks;
65
+ private lastEvolveSession;
66
+ private evolveCount;
67
+ constructor(windowSize?: number);
68
+ /** Feed a step result into the rolling window */
69
+ feedStepResult(result: StepResult): void;
70
+ /** Feed multiple results at once (e.g. after a session completes) */
71
+ feedBatch(results: StepResult[]): void;
72
+ /** Register a callback that fires when degradation is detected */
73
+ onDegradation(cb: DegradationCallback): void;
74
+ /** Get current performance trend */
75
+ getTrend(): PerformanceTrend;
76
+ /** Check trend and fire callbacks if degradation found. Returns current trend. */
77
+ checkAndNotify(): PerformanceTrend;
78
+ /**
79
+ * Decide whether to auto-trigger evolution analysis.
80
+ * Returns null if no trigger needed, or an EvolutionTrigger explaining why.
81
+ */
82
+ shouldEvolve(sessionId: string): EvolutionTrigger | null;
83
+ /** Reset state (for testing) */
84
+ reset(): void;
85
+ /** Get raw counts */
86
+ getStats(): {
87
+ totalResults: number;
88
+ evolveCount: number;
89
+ windowSize: number;
90
+ };
91
+ }
92
+ //# sourceMappingURL=continuous-evolution.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"continuous-evolution.d.ts","sourceRoot":"","sources":["../../src/evolution/continuous-evolution.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,iDAAiD;IACjD,cAAc,EAAE,MAAM,CAAA;IACtB,+FAA+F;IAC/F,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,+DAA+D;IAC/D,QAAQ,EAAE,OAAO,CAAA;IACjB,gDAAgD;IAChD,WAAW,EAAE,MAAM,EAAE,CAAA;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAA;IAChE,OAAO,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAA;KAAE,CAAA;IACrG,mBAAmB,EAAE,OAAO,CAAA;IAC5B,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC5F,eAAe,EAAE,MAAM,EAAE,CAAA;IACzB,gDAAgD;IAChD,QAAQ,EAAE,YAAY,CAAA;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,aAAa,GAAG,eAAe,GAAG,WAAW,CAAA;IACnD,OAAO,EAAE;QACP,UAAU,EAAE,MAAM,CAAA;QAClB,WAAW,EAAE,MAAM,CAAA;QACnB,YAAY,EAAE,MAAM,CAAA;KACrB,CAAA;CACF;AAED,MAAM,MAAM,mBAAmB,GAAG,CAAC,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAA;AAE9F,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,oBAAoB,CAA4B;IACxD,OAAO,CAAC,iBAAiB,CAAsB;IAC/C,OAAO,CAAC,WAAW,CAAI;gBAEX,UAAU,SAAK;IAI3B,iDAAiD;IACjD,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAQxC,qEAAqE;IACrE,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,IAAI;IAMtC,kEAAkE;IAClE,aAAa,CAAC,EAAE,EAAE,mBAAmB,GAAG,IAAI;IAI5C,oCAAoC;IACpC,QAAQ,IAAI,gBAAgB;IAqH5B,kFAAkF;IAClF,cAAc,IAAI,gBAAgB;IAmBlC;;;OAGG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IA0CxD,gCAAgC;IAChC,KAAK,IAAI,IAAI;IAMb,qBAAqB;IACrB,QAAQ,IAAI;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE;CAO9E"}
@@ -0,0 +1,85 @@
1
+ import type { SkillRecord } from "../memory/skill-store.js";
2
+ import type { Episode } from "../memory/episodic-store.js";
3
+ import type { AgentTask } from "../agents/coordinator.js";
4
+ export interface EvolutionMetrics {
5
+ totalSessions: number;
6
+ totalSteps: number;
7
+ successRate: number;
8
+ retryRate: number;
9
+ avgRetriesPerFailure: number;
10
+ topErrorCategories: Array<{
11
+ category: string;
12
+ count: number;
13
+ }>;
14
+ skillEffectiveness: Array<{
15
+ name: string;
16
+ successRate: number;
17
+ usage: number;
18
+ }>;
19
+ toolUsage: Array<{
20
+ tool: string;
21
+ calls: number;
22
+ failureRate: number;
23
+ }>;
24
+ recommendations: string[];
25
+ }
26
+ export interface SkillPatch {
27
+ skillId: string;
28
+ skillName: string;
29
+ failures: number;
30
+ suggestedChanges: Array<{
31
+ type: "add_step" | "add_tool" | "add_rollback" | "reorder" | "split";
32
+ description: string;
33
+ detail: string;
34
+ }>;
35
+ }
36
+ export interface RoleSuggestion {
37
+ name: string;
38
+ triggerPattern: string;
39
+ suggestedTools: string[];
40
+ reason: string;
41
+ }
42
+ export interface PromptPatch {
43
+ role: string;
44
+ errorCategory: string;
45
+ instruction: string;
46
+ priority: "high" | "medium" | "low";
47
+ occurrences: number;
48
+ }
49
+ export interface EvolutionReport {
50
+ metrics: EvolutionMetrics;
51
+ skillPatches: SkillPatch[];
52
+ roleSuggestions: RoleSuggestion[];
53
+ promptPatches: PromptPatch[];
54
+ improvementScore: number;
55
+ }
56
+ export declare class SelfEvolver {
57
+ private skills;
58
+ private episodes;
59
+ private tasks;
60
+ private stepStates;
61
+ private traceEntries;
62
+ feedSkills(skills: SkillRecord[]): void;
63
+ feedEpisodes(episodes: Episode[]): void;
64
+ feedTasks(tasks: AgentTask[]): void;
65
+ feedStepStates(steps: Array<{
66
+ stepId: string;
67
+ success: boolean;
68
+ output: string;
69
+ }>): void;
70
+ feedTraces(traces: Array<{
71
+ toolUsed: string;
72
+ success: boolean;
73
+ step: string;
74
+ }>): void;
75
+ evolve(): EvolutionReport;
76
+ private computeMetrics;
77
+ private analyzeSkills;
78
+ private suggestRoles;
79
+ /**
80
+ * Generate prompt patches from recurring error patterns (Gap #1: prompt auto-patching).
81
+ * Maps error categories → specific instruction additions for the relevant agent role.
82
+ */
83
+ private suggestPromptPatches;
84
+ }
85
+ //# sourceMappingURL=self-evolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"self-evolver.d.ts","sourceRoot":"","sources":["../../src/evolution/self-evolver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import type { Plugin, PluginModule } from "@opencode-ai/plugin";
2
+ export declare const AgenticEngine: Plugin;
3
+ declare const pluginModule: PluginModule;
4
+ export default pluginModule;
5
+ export { ErrorAnalyzer } from "./core/error-analyzer.js";
6
+ export { RoleRegistry } from "./agents/role-registry.js";
7
+ export { VectorStore } from "./memory/vector-store.js";
8
+ export { Verifier } from "./core/verifier.js";
9
+ export { ContinuousEvolution } from "./evolution/continuous-evolution.js";
10
+ export { SelfEvolver } from "./evolution/self-evolver.js";
11
+ export { AgentCoordinator } from "./agents/coordinator.js";
12
+ export { Executor } from "./core/executor.js";
13
+ export { PatternDiscovery } from "./drift/pattern-discovery.js";
14
+ export { skillToTrainingExample, skillsToTrainingData, exportOpenAIJSONL, exportInstructionsJSON, trainingDatasetSummary } from "./memory/skill-training.js";
15
+ export { LiveEvaluator } from "./evaluation/live-evaluator.js";
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAi5F/D,eAAO,MAAM,aAAa,EAAE,MAAqB,CAAA;AAEjD,QAAA,MAAM,YAAY,EAAE,YAGnB,CAAA;AACD,eAAe,YAAY,CAAA;AAG3B,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAC/D,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AAC5J,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA"}