@jini-ai/agent-plugins 0.6.12 → 0.6.15-rc.1
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/CHANGELOG.md +14 -0
- package/dist/admin-surfaces/action-schema.d.ts +2 -55
- package/dist/admin-surfaces/action-schema.d.ts.map +1 -1
- package/dist/admin-surfaces/action-schema.js +2 -166
- package/dist/admin-surfaces/action-schema.js.map +1 -1
- package/dist/admin-surfaces/action-tools.d.ts +6 -0
- package/dist/admin-surfaces/action-tools.d.ts.map +1 -1
- package/dist/admin-surfaces/action-tools.js +4 -2
- package/dist/admin-surfaces/action-tools.js.map +1 -1
- package/dist/admin-surfaces/surface-capabilities.d.ts +8 -4
- package/dist/admin-surfaces/surface-capabilities.d.ts.map +1 -1
- package/dist/admin-surfaces/surface-capabilities.js +8 -6
- package/dist/admin-surfaces/surface-capabilities.js.map +1 -1
- package/dist/admin-surfaces/surface-handlers.d.ts +6 -2
- package/dist/admin-surfaces/surface-handlers.d.ts.map +1 -1
- package/dist/admin-surfaces/surface-handlers.js +8 -16
- package/dist/admin-surfaces/surface-handlers.js.map +1 -1
- package/dist/contracts/admin-surface-action-schema.d.ts +56 -0
- package/dist/contracts/admin-surface-action-schema.d.ts.map +1 -0
- package/dist/contracts/admin-surface-action-schema.js +167 -0
- package/dist/contracts/admin-surface-action-schema.js.map +1 -0
- package/dist/lifecycle/activation.d.ts +7 -0
- package/dist/lifecycle/activation.d.ts.map +1 -1
- package/dist/lifecycle/activation.js +29 -1
- package/dist/lifecycle/activation.js.map +1 -1
- package/dist/lifecycle/automatic-use.d.ts +8 -4
- package/dist/lifecycle/automatic-use.d.ts.map +1 -1
- package/dist/lifecycle/automatic-use.js +46 -16
- package/dist/lifecycle/automatic-use.js.map +1 -1
- package/dist/lifecycle/bundled-source-archive.d.ts +25 -2
- package/dist/lifecycle/bundled-source-archive.d.ts.map +1 -1
- package/dist/lifecycle/bundled-source-archive.js +165 -15
- package/dist/lifecycle/bundled-source-archive.js.map +1 -1
- package/dist/lifecycle/exports.d.ts +51 -0
- package/dist/lifecycle/exports.d.ts.map +1 -0
- package/dist/lifecycle/exports.js +96 -0
- package/dist/lifecycle/exports.js.map +1 -0
- package/dist/lifecycle/index.d.ts +18 -11
- package/dist/lifecycle/index.d.ts.map +1 -1
- package/dist/lifecycle/index.js +4 -2
- package/dist/lifecycle/index.js.map +1 -1
- package/dist/lifecycle/installed-package-index.d.ts.map +1 -1
- package/dist/lifecycle/installed-package-index.js +6 -2
- package/dist/lifecycle/installed-package-index.js.map +1 -1
- package/dist/lifecycle/manifest.d.ts +3 -1
- package/dist/lifecycle/manifest.d.ts.map +1 -1
- package/dist/lifecycle/manifest.js +7 -0
- package/dist/lifecycle/manifest.js.map +1 -1
- package/dist/lifecycle/ports.d.ts +13 -3
- package/dist/lifecycle/ports.d.ts.map +1 -1
- package/dist/lifecycle/resolve-agent-plugin-refs.d.ts +11 -0
- package/dist/lifecycle/resolve-agent-plugin-refs.d.ts.map +1 -1
- package/dist/lifecycle/resolve-agent-plugin-refs.js +38 -16
- package/dist/lifecycle/resolve-agent-plugin-refs.js.map +1 -1
- package/dist/lifecycle/search-projection.d.ts +34 -0
- package/dist/lifecycle/search-projection.d.ts.map +1 -0
- package/dist/lifecycle/search-projection.js +53 -0
- package/dist/lifecycle/search-projection.js.map +1 -0
- package/dist/lifecycle/search.js.map +1 -1
- package/dist/lifecycle/seed-bundled.d.ts +10 -1
- package/dist/lifecycle/seed-bundled.d.ts.map +1 -1
- package/dist/lifecycle/seed-bundled.js +7 -5
- package/dist/lifecycle/seed-bundled.js.map +1 -1
- package/dist/lifecycle/set-enabled.d.ts +3 -1
- package/dist/lifecycle/set-enabled.d.ts.map +1 -1
- package/dist/lifecycle/set-enabled.js +34 -13
- package/dist/lifecycle/set-enabled.js.map +1 -1
- package/dist/lifecycle/tools/capabilities.d.ts +51 -11
- package/dist/lifecycle/tools/capabilities.d.ts.map +1 -1
- package/dist/lifecycle/tools/capabilities.js +67 -15
- package/dist/lifecycle/tools/capabilities.js.map +1 -1
- package/dist/lifecycle/tools/projection.d.ts +5 -1
- package/dist/lifecycle/tools/projection.d.ts.map +1 -1
- package/dist/lifecycle/tools/projection.js +23 -13
- package/dist/lifecycle/tools/projection.js.map +1 -1
- package/dist/lifecycle/types.d.ts +2 -1
- package/dist/lifecycle/types.d.ts.map +1 -1
- package/dist/lifecycle/uninstall.d.ts.map +1 -1
- package/dist/lifecycle/uninstall.js +4 -0
- package/dist/lifecycle/uninstall.js.map +1 -1
- package/package.json +6 -6
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export const DEFAULT_CHAT_AGENT_PLUGINS = 'auto';
|
|
2
|
+
const MAX_AUTOMATIC_GUIDANCE_BYTES = 8 * 1024;
|
|
2
3
|
/** Use the same one-line metadata reason in consent and progressive disclosure. */
|
|
3
4
|
function describeMatch({ plugin }, _options = {}) {
|
|
4
5
|
return { id: plugin.pluginId, name: (plugin.displayName ?? plugin.pluginId).replace(/\s+/g, ' '),
|
|
@@ -9,11 +10,11 @@ function describeMatch({ plugin }, _options = {}) {
|
|
|
9
10
|
* @returns A bounded note in relevance order, with discovery for every omitted match.
|
|
10
11
|
* @complexity O(p) metadata formatting; output is bounded independently of plugin count.
|
|
11
12
|
*/
|
|
12
|
-
function relevantPluginNote({ matches }, _options = {}) {
|
|
13
|
+
function relevantPluginNote({ matches, formatPluginToolPointer }, _options = {}) {
|
|
13
14
|
if (!matches.length)
|
|
14
15
|
return '';
|
|
15
16
|
const header = 'Relevant agent plugins for this request:\n';
|
|
16
|
-
const footer =
|
|
17
|
+
const footer = formatPluginToolPointer ? `\nLoad one with ${formatPluginToolPointer({ pluginId: '<pluginId>', file: 'SKILL.md' })} before acting on that part.` : '';
|
|
17
18
|
const more = (remaining) => remaining ? `\n+${remaining} more relevant: search_agent_plugin_local({ query: <same request>, offset: 0 }); page with nextOffset` : '';
|
|
18
19
|
const lines = [];
|
|
19
20
|
const bytes = (text) => new TextEncoder().encode(text).length;
|
|
@@ -85,19 +86,19 @@ export function createAutomaticAgentPluginUse({ mode, state: initialState, ports
|
|
|
85
86
|
// Consent changes only this person's preference, never a workspace default.
|
|
86
87
|
return matches.filter(plugin => selected.includes(plugin.pluginId));
|
|
87
88
|
}
|
|
88
|
-
/** Resolve through the host's activation/trust owner; only
|
|
89
|
-
*
|
|
89
|
+
/** Resolve through the host's activation/trust owner; delivery is recorded only by the caller.
|
|
90
|
+
* Explicit content requests retain safe resolver refusals so the model can correct its request;
|
|
91
|
+
* thrown host diagnostics remain private. Failures stay retryable. O(1) bookkeeping.
|
|
90
92
|
*/
|
|
91
|
-
async function resolveOneGuidance({ plugin }, { signal } = {}) {
|
|
93
|
+
async function resolveOneGuidance({ plugin, ...request }, { signal } = {}) {
|
|
92
94
|
if (signal?.aborted)
|
|
93
95
|
return { status: 'cancelled', guidance: '' };
|
|
94
96
|
try {
|
|
95
|
-
const result = await ports.resolve({ pluginId: plugin.pluginId }, {});
|
|
97
|
+
const result = await ports.resolve({ pluginId: plugin.pluginId, ...request }, {});
|
|
96
98
|
if (!result.ok)
|
|
97
|
-
return { status: result.code ?? 'unavailable', guidance: '' };
|
|
99
|
+
return { status: result.code ?? 'unavailable', guidance: request.skill !== undefined || request.file !== undefined ? result.reason : '' };
|
|
98
100
|
if (!result.promptPrefix.trim())
|
|
99
101
|
return { status: 'unavailable', guidance: '' };
|
|
100
|
-
delivered.set(plugin.pluginId, plugin.displayName ?? plugin.pluginId);
|
|
101
102
|
return { status: 'loaded', guidance: result.promptPrefix };
|
|
102
103
|
}
|
|
103
104
|
catch {
|
|
@@ -105,14 +106,30 @@ export function createAutomaticAgentPluginUse({ mode, state: initialState, ports
|
|
|
105
106
|
return { status: 'unavailable', guidance: '' };
|
|
106
107
|
}
|
|
107
108
|
}
|
|
109
|
+
/** Only complete primary guidance updates the loaded set. O(1), no host effects. */
|
|
110
|
+
function recordDelivery({ plugin, result }, _options = {}) {
|
|
111
|
+
if (result.status === 'loaded')
|
|
112
|
+
delivered.set(plugin.pluginId, plugin.displayName ?? plugin.pluginId);
|
|
113
|
+
}
|
|
114
|
+
/** Bound automatic attachments before recording delivery; explicit loads retain complete text.
|
|
115
|
+
* O(p*b) in resolved plugins and guidance bytes; a deferred plugin remains retryable.
|
|
116
|
+
*/
|
|
108
117
|
async function resolveGuidance({ matches }, { signal } = {}) {
|
|
109
118
|
const guidance = [];
|
|
110
119
|
for (const match of matches) {
|
|
111
120
|
if (signal?.aborted)
|
|
112
121
|
break;
|
|
113
122
|
const result = await resolveOneGuidance({ plugin: match }, { signal });
|
|
114
|
-
if (result.status
|
|
115
|
-
|
|
123
|
+
if (result.status !== 'loaded')
|
|
124
|
+
continue;
|
|
125
|
+
if (new TextEncoder().encode(result.guidance).length > MAX_AUTOMATIC_GUIDANCE_BYTES) {
|
|
126
|
+
const pointer = ports.formatPluginToolPointer?.({ pluginId: match.pluginId, skill: match.pluginId, file: 'SKILL.md' });
|
|
127
|
+
const howToLoad = pointer === undefined ? '' : ` Load the full instructions with ${pointer}; use the same call with file '<relative path>' for supporting references.`;
|
|
128
|
+
guidance.push(`Agent Plugin '${match.pluginId}' guidance is deferred because it exceeds the automatic byte limit.${howToLoad}`);
|
|
129
|
+
continue;
|
|
130
|
+
}
|
|
131
|
+
recordDelivery({ plugin: match, result });
|
|
132
|
+
guidance.push(result.guidance);
|
|
116
133
|
}
|
|
117
134
|
return guidance;
|
|
118
135
|
}
|
|
@@ -140,7 +157,7 @@ export function createAutomaticAgentPluginUse({ mode, state: initialState, ports
|
|
|
140
157
|
/** Query preflight suggests; only a guarded capability resolves guidance here.
|
|
141
158
|
* Effects serialize with loads so a suggestion never consumes a backstop's delivery.
|
|
142
159
|
*/
|
|
143
|
-
async function prepare(input) {
|
|
160
|
+
async function prepare(input, _options = {}) {
|
|
144
161
|
if (mode === 'off' || input.signal?.aborted)
|
|
145
162
|
return '';
|
|
146
163
|
for (const id of input.loaded ?? [])
|
|
@@ -152,7 +169,7 @@ export function createAutomaticAgentPluginUse({ mode, state: initialState, ports
|
|
|
152
169
|
const matches = await applyConsent({ matches: relevant }, { signal: input.signal });
|
|
153
170
|
// Relevance is disclosure, never evidence that the model has read any guidance.
|
|
154
171
|
const shouldLoad = !!input.capabilities?.length;
|
|
155
|
-
const result = shouldLoad ? (await resolveGuidance({ matches }, { signal: input.signal })).join('\n\n') : relevantPluginNote({ matches });
|
|
172
|
+
const result = shouldLoad ? (await resolveGuidance({ matches }, { signal: input.signal })).join('\n\n') : relevantPluginNote({ matches, formatPluginToolPointer: ports.formatPluginToolPointer });
|
|
156
173
|
rememberAutoSelection();
|
|
157
174
|
await publishUsage();
|
|
158
175
|
return result;
|
|
@@ -160,7 +177,7 @@ export function createAutomaticAgentPluginUse({ mode, state: initialState, ports
|
|
|
160
177
|
/** Admit one explicit id using the same catalog, consent, resolver and delivery state as prepare.
|
|
161
178
|
* No activation writes; unavailable guidance is retryable. O(p) local catalog lookup.
|
|
162
179
|
*/
|
|
163
|
-
async function load({ pluginId, signal }, _options = {}) {
|
|
180
|
+
async function load({ pluginId, signal, ...request }, _options = {}) {
|
|
164
181
|
if (mode === 'off')
|
|
165
182
|
return { status: 'off', guidance: '' };
|
|
166
183
|
if (signal?.aborted)
|
|
@@ -172,14 +189,27 @@ export function createAutomaticAgentPluginUse({ mode, state: initialState, ports
|
|
|
172
189
|
return { status: 'missing', guidance: '' };
|
|
173
190
|
if (!plugin.enabled)
|
|
174
191
|
return { status: 'installed-but-inactive', guidance: '' };
|
|
175
|
-
|
|
192
|
+
return loadPermitted({ plugin, ...request }, { signal });
|
|
193
|
+
}
|
|
194
|
+
/** The plugin's own SKILL.md, whether defaulted or named explicitly. O(1). */
|
|
195
|
+
function isPrimaryInstructions({ pluginId, skill, file }, _options = {}) {
|
|
196
|
+
return (skill === undefined || skill === pluginId) && (file === undefined || file === 'SKILL.md');
|
|
197
|
+
}
|
|
198
|
+
/** Requested content bypasses only deduplication, never consent or the resolver's trust checks.
|
|
199
|
+
* Only the primary SKILL.md records full plugin delivery. O(p) consent filtering plus one read.
|
|
200
|
+
*/
|
|
201
|
+
async function loadPermitted({ plugin, ...request }, { signal } = {}) {
|
|
202
|
+
const requestedContent = request.skill !== undefined || request.file !== undefined;
|
|
203
|
+
if (!requestedContent && (delivered.has(plugin.pluginId) || alreadyLoaded.has(plugin.pluginId)))
|
|
176
204
|
return { status: 'already-loaded', guidance: '' };
|
|
177
205
|
const matches = await applyConsent({ matches: [{ ...plugin, score: 4 }] }, { signal });
|
|
178
206
|
if (!matches.length) {
|
|
179
207
|
await publishUsage();
|
|
180
208
|
return { status: 'excluded', guidance: '' };
|
|
181
209
|
}
|
|
182
|
-
const result = await resolveOneGuidance({ plugin }, { signal });
|
|
210
|
+
const result = await resolveOneGuidance({ plugin, ...request }, { signal });
|
|
211
|
+
if (isPrimaryInstructions({ pluginId: plugin.pluginId, ...request }))
|
|
212
|
+
recordDelivery({ plugin, result });
|
|
183
213
|
rememberAutoSelection();
|
|
184
214
|
await publishUsage();
|
|
185
215
|
return result;
|
|
@@ -194,7 +224,7 @@ export function createAutomaticAgentPluginUse({ mode, state: initialState, ports
|
|
|
194
224
|
/** Suggest relevant metadata for a query; capability calls load only their providers. */
|
|
195
225
|
prepare: (input, _options = {}) => enqueue({ operation: () => prepare(input) }),
|
|
196
226
|
/** Resolve one active, permitted id and publish usage only after real guidance is read.
|
|
197
|
-
* Returns a concrete status
|
|
227
|
+
* Returns a concrete status and delivered content or a safe explicit-request refusal.
|
|
198
228
|
* @example await controller.load({ pluginId: 'my-plugin' });
|
|
199
229
|
*/
|
|
200
230
|
load: (input, _options = {}) => enqueue({ operation: () => load(input) }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"automatic-use.js","sourceRoot":"","sources":["../../src/lifecycle/automatic-use.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"automatic-use.js","sourceRoot":"","sources":["../../src/lifecycle/automatic-use.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,39 @@
|
|
|
1
1
|
import type { AgentPluginArchiveReaderPort } from "./install.js";
|
|
2
2
|
import type { AgentPluginLifecyclePorts } from "./ports.js";
|
|
3
3
|
export interface PackedAgentPluginArchive {
|
|
4
|
+
/** Bundled archive bytes, or a 32-byte canonical token requiring the paired archiveReader. */
|
|
4
5
|
readonly bytes: Uint8Array;
|
|
5
6
|
/** Lowercase hex SHA-256 of {@link bytes} — passed straight to `installAgentPlugin`'s
|
|
6
7
|
* `expectedSha256`, which recomputes and compares it rather than trusting it. */
|
|
7
8
|
readonly sha256: string;
|
|
8
|
-
/** Package-relative POSIX paths included, sorted — the
|
|
9
|
+
/** Package-relative POSIX paths included, sorted — the bundled-v1 encoding uses this order. */
|
|
9
10
|
readonly files: readonly string[];
|
|
11
|
+
/** Paired snapshot reader for canonical-files-v1 tokens; absent for bundled-v1. */
|
|
12
|
+
readonly archiveReader?: AgentPluginArchiveReaderPort;
|
|
13
|
+
}
|
|
14
|
+
/** Opt-in source selection, resource bounds and archive identity. Omission preserves bundled-v1. */
|
|
15
|
+
export interface PackAgentPluginDirectoryOptional {
|
|
16
|
+
/** Exact package-relative files or directory subtrees. Empty selects nothing; exclusions win. */
|
|
17
|
+
readonly allowPaths?: readonly string[];
|
|
18
|
+
/** Entry basenames excluded at every depth, before entering directories. */
|
|
19
|
+
readonly excludeNames?: readonly string[];
|
|
20
|
+
/** Nonnegative safe integers; root depth is zero. Supplied bounds fail rather than truncate. */
|
|
21
|
+
readonly limits?: {
|
|
22
|
+
readonly maxEntries: number;
|
|
23
|
+
readonly maxDepth: number;
|
|
24
|
+
readonly maxFiles: number;
|
|
25
|
+
readonly maxFileBytes: number;
|
|
26
|
+
readonly maxTotalBytes: number;
|
|
27
|
+
readonly maxArchiveBytes: number;
|
|
28
|
+
};
|
|
29
|
+
readonly symlinkPolicy?: 'skip' | 'reject';
|
|
30
|
+
readonly specialFilePolicy?: 'skip' | 'reject';
|
|
31
|
+
/** canonical-files-v1 returns a digest token and a reader bound to the captured source snapshot. */
|
|
32
|
+
readonly digestEncoding?: 'bundled-v1' | 'canonical-files-v1';
|
|
10
33
|
}
|
|
11
34
|
/** Internal composition; one state/queue instance per injected host context. */
|
|
12
35
|
export declare function createBundledSourceArchiveModule(ports: AgentPluginLifecyclePorts): {
|
|
13
|
-
packAgentPluginDirectory: (sourceDir: string) => Promise<PackedAgentPluginArchive>;
|
|
36
|
+
packAgentPluginDirectory: (sourceDir: string, options?: PackAgentPluginDirectoryOptional) => Promise<PackedAgentPluginArchive>;
|
|
14
37
|
createBundledSourceArchiveReader: () => AgentPluginArchiveReaderPort;
|
|
15
38
|
};
|
|
16
39
|
//# sourceMappingURL=bundled-source-archive.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundled-source-archive.d.ts","sourceRoot":"","sources":["../../src/lifecycle/bundled-source-archive.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"bundled-source-archive.d.ts","sourceRoot":"","sources":["../../src/lifecycle/bundled-source-archive.ts"],"names":[],"mappings":"AA+CA,OAAO,KAAK,EAA2B,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAC1F,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAE5D,MAAM,WAAW,wBAAwB;IACvC,8FAA8F;IAC9F,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAE3B;sFACkF;IAClF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,+FAA+F;IAC/F,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,mFAAmF;IACnF,QAAQ,CAAC,aAAa,CAAC,EAAE,4BAA4B,CAAC;CACvD;AAED,oGAAoG;AACpG,MAAM,WAAW,gCAAgC;IAC/C,iGAAiG;IACjG,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,4EAA4E;IAC5E,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,gGAAgG;IAChG,QAAQ,CAAC,MAAM,CAAC,EAAE;QAChB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;QAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;QAC/B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;KAClC,CAAC;IACF,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC3C,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC/C,oGAAoG;IACpG,QAAQ,CAAC,cAAc,CAAC,EAAE,YAAY,GAAG,oBAAoB,CAAC;CAC/D;AAsSD,gFAAgF;AAChF,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,yBAAyB;0CApQ5B,MAAM,YAAW,gCAAgC,KAAQ,OAAO,CAAC,wBAAwB,CAAC;4CA2JhG,4BAA4B;EA6G1E"}
|
|
@@ -42,42 +42,164 @@
|
|
|
42
42
|
* comes from here. */
|
|
43
43
|
/** Extracted from the host plugin lifecycle. Effects are supplied per host context. */
|
|
44
44
|
import { createHash } from "node:crypto";
|
|
45
|
+
import { constants } from "node:fs";
|
|
45
46
|
import path from "node:path";
|
|
47
|
+
import { createPackagePathsModule } from "./package-paths.js";
|
|
46
48
|
function buildModule(ports) {
|
|
47
49
|
const readdir = ports.filesystem.readdir.bind(ports.filesystem);
|
|
48
50
|
const readFile = ports.filesystem.readFile.bind(ports.filesystem);
|
|
49
51
|
const MAGIC = ports.bundledArchiveMagic;
|
|
50
52
|
const MAX_SOURCE_FILES = 2048;
|
|
53
|
+
const { normalizePackageEntryPath } = createPackagePathsModule(ports);
|
|
51
54
|
/**
|
|
52
|
-
* Serialises
|
|
55
|
+
* Serialises runtime regular files under `sourceDir` into one deterministic archive.
|
|
53
56
|
*
|
|
54
|
-
*
|
|
57
|
+
* By default, symlinks and any other non-regular entry are skipped rather than followed: a bundled package is
|
|
55
58
|
* this repository's own tracked content, so a symlink in it would be a mistake, and following one
|
|
56
59
|
* is the exact vector `install.ts` refuses on the extraction side. Skipping keeps the two sides
|
|
57
60
|
* agreeing instead of producing an archive the installer would then reject.
|
|
61
|
+
* Optional policies can reject these entries; supplied limits bound traversal and handle reads.
|
|
58
62
|
*
|
|
59
63
|
* @throws {Error} If the tree holds more than {@link MAX_SOURCE_FILES} files.
|
|
60
64
|
* @throws Propagates `readdir`/`readFile` errors — a bundled package that cannot be read is a build
|
|
61
65
|
* defect, not a runtime condition to degrade around.
|
|
62
|
-
* @complexity O(f
|
|
63
|
-
* `
|
|
66
|
+
* @complexity O(f log f + b) for sorting f selected files and reading b bytes, plus traversal.
|
|
67
|
+
* Supplied limits bound source I/O; `install.ts` independently retains its extraction ceilings.
|
|
64
68
|
*/
|
|
65
|
-
async function packAgentPluginDirectory(sourceDir) {
|
|
66
|
-
const
|
|
69
|
+
async function packAgentPluginDirectory(sourceDir, options = {}) {
|
|
70
|
+
const state = createPackingState({ options });
|
|
71
|
+
assertPackingLimit({ state, name: 'maxArchiveBytes', value: state.archiveBytes });
|
|
72
|
+
await refuseRoot({ sourceDir, state });
|
|
73
|
+
const relativePaths = (await listRegularFiles({ dir: sourceDir, prefix: '', depth: 0, state })).sort();
|
|
67
74
|
if (relativePaths.length > MAX_SOURCE_FILES) {
|
|
68
75
|
throw new Error(`bundled agent plugin at '${sourceDir}' has ${relativePaths.length} files, over the ${MAX_SOURCE_FILES}-file cap — is this the right directory?`);
|
|
69
76
|
}
|
|
70
77
|
const chunks = [Buffer.from(MAGIC, "utf8")];
|
|
78
|
+
const snapshot = [];
|
|
79
|
+
const canonical = options.digestEncoding === 'canonical-files-v1';
|
|
80
|
+
const digest = createHash('sha256');
|
|
71
81
|
for (const relativePath of relativePaths) {
|
|
72
|
-
const content =
|
|
82
|
+
const content = options.limits
|
|
83
|
+
? await readBoundedFile({ sourceDir, relativePath, state })
|
|
84
|
+
: await readFile(path.join(sourceDir, relativePath));
|
|
73
85
|
const pathBytes = Buffer.from(relativePath, "utf8");
|
|
74
|
-
|
|
86
|
+
if (canonical) {
|
|
87
|
+
digest.update(JSON.stringify([relativePath, content.byteLength]), 'utf8').update(content);
|
|
88
|
+
snapshot.push({ entryPath: relativePath, content });
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
chunks.push(Buffer.from(`F ${pathBytes.byteLength} ${content.byteLength}\n`, "utf8"), pathBytes, content);
|
|
92
|
+
}
|
|
93
|
+
state.totalBytes += content.byteLength;
|
|
94
|
+
if (!canonical)
|
|
95
|
+
state.archiveBytes += encodedFileBytes({ relativePath, fileBytes: content.byteLength });
|
|
75
96
|
}
|
|
76
|
-
const bytes = Buffer.concat(chunks);
|
|
97
|
+
const bytes = canonical ? digest.digest() : Buffer.concat(chunks);
|
|
77
98
|
return {
|
|
78
99
|
bytes: new Uint8Array(bytes),
|
|
79
100
|
sha256: createHash("sha256").update(bytes).digest("hex"),
|
|
80
101
|
files: relativePaths,
|
|
102
|
+
...(canonical ? { archiveReader: createSnapshotReader({ token: bytes, snapshot }) } : {}),
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
/** Validate caller bounds before I/O and normalize selection through the package path owner. */
|
|
106
|
+
function createPackingState({ options }) {
|
|
107
|
+
if (options.limits) {
|
|
108
|
+
for (const name of ['maxEntries', 'maxDepth', 'maxFiles', 'maxFileBytes', 'maxTotalBytes', 'maxArchiveBytes']) {
|
|
109
|
+
const value = options.limits[name];
|
|
110
|
+
if (!Number.isSafeInteger(value) || value < 0)
|
|
111
|
+
throw new Error(`Invalid packing limit ${name}`);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
return {
|
|
115
|
+
options,
|
|
116
|
+
// A directory written as 'dist/' selects the same subtree as 'dist' (normalize already collapsed '//').
|
|
117
|
+
allowPaths: options.allowPaths?.map(value => normalizePackageEntryPath(value).replace(/\/$/, '')),
|
|
118
|
+
excluded: new Set(options.excludeNames ?? []),
|
|
119
|
+
files: new Set(), entries: 0, totalBytes: 0,
|
|
120
|
+
archiveBytes: options.digestEncoding === 'canonical-files-v1' ? 32 : Buffer.byteLength(MAGIC),
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
/** Only a reject policy refuses a non-directory root. Otherwise the root is read as before:
|
|
124
|
+
* readdir follows a symlinked root, so any options object (even all-undefined) keeps legacy output. */
|
|
125
|
+
async function refuseRoot({ sourceDir, state }) {
|
|
126
|
+
if (state.options.symlinkPolicy !== 'reject' && state.options.specialFilePolicy !== 'reject')
|
|
127
|
+
return;
|
|
128
|
+
const stat = await ports.filesystem.lstat(sourceDir);
|
|
129
|
+
if (!stat.isDirectory())
|
|
130
|
+
refuseEntry({ state, entryPath: sourceDir, symlink: stat.isSymbolicLink() });
|
|
131
|
+
}
|
|
132
|
+
function assertPackingLimit({ state, name, value }) {
|
|
133
|
+
const limit = state.options.limits?.[name];
|
|
134
|
+
if (limit !== undefined && value > limit)
|
|
135
|
+
throw new Error(`bundled agent plugin exceeds packing ${name} (${limit})`);
|
|
136
|
+
}
|
|
137
|
+
function encodedFileBytes({ relativePath, fileBytes }) {
|
|
138
|
+
const pathBytes = Buffer.byteLength(relativePath);
|
|
139
|
+
return Buffer.byteLength(`F ${pathBytes} ${fileBytes}\n`) + pathBytes + fileBytes;
|
|
140
|
+
}
|
|
141
|
+
/** Check actual read bytes before retaining a chunk, including the bundled header/path overhead. */
|
|
142
|
+
function checkFileBudget({ state, relativePath, fileBytes }) {
|
|
143
|
+
assertPackingLimit({ state, name: 'maxFileBytes', value: fileBytes });
|
|
144
|
+
assertPackingLimit({ state, name: 'maxTotalBytes', value: state.totalBytes + fileBytes });
|
|
145
|
+
const archiveBytes = state.options.digestEncoding === 'canonical-files-v1'
|
|
146
|
+
? state.archiveBytes : state.archiveBytes + encodedFileBytes({ relativePath, fileBytes });
|
|
147
|
+
assertPackingLimit({ state, name: 'maxArchiveBytes', value: archiveBytes });
|
|
148
|
+
}
|
|
149
|
+
/** Bounded handle reads also detect growing files; every success/failure closes the handle.
|
|
150
|
+
* @throws Propagates filesystem failures and rejects a changed file kind or any exceeded cap.
|
|
151
|
+
* @complexity O(b) bytes read, O(b) captured bytes within the supplied file/total/archive caps. */
|
|
152
|
+
async function readBoundedFile({ sourceDir, relativePath, state }) {
|
|
153
|
+
const { handle, stat } = await openWalkedFile({ target: path.join(sourceDir, relativePath), relativePath });
|
|
154
|
+
try {
|
|
155
|
+
checkFileBudget({ state, relativePath, fileBytes: stat.size });
|
|
156
|
+
const chunks = [];
|
|
157
|
+
let fileBytes = 0;
|
|
158
|
+
for (;;) {
|
|
159
|
+
const limits = state.options.limits;
|
|
160
|
+
const remaining = Math.min(limits.maxFileBytes - fileBytes, limits.maxTotalBytes - state.totalBytes - fileBytes);
|
|
161
|
+
const buffer = Buffer.alloc(Math.min(64 * 1024, remaining + 1));
|
|
162
|
+
const { bytesRead } = await handle.read(buffer, 0, buffer.byteLength, null);
|
|
163
|
+
if (bytesRead === 0)
|
|
164
|
+
return Buffer.concat(chunks, fileBytes);
|
|
165
|
+
fileBytes += bytesRead;
|
|
166
|
+
checkFileBudget({ state, relativePath, fileBytes });
|
|
167
|
+
chunks.push(buffer.subarray(0, bytesRead));
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
finally {
|
|
171
|
+
await handle.close();
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
/** O_NOFOLLOW/O_NONBLOCK do not exist on Windows, so no-follow cannot rest on open flags alone:
|
|
175
|
+
* the opened object must also be the regular file the walk lstat'ed (same dev/ino). A link or file
|
|
176
|
+
* swapped in between is refused, failing closed on every platform. Refusals close the handle. */
|
|
177
|
+
async function openWalkedFile({ target, relativePath }) {
|
|
178
|
+
const walked = await ports.filesystem.lstat(target);
|
|
179
|
+
const handle = await ports.filesystem.open(target, constants.O_RDONLY | (constants.O_NOFOLLOW ?? 0) | (constants.O_NONBLOCK ?? 0));
|
|
180
|
+
try {
|
|
181
|
+
const stat = await handle.stat();
|
|
182
|
+
if (!walked.isFile() || !stat.isFile() || stat.dev !== walked.dev || stat.ino !== walked.ino) {
|
|
183
|
+
throw new Error(`bundled agent plugin source is no longer a regular file: '${relativePath}'`);
|
|
184
|
+
}
|
|
185
|
+
return { handle, stat };
|
|
186
|
+
}
|
|
187
|
+
catch (error) {
|
|
188
|
+
await handle.close();
|
|
189
|
+
throw error;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
/** A token identifies only this snapshot. Copy yielded bytes so a reader cannot mutate later reads. */
|
|
193
|
+
function createSnapshotReader({ token, snapshot }) {
|
|
194
|
+
return {
|
|
195
|
+
async *entries({ archive }) {
|
|
196
|
+
if (!token.equals(archive))
|
|
197
|
+
throw new Error('bundled agent plugin archive: snapshot token mismatch');
|
|
198
|
+
for (const { entryPath, content } of snapshot) {
|
|
199
|
+
yield { kind: 'file', entryPath, declaredSize: content.byteLength,
|
|
200
|
+
openReadStream: () => onceAsyncIterable(new Uint8Array(content)) };
|
|
201
|
+
}
|
|
202
|
+
},
|
|
81
203
|
};
|
|
82
204
|
}
|
|
83
205
|
/**
|
|
@@ -136,25 +258,53 @@ function buildModule(ports) {
|
|
|
136
258
|
yield chunk;
|
|
137
259
|
}
|
|
138
260
|
/**
|
|
139
|
-
* Lists
|
|
261
|
+
* Lists runtime regular files under `dir`, as POSIX-style package-relative paths.
|
|
262
|
+
* Test directories and test/spec files are excluded so test-only edits cannot change installed
|
|
263
|
+
* runtime contents or their content-addressed digest.
|
|
140
264
|
*
|
|
141
|
-
* @complexity O(
|
|
265
|
+
* @complexity O(e * a) selection checks for e enumerated entries and a allowlist paths (one when omitted).
|
|
142
266
|
*/
|
|
143
|
-
async function listRegularFiles(dir, prefix) {
|
|
267
|
+
async function listRegularFiles({ dir, prefix, depth, state }) {
|
|
144
268
|
const entries = await readdir(dir, { withFileTypes: true });
|
|
269
|
+
state.entries += entries.length;
|
|
270
|
+
assertPackingLimit({ state, name: 'maxEntries', value: state.entries });
|
|
145
271
|
const files = [];
|
|
146
272
|
for (const entry of entries) {
|
|
147
273
|
const relative = prefix ? `${prefix}/${entry.name}` : entry.name;
|
|
274
|
+
if (state.excluded.has(entry.name))
|
|
275
|
+
continue;
|
|
276
|
+
if (!selectPath({ relative, directory: entry.isDirectory(), state }))
|
|
277
|
+
continue;
|
|
148
278
|
if (entry.isDirectory()) {
|
|
149
|
-
|
|
279
|
+
if (entry.name === '__tests__')
|
|
280
|
+
continue;
|
|
281
|
+
assertPackingLimit({ state, name: 'maxDepth', value: depth + 1 });
|
|
282
|
+
files.push(...(await listRegularFiles({ dir: path.join(dir, entry.name), prefix: relative, depth: depth + 1, state })));
|
|
150
283
|
}
|
|
151
|
-
else if (entry.isFile()) {
|
|
284
|
+
else if (entry.isFile() && !/\.(test|spec)\./.test(entry.name)) {
|
|
285
|
+
recordFile({ relative, state });
|
|
152
286
|
files.push(relative);
|
|
153
287
|
}
|
|
154
|
-
|
|
288
|
+
else if (!entry.isFile()) {
|
|
289
|
+
refuseEntry({ state, entryPath: relative, symlink: entry.isSymbolicLink() });
|
|
290
|
+
}
|
|
291
|
+
// Symlinks and everything else: skipped by default. See this function's own doc.
|
|
155
292
|
}
|
|
156
293
|
return files;
|
|
157
294
|
}
|
|
295
|
+
function recordFile({ relative, state }) {
|
|
296
|
+
state.files.add(relative);
|
|
297
|
+
assertPackingLimit({ state, name: 'maxFiles', value: state.files.size });
|
|
298
|
+
}
|
|
299
|
+
/** Ancestors of an allowed path must be traversed, but their unrelated siblings are pruned. */
|
|
300
|
+
function selectPath({ relative, directory, state }) {
|
|
301
|
+
return state.allowPaths === undefined || state.allowPaths.some(allowed => relative === allowed || relative.startsWith(`${allowed}/`) || (directory && allowed.startsWith(`${relative}/`)));
|
|
302
|
+
}
|
|
303
|
+
function refuseEntry({ state, entryPath, symlink }) {
|
|
304
|
+
const policy = symlink ? state.options.symlinkPolicy : state.options.specialFilePolicy;
|
|
305
|
+
if (policy === 'reject')
|
|
306
|
+
throw new Error(`bundled agent plugin refuses ${symlink ? 'symlink' : 'special file'} '${entryPath}'`);
|
|
307
|
+
}
|
|
158
308
|
return { packAgentPluginDirectory, createBundledSourceArchiveReader };
|
|
159
309
|
}
|
|
160
310
|
const instances = new WeakMap();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundled-source-archive.js","sourceRoot":"","sources":["../../src/lifecycle/bundled-source-archive.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bundled-source-archive.js","sourceRoot":"","sources":["../../src/lifecycle/bundled-source-archive.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { type AdminSurfaceActionSchema } from '../contracts/admin-surface-action-schema.js';
|
|
2
|
+
/** Matches the CMS consent vocabulary without introducing a dependency on CMS. */
|
|
3
|
+
export type AgentPluginExportConsent = 'necessary' | 'functional' | 'analytics' | 'marketing';
|
|
4
|
+
export type AgentPluginExportStaticMode = 'full' | 'link-only' | 'fallback-only';
|
|
5
|
+
export interface AgentPluginExport {
|
|
6
|
+
readonly template: string;
|
|
7
|
+
readonly props: Extract<AdminSurfaceActionSchema, {
|
|
8
|
+
type: 'object';
|
|
9
|
+
}>;
|
|
10
|
+
readonly consent: AgentPluginExportConsent;
|
|
11
|
+
readonly staticExport: AgentPluginExportStaticMode;
|
|
12
|
+
readonly version: number;
|
|
13
|
+
/** Omitted means version 1; hosts accept minVersion <= marker version <= version. */
|
|
14
|
+
readonly minVersion?: number;
|
|
15
|
+
readonly aliases?: readonly string[];
|
|
16
|
+
/** Slot name -> capability declared by this same plugin's provides list. */
|
|
17
|
+
readonly hostLinks?: Readonly<Record<string, string>>;
|
|
18
|
+
readonly styles?: string;
|
|
19
|
+
readonly assets?: Readonly<Record<string, string>>;
|
|
20
|
+
}
|
|
21
|
+
export interface AgentPluginExportMetadata {
|
|
22
|
+
readonly exports?: Readonly<Record<string, AgentPluginExport>>;
|
|
23
|
+
/** Explicit publisher-qualified old identities; admission and ambiguity are host decisions. */
|
|
24
|
+
readonly renamedFrom?: readonly string[];
|
|
25
|
+
}
|
|
26
|
+
export type ParseAgentPluginExportsResult = {
|
|
27
|
+
readonly ok: true;
|
|
28
|
+
readonly metadata: AgentPluginExportMetadata;
|
|
29
|
+
readonly warnings: readonly string[];
|
|
30
|
+
} | {
|
|
31
|
+
readonly ok: false;
|
|
32
|
+
readonly errors: readonly string[];
|
|
33
|
+
};
|
|
34
|
+
type Entry = Readonly<Record<string, unknown>>;
|
|
35
|
+
/** Parses one namespace's exports; invalid known fields refuse the contract, unknown keys warn.
|
|
36
|
+
* File contents, trust admission, rename ambiguity and rendering remain host responsibilities.
|
|
37
|
+
* @returns Validated metadata or errors, without I/O. @complexity O(e + s + a) export, schema and alias entries.
|
|
38
|
+
*/
|
|
39
|
+
export declare function parseAgentPluginExports({ extension, provides }: {
|
|
40
|
+
readonly extension: Entry;
|
|
41
|
+
readonly provides: readonly string[];
|
|
42
|
+
}, _optional?: Record<string, never>): ParseAgentPluginExportsResult;
|
|
43
|
+
/** Save and render share the existing bounded schema/value policy; messages never echo prop values.
|
|
44
|
+
* @returns First validation reason, or null on success. No side effects. @complexity O(p) prop values.
|
|
45
|
+
*/
|
|
46
|
+
export declare function validateAgentPluginExportProps({ definition, props }: {
|
|
47
|
+
readonly definition: AgentPluginExport;
|
|
48
|
+
readonly props: unknown;
|
|
49
|
+
}, _optional?: Record<string, never>): string | null;
|
|
50
|
+
export {};
|
|
51
|
+
//# sourceMappingURL=exports.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exports.d.ts","sourceRoot":"","sources":["../../src/lifecycle/exports.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,6CAA6C,CAAC;AAErD,kFAAkF;AAClF,MAAM,MAAM,wBAAwB,GAAG,WAAW,GAAG,YAAY,GAAG,WAAW,GAAG,WAAW,CAAC;AAC9F,MAAM,MAAM,2BAA2B,GAAG,MAAM,GAAG,WAAW,GAAG,eAAe,CAAC;AACjF,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,wBAAwB,EAAE;QAAE,IAAI,EAAE,QAAQ,CAAA;KAAE,CAAC,CAAC;IACtE,QAAQ,CAAC,OAAO,EAAE,wBAAwB,CAAC;IAC3C,QAAQ,CAAC,YAAY,EAAE,2BAA2B,CAAC;IACnD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,qFAAqF;IACrF,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,4EAA4E;IAC5E,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACtD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACpD;AACD,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAC/D,+FAA+F;IAC/F,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1C;AACD,MAAM,MAAM,6BAA6B,GACrC;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,yBAAyB,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,GACzG;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,CAAC;AAE/D,KAAK,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAgD/C;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,EAC5F,SAAS,GAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAM,GACpC,6BAA6B,CAe/B;AAWD;;GAEG;AACH,wBAAgB,8BAA8B,CAC5C,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE;IAAE,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;CAAE,EAC1F,SAAS,GAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAM,GACpC,MAAM,GAAG,IAAI,CAGf"}
|