@soleri/core 9.3.0 → 9.4.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/dist/brain/intelligence.d.ts +5 -0
- package/dist/brain/intelligence.d.ts.map +1 -1
- package/dist/brain/intelligence.js +115 -26
- package/dist/brain/intelligence.js.map +1 -1
- package/dist/brain/learning-radar.d.ts +3 -3
- package/dist/brain/learning-radar.d.ts.map +1 -1
- package/dist/brain/learning-radar.js +8 -4
- package/dist/brain/learning-radar.js.map +1 -1
- package/dist/control/intent-router.d.ts +2 -2
- package/dist/control/intent-router.d.ts.map +1 -1
- package/dist/control/intent-router.js +35 -1
- package/dist/control/intent-router.js.map +1 -1
- package/dist/control/types.d.ts +10 -2
- package/dist/control/types.d.ts.map +1 -1
- package/dist/curator/curator.d.ts +4 -0
- package/dist/curator/curator.d.ts.map +1 -1
- package/dist/curator/curator.js +23 -1
- package/dist/curator/curator.js.map +1 -1
- package/dist/curator/schema.d.ts +1 -1
- package/dist/curator/schema.d.ts.map +1 -1
- package/dist/curator/schema.js +8 -0
- package/dist/curator/schema.js.map +1 -1
- package/dist/domain-packs/types.d.ts +6 -0
- package/dist/domain-packs/types.d.ts.map +1 -1
- package/dist/domain-packs/types.js +1 -0
- package/dist/domain-packs/types.js.map +1 -1
- package/dist/engine/module-manifest.d.ts +2 -0
- package/dist/engine/module-manifest.d.ts.map +1 -1
- package/dist/engine/module-manifest.js +117 -2
- package/dist/engine/module-manifest.js.map +1 -1
- package/dist/engine/register-engine.d.ts +9 -0
- package/dist/engine/register-engine.d.ts.map +1 -1
- package/dist/engine/register-engine.js +59 -1
- package/dist/engine/register-engine.js.map +1 -1
- package/dist/facades/types.d.ts +5 -1
- package/dist/facades/types.d.ts.map +1 -1
- package/dist/facades/types.js.map +1 -1
- package/dist/index.d.ts +6 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/operator/operator-context-store.d.ts +54 -0
- package/dist/operator/operator-context-store.d.ts.map +1 -0
- package/dist/operator/operator-context-store.js +434 -0
- package/dist/operator/operator-context-store.js.map +1 -0
- package/dist/operator/operator-context-types.d.ts +101 -0
- package/dist/operator/operator-context-types.d.ts.map +1 -0
- package/dist/operator/operator-context-types.js +27 -0
- package/dist/operator/operator-context-types.js.map +1 -0
- package/dist/packs/index.d.ts +2 -2
- package/dist/packs/index.d.ts.map +1 -1
- package/dist/packs/index.js +1 -1
- package/dist/packs/index.js.map +1 -1
- package/dist/packs/lockfile.d.ts +3 -0
- package/dist/packs/lockfile.d.ts.map +1 -1
- package/dist/packs/lockfile.js.map +1 -1
- package/dist/packs/types.d.ts +8 -2
- package/dist/packs/types.d.ts.map +1 -1
- package/dist/packs/types.js +6 -0
- package/dist/packs/types.js.map +1 -1
- package/dist/planning/plan-lifecycle.d.ts +12 -1
- package/dist/planning/plan-lifecycle.d.ts.map +1 -1
- package/dist/planning/plan-lifecycle.js +52 -19
- package/dist/planning/plan-lifecycle.js.map +1 -1
- package/dist/planning/planner-types.d.ts +6 -0
- package/dist/planning/planner-types.d.ts.map +1 -1
- package/dist/planning/planner.d.ts +21 -1
- package/dist/planning/planner.d.ts.map +1 -1
- package/dist/planning/planner.js +62 -3
- package/dist/planning/planner.js.map +1 -1
- package/dist/planning/task-complexity-assessor.d.ts +42 -0
- package/dist/planning/task-complexity-assessor.d.ts.map +1 -0
- package/dist/planning/task-complexity-assessor.js +132 -0
- package/dist/planning/task-complexity-assessor.js.map +1 -0
- package/dist/plugins/types.d.ts +18 -18
- package/dist/runtime/admin-ops.d.ts +1 -1
- package/dist/runtime/admin-ops.d.ts.map +1 -1
- package/dist/runtime/admin-ops.js +118 -3
- package/dist/runtime/admin-ops.js.map +1 -1
- package/dist/runtime/admin-setup-ops.d.ts.map +1 -1
- package/dist/runtime/admin-setup-ops.js +19 -9
- package/dist/runtime/admin-setup-ops.js.map +1 -1
- package/dist/runtime/capture-ops.d.ts.map +1 -1
- package/dist/runtime/capture-ops.js +35 -7
- package/dist/runtime/capture-ops.js.map +1 -1
- package/dist/runtime/facades/brain-facade.d.ts.map +1 -1
- package/dist/runtime/facades/brain-facade.js +4 -2
- package/dist/runtime/facades/brain-facade.js.map +1 -1
- package/dist/runtime/facades/control-facade.d.ts.map +1 -1
- package/dist/runtime/facades/control-facade.js +8 -2
- package/dist/runtime/facades/control-facade.js.map +1 -1
- package/dist/runtime/facades/curator-facade.d.ts.map +1 -1
- package/dist/runtime/facades/curator-facade.js +13 -0
- package/dist/runtime/facades/curator-facade.js.map +1 -1
- package/dist/runtime/facades/memory-facade.d.ts.map +1 -1
- package/dist/runtime/facades/memory-facade.js +10 -12
- package/dist/runtime/facades/memory-facade.js.map +1 -1
- package/dist/runtime/facades/orchestrate-facade.d.ts.map +1 -1
- package/dist/runtime/facades/orchestrate-facade.js +36 -1
- package/dist/runtime/facades/orchestrate-facade.js.map +1 -1
- package/dist/runtime/facades/plan-facade.d.ts.map +1 -1
- package/dist/runtime/facades/plan-facade.js +20 -4
- package/dist/runtime/facades/plan-facade.js.map +1 -1
- package/dist/runtime/orchestrate-ops.d.ts.map +1 -1
- package/dist/runtime/orchestrate-ops.js +109 -31
- package/dist/runtime/orchestrate-ops.js.map +1 -1
- package/dist/runtime/plan-feedback-helper.d.ts +21 -0
- package/dist/runtime/plan-feedback-helper.d.ts.map +1 -0
- package/dist/runtime/plan-feedback-helper.js +52 -0
- package/dist/runtime/plan-feedback-helper.js.map +1 -0
- package/dist/runtime/planning-extra-ops.d.ts.map +1 -1
- package/dist/runtime/planning-extra-ops.js +73 -34
- package/dist/runtime/planning-extra-ops.js.map +1 -1
- package/dist/runtime/session-briefing.d.ts.map +1 -1
- package/dist/runtime/session-briefing.js +9 -1
- package/dist/runtime/session-briefing.js.map +1 -1
- package/dist/runtime/types.d.ts +3 -0
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/skills/sync-skills.d.ts.map +1 -1
- package/dist/skills/sync-skills.js +13 -7
- package/dist/skills/sync-skills.js.map +1 -1
- package/package.json +1 -1
- package/src/brain/brain-intelligence.test.ts +30 -0
- package/src/brain/extraction-quality.test.ts +323 -0
- package/src/brain/intelligence.ts +133 -30
- package/src/brain/learning-radar.ts +8 -5
- package/src/brain/second-brain-features.test.ts +1 -1
- package/src/control/intent-router.test.ts +73 -3
- package/src/control/intent-router.ts +38 -1
- package/src/control/types.ts +13 -2
- package/src/curator/curator.test.ts +92 -0
- package/src/curator/curator.ts +29 -1
- package/src/curator/schema.ts +8 -0
- package/src/domain-packs/types.ts +8 -0
- package/src/engine/module-manifest.test.ts +51 -2
- package/src/engine/module-manifest.ts +119 -2
- package/src/engine/register-engine.test.ts +73 -1
- package/src/engine/register-engine.ts +61 -1
- package/src/facades/types.ts +5 -0
- package/src/index.ts +30 -0
- package/src/operator/operator-context-store.test.ts +698 -0
- package/src/operator/operator-context-store.ts +569 -0
- package/src/operator/operator-context-types.ts +139 -0
- package/src/packs/index.ts +3 -1
- package/src/packs/lockfile.ts +3 -0
- package/src/packs/types.ts +9 -0
- package/src/planning/plan-lifecycle.ts +80 -22
- package/src/planning/planner-types.ts +6 -0
- package/src/planning/planner.ts +74 -4
- package/src/planning/task-complexity-assessor.test.ts +302 -0
- package/src/planning/task-complexity-assessor.ts +180 -0
- package/src/runtime/admin-ops.test.ts +159 -3
- package/src/runtime/admin-ops.ts +123 -3
- package/src/runtime/admin-setup-ops.ts +30 -10
- package/src/runtime/capture-ops.test.ts +84 -0
- package/src/runtime/capture-ops.ts +35 -7
- package/src/runtime/facades/admin-facade.test.ts +1 -1
- package/src/runtime/facades/brain-facade.ts +6 -3
- package/src/runtime/facades/control-facade.ts +10 -2
- package/src/runtime/facades/curator-facade.ts +18 -0
- package/src/runtime/facades/memory-facade.test.ts +14 -12
- package/src/runtime/facades/memory-facade.ts +10 -12
- package/src/runtime/facades/orchestrate-facade.ts +33 -1
- package/src/runtime/facades/plan-facade.test.ts +213 -0
- package/src/runtime/facades/plan-facade.ts +23 -4
- package/src/runtime/orchestrate-ops.test.ts +404 -0
- package/src/runtime/orchestrate-ops.ts +129 -37
- package/src/runtime/plan-feedback-helper.test.ts +173 -0
- package/src/runtime/plan-feedback-helper.ts +63 -0
- package/src/runtime/planning-extra-ops.test.ts +43 -1
- package/src/runtime/planning-extra-ops.ts +96 -33
- package/src/runtime/session-briefing.test.ts +1 -0
- package/src/runtime/session-briefing.ts +10 -1
- package/src/runtime/types.ts +3 -0
- package/src/skills/sync-skills.ts +14 -7
- package/src/vault/vault-scaling.test.ts +5 -5
- package/vitest.config.ts +1 -0
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Task Complexity Assessor — pure function that classifies tasks as simple or complex.
|
|
3
|
+
*
|
|
4
|
+
* Used by the planning module to decide whether a decomposed GH issue
|
|
5
|
+
* needs a full plan or can be executed directly.
|
|
6
|
+
*/
|
|
7
|
+
export interface AssessmentInput {
|
|
8
|
+
/** User's task description. */
|
|
9
|
+
prompt: string;
|
|
10
|
+
/** Estimated number of files to touch. */
|
|
11
|
+
filesEstimated?: number;
|
|
12
|
+
/** GH issue body if available. */
|
|
13
|
+
parentIssueContext?: string;
|
|
14
|
+
/** Whether the approach is already described in a parent plan. */
|
|
15
|
+
hasParentPlan?: boolean;
|
|
16
|
+
/** Which domains are involved. */
|
|
17
|
+
domains?: string[];
|
|
18
|
+
}
|
|
19
|
+
export interface AssessmentSignal {
|
|
20
|
+
name: string;
|
|
21
|
+
weight: number;
|
|
22
|
+
triggered: boolean;
|
|
23
|
+
detail: string;
|
|
24
|
+
}
|
|
25
|
+
export interface AssessmentResult {
|
|
26
|
+
classification: 'simple' | 'complex';
|
|
27
|
+
/** 0-100 complexity score. Threshold at 40. */
|
|
28
|
+
score: number;
|
|
29
|
+
signals: AssessmentSignal[];
|
|
30
|
+
/** One-line explanation. */
|
|
31
|
+
reasoning: string;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Assess task complexity from structured input.
|
|
35
|
+
*
|
|
36
|
+
* Returns a classification (`simple` | `complex`), a numeric score (0-100),
|
|
37
|
+
* the individual signals that contributed, and a one-line reasoning string.
|
|
38
|
+
*
|
|
39
|
+
* Pure function — no side effects, no DB, no MCP calls.
|
|
40
|
+
*/
|
|
41
|
+
export declare function assessTaskComplexity(input: AssessmentInput): AssessmentResult;
|
|
42
|
+
//# sourceMappingURL=task-complexity-assessor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task-complexity-assessor.d.ts","sourceRoot":"","sources":["../../src/planning/task-complexity-assessor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,WAAW,eAAe;IAC9B,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kCAAkC;IAClC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kEAAkE;IAClE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,kCAAkC;IAClC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,cAAc,EAAE,QAAQ,GAAG,SAAS,CAAC;IACrC,+CAA+C;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAC5B,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;CACnB;AAgHD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,eAAe,GAAG,gBAAgB,CAuB7E"}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Task Complexity Assessor — pure function that classifies tasks as simple or complex.
|
|
3
|
+
*
|
|
4
|
+
* Used by the planning module to decide whether a decomposed GH issue
|
|
5
|
+
* needs a full plan or can be executed directly.
|
|
6
|
+
*/
|
|
7
|
+
// ─── Signal Detectors ───────────────────────────────────────────────
|
|
8
|
+
const CROSS_CUTTING_PATTERNS = [
|
|
9
|
+
/\bauth(?:entication|orization)?\b/i,
|
|
10
|
+
/\bmigrat(?:e|ion|ing)\b/i,
|
|
11
|
+
/\brefactor(?:ing)?\s+across\b/i,
|
|
12
|
+
/\bcross[- ]cutting\b/i,
|
|
13
|
+
];
|
|
14
|
+
const NEW_DEPENDENCY_PATTERNS = [
|
|
15
|
+
/\badd\s+dep(?:endency|endencies)?\b/i,
|
|
16
|
+
/\binstall\b/i,
|
|
17
|
+
/\bnew\s+package\b/i,
|
|
18
|
+
/\bnpm\s+install\b/i,
|
|
19
|
+
/\badd\s+(?:a\s+)?(?:new\s+)?(?:npm\s+)?package\b/i,
|
|
20
|
+
];
|
|
21
|
+
const DESIGN_DECISION_PATTERNS = [
|
|
22
|
+
/\bhow\s+should\b/i,
|
|
23
|
+
/\bwhich\s+approach\b/i,
|
|
24
|
+
/\bdesign\s+decision\b/i,
|
|
25
|
+
/\barchitectur(?:e|al)\s+(?:decision|choice)\b/i,
|
|
26
|
+
/\btrade[- ]?off/i,
|
|
27
|
+
];
|
|
28
|
+
function detectFileCount(input) {
|
|
29
|
+
const files = input.filesEstimated ?? 0;
|
|
30
|
+
const triggered = files >= 3;
|
|
31
|
+
return {
|
|
32
|
+
name: 'file-count',
|
|
33
|
+
weight: 25,
|
|
34
|
+
triggered,
|
|
35
|
+
detail: triggered
|
|
36
|
+
? `Estimated ${files} files (≥3 threshold)`
|
|
37
|
+
: files > 0
|
|
38
|
+
? `Estimated ${files} file${files === 1 ? '' : 's'} (under threshold)`
|
|
39
|
+
: 'No file estimate provided',
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
function detectCrossCutting(input) {
|
|
43
|
+
const text = input.prompt;
|
|
44
|
+
const match = CROSS_CUTTING_PATTERNS.find((p) => p.test(text));
|
|
45
|
+
return {
|
|
46
|
+
name: 'cross-cutting-keywords',
|
|
47
|
+
weight: 20,
|
|
48
|
+
triggered: !!match,
|
|
49
|
+
detail: match
|
|
50
|
+
? `Detected cross-cutting keyword: "${text.match(match)?.[0]}"`
|
|
51
|
+
: 'No cross-cutting keywords detected',
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
function detectNewDependencies(input) {
|
|
55
|
+
const text = input.prompt;
|
|
56
|
+
const match = NEW_DEPENDENCY_PATTERNS.find((p) => p.test(text));
|
|
57
|
+
return {
|
|
58
|
+
name: 'new-dependencies',
|
|
59
|
+
weight: 15,
|
|
60
|
+
triggered: !!match,
|
|
61
|
+
detail: match
|
|
62
|
+
? `Detected dependency signal: "${text.match(match)?.[0]}"`
|
|
63
|
+
: 'No new dependency signals detected',
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
function detectDesignDecisions(input) {
|
|
67
|
+
const text = input.prompt;
|
|
68
|
+
const match = DESIGN_DECISION_PATTERNS.find((p) => p.test(text));
|
|
69
|
+
return {
|
|
70
|
+
name: 'design-decisions-needed',
|
|
71
|
+
weight: 20,
|
|
72
|
+
triggered: !!match,
|
|
73
|
+
detail: match
|
|
74
|
+
? `Detected design decision signal: "${text.match(match)?.[0]}"`
|
|
75
|
+
: 'No design decision signals detected',
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
function detectApproachDescribed(input) {
|
|
79
|
+
const hasContext = !!(input.hasParentPlan || input.parentIssueContext?.trim());
|
|
80
|
+
return {
|
|
81
|
+
name: 'approach-already-described',
|
|
82
|
+
weight: -15,
|
|
83
|
+
triggered: hasContext,
|
|
84
|
+
detail: hasContext
|
|
85
|
+
? 'Approach already described in parent plan or issue'
|
|
86
|
+
: 'No pre-existing approach context',
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
function detectMultiDomain(input) {
|
|
90
|
+
const domains = input.domains ?? [];
|
|
91
|
+
const triggered = domains.length >= 2;
|
|
92
|
+
return {
|
|
93
|
+
name: 'multi-domain',
|
|
94
|
+
weight: 5,
|
|
95
|
+
triggered,
|
|
96
|
+
detail: triggered
|
|
97
|
+
? `Involves ${domains.length} domains: ${domains.join(', ')}`
|
|
98
|
+
: domains.length === 1
|
|
99
|
+
? `Single domain: ${domains[0]}`
|
|
100
|
+
: 'No domains specified',
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
// ─── Assessor ───────────────────────────────────────────────────────
|
|
104
|
+
const COMPLEXITY_THRESHOLD = 40;
|
|
105
|
+
/**
|
|
106
|
+
* Assess task complexity from structured input.
|
|
107
|
+
*
|
|
108
|
+
* Returns a classification (`simple` | `complex`), a numeric score (0-100),
|
|
109
|
+
* the individual signals that contributed, and a one-line reasoning string.
|
|
110
|
+
*
|
|
111
|
+
* Pure function — no side effects, no DB, no MCP calls.
|
|
112
|
+
*/
|
|
113
|
+
export function assessTaskComplexity(input) {
|
|
114
|
+
const signals = [
|
|
115
|
+
detectFileCount(input),
|
|
116
|
+
detectCrossCutting(input),
|
|
117
|
+
detectNewDependencies(input),
|
|
118
|
+
detectDesignDecisions(input),
|
|
119
|
+
detectApproachDescribed(input),
|
|
120
|
+
detectMultiDomain(input),
|
|
121
|
+
];
|
|
122
|
+
const rawScore = signals.reduce((sum, s) => sum + (s.triggered ? s.weight : 0), 0);
|
|
123
|
+
// Clamp to 0-100
|
|
124
|
+
const score = Math.max(0, Math.min(100, rawScore));
|
|
125
|
+
const classification = score >= COMPLEXITY_THRESHOLD ? 'complex' : 'simple';
|
|
126
|
+
const triggered = signals.filter((s) => s.triggered);
|
|
127
|
+
const reasoning = triggered.length === 0
|
|
128
|
+
? 'No complexity signals detected — treating as simple task'
|
|
129
|
+
: `${classification === 'complex' ? 'Complex' : 'Simple'}: ${triggered.map((s) => s.name).join(', ')} (score ${score})`;
|
|
130
|
+
return { classification, score, signals, reasoning };
|
|
131
|
+
}
|
|
132
|
+
//# sourceMappingURL=task-complexity-assessor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task-complexity-assessor.js","sourceRoot":"","sources":["../../src/planning/task-complexity-assessor.ts"],"names":[],"mappings":"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"}
|
package/dist/plugins/types.d.ts
CHANGED
|
@@ -30,11 +30,11 @@ export declare const pluginManifestSchema: z.ZodObject<{
|
|
|
30
30
|
}, "strip", z.ZodTypeAny, {
|
|
31
31
|
description: string;
|
|
32
32
|
name: string;
|
|
33
|
-
auth: "
|
|
33
|
+
auth: "write" | "read" | "admin";
|
|
34
34
|
}, {
|
|
35
35
|
name: string;
|
|
36
36
|
description?: string | undefined;
|
|
37
|
-
auth?: "
|
|
37
|
+
auth?: "write" | "read" | "admin" | undefined;
|
|
38
38
|
}>, "many">;
|
|
39
39
|
}, "strip", z.ZodTypeAny, {
|
|
40
40
|
description: string;
|
|
@@ -42,14 +42,14 @@ export declare const pluginManifestSchema: z.ZodObject<{
|
|
|
42
42
|
ops: {
|
|
43
43
|
description: string;
|
|
44
44
|
name: string;
|
|
45
|
-
auth: "
|
|
45
|
+
auth: "write" | "read" | "admin";
|
|
46
46
|
}[];
|
|
47
47
|
}, {
|
|
48
48
|
name: string;
|
|
49
49
|
ops: {
|
|
50
50
|
name: string;
|
|
51
51
|
description?: string | undefined;
|
|
52
|
-
auth?: "
|
|
52
|
+
auth?: "write" | "read" | "admin" | undefined;
|
|
53
53
|
}[];
|
|
54
54
|
description?: string | undefined;
|
|
55
55
|
}>, "many">>>;
|
|
@@ -64,26 +64,26 @@ export declare const pluginManifestSchema: z.ZodObject<{
|
|
|
64
64
|
tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
|
|
65
65
|
}, "strip", z.ZodTypeAny, {
|
|
66
66
|
type: string;
|
|
67
|
-
id: string;
|
|
68
67
|
title: string;
|
|
69
68
|
description: string;
|
|
69
|
+
id: string;
|
|
70
70
|
tags: string[];
|
|
71
71
|
domain?: string | undefined;
|
|
72
|
-
severity?: "
|
|
72
|
+
severity?: "critical" | "warning" | "suggestion" | undefined;
|
|
73
73
|
}, {
|
|
74
74
|
type: string;
|
|
75
|
-
id: string;
|
|
76
75
|
title: string;
|
|
77
76
|
description: string;
|
|
77
|
+
id: string;
|
|
78
78
|
domain?: string | undefined;
|
|
79
79
|
tags?: string[] | undefined;
|
|
80
|
-
severity?: "
|
|
80
|
+
severity?: "critical" | "warning" | "suggestion" | undefined;
|
|
81
81
|
}>, "many">>>;
|
|
82
82
|
}, "strip", z.ZodTypeAny, {
|
|
83
|
-
version: string;
|
|
84
|
-
id: string;
|
|
85
83
|
description: string;
|
|
86
84
|
name: string;
|
|
85
|
+
version: string;
|
|
86
|
+
id: string;
|
|
87
87
|
dependencies: string[];
|
|
88
88
|
facades: {
|
|
89
89
|
description: string;
|
|
@@ -91,43 +91,43 @@ export declare const pluginManifestSchema: z.ZodObject<{
|
|
|
91
91
|
ops: {
|
|
92
92
|
description: string;
|
|
93
93
|
name: string;
|
|
94
|
-
auth: "
|
|
94
|
+
auth: "write" | "read" | "admin";
|
|
95
95
|
}[];
|
|
96
96
|
}[];
|
|
97
97
|
intelligence: {
|
|
98
98
|
type: string;
|
|
99
|
-
id: string;
|
|
100
99
|
title: string;
|
|
101
100
|
description: string;
|
|
101
|
+
id: string;
|
|
102
102
|
tags: string[];
|
|
103
103
|
domain?: string | undefined;
|
|
104
|
-
severity?: "
|
|
104
|
+
severity?: "critical" | "warning" | "suggestion" | undefined;
|
|
105
105
|
}[];
|
|
106
106
|
domain?: string | undefined;
|
|
107
107
|
}, {
|
|
108
|
+
name: string;
|
|
108
109
|
version: string;
|
|
109
110
|
id: string;
|
|
110
|
-
name: string;
|
|
111
|
-
domain?: string | undefined;
|
|
112
111
|
description?: string | undefined;
|
|
112
|
+
domain?: string | undefined;
|
|
113
113
|
dependencies?: string[] | undefined;
|
|
114
114
|
facades?: {
|
|
115
115
|
name: string;
|
|
116
116
|
ops: {
|
|
117
117
|
name: string;
|
|
118
118
|
description?: string | undefined;
|
|
119
|
-
auth?: "
|
|
119
|
+
auth?: "write" | "read" | "admin" | undefined;
|
|
120
120
|
}[];
|
|
121
121
|
description?: string | undefined;
|
|
122
122
|
}[] | undefined;
|
|
123
123
|
intelligence?: {
|
|
124
124
|
type: string;
|
|
125
|
-
id: string;
|
|
126
125
|
title: string;
|
|
127
126
|
description: string;
|
|
127
|
+
id: string;
|
|
128
128
|
domain?: string | undefined;
|
|
129
129
|
tags?: string[] | undefined;
|
|
130
|
-
severity?: "
|
|
130
|
+
severity?: "critical" | "warning" | "suggestion" | undefined;
|
|
131
131
|
}[] | undefined;
|
|
132
132
|
}>;
|
|
133
133
|
export type PluginManifest = z.infer<typeof pluginManifestSchema>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Admin / infrastructure operations —
|
|
2
|
+
* Admin / infrastructure operations — 11 ops for agent self-management.
|
|
3
3
|
*
|
|
4
4
|
* These ops let agents introspect their own health, configuration, and
|
|
5
5
|
* runtime state. No new modules needed — uses existing runtime parts.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-ops.d.ts","sourceRoot":"","sources":["../../src/runtime/admin-ops.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"admin-ops.d.ts","sourceRoot":"","sources":["../../src/runtime/admin-ops.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AA4B/C;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,YAAY,GAAG,YAAY,EAAE,CAoXpE"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Admin / infrastructure operations —
|
|
2
|
+
* Admin / infrastructure operations — 11 ops for agent self-management.
|
|
3
3
|
*
|
|
4
4
|
* These ops let agents introspect their own health, configuration, and
|
|
5
5
|
* runtime state. No new modules needed — uses existing runtime parts.
|
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
import { readFileSync, statSync } from 'node:fs';
|
|
8
8
|
import { join, dirname } from 'node:path';
|
|
9
9
|
import { fileURLToPath } from 'node:url';
|
|
10
|
+
import { ENGINE_MODULE_MANIFEST } from '../engine/module-manifest.js';
|
|
11
|
+
import { discoverSkills } from '../skills/sync-skills.js';
|
|
10
12
|
/**
|
|
11
13
|
* Resolve the @soleri/core package.json version.
|
|
12
14
|
* Walks up from this file's directory to find the closest package.json.
|
|
@@ -38,18 +40,34 @@ function getCoreVersion() {
|
|
|
38
40
|
* Groups: health (1–2), introspection (4), diagnostics (2), mutation (1).
|
|
39
41
|
*/
|
|
40
42
|
export function createAdminOps(runtime) {
|
|
41
|
-
const { vault, brain, brainIntelligence, llmClient, curator } = runtime;
|
|
43
|
+
const { vault, brain, brainIntelligence, llmClient, curator, packInstaller } = runtime;
|
|
42
44
|
return [
|
|
43
45
|
// ─── Health ──────────────────────────────────────────────────────
|
|
44
46
|
{
|
|
45
47
|
name: 'admin_health',
|
|
46
|
-
description: 'Comprehensive agent health check — vault, LLM, brain status.',
|
|
48
|
+
description: 'Comprehensive agent health check — vault, LLM, brain, skills, hooks status.',
|
|
47
49
|
auth: 'read',
|
|
48
50
|
handler: async () => {
|
|
49
51
|
const vaultStats = vault.stats();
|
|
50
52
|
const llmAvailable = llmClient.isAvailable();
|
|
51
53
|
const brainStats = brain.getStats();
|
|
52
54
|
const curatorStatus = curator.getStatus();
|
|
55
|
+
// Skills: agent-level + pack-level
|
|
56
|
+
const agentDir = runtime.config.agentDir;
|
|
57
|
+
const agentSkillsDirs = agentDir ? [join(agentDir, 'skills')] : [];
|
|
58
|
+
const agentSkills = discoverSkills(agentSkillsDirs);
|
|
59
|
+
const packs = packInstaller.list();
|
|
60
|
+
const packSkills = packs.flatMap((p) => p.skills);
|
|
61
|
+
const allSkillNames = [...agentSkills.map((s) => s.name), ...packSkills];
|
|
62
|
+
// Hooks: pack-level
|
|
63
|
+
const packHooks = packs.flatMap((p) => p.hooks);
|
|
64
|
+
// Tier breakdown
|
|
65
|
+
const tierCounts = { default: 0, community: 0, premium: 0 };
|
|
66
|
+
for (const pk of packs) {
|
|
67
|
+
const t = pk.manifest?.tier ?? 'community';
|
|
68
|
+
if (t in tierCounts)
|
|
69
|
+
tierCounts[t]++;
|
|
70
|
+
}
|
|
53
71
|
return {
|
|
54
72
|
status: 'ok',
|
|
55
73
|
vault: { entries: vaultStats.totalEntries, domains: Object.keys(vaultStats.byDomain) },
|
|
@@ -59,6 +77,16 @@ export function createAdminOps(runtime) {
|
|
|
59
77
|
feedbackCount: brainStats.feedbackCount,
|
|
60
78
|
},
|
|
61
79
|
curator: { initialized: curatorStatus.initialized },
|
|
80
|
+
skills: {
|
|
81
|
+
count: allSkillNames.length,
|
|
82
|
+
agent: agentSkills.map((s) => s.name),
|
|
83
|
+
packs: packSkills,
|
|
84
|
+
},
|
|
85
|
+
hooks: {
|
|
86
|
+
count: packHooks.length,
|
|
87
|
+
packs: packHooks,
|
|
88
|
+
},
|
|
89
|
+
packTiers: tierCounts,
|
|
62
90
|
};
|
|
63
91
|
},
|
|
64
92
|
},
|
|
@@ -104,6 +132,7 @@ export function createAdminOps(runtime) {
|
|
|
104
132
|
return {
|
|
105
133
|
count: allOps.length,
|
|
106
134
|
ops: grouped,
|
|
135
|
+
routing: buildRoutingHints(),
|
|
107
136
|
};
|
|
108
137
|
}
|
|
109
138
|
// Fallback — just describe admin ops
|
|
@@ -121,6 +150,7 @@ export function createAdminOps(runtime) {
|
|
|
121
150
|
'admin_diagnostic',
|
|
122
151
|
],
|
|
123
152
|
},
|
|
153
|
+
routing: buildRoutingHints(),
|
|
124
154
|
};
|
|
125
155
|
},
|
|
126
156
|
},
|
|
@@ -200,6 +230,37 @@ export function createAdminOps(runtime) {
|
|
|
200
230
|
};
|
|
201
231
|
},
|
|
202
232
|
},
|
|
233
|
+
// ─── Operator Context ───────────────────────────────────────────
|
|
234
|
+
{
|
|
235
|
+
name: 'operator_context_inspect',
|
|
236
|
+
description: 'Inspect the full operator context profile — expertise, corrections, interests, patterns.',
|
|
237
|
+
auth: 'read',
|
|
238
|
+
handler: async () => {
|
|
239
|
+
const store = runtime.operatorContextStore;
|
|
240
|
+
if (!store) {
|
|
241
|
+
return { available: false, message: 'Operator context not configured' };
|
|
242
|
+
}
|
|
243
|
+
return { available: true, ...store.inspect() };
|
|
244
|
+
},
|
|
245
|
+
},
|
|
246
|
+
{
|
|
247
|
+
name: 'operator_context_delete',
|
|
248
|
+
description: 'Delete a specific item from the operator context profile.',
|
|
249
|
+
auth: 'write',
|
|
250
|
+
handler: async (params) => {
|
|
251
|
+
const store = runtime.operatorContextStore;
|
|
252
|
+
if (!store) {
|
|
253
|
+
return { deleted: false, message: 'Operator context not configured' };
|
|
254
|
+
}
|
|
255
|
+
const type = params.type;
|
|
256
|
+
const id = params.id;
|
|
257
|
+
const deleted = store.deleteItem(type, id);
|
|
258
|
+
if (deleted) {
|
|
259
|
+
return { deleted: true, type, id };
|
|
260
|
+
}
|
|
261
|
+
return { deleted: false, message: 'Item not found' };
|
|
262
|
+
},
|
|
263
|
+
},
|
|
203
264
|
// ─── Diagnostics ─────────────────────────────────────────────────
|
|
204
265
|
{
|
|
205
266
|
name: 'admin_diagnostic',
|
|
@@ -284,6 +345,45 @@ export function createAdminOps(runtime) {
|
|
|
284
345
|
detail: err instanceof Error ? err.message : String(err),
|
|
285
346
|
});
|
|
286
347
|
}
|
|
348
|
+
// 7. Skills
|
|
349
|
+
try {
|
|
350
|
+
const agentDir = runtime.config.agentDir;
|
|
351
|
+
const skillsDirs = agentDir ? [join(agentDir, 'skills')] : [];
|
|
352
|
+
const agentSkills = discoverSkills(skillsDirs);
|
|
353
|
+
const installedPacks = packInstaller.list();
|
|
354
|
+
const packSkillCount = installedPacks.reduce((sum, p) => sum + p.skills.length, 0);
|
|
355
|
+
const totalSkills = agentSkills.length + packSkillCount;
|
|
356
|
+
const skillStatus = totalSkills > 0 ? 'ok' : agentDir ? 'warn' : 'ok';
|
|
357
|
+
checks.push({
|
|
358
|
+
name: 'skills',
|
|
359
|
+
status: skillStatus,
|
|
360
|
+
detail: `${totalSkills} skills (${agentSkills.length} agent, ${packSkillCount} pack)`,
|
|
361
|
+
});
|
|
362
|
+
}
|
|
363
|
+
catch (err) {
|
|
364
|
+
checks.push({
|
|
365
|
+
name: 'skills',
|
|
366
|
+
status: 'error',
|
|
367
|
+
detail: err instanceof Error ? err.message : String(err),
|
|
368
|
+
});
|
|
369
|
+
}
|
|
370
|
+
// 8. Hooks
|
|
371
|
+
try {
|
|
372
|
+
const installedPacks = packInstaller.list();
|
|
373
|
+
const packHookCount = installedPacks.reduce((sum, p) => sum + p.hooks.length, 0);
|
|
374
|
+
checks.push({
|
|
375
|
+
name: 'hooks',
|
|
376
|
+
status: 'ok',
|
|
377
|
+
detail: `${packHookCount} hooks from ${installedPacks.length} packs`,
|
|
378
|
+
});
|
|
379
|
+
}
|
|
380
|
+
catch (err) {
|
|
381
|
+
checks.push({
|
|
382
|
+
name: 'hooks',
|
|
383
|
+
status: 'error',
|
|
384
|
+
detail: err instanceof Error ? err.message : String(err),
|
|
385
|
+
});
|
|
386
|
+
}
|
|
287
387
|
const errorCount = checks.filter((c) => c.status === 'error').length;
|
|
288
388
|
const warnCount = checks.filter((c) => c.status === 'warn').length;
|
|
289
389
|
const overall = errorCount > 0 ? 'unhealthy' : warnCount > 0 ? 'degraded' : 'healthy';
|
|
@@ -306,6 +406,21 @@ function formatBytes(bytes) {
|
|
|
306
406
|
return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;
|
|
307
407
|
return `${(bytes / (1024 * 1024 * 1024)).toFixed(1)} GB`;
|
|
308
408
|
}
|
|
409
|
+
/**
|
|
410
|
+
* Build a flat routing map from ENGINE_MODULE_MANIFEST intentSignals.
|
|
411
|
+
* Keys are natural-language phrases, values are `{suffix}.{op}` paths.
|
|
412
|
+
*/
|
|
413
|
+
function buildRoutingHints() {
|
|
414
|
+
const routing = {};
|
|
415
|
+
for (const mod of ENGINE_MODULE_MANIFEST) {
|
|
416
|
+
if (mod.intentSignals) {
|
|
417
|
+
for (const [phrase, op] of Object.entries(mod.intentSignals)) {
|
|
418
|
+
routing[phrase] = `${mod.suffix}.${op}`;
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
}
|
|
422
|
+
return routing;
|
|
423
|
+
}
|
|
309
424
|
function formatUptime(seconds) {
|
|
310
425
|
if (seconds < 60)
|
|
311
426
|
return `${seconds}s`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-ops.js","sourceRoot":"","sources":["../../src/runtime/admin-ops.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"admin-ops.js","sourceRoot":"","sources":["../../src/runtime/admin-ops.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-setup-ops.d.ts","sourceRoot":"","sources":["../../src/runtime/admin-setup-ops.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAeH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"admin-setup-ops.d.ts","sourceRoot":"","sources":["../../src/runtime/admin-setup-ops.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAeH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AA4M/C;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,YAAY,EAAE,CAgbzE"}
|
|
@@ -74,6 +74,16 @@ function discoverHookifyFiles(dir) {
|
|
|
74
74
|
.filter((f) => f.startsWith('hookify.') && f.endsWith('.local.md'))
|
|
75
75
|
.map((f) => ({ name: f, path: join(dir, f) }));
|
|
76
76
|
}
|
|
77
|
+
/**
|
|
78
|
+
* Build a shell command that checks if the agent's MCP server is configured
|
|
79
|
+
* in the current project's .mcp.json before emitting an instruction.
|
|
80
|
+
* This ensures hooks are globally safe — they no-op in projects without the agent.
|
|
81
|
+
*/
|
|
82
|
+
function buildConditionalHookCommand(agentId, instruction) {
|
|
83
|
+
// Escape single quotes in instruction for safe shell embedding
|
|
84
|
+
const escaped = instruction.replace(/'/g, "'\\''");
|
|
85
|
+
return `root=$(git rev-parse --show-toplevel 2>/dev/null || echo "."); if grep -q '"${agentId}"' "$root/.mcp.json" 2>/dev/null; then echo '${escaped}'; fi`;
|
|
86
|
+
}
|
|
77
87
|
/** Default lifecycle hooks for any Soleri agent */
|
|
78
88
|
function getDefaultLifecycleHooks(agentId) {
|
|
79
89
|
const marker = `mcp__${agentId}__${agentId}_`;
|
|
@@ -83,9 +93,9 @@ function getDefaultLifecycleHooks(agentId) {
|
|
|
83
93
|
matcher: '',
|
|
84
94
|
hooks: [
|
|
85
95
|
{
|
|
86
|
-
type: '
|
|
87
|
-
|
|
88
|
-
timeout:
|
|
96
|
+
type: 'command',
|
|
97
|
+
command: buildConditionalHookCommand(agentId, `Call ${marker}admin op:admin_health to verify agent is ready. Do not show the result unless there are errors.`),
|
|
98
|
+
timeout: 5000,
|
|
89
99
|
},
|
|
90
100
|
],
|
|
91
101
|
},
|
|
@@ -95,9 +105,9 @@ function getDefaultLifecycleHooks(agentId) {
|
|
|
95
105
|
matcher: '',
|
|
96
106
|
hooks: [
|
|
97
107
|
{
|
|
98
|
-
type: '
|
|
99
|
-
|
|
100
|
-
timeout:
|
|
108
|
+
type: 'command',
|
|
109
|
+
command: buildConditionalHookCommand(agentId, `First, call ${marker}plan op:plan_close_stale params:{ olderThanMs: 0 } to auto-close any plans still in non-terminal states. Then call ${marker}memory op:session_capture with a brief summary of the current session before context is compacted. Include any auto-closed plan IDs in the summary.`),
|
|
110
|
+
timeout: 10000,
|
|
101
111
|
},
|
|
102
112
|
],
|
|
103
113
|
},
|
|
@@ -107,9 +117,9 @@ function getDefaultLifecycleHooks(agentId) {
|
|
|
107
117
|
matcher: '',
|
|
108
118
|
hooks: [
|
|
109
119
|
{
|
|
110
|
-
type: '
|
|
111
|
-
|
|
112
|
-
timeout:
|
|
120
|
+
type: 'command',
|
|
121
|
+
command: buildConditionalHookCommand(agentId, `First, call ${marker}plan op:plan_close_stale params:{ olderThanMs: 0 } to auto-close any plans still in non-terminal states. Then call ${marker}memory op:session_capture with a structured summary of what was accomplished, including any auto-closed plan IDs. Finally check ${marker}loop op:loop_status — if a loop is active, remind the user.`),
|
|
122
|
+
timeout: 10000,
|
|
113
123
|
},
|
|
114
124
|
],
|
|
115
125
|
},
|