@plurnk/plurnk-a2a 1.18.0 → 1.19.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/.env.defaults +12 -8
- package/README.md +16 -13
- package/SPEC.md +155 -37
- package/dist/A2a.d.ts +19 -5
- package/dist/A2a.d.ts.map +1 -1
- package/dist/A2a.js +120 -33
- package/dist/A2a.js.map +1 -1
- package/dist/A2aMessage.d.ts +2 -1
- package/dist/A2aMessage.d.ts.map +1 -1
- package/dist/A2aMessage.js +11 -6
- package/dist/A2aMessage.js.map +1 -1
- package/dist/A2aProjection.d.ts +13 -4
- package/dist/A2aProjection.d.ts.map +1 -1
- package/dist/A2aProjection.js +94 -52
- package/dist/A2aProjection.js.map +1 -1
- package/dist/Functionality.d.ts +6 -3
- package/dist/Functionality.d.ts.map +1 -1
- package/dist/Functionality.js +18 -16
- package/dist/Functionality.js.map +1 -1
- package/dist/Module.d.ts +8 -15
- package/dist/Module.d.ts.map +1 -1
- package/dist/Module.js +75 -40
- package/dist/Module.js.map +1 -1
- package/dist/OutboundModule.d.ts +0 -1
- package/dist/OutboundModule.d.ts.map +1 -1
- package/dist/OutboundModule.js +4 -7
- package/dist/OutboundModule.js.map +1 -1
- package/dist/PlurnkAgentExecutor.d.ts +4 -1
- package/dist/PlurnkAgentExecutor.d.ts.map +1 -1
- package/dist/PlurnkAgentExecutor.js +51 -16
- package/dist/PlurnkAgentExecutor.js.map +1 -1
- package/dist/PlurnkRequestHandler.d.ts +11 -0
- package/dist/PlurnkRequestHandler.d.ts.map +1 -0
- package/dist/PlurnkRequestHandler.js +19 -0
- package/dist/PlurnkRequestHandler.js.map +1 -0
- package/dist/PlurnkTaskStore.d.ts +2 -1
- package/dist/PlurnkTaskStore.d.ts.map +1 -1
- package/dist/PlurnkTaskStore.js +88 -42
- package/dist/PlurnkTaskStore.js.map +1 -1
- package/dist/WorkspaceBinding.d.ts +1 -0
- package/dist/WorkspaceBinding.d.ts.map +1 -1
- package/dist/WorkspaceBinding.js +14 -5
- package/dist/WorkspaceBinding.js.map +1 -1
- package/dist/config.d.ts +5 -2
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +46 -20
- package/dist/config.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/docs/a2a.md +54 -15
- package/package.json +6 -6
- package/docs/agents.md +0 -42
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkspaceBinding.d.ts","sourceRoot":"","sources":["../src/WorkspaceBinding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,MAAM,WAAW,yBAAyB;IACtC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4FAA4F;IAC5F,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CACvC;AAED,uEAAuE;AACvE,MAAM,CAAC,OAAO,OAAO,gBAAgB;;IAKjC,YAAY,IAAI,EAAE,eAAe,EAAE,aAAa,EAAE,yBAAyB,EAG1E;IAED,EAAE,IAAI,OAAO,CAAC,MAAM,CAAC,CAMpB;
|
|
1
|
+
{"version":3,"file":"WorkspaceBinding.d.ts","sourceRoot":"","sources":["../src/WorkspaceBinding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,MAAM,WAAW,yBAAyB;IACtC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4FAA4F;IAC5F,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CACvC;AAED,uEAAuE;AACvE,MAAM,CAAC,OAAO,OAAO,gBAAgB;;IAKjC,YAAY,IAAI,EAAE,eAAe,EAAE,aAAa,EAAE,yBAAyB,EAG1E;IAED,EAAE,IAAI,OAAO,CAAC,MAAM,CAAC,CAMpB;IAED,UAAU,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAEnC;CAkCJ"}
|
package/dist/WorkspaceBinding.js
CHANGED
|
@@ -14,7 +14,20 @@ export default class WorkspaceBinding {
|
|
|
14
14
|
});
|
|
15
15
|
return this.#resolution;
|
|
16
16
|
}
|
|
17
|
+
existingId() {
|
|
18
|
+
return this.#resolution ?? this.#find();
|
|
19
|
+
}
|
|
17
20
|
async #resolve() {
|
|
21
|
+
const existing = await this.#find();
|
|
22
|
+
if (existing !== null)
|
|
23
|
+
return existing;
|
|
24
|
+
const created = await this.#port.createWorkspace({
|
|
25
|
+
name: this.#configuration.name,
|
|
26
|
+
projectRoot: this.#configuration.projectRoot,
|
|
27
|
+
});
|
|
28
|
+
return created.workspaceId;
|
|
29
|
+
}
|
|
30
|
+
async #find() {
|
|
18
31
|
const matches = (await this.#port.listWorkspaces())
|
|
19
32
|
.filter(({ name }) => name === this.#configuration.name);
|
|
20
33
|
if (matches.length > 1) {
|
|
@@ -30,11 +43,7 @@ export default class WorkspaceBinding {
|
|
|
30
43
|
}
|
|
31
44
|
return existing.id;
|
|
32
45
|
}
|
|
33
|
-
|
|
34
|
-
name: this.#configuration.name,
|
|
35
|
-
projectRoot: this.#configuration.projectRoot,
|
|
36
|
-
});
|
|
37
|
-
return created.workspaceId;
|
|
46
|
+
return null;
|
|
38
47
|
}
|
|
39
48
|
}
|
|
40
49
|
//# sourceMappingURL=WorkspaceBinding.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkspaceBinding.js","sourceRoot":"","sources":["../src/WorkspaceBinding.ts"],"names":[],"mappings":"AAQA,uEAAuE;AACvE,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACxB,KAAK,CAAkB;IACvB,cAAc,CAA4B;IACnD,WAAW,GAA2B,IAAI,CAAC;IAE3C,YAAY,IAAqB,EAAE,aAAwC;QACvE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,cAAc,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;IACzD,CAAC;IAED,EAAE;QACE,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACjD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,MAAM,KAAK,CAAC;QAChB,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,QAAQ;QACV,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;aAC9C,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC7D,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,CAAC,cAAc,CAAC,IAAI,kBAAkB,CAAC,CAAC;QACvF,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YACzB,IACI,IAAI,CAAC,cAAc,CAAC,WAAW,KAAK,IAAI;mBACrC,QAAQ,CAAC,YAAY,KAAK,IAAI,CAAC,cAAc,CAAC,WAAW,EAC9D,CAAC;gBACC,MAAM,IAAI,KAAK,CACX,kBAAkB,IAAI,CAAC,cAAc,CAAC,IAAI,qBAAqB;sBAC7D,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,wBAAwB;sBAChE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,CAC1D,CAAC;YACN,CAAC;YACD,OAAO,QAAQ,CAAC,EAAE,CAAC;QACvB,CAAC;QACD,
|
|
1
|
+
{"version":3,"file":"WorkspaceBinding.js","sourceRoot":"","sources":["../src/WorkspaceBinding.ts"],"names":[],"mappings":"AAQA,uEAAuE;AACvE,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACxB,KAAK,CAAkB;IACvB,cAAc,CAA4B;IACnD,WAAW,GAA2B,IAAI,CAAC;IAE3C,YAAY,IAAqB,EAAE,aAAwC;QACvE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,cAAc,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;IACzD,CAAC;IAED,EAAE;QACE,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACjD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,MAAM,KAAK,CAAC;QAChB,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,UAAU;QACN,OAAO,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,QAAQ;QACV,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACpC,IAAI,QAAQ,KAAK,IAAI;YAAE,OAAO,QAAQ,CAAC;QACvC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC;YAC7C,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI;YAC9B,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,WAAW;SAC/C,CAAC,CAAC;QACH,OAAO,OAAO,CAAC,WAAW,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,KAAK;QACP,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;aAC9C,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC7D,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,CAAC,cAAc,CAAC,IAAI,kBAAkB,CAAC,CAAC;QACvF,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YACzB,IACI,IAAI,CAAC,cAAc,CAAC,WAAW,KAAK,IAAI;mBACrC,QAAQ,CAAC,YAAY,KAAK,IAAI,CAAC,cAAc,CAAC,WAAW,EAC9D,CAAC;gBACC,MAAM,IAAI,KAAK,CACX,kBAAkB,IAAI,CAAC,cAAc,CAAC,IAAI,qBAAqB;sBAC7D,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,wBAAwB;sBAChE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,CAC1D,CAAC;YACN,CAAC;YACD,OAAO,QAAQ,CAAC,EAAE,CAAC;QACvB,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ"}
|
package/dist/config.d.ts
CHANGED
|
@@ -2,16 +2,19 @@ import type { A2AAgentDefinition as A2aAgentDefinition } from "@plurnk/plurnk-co
|
|
|
2
2
|
import { AgentCard } from "@a2a-js/sdk";
|
|
3
3
|
export type OutboundAgentDefinition = A2aAgentDefinition;
|
|
4
4
|
export interface HostedAgentConfiguration {
|
|
5
|
-
|
|
6
|
-
readonly
|
|
5
|
+
/** The bearer the endpoint requires and the card declares; empty = an unauthenticated exposure. */
|
|
6
|
+
readonly token: string;
|
|
7
7
|
readonly endpointPath: string;
|
|
8
8
|
readonly endpointUrl?: string;
|
|
9
9
|
readonly workspace: {
|
|
10
10
|
readonly name: string;
|
|
11
11
|
readonly projectRoot: string | null;
|
|
12
12
|
};
|
|
13
|
+
readonly proposals: HostedProposals;
|
|
13
14
|
readonly card: AgentCard;
|
|
14
15
|
}
|
|
16
|
+
export declare const HOSTED_PROPOSALS: readonly ["accept", "reject"];
|
|
17
|
+
export type HostedProposals = typeof HOSTED_PROPOSALS[number];
|
|
15
18
|
export declare const outboundAgentNames: (environ?: NodeJS.ProcessEnv) => string[];
|
|
16
19
|
export declare const outboundAgentDefinition: (name: string, environ?: NodeJS.ProcessEnv) => OutboundAgentDefinition | null;
|
|
17
20
|
export declare const outboundDefinitions: (environ?: NodeJS.ProcessEnv) => OutboundAgentDefinition[];
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEzF,OAAO,EAEH,SAAS,EAEZ,MAAM,aAAa,CAAC;AA4CrB,MAAM,MAAM,uBAAuB,GAAG,kBAAkB,CAAC;AAEzD,MAAM,WAAW,wBAAwB;IACrC,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEzF,OAAO,EAEH,SAAS,EAEZ,MAAM,aAAa,CAAC;AA4CrB,MAAM,MAAM,uBAAuB,GAAG,kBAAkB,CAAC;AAEzD,MAAM,WAAW,wBAAwB;IACrC,mGAAmG;IACnG,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE;QAChB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;KACvC,CAAC;IACF,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;IACpC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;CAC5B;AAGD,eAAO,MAAM,gBAAgB,YAAI,QAAQ,EAAE,QAAQ,CAAU,CAAC;AAC9D,MAAM,MAAM,eAAe,GAAG,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAmN9D,eAAO,MAAM,kBAAkB,aAAa,MAAM,CAAC,UAAU,KAAiB,MAAM,EAIjE,CAAC;AAEpB,eAAO,MAAM,uBAAuB,SAC1B,MAAM,YACH,MAAM,CAAC,UAAU,KAC3B,uBAAuB,GAAG,IA8B5B,CAAC;AAEF,eAAO,MAAM,mBAAmB,aACnB,MAAM,CAAC,UAAU,KAC3B,uBAAuB,EAIxB,CAAC;AAEH,eAAO,MAAM,mBAAmB,aAAa,MAAM,CAAC,UAAU,KAAiB,MAAM,EAgBpF,CAAC;AAEF,eAAO,MAAM,wBAAwB,aACxB,MAAM,CAAC,UAAU,KAC3B,wBAAwB,GAAG,IAsE7B,CAAC;AAEF,eAAO,MAAM,gBAAgB,aAAa,MAAM,CAAC,UAAU,KAAiB,MACS,CAAC;AAEtF,eAAO,MAAM,gBAAgB,aAAa,MAAM,CAAC,UAAU,KAAiB,MACS,CAAC"}
|
package/dist/config.js
CHANGED
|
@@ -8,12 +8,12 @@ const CONTROL_KEYS = new Map([
|
|
|
8
8
|
["request_timeout", `${PREFIX}REQUEST_TIMEOUT`],
|
|
9
9
|
["error_detail_limit", `${PREFIX}ERROR_DETAIL_LIMIT`],
|
|
10
10
|
["expose", `${PREFIX}EXPOSE`],
|
|
11
|
-
["
|
|
12
|
-
["port", `${PREFIX}PORT`],
|
|
11
|
+
["token", `${PREFIX}TOKEN`],
|
|
13
12
|
["endpoint_path", `${PREFIX}ENDPOINT_PATH`],
|
|
14
13
|
["endpoint_url", `${PREFIX}ENDPOINT_URL`],
|
|
15
14
|
["workspace", `${PREFIX}WORKSPACE`],
|
|
16
15
|
["project_root", `${PREFIX}PROJECT_ROOT`],
|
|
16
|
+
["proposals", `${PREFIX}PROPOSALS`],
|
|
17
17
|
["name", `${PREFIX}NAME`],
|
|
18
18
|
["description", `${PREFIX}DESCRIPTION`],
|
|
19
19
|
["version", `${PREFIX}VERSION`],
|
|
@@ -25,14 +25,28 @@ const CONTROL_KEYS = new Map([
|
|
|
25
25
|
]);
|
|
26
26
|
const AGENT_NAME = /^[a-z][a-z0-9-]*$/;
|
|
27
27
|
const ENV_REFERENCE = /^\$\{([A-Za-z_][A-Za-z0-9_]*)\}$/u;
|
|
28
|
-
const INPUT_MODES = ["
|
|
29
|
-
const OUTPUT_MODES = ["
|
|
28
|
+
const INPUT_MODES = ["*/*"];
|
|
29
|
+
const OUTPUT_MODES = ["*/*"];
|
|
30
|
+
// A2A carries no review channel, so an inbound loop settles its own proposals.
|
|
31
|
+
export const HOSTED_PROPOSALS = ["accept", "reject"];
|
|
30
32
|
const assertAgentName = (name, variable) => {
|
|
31
33
|
if (!AGENT_NAME.test(name)) {
|
|
32
34
|
throw new Error(`${variable} derives invalid A2A agent name '${name}'; names must match [a-z][a-z0-9-]*.`);
|
|
33
35
|
}
|
|
34
36
|
};
|
|
37
|
+
// {§http-host} — the exposure rides the service listener, so its own address knobs retired (#641).
|
|
38
|
+
// A still-set one fails hard naming the successor; it never silently binds nothing, and it never
|
|
39
|
+
// case-folds into an alias definition. Spelled out only here, as the refusal's own evidence.
|
|
40
|
+
const shedRetiredListener = (environ) => {
|
|
41
|
+
for (const name of ["PLURNK_A2A_HOST", "PLURNK_A2A_PORT"]) {
|
|
42
|
+
const present = Object.entries(environ).find(([key, value]) => key.toUpperCase() === name && value !== undefined && value !== "");
|
|
43
|
+
if (present !== undefined) {
|
|
44
|
+
throw new Error(`${present[0]} is retired: the A2A exposure is mounted on the service listener, whose address is PLURNK_HOST and PLURNK_PORT ({§http-host}); remove it.`);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
};
|
|
35
48
|
const parseEnvironment = (environ) => {
|
|
49
|
+
shedRetiredListener(environ);
|
|
36
50
|
const targets = new Map();
|
|
37
51
|
const companions = new Map();
|
|
38
52
|
for (const [key, value] of Object.entries(environ)) {
|
|
@@ -135,6 +149,12 @@ const required = (environ, field) => {
|
|
|
135
149
|
}
|
|
136
150
|
return value;
|
|
137
151
|
};
|
|
152
|
+
const hostedProposals = (raw) => {
|
|
153
|
+
if (!HOSTED_PROPOSALS.includes(raw)) {
|
|
154
|
+
throw new Error(`PLURNK_A2A_PROPOSALS must be one of ${HOSTED_PROPOSALS.join(", ")}; got ${JSON.stringify(raw)}.`);
|
|
155
|
+
}
|
|
156
|
+
return raw;
|
|
157
|
+
};
|
|
138
158
|
const positiveInteger = (raw, field) => {
|
|
139
159
|
const value = Number(raw);
|
|
140
160
|
if (!Number.isInteger(value) || value < 1) {
|
|
@@ -142,13 +162,6 @@ const positiveInteger = (raw, field) => {
|
|
|
142
162
|
}
|
|
143
163
|
return value;
|
|
144
164
|
};
|
|
145
|
-
const listenerPort = (raw) => {
|
|
146
|
-
const value = Number(raw);
|
|
147
|
-
if (!Number.isInteger(value) || value < 0 || value > 65_535) {
|
|
148
|
-
throw new Error(`PLURNK_A2A_PORT must be an integer from 0 through 65535; got ${JSON.stringify(raw)}.`);
|
|
149
|
-
}
|
|
150
|
-
return value;
|
|
151
|
-
};
|
|
152
165
|
const stringArray = (value, field) => {
|
|
153
166
|
if (!Array.isArray(value) || !value.every((item) => typeof item === "string")) {
|
|
154
167
|
throw new Error(`${field} must be an array of strings.`);
|
|
@@ -187,7 +200,7 @@ const skills = (raw) => {
|
|
|
187
200
|
if (skill.securityRequirements !== undefined) {
|
|
188
201
|
const security = skill.securityRequirements;
|
|
189
202
|
if (!Array.isArray(security) || security.length > 0) {
|
|
190
|
-
throw new Error(`${at}.securityRequirements must be absent or empty
|
|
203
|
+
throw new Error(`${at}.securityRequirements must be absent or empty; security is the exposure's, card-wide.`);
|
|
191
204
|
}
|
|
192
205
|
}
|
|
193
206
|
return {
|
|
@@ -206,15 +219,16 @@ const skills = (raw) => {
|
|
|
206
219
|
};
|
|
207
220
|
});
|
|
208
221
|
};
|
|
209
|
-
export const outboundAgentNames = (environ = process.env) => [...parseEnvironment(environ).targets
|
|
222
|
+
export const outboundAgentNames = (environ = process.env) => [...parseEnvironment(environ).targets]
|
|
223
|
+
.filter(([, { value }]) => value !== "")
|
|
224
|
+
.map(([name]) => name)
|
|
225
|
+
.toSorted();
|
|
210
226
|
export const outboundAgentDefinition = (name, environ = process.env) => {
|
|
211
227
|
const folded = name.toLowerCase();
|
|
212
228
|
const { targets, companions } = parseEnvironment(environ);
|
|
213
229
|
const target = targets.get(folded);
|
|
214
|
-
if (target === undefined)
|
|
230
|
+
if (target === undefined || target.value === "")
|
|
215
231
|
return null;
|
|
216
|
-
if (target.value.length === 0)
|
|
217
|
-
throw new Error(`${target.key} must not be empty.`);
|
|
218
232
|
const fields = companions.get(folded);
|
|
219
233
|
const cardPathField = fields?.get("_card_path");
|
|
220
234
|
const cardPath = cardPathField?.value;
|
|
@@ -249,13 +263,20 @@ export const outboundDefinitions = (environ = process.env) => outboundAgentNames
|
|
|
249
263
|
});
|
|
250
264
|
export const serviceEnabledNames = (environ = process.env) => {
|
|
251
265
|
const field = `${PREFIX}ENABLED`;
|
|
266
|
+
if (environ[field] === undefined)
|
|
267
|
+
throw new Error(`${field} is missing from the assembled environment floor.`);
|
|
268
|
+
if (environ[field] === "")
|
|
269
|
+
throw new Error(`${field} must be a JSON array of strings; [] enables none.`);
|
|
252
270
|
const configured = jsonStrings(environ[field], field);
|
|
253
|
-
const
|
|
271
|
+
const { targets } = parseEnvironment(environ);
|
|
254
272
|
const enabled = new Set();
|
|
255
273
|
for (const name of configured) {
|
|
256
274
|
assertAgentName(name, field);
|
|
257
|
-
|
|
275
|
+
const target = targets.get(name);
|
|
276
|
+
if (target === undefined)
|
|
258
277
|
throw new Error(`${field} contains unknown A2A agent '${name}'.`);
|
|
278
|
+
if (target.value === "")
|
|
279
|
+
continue;
|
|
259
280
|
if (enabled.has(name))
|
|
260
281
|
throw new Error(`${field} contains duplicate A2A agent '${name}'.`);
|
|
261
282
|
enabled.add(name);
|
|
@@ -283,6 +304,11 @@ export const hostedAgentConfiguration = (environ = process.env) => {
|
|
|
283
304
|
throw new Error("PLURNK_A2A_PROVIDER_ORGANIZATION and PLURNK_A2A_PROVIDER_URL must be set together.");
|
|
284
305
|
}
|
|
285
306
|
const endpointUrl = optionalUrl(environ.PLURNK_A2A_ENDPOINT_URL, "PLURNK_A2A_ENDPOINT_URL");
|
|
307
|
+
// {§operator-config-only-home} — an absent key is a broken floor, never a silent "no
|
|
308
|
+
// authentication": only the panel's own empty value may say that the exposure is open.
|
|
309
|
+
const token = environ.PLURNK_A2A_TOKEN;
|
|
310
|
+
if (token === undefined)
|
|
311
|
+
throw new Error("PLURNK_A2A_TOKEN is missing from the assembled environment floor.");
|
|
286
312
|
const documentationUrl = optionalUrl(environ.PLURNK_A2A_DOCUMENTATION_URL, "PLURNK_A2A_DOCUMENTATION_URL");
|
|
287
313
|
const iconUrl = optionalUrl(environ.PLURNK_A2A_ICON_URL, "PLURNK_A2A_ICON_URL");
|
|
288
314
|
const card = AgentCard.fromJSON({
|
|
@@ -317,14 +343,14 @@ export const hostedAgentConfiguration = (environ = process.env) => {
|
|
|
317
343
|
...(iconUrl === undefined ? {} : { iconUrl }),
|
|
318
344
|
});
|
|
319
345
|
return {
|
|
320
|
-
|
|
321
|
-
port: listenerPort(environ.PLURNK_A2A_PORT),
|
|
346
|
+
token,
|
|
322
347
|
endpointPath,
|
|
323
348
|
...(endpointUrl === undefined ? {} : { endpointUrl }),
|
|
324
349
|
workspace: {
|
|
325
350
|
name: required(environ, "PLURNK_A2A_WORKSPACE"),
|
|
326
351
|
projectRoot: projectRoot === undefined || projectRoot.length === 0 ? null : projectRoot,
|
|
327
352
|
},
|
|
353
|
+
proposals: hostedProposals(required(environ, "PLURNK_A2A_PROPOSALS")),
|
|
328
354
|
card,
|
|
329
355
|
};
|
|
330
356
|
};
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ export { default as A2a, type A2aClientResolver } from "./A2a.ts";
|
|
|
2
2
|
export { default as A2aMessage, type A2aMessageIdentity } from "./A2aMessage.ts";
|
|
3
3
|
export { default as A2aProjection, type A2aTaskContent } from "./A2aProjection.ts";
|
|
4
4
|
export { connectHttpJsonAgent, connectHttpJsonAgentFromCard, discoverAgentCard, type HttpJsonConnectionOptions } from "./HttpJsonClient.ts";
|
|
5
|
-
export { default as A2aFunctionality,
|
|
5
|
+
export { default as A2aFunctionality, A2A_FAMILY, A2A_OWNER, aliasOfCard, renderAgent } from "./Functionality.ts";
|
|
6
6
|
export { default as OutboundModule } from "./OutboundModule.ts";
|
|
7
7
|
export { default as Module, type A2aModuleOptions, type A2aModuleRegistration } from "./Module.ts";
|
|
8
8
|
export type { A2aWorkspaceConfiguration } from "./WorkspaceBinding.ts";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,KAAK,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,iBAAiB,EAAE,KAAK,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAC5I,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,KAAK,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,iBAAiB,EAAE,KAAK,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAC5I,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAClH,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,KAAK,gBAAgB,EAAE,KAAK,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACnG,YAAY,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EACH,gBAAgB,EAChB,wBAAwB,EACxB,uBAAuB,EACvB,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,GAC/B,MAAM,aAAa,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -2,7 +2,7 @@ export { default as A2a } from "./A2a.js";
|
|
|
2
2
|
export { default as A2aMessage } from "./A2aMessage.js";
|
|
3
3
|
export { default as A2aProjection } from "./A2aProjection.js";
|
|
4
4
|
export { connectHttpJsonAgent, connectHttpJsonAgentFromCard, discoverAgentCard } from "./HttpJsonClient.js";
|
|
5
|
-
export { default as A2aFunctionality,
|
|
5
|
+
export { default as A2aFunctionality, A2A_FAMILY, A2A_OWNER, aliasOfCard, renderAgent } from "./Functionality.js";
|
|
6
6
|
export { default as OutboundModule } from "./OutboundModule.js";
|
|
7
7
|
export { default as Module } from "./Module.js";
|
|
8
8
|
export { connectTimeoutMs, hostedAgentConfiguration, outboundAgentDefinition, outboundAgentNames, outboundDefinitions, requestTimeoutMs, serviceEnabledNames, } from "./config.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,GAAG,EAA0B,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,UAAU,EAA2B,MAAM,iBAAiB,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAuB,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,iBAAiB,EAAkC,MAAM,qBAAqB,CAAC;AAC5I,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,GAAG,EAA0B,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,UAAU,EAA2B,MAAM,iBAAiB,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAuB,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,iBAAiB,EAAkC,MAAM,qBAAqB,CAAC;AAC5I,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAClH,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,MAAM,EAAqD,MAAM,aAAa,CAAC;AAEnG,OAAO,EACH,gBAAgB,EAChB,wBAAwB,EACxB,uBAAuB,EACvB,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,GAGtB,MAAM,aAAa,CAAC"}
|
package/docs/a2a.md
CHANGED
|
@@ -1,22 +1,61 @@
|
|
|
1
|
-
#
|
|
1
|
+
# a2a
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
An A2A agent is another agent reachable over HTTP that advertises an Agent
|
|
4
|
+
Card. Once added, it is addressed as `a2a://<alias>` and worked like a worker
|
|
5
|
+
you cannot see inside: `SEND` it a task, wait for its result, `READ` what it
|
|
6
|
+
returned. It is not a tool with a schema; it is a peer that takes instructions
|
|
7
|
+
in prose.
|
|
4
8
|
|
|
5
|
-
|
|
6
|
-
Artifacts as addressable Plurnk resources.
|
|
9
|
+
## When to reach for an agent
|
|
7
10
|
|
|
8
|
-
|
|
11
|
+
- The user names an agent, or the turn-0 catalog lists an enabled one whose
|
|
12
|
+
card describes the job at hand. `READ (a2a://<alias>)` shows its card and
|
|
13
|
+
skills before you commit work to it.
|
|
14
|
+
- Delegation you could do yourself with a worker (`WORK`) stays a worker:
|
|
15
|
+
an agent is for capability that lives elsewhere.
|
|
9
16
|
|
|
10
|
-
|
|
11
|
-
|
|
17
|
+
## discover, then add
|
|
18
|
+
|
|
19
|
+
`discover` takes `{"source": "<agent base URL>"}`, fetches the Agent Card, and
|
|
20
|
+
returns one inert candidate carrying the exact definition. `add` persists and
|
|
21
|
+
enables it for this workspace (a host effect, run on acceptance):
|
|
22
|
+
|
|
23
|
+
````a2a (add)
|
|
24
|
+
{"alias": "planner", "definition": {"name": "planner", "url": "https://agents.example.com/planner"}}
|
|
25
|
+
````
|
|
26
|
+
|
|
27
|
+
Authentication is the definition's business (headers or a token the operator
|
|
28
|
+
configured), never something you type into a body. An agent whose card is
|
|
29
|
+
unreachable is listed `unavailable` with its exact Problem. `disable` and
|
|
30
|
+
`remove` follow the family lifecycle; operator-configured agents
|
|
31
|
+
(`PLURNK_A2A_*`) can only be disabled.
|
|
32
|
+
|
|
33
|
+
## Working with an added agent
|
|
34
|
+
|
|
35
|
+
````SEND (a2a://planner) <!-- start a task -->
|
|
36
|
+
Compare the two proposals in docs/ and return a recommendation with evidence.
|
|
12
37
|
````
|
|
13
38
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
39
|
+
A task answers `102` with its `a2a://planner/tasks/<id>` resource and wakes
|
|
40
|
+
your next turn when it concludes; a direct message answers `200` with an
|
|
41
|
+
`a2a://planner/messages/<id>` resource. `READ` the task for its status,
|
|
42
|
+
artifacts, and any input it requests; `SEND` to the task resource to continue
|
|
43
|
+
it; `KILL` it to cancel, which also asks the remote agent to stop.
|
|
44
|
+
|
|
45
|
+
A task resource defaults to a concise `#body` and keeps the protocol snapshot
|
|
46
|
+
in `#json`. Its Artifacts and binary Parts are retained as linked resources;
|
|
47
|
+
`READ` a link to inspect its content. Supplied URLs are not fetched on arrival.
|
|
48
|
+
|
|
49
|
+
## Attachments
|
|
50
|
+
|
|
51
|
+
````SEND (a2a://planner) [{"attachments":["report.pdf","data/results.json"]}]
|
|
52
|
+
Review these results.
|
|
53
|
+
````
|
|
18
54
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
55
|
+
Select exact resource paths or channels. SEND captures their current bytes;
|
|
56
|
+
creating or reading a file alone never sends it. A missing source fails the
|
|
57
|
+
SEND before delivery. To answer an incoming A2A request with files, omit the
|
|
58
|
+
target and use the same attachment option. The caller receives standard
|
|
59
|
+
Artifacts. Incoming files arrive as ordinary resource links; READ them normally.
|
|
60
|
+
Incoming response-format preferences appear beside the message when supplied.
|
|
61
|
+
Attachment media types remain those of the selected resources.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plurnk/plurnk-a2a",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.19.0",
|
|
4
4
|
"description": "A2A v1 exterior adapter for Plurnk",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -30,8 +30,8 @@
|
|
|
30
30
|
"scripts": {
|
|
31
31
|
"test": "npm run test:lint && npm run test:unit && npm run test:intg",
|
|
32
32
|
"test:lint": "tsc --noEmit",
|
|
33
|
-
"test:unit": "node --conditions=plurnk-dev --test src/*.test.ts",
|
|
34
|
-
"test:intg": "node --conditions=plurnk-dev --test test/intg/*.test.ts",
|
|
33
|
+
"test:unit": "node --conditions=plurnk-dev --env-file=.env.defaults --test src/*.test.ts",
|
|
34
|
+
"test:intg": "node --conditions=plurnk-dev --env-file=.env.defaults --test test/intg/*.test.ts",
|
|
35
35
|
"build:clean": "rm -rf dist",
|
|
36
36
|
"build:dist": "tsc -p tsconfig.build.json",
|
|
37
37
|
"build": "npm run build:clean && npm run build:dist",
|
|
@@ -39,12 +39,12 @@
|
|
|
39
39
|
"prepublishOnly": "npm audit --audit-level=moderate && npm test"
|
|
40
40
|
},
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"@a2a-js/sdk": "1.
|
|
42
|
+
"@a2a-js/sdk": "1.2.0",
|
|
43
43
|
"express": "5.2.1"
|
|
44
44
|
},
|
|
45
45
|
"peerDependencies": {
|
|
46
|
-
"@plurnk/plurnk-contracts": "^1.
|
|
47
|
-
"@plurnk/plurnk-schemes": "^1.
|
|
46
|
+
"@plurnk/plurnk-contracts": "^1.19.0",
|
|
47
|
+
"@plurnk/plurnk-schemes": "^1.19.0"
|
|
48
48
|
},
|
|
49
49
|
"devDependencies": {
|
|
50
50
|
"@types/express": "5.0.6"
|
package/docs/agents.md
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
# agents
|
|
2
|
-
|
|
3
|
-
An A2A agent is another agent reachable over HTTP that advertises an Agent
|
|
4
|
-
Card. Once added, it is addressed as `a2a://<alias>` and worked like a worker
|
|
5
|
-
you cannot see inside: `SEND` it a task, wait for its result, `READ` what it
|
|
6
|
-
returned. It is not a tool with a schema; it is a peer that takes instructions
|
|
7
|
-
in prose.
|
|
8
|
-
|
|
9
|
-
## When to reach for an agent
|
|
10
|
-
|
|
11
|
-
- The user names an agent, or the turn-0 catalog lists an enabled one whose
|
|
12
|
-
card describes the job at hand. `READ (a2a://<alias>)` shows its card and
|
|
13
|
-
skills before you commit work to it.
|
|
14
|
-
- Delegation you could do yourself with a worker (`WORK`) stays a worker:
|
|
15
|
-
an agent is for capability that lives elsewhere.
|
|
16
|
-
|
|
17
|
-
## discover, then add
|
|
18
|
-
|
|
19
|
-
`discover` takes `{"source": "<agent base URL>"}`, fetches the Agent Card, and
|
|
20
|
-
returns one inert candidate carrying the exact definition. `add` persists and
|
|
21
|
-
enables it for this workspace (a host effect, run on acceptance):
|
|
22
|
-
|
|
23
|
-
````agents (add)
|
|
24
|
-
{"alias": "planner", "definition": {"name": "planner", "url": "https://agents.example.com/planner"}}
|
|
25
|
-
````
|
|
26
|
-
|
|
27
|
-
Authentication is the definition's business (headers or a token the operator
|
|
28
|
-
configured), never something you type into a body. An agent whose card is
|
|
29
|
-
unreachable is listed `unavailable` with its exact Problem.
|
|
30
|
-
|
|
31
|
-
## Working with an added agent
|
|
32
|
-
|
|
33
|
-
````SEND (a2a://planner) <!-- start a task -->
|
|
34
|
-
Compare the two proposals in docs/ and return a recommendation with evidence.
|
|
35
|
-
````
|
|
36
|
-
|
|
37
|
-
A task answers `102` with its `a2a://planner/tasks/<id>` resource and wakes
|
|
38
|
-
your next turn when it concludes; a direct message answers `200` with an
|
|
39
|
-
`a2a://planner/messages/<id>` resource. `READ` the task for its status,
|
|
40
|
-
artifacts, and any input it requests; `SEND` to the task resource to continue
|
|
41
|
-
it; `KILL` it to cancel. `disable` and `remove` follow the family lifecycle;
|
|
42
|
-
operator-configured agents (`PLURNK_A2A_*`) can only be disabled.
|