@dot-ai/core 0.8.0 → 0.10.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/boot-cache.d.ts +1 -1
- package/dist/boot-cache.d.ts.map +1 -1
- package/dist/extension-api.d.ts +10 -9
- package/dist/extension-api.d.ts.map +1 -1
- package/dist/extension-loader.d.ts +1 -1
- package/dist/extension-loader.d.ts.map +1 -1
- package/dist/extension-loader.js +20 -7
- package/dist/extension-loader.js.map +1 -1
- package/dist/extension-runner.d.ts +9 -4
- package/dist/extension-runner.d.ts.map +1 -1
- package/dist/extension-runner.js +34 -13
- package/dist/extension-runner.js.map +1 -1
- package/dist/extension-types.d.ts +15 -115
- package/dist/extension-types.d.ts.map +1 -1
- package/dist/extension-types.js +1 -88
- package/dist/extension-types.js.map +1 -1
- package/dist/format.d.ts +21 -0
- package/dist/format.d.ts.map +1 -1
- package/dist/format.js +74 -0
- package/dist/format.js.map +1 -1
- package/dist/index.d.ts +4 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -3
- package/dist/index.js.map +1 -1
- package/dist/runtime.d.ts +31 -43
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +60 -176
- package/dist/runtime.js.map +1 -1
- package/package.json +1 -1
- package/src/__tests__/extension-runner.test.ts +245 -32
- package/src/__tests__/fixtures/extensions/ctx-aware.js +12 -3
- package/src/__tests__/fixtures/extensions/smart-context.js +12 -3
- package/src/__tests__/format.test.ts +178 -1
- package/src/__tests__/runtime.test.ts +38 -10
- package/src/boot-cache.ts +1 -1
- package/src/extension-api.ts +10 -15
- package/src/extension-loader.ts +19 -10
- package/src/extension-runner.ts +44 -15
- package/src/extension-types.ts +26 -195
- package/src/format.ts +100 -0
- package/src/index.ts +3 -11
- package/src/runtime.ts +73 -221
- package/tsconfig.tsbuildinfo +1 -1
package/dist/boot-cache.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ export interface BootCacheData {
|
|
|
7
7
|
version: 1;
|
|
8
8
|
/** Checksum of inputs that produced this cache */
|
|
9
9
|
checksum: string;
|
|
10
|
-
/** Label vocabulary from
|
|
10
|
+
/** Label vocabulary from registered resources */
|
|
11
11
|
vocabulary: string[];
|
|
12
12
|
/** Extension paths that were loaded */
|
|
13
13
|
extensionPaths: string[];
|
package/dist/boot-cache.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boot-cache.d.ts","sourceRoot":"","sources":["../src/boot-cache.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,2BAA2B;IAC3B,OAAO,EAAE,CAAC,CAAC;IACX,kDAAkD;IAClD,QAAQ,EAAE,MAAM,CAAC;IACjB
|
|
1
|
+
{"version":3,"file":"boot-cache.d.ts","sourceRoot":"","sources":["../src/boot-cache.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,2BAA2B;IAC3B,OAAO,EAAE,CAAC,CAAC;IACX,kDAAkD;IAClD,QAAQ,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,uCAAuC;IACvC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,sDAAsD;IACtD,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpD,kCAAkC;IAClC,SAAS,EAAE,MAAM,CAAC;CACnB;AAKD;;;GAGG;AACH,wBAAsB,eAAe,CACnC,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,MAAM,EAAE,GACvB,OAAO,CAAC,MAAM,CAAC,CA0BjB;AAED;;;GAGG;AACH,wBAAsB,aAAa,CACjC,aAAa,EAAE,MAAM,EACrB,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAa/B;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC,IAAI,CAAC,CAKf;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAIzE"}
|
package/dist/extension-api.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type { Label } from './types.js';
|
|
1
|
+
import type { ToolCallEvent, ToolCallResult, ToolResultEvent, AgentEndEvent, ToolDefinition, ExtensionContext, LabelExtractEvent, ContextEnrichEvent, ContextEnrichResult, RouteEvent, RouteResult, InputEvent, InputResult, CommandDefinition } from './extension-types.js';
|
|
2
|
+
import type { Label, Skill, Identity } from './types.js';
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
4
|
+
* v7 Extension Context — passed as second argument to every event handler.
|
|
5
5
|
* Extends the base ExtensionContext with labels and optional agent capabilities.
|
|
6
6
|
*/
|
|
7
7
|
export interface ExtensionContextV6 extends ExtensionContext {
|
|
@@ -23,8 +23,6 @@ export interface ExtensionContextV6 extends ExtensionContext {
|
|
|
23
23
|
* Pi-compatible: same on(event) + registerTool() + registerCommand() pattern.
|
|
24
24
|
*/
|
|
25
25
|
export interface ExtensionAPI {
|
|
26
|
-
/** Resource discovery: extensions declare resources and contribute labels */
|
|
27
|
-
on(event: 'resources_discover', handler: (e: undefined, ctx: ExtensionContextV6) => Promise<ResourcesDiscoverResult | void>): void;
|
|
28
26
|
/** Label extraction: extensions can add custom labels (chain-transform) */
|
|
29
27
|
on(event: 'label_extract', handler: (e: LabelExtractEvent, ctx: ExtensionContextV6) => Promise<Label[] | void>): void;
|
|
30
28
|
/** Context enrichment: extensions return sections for context injection */
|
|
@@ -39,19 +37,22 @@ export interface ExtensionAPI {
|
|
|
39
37
|
on(event: 'tool_result', handler: (e: ToolResultEvent, ctx: ExtensionContextV6) => Promise<void>): void;
|
|
40
38
|
on(event: 'session_start', handler: (e: undefined, ctx: ExtensionContextV6) => Promise<void>): void;
|
|
41
39
|
on(event: 'session_end', handler: (e: undefined, ctx: ExtensionContextV6) => Promise<void>): void;
|
|
40
|
+
on(event: 'session_compact', handler: (e: undefined, ctx: ExtensionContextV6) => Promise<void>): void;
|
|
42
41
|
on(event: 'agent_start', handler: (e: undefined, ctx: ExtensionContextV6) => Promise<void>): void;
|
|
43
42
|
on(event: 'agent_end', handler: (e: AgentEndEvent, ctx: ExtensionContextV6) => Promise<void>): void;
|
|
44
43
|
on(event: 'turn_start', handler: (e: undefined, ctx: ExtensionContextV6) => Promise<void>): void;
|
|
45
44
|
on(event: 'turn_end', handler: (e: undefined, ctx: ExtensionContextV6) => Promise<void>): void;
|
|
46
|
-
/** @deprecated Use context_enrich instead */
|
|
47
|
-
on(event: 'context_inject', handler: (e: ContextInjectEvent, ctx: ExtensionContextV6) => Promise<ContextInjectResult | void>): void;
|
|
48
|
-
/** @deprecated Use context_enrich instead */
|
|
49
|
-
on(event: 'context_modify', handler: (e: ContextModifyEvent, ctx: ExtensionContextV6) => Promise<ContextModifyResult | void>): void;
|
|
50
45
|
on(event: string, handler: (e: any, ctx: ExtensionContextV6) => Promise<any>): void;
|
|
51
46
|
/** Register a tool that the agent can invoke */
|
|
52
47
|
registerTool(tool: ToolDefinition): void;
|
|
53
48
|
/** Register a command (slash command, etc.) */
|
|
54
49
|
registerCommand(command: CommandDefinition): void;
|
|
50
|
+
/** Register a skill for context enrichment and discovery */
|
|
51
|
+
registerSkill(skill: Skill): void;
|
|
52
|
+
/** Register an identity document */
|
|
53
|
+
registerIdentity(identity: Identity): void;
|
|
54
|
+
/** Contribute labels to the global vocabulary (for label matching) */
|
|
55
|
+
contributeLabels(labels: string[]): void;
|
|
55
56
|
events: {
|
|
56
57
|
on(event: string, handler: (...args: unknown[]) => void): void;
|
|
57
58
|
off(event: string, handler: (...args: unknown[]) => void): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension-api.d.ts","sourceRoot":"","sources":["../src/extension-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,
|
|
1
|
+
{"version":3,"file":"extension-api.d.ts","sourceRoot":"","sources":["../src/extension-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import type { ExtensionsConfig } from './types.js';
|
|
|
6
6
|
*/
|
|
7
7
|
export declare function discoverExtensions(workspaceRoot: string, config?: ExtensionsConfig): Promise<string[]>;
|
|
8
8
|
/**
|
|
9
|
-
* Create
|
|
9
|
+
* Create an ExtensionAPI instance that collects registrations into a LoadedExtension.
|
|
10
10
|
* Extensions communicate via events only — no provider access.
|
|
11
11
|
*/
|
|
12
12
|
export declare function createV6CollectorAPI(extensionPath: string, config: Record<string, unknown>, eventBus?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension-loader.d.ts","sourceRoot":"","sources":["../src/extension-loader.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"extension-loader.d.ts","sourceRoot":"","sources":["../src/extension-loader.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,eAAe,EAAqC,MAAM,sBAAsB,CAAC;AAC/F,OAAO,KAAK,EAAE,gBAAgB,EAAmB,MAAM,YAAY,CAAC;AAEpE;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,aAAa,EAAE,MAAM,EACrB,MAAM,CAAC,EAAE,gBAAgB,GACxB,OAAO,CAAC,MAAM,EAAE,CAAC,CAiEnB;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,QAAQ,CAAC,EAAE;IAAE,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,KAAK,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;CAAE,EACpI,aAAa,CAAC,EAAE,MAAM,GACrB;IAAE,GAAG,EAAE,YAAY,CAAC;IAAC,SAAS,EAAE,eAAe,CAAA;CAAE,CA8CnD"}
|
package/dist/extension-loader.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { readdir, readFile, stat } from 'node:fs/promises';
|
|
2
2
|
import { join, resolve } from 'node:path';
|
|
3
3
|
import { homedir } from 'node:os';
|
|
4
|
-
import { EVENT_TIERS } from './extension-types.js';
|
|
5
4
|
/**
|
|
6
5
|
* Discover extension file paths from configured locations.
|
|
7
6
|
*/
|
|
@@ -73,7 +72,7 @@ export async function discoverExtensions(workspaceRoot, config) {
|
|
|
73
72
|
return Array.from(paths);
|
|
74
73
|
}
|
|
75
74
|
/**
|
|
76
|
-
* Create
|
|
75
|
+
* Create an ExtensionAPI instance that collects registrations into a LoadedExtension.
|
|
77
76
|
* Extensions communicate via events only — no provider access.
|
|
78
77
|
*/
|
|
79
78
|
export function createV6CollectorAPI(extensionPath, config, eventBus, workspaceRoot) {
|
|
@@ -82,7 +81,9 @@ export function createV6CollectorAPI(extensionPath, config, eventBus, workspaceR
|
|
|
82
81
|
handlers: new Map(),
|
|
83
82
|
tools: new Map(),
|
|
84
83
|
commands: new Map(),
|
|
85
|
-
|
|
84
|
+
skills: new Map(),
|
|
85
|
+
identities: new Map(),
|
|
86
|
+
labels: new Set(),
|
|
86
87
|
};
|
|
87
88
|
const api = {
|
|
88
89
|
on(event, handler) {
|
|
@@ -90,10 +91,6 @@ export function createV6CollectorAPI(extensionPath, config, eventBus, workspaceR
|
|
|
90
91
|
extension.handlers.set(event, []);
|
|
91
92
|
}
|
|
92
93
|
extension.handlers.get(event).push(handler);
|
|
93
|
-
const tier = EVENT_TIERS[event];
|
|
94
|
-
if (tier) {
|
|
95
|
-
extension.tiers.add(tier);
|
|
96
|
-
}
|
|
97
94
|
},
|
|
98
95
|
registerTool(tool) {
|
|
99
96
|
extension.tools.set(tool.name, tool);
|
|
@@ -101,6 +98,22 @@ export function createV6CollectorAPI(extensionPath, config, eventBus, workspaceR
|
|
|
101
98
|
registerCommand(command) {
|
|
102
99
|
extension.commands.set(command.name, command);
|
|
103
100
|
},
|
|
101
|
+
registerSkill(skill) {
|
|
102
|
+
extension.skills.set(skill.name, skill);
|
|
103
|
+
// Skills contribute their labels and triggers to vocabulary
|
|
104
|
+
for (const label of skill.labels)
|
|
105
|
+
extension.labels.add(label);
|
|
106
|
+
for (const trigger of skill.triggers ?? [])
|
|
107
|
+
extension.labels.add(trigger);
|
|
108
|
+
},
|
|
109
|
+
registerIdentity(identity) {
|
|
110
|
+
const key = `${identity.type}:${identity.node ?? 'root'}`;
|
|
111
|
+
extension.identities.set(key, identity);
|
|
112
|
+
},
|
|
113
|
+
contributeLabels(labels) {
|
|
114
|
+
for (const label of labels)
|
|
115
|
+
extension.labels.add(label);
|
|
116
|
+
},
|
|
104
117
|
events: eventBus ?? {
|
|
105
118
|
on: () => { },
|
|
106
119
|
emit: () => { },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension-loader.js","sourceRoot":"","sources":["../src/extension-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"extension-loader.js","sourceRoot":"","sources":["../src/extension-loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Logger } from './logger.js';
|
|
2
|
-
import type { LoadedExtension, ToolDefinition,
|
|
2
|
+
import type { LoadedExtension, ToolDefinition, ToolCallEvent, ToolCallResult, ExtensionDiagnostic, ExtensionContext, CollectedSections, CommandDefinition } from './extension-types.js';
|
|
3
|
+
import type { Skill, Identity } from './types.js';
|
|
3
4
|
/**
|
|
4
5
|
* Simple event bus for inter-extension communication.
|
|
5
6
|
* In-memory only, no persistence.
|
|
@@ -42,7 +43,7 @@ export declare class ExtensionRunner {
|
|
|
42
43
|
fireFirstResult<T>(event: string, data?: unknown, ctx?: ExtensionContext): Promise<T | null>;
|
|
43
44
|
/**
|
|
44
45
|
* Fire an event as a transform chain — each handler receives the previous handler's output.
|
|
45
|
-
* Used for `label_extract`, `input`, `
|
|
46
|
+
* Used for `label_extract`, `input`, `tool_result`.
|
|
46
47
|
*
|
|
47
48
|
* - Initial value is `data`.
|
|
48
49
|
* - If a handler returns undefined/null, the previous value is kept (no-op).
|
|
@@ -53,10 +54,14 @@ export declare class ExtensionRunner {
|
|
|
53
54
|
get tools(): ToolDefinition[];
|
|
54
55
|
/** Get all registered commands across extensions (last-wins for overrides) */
|
|
55
56
|
get commands(): CommandDefinition[];
|
|
57
|
+
/** Get all registered skills across extensions (last-wins for overrides) */
|
|
58
|
+
get skills(): Skill[];
|
|
59
|
+
/** Get all registered identities across extensions */
|
|
60
|
+
get identities(): Identity[];
|
|
61
|
+
/** Get all vocabulary labels contributed by extensions */
|
|
62
|
+
get vocabularyLabels(): string[];
|
|
56
63
|
/** Get diagnostic info */
|
|
57
64
|
get diagnostics(): ExtensionDiagnostic[];
|
|
58
|
-
/** Which tiers are used by loaded extensions */
|
|
59
|
-
get usedTiers(): Set<ExtensionTier>;
|
|
60
65
|
private logHandlerError;
|
|
61
66
|
}
|
|
62
67
|
//# sourceMappingURL=extension-runner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension-runner.d.ts","sourceRoot":"","sources":["../src/extension-runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,aAAa,EACb,
|
|
1
|
+
{"version":3,"file":"extension-runner.d.ts","sourceRoot":"","sources":["../src/extension-runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAGhB,iBAAiB,EACjB,iBAAiB,EAElB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAElD;;;GAGG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,SAAS,CAA0D;IAE3E,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GAAG,IAAI;IAO9D,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GAAG,IAAI;IAO/D,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;CAW9C;AAED;;GAEG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,MAAM,CAAC,CAAS;gBAEZ,UAAU,EAAE,eAAe,EAAE,EAAE,MAAM,CAAC,EAAE,MAAM;IAK1D;;;;OAIG;IACG,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAsBlF;;;OAGG;IACG,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAsBvH;;;;OAIG;IACG,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAuC5G;;;;OAIG;IACG,eAAe,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAoBlG;;;;;;;OAOG;IACG,kBAAkB,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,CAAC,CAAC;IA6BvF,2EAA2E;IAC3E,IAAI,KAAK,IAAI,cAAc,EAAE,CAmB5B;IAED,8EAA8E;IAC9E,IAAI,QAAQ,IAAI,iBAAiB,EAAE,CAWlC;IAED,4EAA4E;IAC5E,IAAI,MAAM,IAAI,KAAK,EAAE,CAUpB;IAED,sDAAsD;IACtD,IAAI,UAAU,IAAI,QAAQ,EAAE,CAU3B;IAED,0DAA0D;IAC1D,IAAI,gBAAgB,IAAI,MAAM,EAAE,CAU/B;IAED,0BAA0B;IAC1B,IAAI,WAAW,IAAI,mBAAmB,EAAE,CAWvC;IAID,OAAO,CAAC,eAAe;CAaxB"}
|
package/dist/extension-runner.js
CHANGED
|
@@ -90,7 +90,7 @@ export class ExtensionRunner {
|
|
|
90
90
|
}
|
|
91
91
|
return null;
|
|
92
92
|
}
|
|
93
|
-
// ──
|
|
93
|
+
// ── Emission Patterns ──
|
|
94
94
|
/**
|
|
95
95
|
* Fire an event and collect sections from all handlers.
|
|
96
96
|
* Used for `context_enrich` — each handler returns sections and/or systemPrompt fragments.
|
|
@@ -160,7 +160,7 @@ export class ExtensionRunner {
|
|
|
160
160
|
}
|
|
161
161
|
/**
|
|
162
162
|
* Fire an event as a transform chain — each handler receives the previous handler's output.
|
|
163
|
-
* Used for `label_extract`, `input`, `
|
|
163
|
+
* Used for `label_extract`, `input`, `tool_result`.
|
|
164
164
|
*
|
|
165
165
|
* - Initial value is `data`.
|
|
166
166
|
* - If a handler returns undefined/null, the previous value is kept (no-op).
|
|
@@ -222,6 +222,36 @@ export class ExtensionRunner {
|
|
|
222
222
|
}
|
|
223
223
|
return Array.from(cmdMap.values());
|
|
224
224
|
}
|
|
225
|
+
/** Get all registered skills across extensions (last-wins for overrides) */
|
|
226
|
+
get skills() {
|
|
227
|
+
const skillMap = new Map();
|
|
228
|
+
for (const ext of this.extensions) {
|
|
229
|
+
for (const [name, skill] of ext.skills) {
|
|
230
|
+
skillMap.set(name, skill);
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
return Array.from(skillMap.values());
|
|
234
|
+
}
|
|
235
|
+
/** Get all registered identities across extensions */
|
|
236
|
+
get identities() {
|
|
237
|
+
const identityMap = new Map();
|
|
238
|
+
for (const ext of this.extensions) {
|
|
239
|
+
for (const [key, identity] of ext.identities) {
|
|
240
|
+
identityMap.set(key, identity);
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
return Array.from(identityMap.values());
|
|
244
|
+
}
|
|
245
|
+
/** Get all vocabulary labels contributed by extensions */
|
|
246
|
+
get vocabularyLabels() {
|
|
247
|
+
const labels = new Set();
|
|
248
|
+
for (const ext of this.extensions) {
|
|
249
|
+
for (const label of ext.labels) {
|
|
250
|
+
labels.add(label);
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
return Array.from(labels);
|
|
254
|
+
}
|
|
225
255
|
/** Get diagnostic info */
|
|
226
256
|
get diagnostics() {
|
|
227
257
|
return this.extensions.map(ext => ({
|
|
@@ -229,19 +259,10 @@ export class ExtensionRunner {
|
|
|
229
259
|
handlerCounts: Object.fromEntries(Array.from(ext.handlers.entries()).map(([k, v]) => [k, v.length])),
|
|
230
260
|
toolNames: Array.from(ext.tools.keys()),
|
|
231
261
|
commandNames: ext.commands ? Array.from(ext.commands.keys()) : [],
|
|
232
|
-
|
|
262
|
+
skillNames: Array.from(ext.skills.keys()),
|
|
263
|
+
identityNames: Array.from(ext.identities.keys()),
|
|
233
264
|
}));
|
|
234
265
|
}
|
|
235
|
-
/** Which tiers are used by loaded extensions */
|
|
236
|
-
get usedTiers() {
|
|
237
|
-
const tiers = new Set();
|
|
238
|
-
for (const ext of this.extensions) {
|
|
239
|
-
for (const tier of ext.tiers) {
|
|
240
|
-
tiers.add(tier);
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
return tiers;
|
|
244
|
-
}
|
|
245
266
|
// ── Private Helpers ──
|
|
246
267
|
logHandlerError(extPath, event, err) {
|
|
247
268
|
this.logger?.log({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension-runner.js","sourceRoot":"","sources":["../src/extension-runner.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"extension-runner.js","sourceRoot":"","sources":["../src/extension-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Label, RoutingResult } from './types.js';
|
|
1
|
+
import type { Label, RoutingResult, Skill, Identity } from './types.js';
|
|
2
2
|
/**
|
|
3
3
|
* Base context passed to every event handler (second argument).
|
|
4
4
|
* Adapters extend this with agent-specific state (providers, session control, etc.).
|
|
@@ -27,7 +27,7 @@ export interface Section {
|
|
|
27
27
|
content: string;
|
|
28
28
|
/**
|
|
29
29
|
* Priority determines ordering and trim precedence.
|
|
30
|
-
* 100 = identity, 80 = memory, 60 = skills, 50 = tasks, 40 = tools, 30 = routing.
|
|
30
|
+
* 100 = identity, 95 = system, 80 = memory, 60 = skills, 50 = tasks, 40 = tools, 30 = routing.
|
|
31
31
|
*/
|
|
32
32
|
priority: number;
|
|
33
33
|
/** Which extension produced this section */
|
|
@@ -40,34 +40,16 @@ export interface Section {
|
|
|
40
40
|
*/
|
|
41
41
|
trimStrategy?: 'never' | 'truncate' | 'drop';
|
|
42
42
|
}
|
|
43
|
-
/** A single resource entry discovered by an extension */
|
|
44
|
-
export interface ResourceEntry {
|
|
45
|
-
/** Resource type: 'skill', 'identity', 'tool', 'prompt', etc. */
|
|
46
|
-
type: string;
|
|
47
|
-
/** Path to the resource (absolute or relative to workspace) */
|
|
48
|
-
path: string;
|
|
49
|
-
/** Labels for this specific resource */
|
|
50
|
-
labels?: string[];
|
|
51
|
-
/** Provider-specific metadata */
|
|
52
|
-
metadata?: Record<string, unknown>;
|
|
53
|
-
}
|
|
54
|
-
/** Result returned by resources_discover handlers */
|
|
55
|
-
export interface ResourcesDiscoverResult {
|
|
56
|
-
/** Labels contributed to the global vocabulary */
|
|
57
|
-
labels?: string[];
|
|
58
|
-
/** Discovered resources (paths + metadata) */
|
|
59
|
-
resources?: ResourceEntry[];
|
|
60
|
-
}
|
|
61
43
|
/** Event for label_extract -- handlers modify and return the labels array */
|
|
62
44
|
export interface LabelExtractEvent {
|
|
63
45
|
/** The user's prompt text */
|
|
64
46
|
prompt: string;
|
|
65
|
-
/** Known label vocabulary (from
|
|
47
|
+
/** Known label vocabulary (from registered resources) */
|
|
66
48
|
vocabulary: string[];
|
|
67
49
|
/** Current labels -- handler returns modified array */
|
|
68
50
|
labels: Label[];
|
|
69
51
|
}
|
|
70
|
-
/** Event for context_enrich
|
|
52
|
+
/** Event for context_enrich */
|
|
71
53
|
export interface ContextEnrichEvent {
|
|
72
54
|
/** The user's prompt text */
|
|
73
55
|
prompt: string;
|
|
@@ -121,7 +103,7 @@ export interface CommandResult {
|
|
|
121
103
|
}
|
|
122
104
|
/**
|
|
123
105
|
* A command definition -- aligned with Pi's /command pattern.
|
|
124
|
-
* Extensions register commands via `
|
|
106
|
+
* Extensions register commands via `api.registerCommand()`.
|
|
125
107
|
*/
|
|
126
108
|
export interface CommandDefinition {
|
|
127
109
|
/** Command name (without leading slash) */
|
|
@@ -141,7 +123,7 @@ export interface ToolDefinition {
|
|
|
141
123
|
description: string;
|
|
142
124
|
/** JSON Schema object describing tool parameters */
|
|
143
125
|
parameters: Record<string, unknown>;
|
|
144
|
-
/** Execute the tool. ctx is optional for backward compatibility
|
|
126
|
+
/** Execute the tool. ctx is optional for backward compatibility. */
|
|
145
127
|
execute(input: Record<string, unknown>, ctx?: ExtensionContext): Promise<{
|
|
146
128
|
content: string;
|
|
147
129
|
details?: unknown;
|
|
@@ -152,47 +134,6 @@ export interface ToolDefinition {
|
|
|
152
134
|
/** Guidelines for the LLM when using this tool */
|
|
153
135
|
promptGuidelines?: string;
|
|
154
136
|
}
|
|
155
|
-
/**
|
|
156
|
-
* @deprecated Use ContextEnrichEvent + ContextEnrichResult instead.
|
|
157
|
-
* Tier 1 (universal) -- context injection event.
|
|
158
|
-
*/
|
|
159
|
-
export interface ContextInjectEvent {
|
|
160
|
-
prompt: string;
|
|
161
|
-
labels: Label[];
|
|
162
|
-
usage?: {
|
|
163
|
-
inputTokens: number;
|
|
164
|
-
contextWindow: number;
|
|
165
|
-
};
|
|
166
|
-
}
|
|
167
|
-
/**
|
|
168
|
-
* @deprecated Use ContextEnrichResult instead.
|
|
169
|
-
*/
|
|
170
|
-
export interface ContextInjectResult {
|
|
171
|
-
inject?: string;
|
|
172
|
-
}
|
|
173
|
-
/**
|
|
174
|
-
* @deprecated Use ContextEnrichEvent with context_modify support.
|
|
175
|
-
* Tier 2 (rich agents only) -- message-level context modification.
|
|
176
|
-
*/
|
|
177
|
-
export interface ContextModifyEvent {
|
|
178
|
-
messages: Message[];
|
|
179
|
-
usage?: {
|
|
180
|
-
inputTokens: number;
|
|
181
|
-
contextWindow: number;
|
|
182
|
-
};
|
|
183
|
-
}
|
|
184
|
-
/**
|
|
185
|
-
* @deprecated Use ContextEnrichResult instead.
|
|
186
|
-
*/
|
|
187
|
-
export interface ContextModifyResult {
|
|
188
|
-
messages?: Message[];
|
|
189
|
-
inject?: string;
|
|
190
|
-
}
|
|
191
|
-
/** Message type for context_modify */
|
|
192
|
-
export interface Message {
|
|
193
|
-
role: 'user' | 'assistant' | 'system';
|
|
194
|
-
content: string;
|
|
195
|
-
}
|
|
196
137
|
/** Tool call event -- fired before tool execution */
|
|
197
138
|
export interface ToolCallEvent {
|
|
198
139
|
tool: string;
|
|
@@ -214,10 +155,8 @@ export interface ToolResultEvent {
|
|
|
214
155
|
export interface AgentEndEvent {
|
|
215
156
|
response: string;
|
|
216
157
|
}
|
|
217
|
-
/** Union of all extension events (
|
|
158
|
+
/** Union of all normalized extension events (v7) */
|
|
218
159
|
export type ExtensionEvent = {
|
|
219
|
-
type: 'resources_discover';
|
|
220
|
-
} | {
|
|
221
160
|
type: 'label_extract';
|
|
222
161
|
data: LabelExtractEvent;
|
|
223
162
|
} | {
|
|
@@ -229,9 +168,6 @@ export type ExtensionEvent = {
|
|
|
229
168
|
} | {
|
|
230
169
|
type: 'input';
|
|
231
170
|
data: InputEvent;
|
|
232
|
-
} | {
|
|
233
|
-
type: 'context_modify';
|
|
234
|
-
data: ContextModifyEvent;
|
|
235
171
|
} | {
|
|
236
172
|
type: 'tool_call';
|
|
237
173
|
data: ToolCallEvent;
|
|
@@ -243,70 +179,34 @@ export type ExtensionEvent = {
|
|
|
243
179
|
} | {
|
|
244
180
|
type: 'agent_end';
|
|
245
181
|
data: AgentEndEvent;
|
|
246
|
-
} | {
|
|
247
|
-
type: 'session_start';
|
|
248
|
-
} | {
|
|
249
|
-
type: 'session_end';
|
|
250
182
|
} | {
|
|
251
183
|
type: 'turn_start';
|
|
252
184
|
} | {
|
|
253
185
|
type: 'turn_end';
|
|
254
186
|
} | {
|
|
255
|
-
type: '
|
|
256
|
-
} | {
|
|
257
|
-
type: 'message_update';
|
|
258
|
-
} | {
|
|
259
|
-
type: 'message_end';
|
|
260
|
-
} | {
|
|
261
|
-
type: 'model_select';
|
|
262
|
-
} | {
|
|
263
|
-
type: 'user_bash';
|
|
264
|
-
} | {
|
|
265
|
-
type: 'session_before_switch';
|
|
266
|
-
} | {
|
|
267
|
-
type: 'session_switch';
|
|
187
|
+
type: 'session_start';
|
|
268
188
|
} | {
|
|
269
|
-
type: '
|
|
189
|
+
type: 'session_end';
|
|
270
190
|
} | {
|
|
271
191
|
type: 'session_compact';
|
|
272
|
-
} | {
|
|
273
|
-
type: 'context_inject';
|
|
274
|
-
data: ContextInjectEvent;
|
|
275
192
|
};
|
|
276
|
-
/**
|
|
277
|
-
export type ExtensionTier = 'universal' | 'rich';
|
|
278
|
-
/** Event name to tier mapping */
|
|
279
|
-
export declare const EVENT_TIERS: Record<string, ExtensionTier>;
|
|
280
|
-
/** All valid event names */
|
|
281
|
-
export type ExtensionEventName = keyof typeof EVENT_TIERS;
|
|
282
|
-
/** A loaded extension with its handlers, tools, and commands */
|
|
193
|
+
/** A loaded extension with its handlers, tools, commands, skills, and identities */
|
|
283
194
|
export interface LoadedExtension {
|
|
284
195
|
path: string;
|
|
285
196
|
handlers: Map<string, Function[]>;
|
|
286
197
|
tools: Map<string, ToolDefinition>;
|
|
287
|
-
/** Registered commands (v6) */
|
|
288
198
|
commands: Map<string, CommandDefinition>;
|
|
289
|
-
|
|
199
|
+
skills: Map<string, Skill>;
|
|
200
|
+
identities: Map<string, Identity>;
|
|
201
|
+
labels: Set<string>;
|
|
290
202
|
}
|
|
291
|
-
/**
|
|
292
|
-
* Adapter capability matrix -- which events each adapter supports.
|
|
293
|
-
* v6 events listed first; legacy events marked with comments.
|
|
294
|
-
*/
|
|
295
|
-
export declare const ADAPTER_CAPABILITIES: Record<string, Set<string>>;
|
|
296
|
-
/**
|
|
297
|
-
* Tool integration strategy per adapter.
|
|
298
|
-
* - 'native': adapter can register tools natively (Pi, OpenClaw)
|
|
299
|
-
* - 'cli': tools are exposed as CLI commands (Claude Code)
|
|
300
|
-
* - 'text': tools are described in the system prompt only (Cursor, Copilot)
|
|
301
|
-
*/
|
|
302
|
-
export declare const TOOL_STRATEGY: Record<string, 'native' | 'cli' | 'text'>;
|
|
303
203
|
/** Extension diagnostics */
|
|
304
204
|
export interface ExtensionDiagnostic {
|
|
305
205
|
path: string;
|
|
306
206
|
handlerCounts: Record<string, number>;
|
|
307
207
|
toolNames: string[];
|
|
308
|
-
/** Command names registered by this extension */
|
|
309
208
|
commandNames: string[];
|
|
310
|
-
|
|
209
|
+
skillNames: string[];
|
|
210
|
+
identityNames: string[];
|
|
311
211
|
}
|
|
312
212
|
//# sourceMappingURL=extension-types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension-types.d.ts","sourceRoot":"","sources":["../src/extension-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"extension-types.d.ts","sourceRoot":"","sources":["../src/extension-types.ts"],"names":[],"mappings":"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"}
|