skillscript-runtime 0.9.5 → 0.9.6
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/composition.d.ts.map +1 -1
- package/dist/composition.js +10 -0
- package/dist/composition.js.map +1 -1
- package/dist/connectors/agent-noop.d.ts +12 -7
- package/dist/connectors/agent-noop.d.ts.map +1 -1
- package/dist/connectors/agent-noop.js +31 -12
- package/dist/connectors/agent-noop.js.map +1 -1
- package/dist/connectors/agent.d.ts +150 -28
- package/dist/connectors/agent.d.ts.map +1 -1
- package/dist/connectors/agent.js +13 -10
- package/dist/connectors/agent.js.map +1 -1
- package/dist/connectors/registry.d.ts +8 -1
- package/dist/connectors/registry.d.ts.map +1 -1
- package/dist/connectors/registry.js +14 -1
- package/dist/connectors/registry.js.map +1 -1
- package/dist/help-content.d.ts.map +1 -1
- package/dist/help-content.js +10 -7
- package/dist/help-content.js.map +1 -1
- package/dist/lint.d.ts.map +1 -1
- package/dist/lint.js +37 -11
- package/dist/lint.js.map +1 -1
- package/dist/parser.d.ts +13 -6
- package/dist/parser.d.ts.map +1 -1
- package/dist/parser.js +17 -7
- package/dist/parser.js.map +1 -1
- package/dist/runtime.d.ts +22 -2
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +73 -21
- package/dist/runtime.js.map +1 -1
- package/dist/scheduler.d.ts.map +1 -1
- package/dist/scheduler.js +6 -2
- package/dist/scheduler.js.map +1 -1
- package/dist/testing/conformance.d.ts.map +1 -1
- package/dist/testing/conformance.js +16 -6
- package/dist/testing/conformance.js.map +1 -1
- package/examples/hello.skill.provenance.json +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composition.d.ts","sourceRoot":"","sources":["../src/composition.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAW,KAAK,cAAc,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAEhF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAMxD,qBAAa,2BAA4B,SAAQ,KAAK;aACxB,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC;aAAkB,KAAK,EAAE,MAAM;gBAA3D,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAAkB,KAAK,EAAE,MAAM;CAOxF;AAED,qBAAa,gCAAiC,SAAQ,KAAK;aAC7B,SAAS,EAAE,MAAM;gBAAjB,SAAS,EAAE,MAAM;CAI9C;AAED,MAAM,WAAW,gBAAgB;IAC/B,8FAA8F;IAC9F,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,4FAA4F;IAC5F,GAAG,EAAE,cAAc,CAAC;IACpB,+FAA+F;IAC/F,KAAK,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,MAAM,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IAChC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB;;;;;OAKG;IACH,SAAS,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IACtC;;;;OAIG;IACH,uBAAuB,EAAE,aAAa,CAAC,uBAAuB,CAAC,CAAC;CACjE;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,kBAAkB,CAAC,
|
|
1
|
+
{"version":3,"file":"composition.d.ts","sourceRoot":"","sources":["../src/composition.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAW,KAAK,cAAc,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAEhF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAMxD,qBAAa,2BAA4B,SAAQ,KAAK;aACxB,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC;aAAkB,KAAK,EAAE,MAAM;gBAA3D,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAAkB,KAAK,EAAE,MAAM;CAOxF;AAED,qBAAa,gCAAiC,SAAQ,KAAK;aAC7B,SAAS,EAAE,MAAM;gBAAjB,SAAS,EAAE,MAAM;CAI9C;AAED,MAAM,WAAW,gBAAgB;IAC/B,8FAA8F;IAC9F,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,4FAA4F;IAC5F,GAAG,EAAE,cAAc,CAAC;IACpB,+FAA+F;IAC/F,KAAK,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,MAAM,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IAChC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB;;;;;OAKG;IACH,SAAS,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IACtC;;;;OAIG;IACH,uBAAuB,EAAE,aAAa,CAAC,uBAAuB,CAAC,CAAC;CACjE;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,kBAAkB,CAAC,CAgE7B;AAUD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,kBAAkB,CAAC,CAkC7B;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,6BAA6B,CACjD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,kBAAkB,CAAC,CAU7B"}
|
package/dist/composition.js
CHANGED
|
@@ -75,10 +75,20 @@ export async function executeSkillByName(skillName, inputs, opts) {
|
|
|
75
75
|
const compiled = await compile(loaded.source, { inputs, skillStore });
|
|
76
76
|
// Propagate the parent context with the depth incremented and the
|
|
77
77
|
// child chain extended. Mechanical mode carries through unchanged.
|
|
78
|
+
//
|
|
79
|
+
// v0.9.6 audit Q8 — entry_skill_name plumbing per Perry's plumbing-risk
|
|
80
|
+
// callout (`1bc9d7a2` multi-layer-promise lesson). When parent A composes
|
|
81
|
+
// child B, B's DeliveryMeta.origin.entry_skill_name must show A. Rule:
|
|
82
|
+
// - If parent already has entrySkillName set (parent is itself a composed
|
|
83
|
+
// helper), preserve it — deeper-than-2-level chains intentionally lose
|
|
84
|
+
// the middle per the audit footnote
|
|
85
|
+
// - Otherwise, parent IS the entry; child inherits parent's
|
|
86
|
+
// `_currentSkillName` as its entrySkillName
|
|
78
87
|
const childCtx = {
|
|
79
88
|
...ctx,
|
|
80
89
|
recursionDepth: depth,
|
|
81
90
|
maxRecursionDepth: limit,
|
|
91
|
+
entrySkillName: ctx.entrySkillName ?? ctx._currentSkillName,
|
|
82
92
|
};
|
|
83
93
|
const result = await execute(compiled.parsed, compiled.resolvedVariables, compiled.targetOrder, childCtx);
|
|
84
94
|
return {
|
package/dist/composition.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composition.js","sourceRoot":"","sources":["../src/composition.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"composition.js","sourceRoot":"","sources":["../src/composition.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,23 +1,28 @@
|
|
|
1
|
-
import type { AgentConnector, AgentDescriptor, DeliveryPayload, DeliveryReceipt, WakeOpts, WakeReceipt
|
|
2
|
-
import type { StaticCapabilities
|
|
1
|
+
import type { AgentConnector, AgentDescriptor, AgentStatus, DeliveryPayload, DeliveryReceipt, RequestResponseOpts, Response, WakeOpts, WakeReceipt } from "./agent.js";
|
|
2
|
+
import type { StaticCapabilities } from "./types.js";
|
|
3
3
|
/**
|
|
4
4
|
* Default AgentConnector — `list_agents` returns []; `deliver` and `wake`
|
|
5
5
|
* resolve cleanly after logging a one-line warning so adopters notice the
|
|
6
6
|
* dispatch happened without a wired substrate. Lets the runtime start
|
|
7
|
-
* with no AgentConnector configured: `# Output: agent:` decls
|
|
8
|
-
*
|
|
9
|
-
*
|
|
7
|
+
* with no AgentConnector configured: `# Output: agent:` decls still
|
|
8
|
+
* complete (with a warning instead of a thrown error) so authors don't
|
|
9
|
+
* have to wire a substrate before running mechanical previews.
|
|
10
10
|
*
|
|
11
11
|
* Use this in tests + dev. For production, wire a real impl
|
|
12
|
-
* (
|
|
12
|
+
* (HttpWebhookAgentConnector, TmuxAgentConnector, FileAgentConnector, etc.)
|
|
13
13
|
* via Registry.registerAgentConnector("primary", new MyImpl(...)).
|
|
14
|
+
*
|
|
15
|
+
* Reference pattern for adopter-agent authors (per memory `9fbeb1a1`): this
|
|
16
|
+
* file is the canonical worked example. Adopter agents reading the contract
|
|
17
|
+
* should look here for "how do I shape my impl."
|
|
14
18
|
*/
|
|
15
19
|
export declare class NoOpAgentConnector implements AgentConnector {
|
|
16
20
|
static staticCapabilities(): StaticCapabilities;
|
|
17
21
|
list_agents(): Promise<AgentDescriptor[]>;
|
|
18
22
|
deliver(agent_id: string, payload: DeliveryPayload): Promise<DeliveryReceipt>;
|
|
19
23
|
wake(agent_id: string, _opts?: WakeOpts): Promise<WakeReceipt>;
|
|
24
|
+
health_check(): Promise<boolean>;
|
|
25
|
+
request_response(agent_id: string, _payload: DeliveryPayload, _opts: RequestResponseOpts): Promise<Response>;
|
|
20
26
|
agent_status(_agent_id: string): Promise<AgentStatus>;
|
|
21
|
-
manifest(): Promise<ManifestInfo>;
|
|
22
27
|
}
|
|
23
28
|
//# sourceMappingURL=agent-noop.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-noop.d.ts","sourceRoot":"","sources":["../../src/connectors/agent-noop.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,eAAe,EACf,eAAe,EACf,eAAe,EACf,QAAQ,EACR,
|
|
1
|
+
{"version":3,"file":"agent-noop.d.ts","sourceRoot":"","sources":["../../src/connectors/agent-noop.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,eAAe,EACf,WAAW,EACX,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,QAAQ,EACR,QAAQ,EACR,WAAW,EACZ,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,kBAAmB,YAAW,cAAc;IACvD,MAAM,CAAC,kBAAkB,IAAI,kBAAkB;IASzC,WAAW,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAIzC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IAO7E,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC;IAO9D,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC;IAQhC,gBAAgB,CACpB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,eAAe,EACzB,KAAK,EAAE,mBAAmB,GACzB,OAAO,CAAC,QAAQ,CAAC;IAad,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;CAO5D"}
|
|
@@ -2,13 +2,17 @@
|
|
|
2
2
|
* Default AgentConnector — `list_agents` returns []; `deliver` and `wake`
|
|
3
3
|
* resolve cleanly after logging a one-line warning so adopters notice the
|
|
4
4
|
* dispatch happened without a wired substrate. Lets the runtime start
|
|
5
|
-
* with no AgentConnector configured: `# Output: agent:` decls
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* with no AgentConnector configured: `# Output: agent:` decls still
|
|
6
|
+
* complete (with a warning instead of a thrown error) so authors don't
|
|
7
|
+
* have to wire a substrate before running mechanical previews.
|
|
8
8
|
*
|
|
9
9
|
* Use this in tests + dev. For production, wire a real impl
|
|
10
|
-
* (
|
|
10
|
+
* (HttpWebhookAgentConnector, TmuxAgentConnector, FileAgentConnector, etc.)
|
|
11
11
|
* via Registry.registerAgentConnector("primary", new MyImpl(...)).
|
|
12
|
+
*
|
|
13
|
+
* Reference pattern for adopter-agent authors (per memory `9fbeb1a1`): this
|
|
14
|
+
* file is the canonical worked example. Adopter agents reading the contract
|
|
15
|
+
* should look here for "how do I shape my impl."
|
|
12
16
|
*/
|
|
13
17
|
export class NoOpAgentConnector {
|
|
14
18
|
static staticCapabilities() {
|
|
@@ -16,28 +20,43 @@ export class NoOpAgentConnector {
|
|
|
16
20
|
connector_type: "agent_connector",
|
|
17
21
|
implementation: "NoOpAgentConnector",
|
|
18
22
|
contract_version: "1.0.0",
|
|
19
|
-
features: { deliver: true, wake: true, list_agents: true, agent_status: true },
|
|
23
|
+
features: { deliver: true, wake: true, list_agents: true, agent_status: true, health_check: true },
|
|
20
24
|
};
|
|
21
25
|
}
|
|
22
26
|
async list_agents() {
|
|
23
27
|
return [];
|
|
24
28
|
}
|
|
25
29
|
async deliver(agent_id, payload) {
|
|
26
|
-
process.stderr.write(`[NoOpAgentConnector] deliver(${agent_id}, kind=${payload.kind}) — no substrate wired; payload discarded.\n`);
|
|
30
|
+
process.stderr.write(`[NoOpAgentConnector] deliver(${agent_id}, kind=${payload.kind}, dispatch_id=${payload.meta.dispatch_id}) — no substrate wired; payload discarded.\n`);
|
|
27
31
|
return { delivered_at: Date.now() };
|
|
28
32
|
}
|
|
29
33
|
async wake(agent_id, _opts) {
|
|
30
34
|
process.stderr.write(`[NoOpAgentConnector] wake(${agent_id}) — no substrate wired; wake skipped.\n`);
|
|
31
35
|
return { woken_at: Date.now() };
|
|
32
36
|
}
|
|
37
|
+
async health_check() {
|
|
38
|
+
// NoOp is always "healthy" — there's no real substrate to fail. Adopters
|
|
39
|
+
// who want the runtime to refuse-to-start when no real connector is wired
|
|
40
|
+
// should wire a real impl; the bootstrap-throws contract (Q6) only fires
|
|
41
|
+
// when an adopter's connector returns false, not on the NoOp default.
|
|
42
|
+
return true;
|
|
43
|
+
}
|
|
44
|
+
async request_response(agent_id, _payload, _opts) {
|
|
45
|
+
// Locked contract shape per Q1; runtime impl deferred to v0.10 (when
|
|
46
|
+
// exchange() op ships). Adopters' agents implementing real AgentConnectors
|
|
47
|
+
// before v0.10 should throw NotImplementedError following this pattern
|
|
48
|
+
// until their substrate has request-response semantics.
|
|
49
|
+
throw new Error(`[NoOpAgentConnector] request_response(${agent_id}) — not implemented. ` +
|
|
50
|
+
`Synchronous request-response shipping in v0.10 with the exchange() op. ` +
|
|
51
|
+
`Adopters implementing this method against their substrate today should ` +
|
|
52
|
+
`throw NotImplementedError until v0.10 runtime support lands.`);
|
|
53
|
+
}
|
|
33
54
|
async agent_status(_agent_id) {
|
|
55
|
+
// Signal-only metadata; NoOp tracks no per-agent state, so always
|
|
56
|
+
// "unknown." Runtime does NOT auto-gate delivery on this value — adopters
|
|
57
|
+
// wanting to skip delivery for offline agents set delivery_skipped on
|
|
58
|
+
// DeliveryReceipt instead.
|
|
34
59
|
return "unknown";
|
|
35
60
|
}
|
|
36
|
-
async manifest() {
|
|
37
|
-
return {
|
|
38
|
-
capabilities_version: "1.0.0",
|
|
39
|
-
manifest: { reachable_agents: [] },
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
61
|
}
|
|
43
62
|
//# sourceMappingURL=agent-noop.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-noop.js","sourceRoot":"","sources":["../../src/connectors/agent-noop.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agent-noop.js","sourceRoot":"","sources":["../../src/connectors/agent-noop.ts"],"names":[],"mappings":"AAaA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,OAAO,kBAAkB;IAC7B,MAAM,CAAC,kBAAkB;QACvB,OAAO;YACL,cAAc,EAAE,iBAAiB;YACjC,cAAc,EAAE,oBAAoB;YACpC,gBAAgB,EAAE,OAAO;YACzB,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;SACnG,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW;QACf,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,QAAgB,EAAE,OAAwB;QACtD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,gCAAgC,QAAQ,UAAU,OAAO,CAAC,IAAI,iBAAiB,OAAO,CAAC,IAAI,CAAC,WAAW,8CAA8C,CACtJ,CAAC;QACF,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,QAAgB,EAAE,KAAgB;QAC3C,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,6BAA6B,QAAQ,yCAAyC,CAC/E,CAAC;QACF,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,yEAAyE;QACzE,0EAA0E;QAC1E,yEAAyE;QACzE,sEAAsE;QACtE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,QAAgB,EAChB,QAAyB,EACzB,KAA0B;QAE1B,qEAAqE;QACrE,2EAA2E;QAC3E,uEAAuE;QACvE,wDAAwD;QACxD,MAAM,IAAI,KAAK,CACb,yCAAyC,QAAQ,uBAAuB;YACxE,yEAAyE;YACzE,yEAAyE;YACzE,8DAA8D,CAC/D,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,SAAiB;QAClC,kEAAkE;QAClE,0EAA0E;QAC1E,sEAAsE;QACtE,2BAA2B;QAC3B,OAAO,SAAS,CAAC;IACnB,CAAC;CACF"}
|
|
@@ -1,48 +1,140 @@
|
|
|
1
|
-
import type { StaticCapabilities
|
|
1
|
+
import type { StaticCapabilities } from "./types.js";
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
3
|
+
* Runtime-filled envelope metadata. Adopters CONSUME this (substrate-side
|
|
4
|
+
* serialization); they NEVER construct it. The runtime populates every
|
|
5
|
+
* required field at the `deliver()` call site.
|
|
6
|
+
*
|
|
7
|
+
* Locked v1.0 shape per v0.9.6 audit Q8. Optional fields are intentionally
|
|
8
|
+
* sparse; additive growth is non-breaking (TypeScript discriminated union
|
|
9
|
+
* semantics), so future fields land additively per real adopter feedback.
|
|
7
10
|
*/
|
|
8
|
-
export interface
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
export interface DeliveryMeta {
|
|
12
|
+
/**
|
|
13
|
+
* UUID per `notify()` op invocation. Same dispatch_id across multi-
|
|
14
|
+
* connector broadcast (one `notify()` op, N wired connectors for the
|
|
15
|
+
* same agent_id → all N `deliver()` calls share this id). Sequential
|
|
16
|
+
* `notify()` calls in the same skill produce distinct dispatch_ids per
|
|
17
|
+
* call. Author's call-site boundary is what defines the dispatch event.
|
|
18
|
+
*
|
|
19
|
+
* Agent-side idempotency primitive — receivers dedupe substrate retries
|
|
20
|
+
* by dispatch_id.
|
|
21
|
+
*/
|
|
22
|
+
dispatch_id: string;
|
|
23
|
+
/**
|
|
24
|
+
* Runtime emit-clock timestamp (unix ms) — when `notify()` / `# Output:`
|
|
25
|
+
* hook fired. Distinct from receipt-side `delivered_at` (substrate
|
|
26
|
+
* confirmation). Staleness checks need both surfaces; delta = effective
|
|
27
|
+
* queue lag.
|
|
28
|
+
*/
|
|
29
|
+
sent_at: number;
|
|
30
|
+
/**
|
|
31
|
+
* Origin tracking. Runtime auto-fills from execution context. Receiver
|
|
32
|
+
* uses for attribution + routing decisions.
|
|
33
|
+
*/
|
|
34
|
+
origin: {
|
|
35
|
+
/** Immediate emitter — the skill that fired this delivery. */
|
|
36
|
+
skill_name: string;
|
|
37
|
+
/**
|
|
38
|
+
* Root entry-point skill when distinct from `skill_name`. Set when the
|
|
39
|
+
* emit happens inside a composed helper (e.g., skill A inlines B via
|
|
40
|
+
* `&`, B emits → entry_skill_name=A). Intermediate composition steps
|
|
41
|
+
* are NOT captured here — those live in runtime trace logs. Surface
|
|
42
|
+
* boundaries are decisions, not accidents.
|
|
43
|
+
*/
|
|
44
|
+
entry_skill_name?: string;
|
|
45
|
+
/**
|
|
46
|
+
* Triggering pathway that fired the originating skill. From the
|
|
47
|
+
* RECEIVER's lens — not the kind of OUTPUT (which is captured by
|
|
48
|
+
* `kind: "augment" | "template"`).
|
|
49
|
+
*/
|
|
50
|
+
trigger_kind: "cron" | "session" | "webhook" | "agent" | "cli" | "dashboard" | "inline";
|
|
51
|
+
/**
|
|
52
|
+
* Root-trigger agent IF identifiable, else undefined. Composition
|
|
53
|
+
* doesn't reset the calling-agent context — if X triggered the chain,
|
|
54
|
+
* X is the caller regardless of how deep the call stack is when the
|
|
55
|
+
* emit happens. Cron / session / cli / dashboard / inline triggers
|
|
56
|
+
* have no calling agent.
|
|
57
|
+
*/
|
|
58
|
+
caller_agent_id?: string;
|
|
59
|
+
};
|
|
60
|
+
/**
|
|
61
|
+
* Adopter-defined routing vocabulary — opaque to skillscript. Set via
|
|
62
|
+
* `notify(event_type=...)` kwarg OR `# Event-type:` skill frontmatter
|
|
63
|
+
* (kwarg takes precedence; frontmatter is the fallback). Receiver uses
|
|
64
|
+
* for handler routing without parsing content.
|
|
65
|
+
*
|
|
66
|
+
* Lifecycle-hook deliveries (`# Output: agent:` / `# Output: template:`)
|
|
67
|
+
* carry frontmatter value if set. `notify()` deliveries can override via
|
|
68
|
+
* the kwarg.
|
|
69
|
+
*/
|
|
70
|
+
event_type?: string;
|
|
71
|
+
/**
|
|
72
|
+
* Reply-correlation primitive for the future v0.10 `exchange()` op /
|
|
73
|
+
* `request_response()` substrate path. When sender sets correlation_id,
|
|
74
|
+
* receiver echoes it on reply. Kind-independent — both augment and
|
|
75
|
+
* template kinds may carry correlation_id; receiver may reply regardless
|
|
76
|
+
* of kind.
|
|
77
|
+
*
|
|
78
|
+
* Settable via `notify(correlation_id=...)` kwarg ONLY (NOT via `#
|
|
79
|
+
* Output:` lifecycle hook).
|
|
80
|
+
*/
|
|
81
|
+
correlation_id?: string;
|
|
14
82
|
}
|
|
15
83
|
/**
|
|
16
84
|
* Discriminated payload union for `deliver`. The runtime picks `kind`
|
|
17
85
|
* based on the source declaration:
|
|
18
|
-
* - `# Output: agent: <name>` → `{ kind: "augment", ... }`
|
|
19
|
-
* - `# Output: template: <
|
|
86
|
+
* - `# Output: agent: <name>` / `notify(agent=...)` → `{ kind: "augment", ... }`
|
|
87
|
+
* - `# Output: template: <name>` → `{ kind: "template", ... }`
|
|
20
88
|
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
89
|
+
* Closed set for v1.0 per audit Q4. Additive growth (e.g., `kind: "binary"`)
|
|
90
|
+
* is non-breaking via discriminated union semantics — adopters whose
|
|
91
|
+
* substrate can't handle a future kind throw at `deliver()` time.
|
|
24
92
|
*/
|
|
25
93
|
export type DeliveryPayload = {
|
|
26
94
|
kind: "augment";
|
|
27
95
|
content: string;
|
|
28
|
-
|
|
29
|
-
source_skill?: string;
|
|
30
|
-
triggered_by?: TriggerProvenance;
|
|
31
|
-
delivery_context?: string;
|
|
32
|
-
templates?: string[];
|
|
96
|
+
meta: DeliveryMeta;
|
|
33
97
|
} | {
|
|
34
98
|
kind: "template";
|
|
35
99
|
prompt: string;
|
|
36
|
-
|
|
37
|
-
triggered_by?: TriggerProvenance;
|
|
38
|
-
delivery_context?: string;
|
|
39
|
-
templates?: string[];
|
|
100
|
+
meta: DeliveryMeta;
|
|
40
101
|
};
|
|
41
102
|
export interface DeliveryReceipt {
|
|
42
103
|
/** Unix-ms timestamp the substrate accepted the delivery. */
|
|
43
104
|
delivered_at: number;
|
|
44
105
|
/** Substrate-specific id for callers to correlate later. */
|
|
45
106
|
delivery_id?: string;
|
|
107
|
+
/**
|
|
108
|
+
* Adopter signals "accepted but not pushed to the agent" — agent offline,
|
|
109
|
+
* rate-limit drop, tmux session exists but agent hasn't read, etc.
|
|
110
|
+
* Distinct from outright dispatch failure (which throws). Runtime echoes
|
|
111
|
+
* this on the receipt record so dashboards + observability can surface it.
|
|
112
|
+
*
|
|
113
|
+
* v0.9.6 promotion: was previously runtime-set on `AgentDeliveryReceiptRecord`
|
|
114
|
+
* (v0.9.2 P1.1); now contract-set so adopters can signal explicitly.
|
|
115
|
+
* Runtime preserves NoOp-fallback inference when adopter doesn't set it.
|
|
116
|
+
*/
|
|
117
|
+
delivery_skipped?: boolean;
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Synchronous request-response envelope — locked v1.0 shape per Q1.
|
|
121
|
+
* Impl deferred to v0.10 (when `exchange()` op ships). Adopters' agents
|
|
122
|
+
* implementing this method will see `NotImplementedError` from
|
|
123
|
+
* `NoOpAgentConnector` until v0.10 runtime support lands.
|
|
124
|
+
*/
|
|
125
|
+
export interface Response {
|
|
126
|
+
/** Echoes the original `meta.correlation_id` of the request. */
|
|
127
|
+
correlation_id: string;
|
|
128
|
+
/** The reply content. */
|
|
129
|
+
content: string;
|
|
130
|
+
/** Unix-ms timestamp the agent emitted the reply. */
|
|
131
|
+
sent_at: number;
|
|
132
|
+
/** The replying agent_id. */
|
|
133
|
+
agent_id: string;
|
|
134
|
+
}
|
|
135
|
+
export interface RequestResponseOpts {
|
|
136
|
+
/** Max wait in ms before throwing TimeoutError. */
|
|
137
|
+
timeout_ms: number;
|
|
46
138
|
}
|
|
47
139
|
export interface WakeOpts {
|
|
48
140
|
/** Optional preamble to prepend to the wake message. */
|
|
@@ -59,17 +151,47 @@ export interface AgentDescriptor {
|
|
|
59
151
|
agent_name?: string;
|
|
60
152
|
capabilities?: ReadonlyArray<"deliver" | "wake" | "augment" | "template">;
|
|
61
153
|
}
|
|
154
|
+
/**
|
|
155
|
+
* Signal-only metadata about an agent's reachability/availability. Adopter
|
|
156
|
+
* implements iff they have per-agent tracking (e.g., a webhook adopter
|
|
157
|
+
* tracking last-ACK timestamp). Runtime does NOT auto-gate delivery on
|
|
158
|
+
* `agent_status` values — pure metadata. If you want runtime to skip
|
|
159
|
+
* delivery for offline agents, set `delivery_skipped: true` on the
|
|
160
|
+
* `DeliveryReceipt` (Q7) instead.
|
|
161
|
+
*
|
|
162
|
+
* Distinct from `health_check()` which is the connector substrate's
|
|
163
|
+
* health, not per-agent.
|
|
164
|
+
*/
|
|
62
165
|
export type AgentStatus = "active" | "idle" | "asleep" | "unknown";
|
|
63
166
|
/**
|
|
64
|
-
* The contract.
|
|
65
|
-
*
|
|
167
|
+
* The contract. v0.9.6 audit locked Q1-Q12.
|
|
168
|
+
*
|
|
169
|
+
* Required methods: `list_agents`, `deliver`, `wake`, `health_check`,
|
|
170
|
+
* `request_response`. Optional: `agent_status`.
|
|
171
|
+
*
|
|
172
|
+
* `health_check()` is invoked at `Registry.registerAgentConnector()` —
|
|
173
|
+
* bootstrap-throws on false. Adopters wanting soft dev-mode behavior wrap
|
|
174
|
+
* their AgentConnector with a retry / always-healthy shim; the contract
|
|
175
|
+
* stays clean.
|
|
66
176
|
*/
|
|
67
177
|
export interface AgentConnector {
|
|
68
178
|
list_agents(): Promise<AgentDescriptor[]>;
|
|
69
179
|
deliver(agent_id: string, payload: DeliveryPayload): Promise<DeliveryReceipt>;
|
|
70
180
|
wake(agent_id: string, opts?: WakeOpts): Promise<WakeReceipt>;
|
|
181
|
+
/**
|
|
182
|
+
* Bootstrap-time health probe. Adopter returns `true` if the substrate
|
|
183
|
+
* is reachable + configured correctly. Registry throws on `false` so
|
|
184
|
+
* wiring failures surface at boot, not at first skill-fire.
|
|
185
|
+
*/
|
|
186
|
+
health_check(): Promise<boolean>;
|
|
187
|
+
/**
|
|
188
|
+
* Synchronous send-and-await-reply. Required signature; impl deferred
|
|
189
|
+
* to v0.10 (when the `exchange()` op ships). Adopters' agents writing
|
|
190
|
+
* AgentConnector impls before v0.10 should throw `NotImplementedError`
|
|
191
|
+
* here — see `NoOpAgentConnector` for the canonical pattern.
|
|
192
|
+
*/
|
|
193
|
+
request_response(agent_id: string, payload: DeliveryPayload, opts: RequestResponseOpts): Promise<Response>;
|
|
71
194
|
agent_status?(agent_id: string): Promise<AgentStatus>;
|
|
72
|
-
manifest(): Promise<ManifestInfo>;
|
|
73
195
|
}
|
|
74
196
|
export interface AgentConnectorClass {
|
|
75
197
|
new (...args: never[]): AgentConnector;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/connectors/agent.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/connectors/agent.ts"],"names":[],"mappings":"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"}
|
package/dist/connectors/agent.js
CHANGED
|
@@ -1,9 +1,5 @@
|
|
|
1
|
-
// AgentConnector — the
|
|
2
|
-
//
|
|
3
|
-
// Augmenting and Template skill kinds both deliver to a *frontier agent*.
|
|
4
|
-
// The runtime needs a substrate-neutral way to (a) discover which agents
|
|
5
|
-
// are reachable, (b) deliver content into an agent's context, and (c)
|
|
6
|
-
// optionally wake a sleeping agent. AgentConnector covers all three.
|
|
1
|
+
// AgentConnector — the substrate-neutral contract for delivering payloads
|
|
2
|
+
// to a frontier agent. Locked at v1.0 per the v0.9.6 audit (memory b722bbf4).
|
|
7
3
|
//
|
|
8
4
|
// Substrate examples — the contract is neutral; adopters wire impls:
|
|
9
5
|
//
|
|
@@ -12,10 +8,17 @@
|
|
|
12
8
|
// - file-watch: write to `<path>/augment-<id>.txt`
|
|
13
9
|
// - Slack thread: post to monitored thread
|
|
14
10
|
// - IPC pipe: write to named pipe
|
|
15
|
-
// - AMP memory: write `agent:` memory with recipients (T8)
|
|
16
11
|
//
|
|
17
|
-
//
|
|
18
|
-
//
|
|
19
|
-
//
|
|
12
|
+
// Adopter-side impl note: this contract is typically implemented by the
|
|
13
|
+
// adopter's AGENT (not the human programmer) — see memory `9fbeb1a1`. The
|
|
14
|
+
// human's role is closer to "supervise the agent." Keep surface MINIMAL +
|
|
15
|
+
// STABLE so adopter forks merge cleanly across upstream releases.
|
|
16
|
+
//
|
|
17
|
+
// The bundled default is `NoOpAgentConnector` — `list_agents` returns [],
|
|
18
|
+
// `deliver` / `wake` resolve cleanly after a stderr warning. Lets runtimes
|
|
19
|
+
// start with no AgentConnector wired; `# Output: agent:` decls still
|
|
20
|
+
// complete (with a warning instead of a thrown error). Use the bundled
|
|
21
|
+
// `HttpWebhookAgentConnector` (separate impl session, post-v0.9.6) as the
|
|
22
|
+
// canonical worked-example for adopter impls.
|
|
20
23
|
export {};
|
|
21
24
|
//# sourceMappingURL=agent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/connectors/agent.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/connectors/agent.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,8EAA8E;AAC9E,EAAE;AACF,qEAAqE;AACrE,EAAE;AACF,6DAA6D;AAC7D,2DAA2D;AAC3D,uDAAuD;AACvD,6CAA6C;AAC7C,wCAAwC;AACxC,EAAE;AACF,wEAAwE;AACxE,0EAA0E;AAC1E,0EAA0E;AAC1E,kEAAkE;AAClE,EAAE;AACF,0EAA0E;AAC1E,2EAA2E;AAC3E,qEAAqE;AACrE,uEAAuE;AACvE,0EAA0E;AAC1E,8CAA8C"}
|
|
@@ -25,7 +25,14 @@ export declare class Registry {
|
|
|
25
25
|
* dispatch shapes against the connector's declared tool set.
|
|
26
26
|
*/
|
|
27
27
|
getMcpConnectorCtor(name: string): McpConnectorClass | undefined;
|
|
28
|
-
|
|
28
|
+
/**
|
|
29
|
+
* Register an AgentConnector instance. Invokes `instance.health_check()`
|
|
30
|
+
* and throws on `false` — wiring failures surface at boot, not at first
|
|
31
|
+
* skill-fire (v0.9.6 audit Q6). Adopters wanting soft dev-mode behavior
|
|
32
|
+
* wrap their AgentConnector with a retry / always-healthy shim; the
|
|
33
|
+
* contract stays clean.
|
|
34
|
+
*/
|
|
35
|
+
registerAgentConnector(name: string, instance: AgentConnector): Promise<void>;
|
|
29
36
|
getSkillStore(name?: string): SkillStore;
|
|
30
37
|
getMemoryStore(name?: string): MemoryStore;
|
|
31
38
|
getLocalModel(name?: string): LocalModel;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/connectors/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,UAAU,EACV,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAyCtE,qBAAa,QAAQ;IACnB,OAAO,CAAC,WAAW,CAAyD;IAC5E,OAAO,CAAC,YAAY,CAA2D;IAC/E,OAAO,CAAC,WAAW,CAAyD;IAC5E,OAAO,CAAC,aAAa,CAA+B;IACpD,OAAO,CAAC,eAAe,CAAiE;IAIxF,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,GAAG,IAAI;IAI5D,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,GAAG,IAAI;IAI9D,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,GAAG,IAAI;IAI5D,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI;IAQzF;;;;OAIG;IACH,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS;IAI/D,8FAA8F;IAC9F,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO;IAMtD;;;;;OAKG;IACH,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAIhE,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/connectors/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -46,7 +46,20 @@ export class Registry {
|
|
|
46
46
|
getMcpConnectorCtor(name) {
|
|
47
47
|
return this.mcpConnectors.get(name)?.ctor;
|
|
48
48
|
}
|
|
49
|
-
|
|
49
|
+
/**
|
|
50
|
+
* Register an AgentConnector instance. Invokes `instance.health_check()`
|
|
51
|
+
* and throws on `false` — wiring failures surface at boot, not at first
|
|
52
|
+
* skill-fire (v0.9.6 audit Q6). Adopters wanting soft dev-mode behavior
|
|
53
|
+
* wrap their AgentConnector with a retry / always-healthy shim; the
|
|
54
|
+
* contract stays clean.
|
|
55
|
+
*/
|
|
56
|
+
async registerAgentConnector(name, instance) {
|
|
57
|
+
const healthy = await instance.health_check();
|
|
58
|
+
if (!healthy) {
|
|
59
|
+
throw new Error(`AgentConnector '${name}' (${ctorOf(instance).name ?? "<unknown class>"}) health_check() returned false at registration. ` +
|
|
60
|
+
`Substrate is unreachable or misconfigured; runtime refuses to start with an unhealthy AgentConnector. ` +
|
|
61
|
+
`Fix the substrate or wrap your connector with a retry/always-healthy shim for dev mode.`);
|
|
62
|
+
}
|
|
50
63
|
this.agentConnectors.set(name, { instance, ctor: ctorOf(instance) });
|
|
51
64
|
}
|
|
52
65
|
// ─── Get instance (runtime dispatch) ────────────────────────────────────
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/connectors/registry.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAwCrD,MAAM,OAAO,QAAQ;IACX,WAAW,GAAG,IAAI,GAAG,EAA8C,CAAC;IACpE,YAAY,GAAG,IAAI,GAAG,EAAgD,CAAC;IACvE,WAAW,GAAG,IAAI,GAAG,EAA8C,CAAC;IACpE,aAAa,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC5C,eAAe,GAAG,IAAI,GAAG,EAAsD,CAAC;IAExF,2EAA2E;IAE3E,kBAAkB,CAAC,IAAY,EAAE,QAAoB;QACnD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAoB,EAAE,CAAC,CAAC;IACtF,CAAC;IAED,mBAAmB,CAAC,IAAY,EAAE,QAAqB;QACrD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAqB,EAAE,CAAC,CAAC;IACxF,CAAC;IAED,kBAAkB,CAAC,IAAY,EAAE,QAAoB;QACnD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAoB,EAAE,CAAC,CAAC;IACtF,CAAC;IAED,oBAAoB,CAAC,IAAY,EAAE,QAAsB,EAAE,YAAuB;QAChF,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE;YAC3B,QAAQ;YACR,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAsB;YAC3C,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC3E,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,2BAA2B,CAAC,IAAY;QACtC,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC;IACpD,CAAC;IAED,8FAA8F;IAC9F,aAAa,CAAC,IAAY,EAAE,QAAgB;QAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,OAAO,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACvC,OAAO,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED;;;;;OAKG;IACH,mBAAmB,CAAC,IAAY;QAC9B,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;IAC5C,CAAC;IAED,sBAAsB,CAAC,IAAY,EAAE,QAAwB;
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/connectors/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"help-content.d.ts","sourceRoot":"","sources":["../src/help-content.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"help-content.d.ts","sourceRoot":"","sources":["../src/help-content.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AA0yBzD,wBAAgB,YAAY,CAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,cAAc,EAAE,MAAM,EACtB,QAAQ,CAAC,EAAE,QAAQ,GAClB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAqBzB"}
|
package/dist/help-content.js
CHANGED
|
@@ -209,6 +209,8 @@ mid-execution to interrupt or page an agent before the skill completes.
|
|
|
209
209
|
- \`message\` — alert body (optional; defaults to accumulated emissions so far)
|
|
210
210
|
- \`connectors\` — JSON array restricting which wired AgentConnector(s) receive
|
|
211
211
|
the dispatch (optional; defaults to all that claim the target agent)
|
|
212
|
+
- \`event_type\` — adopter-defined routing label (optional; flows to \`DeliveryMeta.event_type\`; overrides \`# Event-type:\` frontmatter)
|
|
213
|
+
- \`correlation_id\` — reply-correlation id (optional; flows to \`DeliveryMeta.correlation_id\`; required for future \`exchange()\` / \`request_response()\` paths)
|
|
212
214
|
|
|
213
215
|
Returns ACK \`{agent, dispatched: [{connector, ok, error?}]}\` — fire-and-forget
|
|
214
216
|
callers ignore the binding; check-delivery callers inspect ACK.
|
|
@@ -216,6 +218,7 @@ callers ignore the binding; check-delivery callers inspect ACK.
|
|
|
216
218
|
\`\`\`
|
|
217
219
|
notify(agent="oncall", message="threshold breached at \${COUNT}")
|
|
218
220
|
notify(agent="reviewer", connectors=["slack"]) -> A
|
|
221
|
+
notify(agent="ops", message="911", event_type="ticket-911", correlation_id="\${INCIDENT_ID}")
|
|
219
222
|
\`\`\`
|
|
220
223
|
|
|
221
224
|
### \`ask(prompt="...") -> R\` — prompt the user
|
|
@@ -402,10 +405,10 @@ Skill files open with \`# Key: value\` headers. Order isn't significant.
|
|
|
402
405
|
|
|
403
406
|
## Augmenting / Template only
|
|
404
407
|
|
|
405
|
-
- \`#
|
|
406
|
-
- \`# Templates: <skill_name>, <skill_name>\` — comma-separated Template-skill names
|
|
408
|
+
- \`# Event-type: <string>\` — adopter-defined routing vocabulary; flows to \`DeliveryMeta.event_type\` on lifecycle-hook deliveries as the frontmatter fallback. \`notify(event_type=...)\` kwarg takes precedence per-emit. Renamed from \`# Delivery-context:\` in v0.9.6 for vocab consistency.
|
|
409
|
+
- \`# Templates: <skill_name>, <skill_name>\` — comma-separated Template-skill names referenced by this skill; validated for existence by \`unknown-template-reference\` lint. As of v0.9.6 no longer flows through DeliveryPayload (per audit Q10).
|
|
407
410
|
|
|
408
|
-
(
|
|
411
|
+
(\`# Event-type:\` fires \`unused-augmenting-header\` lint warning if set on a Headless skill — one with no \`agent:\` or \`template:\` output declaration.)
|
|
409
412
|
|
|
410
413
|
## Capabilities + retrieval
|
|
411
414
|
|
|
@@ -435,7 +438,7 @@ The runtime injects these refs — don't declare them in \`# Vars:\` / \`# Requi
|
|
|
435
438
|
| \`$(NOW)\` | runtime clock | ISO-8601 timestamp at op-dispatch time |
|
|
436
439
|
| \`$(USER)\` | invocation context | Identity passed via \`agentId\` / CLI user |
|
|
437
440
|
| \`$(SESSION_CONTEXT)\` | runtime session | Free-form session snapshot for cross-skill carry |
|
|
438
|
-
| \`$(TRIGGER_TYPE)\` | scheduler | \`cron\` / \`session\` / \`
|
|
441
|
+
| \`$(TRIGGER_TYPE)\` | scheduler | \`cron\` / \`session\` / \`webhook\` / \`agent\` / \`cli\` / \`dashboard\` / \`inline\` (v0.9.6 enum lock) |
|
|
439
442
|
| \`$(TRIGGER_PAYLOAD)\` | scheduler | JSON-serializable payload attached to the firing trigger |
|
|
440
443
|
| \`$(ERROR_CONTEXT)\` | runtime error handler | Inside \`else:\` and \`# OnError:\` only; \`.kind\` / \`.message\` / \`.target\` accessible |
|
|
441
444
|
|
|
@@ -516,7 +519,7 @@ Demonstrates: \`# Triggers:\` cron, \`# Autonomous: true\` for unattended skills
|
|
|
516
519
|
# Description: Classify an incoming ticket by urgency and route to oncall when severe
|
|
517
520
|
# Status: Approved
|
|
518
521
|
# Vars: TICKET_BODY
|
|
519
|
-
#
|
|
522
|
+
# Event-type: ticket-triage-urgent
|
|
520
523
|
# Templates: ticket-assignment-procedure
|
|
521
524
|
# Output: agent: oncall
|
|
522
525
|
|
|
@@ -535,7 +538,7 @@ route: classify
|
|
|
535
538
|
default: route
|
|
536
539
|
\`\`\`
|
|
537
540
|
|
|
538
|
-
Demonstrates: \`$ llm\` MCP dispatch (substrate-portable — adopter wires their LLM substrate under the \`llm\` connector name), \`|trim\` filter on LLM output, ref-vs-literal comparison, agent delivery via \`agent:\` lifecycle hook, augmenting headers (\`#
|
|
541
|
+
Demonstrates: \`$ llm\` MCP dispatch (substrate-portable — adopter wires their LLM substrate under the \`llm\` connector name), \`|trim\` filter on LLM output, ref-vs-literal comparison, agent delivery via \`agent:\` lifecycle hook, augmenting headers (\`# Event-type:\` + \`# Templates:\`).
|
|
539
542
|
|
|
540
543
|
## 4. Composition — orchestrator invoking child skills
|
|
541
544
|
|
|
@@ -794,7 +797,7 @@ Three tiers per ERD §3:
|
|
|
794
797
|
- \`model-contention\` — async + sync ops on the same model serialize on a single runtime worker
|
|
795
798
|
- \`draft-with-trigger\` — \`# Status: Draft\` skill has \`# Triggers:\` declared; triggers won't fire until Approved
|
|
796
799
|
- \`reference-to-disabled-skill\` — \`&\` op references a Disabled skill (also tier-1 in some contexts)
|
|
797
|
-
- \`unused-augmenting-header\` — \`#
|
|
800
|
+
- \`unused-augmenting-header\` — \`# Event-type:\` set on a skill with no agent-bound output (v0.2.6, renamed v0.9.6)
|
|
798
801
|
|
|
799
802
|
## Tier-3 (info)
|
|
800
803
|
|