@jini-ai/agentic 0.6.15-rc.2 → 0.6.15
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/core/a2ui/catalog.d.ts.map +1 -1
- package/dist/core/a2ui/catalog.js +5 -2
- package/dist/core/a2ui/catalog.js.map +1 -1
- package/dist/core/a2ui/common-types.d.ts +1 -1
- package/dist/core/a2ui/common-types.d.ts.map +1 -1
- package/dist/core/a2ui/renderer-to-agent.d.ts.map +1 -1
- package/dist/core/a2ui/renderer-to-agent.js +3 -1
- package/dist/core/a2ui/renderer-to-agent.js.map +1 -1
- package/dist/core/a2ui/resolve.d.ts.map +1 -1
- package/dist/core/a2ui/resolve.js +18 -13
- package/dist/core/a2ui/resolve.js.map +1 -1
- package/dist/core/a2ui/tree.d.ts.map +1 -1
- package/dist/core/a2ui/tree.js +18 -14
- package/dist/core/a2ui/tree.js.map +1 -1
- package/dist/core/ag-ui.d.ts +0 -12
- package/dist/core/ag-ui.d.ts.map +1 -1
- package/dist/core/ag-ui.js +5 -3
- package/dist/core/ag-ui.js.map +1 -1
- package/dist/core/capability.d.ts.map +1 -1
- package/dist/core/capability.js +7 -1
- package/dist/core/capability.js.map +1 -1
- package/dist/core/dom/dom-page-driver.d.ts.map +1 -1
- package/dist/core/dom/dom-page-driver.js +3 -6
- package/dist/core/dom/dom-page-driver.js.map +1 -1
- package/dist/core/gen-ui/encoder.d.ts.map +1 -1
- package/dist/core/gen-ui/encoder.js +2 -1
- package/dist/core/gen-ui/encoder.js.map +1 -1
- package/dist/core/guards.d.ts.map +1 -1
- package/dist/core/guards.js +11 -5
- package/dist/core/guards.js.map +1 -1
- package/dist/core/handle.d.ts.map +1 -1
- package/dist/core/handle.js +2 -1
- package/dist/core/handle.js.map +1 -1
- package/dist/core/list-handles.d.ts.map +1 -1
- package/dist/core/list-handles.js +11 -1
- package/dist/core/list-handles.js.map +1 -1
- package/dist/core/omit-keys.d.ts +7 -0
- package/dist/core/omit-keys.d.ts.map +1 -0
- package/dist/core/omit-keys.js +12 -0
- package/dist/core/omit-keys.js.map +1 -0
- package/dist/core/page-executor.d.ts.map +1 -1
- package/dist/core/page-executor.js +10 -12
- package/dist/core/page-executor.js.map +1 -1
- package/dist/core/site-guide/site-guide.js +2 -3
- package/dist/core/site-guide/site-guide.js.map +1 -1
- package/dist/core/site-guide/topic-schema.js +2 -2
- package/dist/core/site-guide/topic-schema.js.map +1 -1
- package/dist/skills/install/archive.js +7 -2
- package/dist/skills/install/archive.js.map +1 -1
- package/dist/skills/install/github.js +11 -3
- package/dist/skills/install/github.js.map +1 -1
- package/dist/skills/install/install-service.d.ts.map +1 -1
- package/dist/skills/install/install-service.js +4 -3
- package/dist/skills/install/install-service.js.map +1 -1
- package/dist/skills/install/layout.d.ts.map +1 -1
- package/dist/skills/install/layout.js +2 -1
- package/dist/skills/install/layout.js.map +1 -1
- package/dist/skills/install/node-filesystem.d.ts.map +1 -1
- package/dist/skills/install/node-filesystem.js +9 -1
- package/dist/skills/install/node-filesystem.js.map +1 -1
- package/dist/skills/install/unsafe-chars.d.ts +9 -0
- package/dist/skills/install/unsafe-chars.d.ts.map +1 -0
- package/dist/skills/install/unsafe-chars.js +18 -0
- package/dist/skills/install/unsafe-chars.js.map +1 -0
- package/dist/skills/install/validation.d.ts.map +1 -1
- package/dist/skills/install/validation.js +4 -2
- package/dist/skills/install/validation.js.map +1 -1
- package/dist/skills/install/yauzl-archive-reader.d.ts.map +1 -1
- package/dist/skills/install/yauzl-archive-reader.js +4 -1
- package/dist/skills/install/yauzl-archive-reader.js.map +1 -1
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../../src/skills/install/layout.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../../src/skills/install/layout.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAgBlD;;;;;;;GAOG;AAIH;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,EAAE,SAAS,GAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAM,GAAG,eAAe,CAa5L"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import path from 'node:path';
|
|
2
|
+
import { hasSeparatorOrNul } from './unsafe-chars.js';
|
|
2
3
|
/**
|
|
3
4
|
* One safe, indivisible path segment: lowercase alphanumerics in `-`/`.`-separated runs, with no
|
|
4
5
|
* leading, trailing, or doubled separator. Mirrors `agent-plugins/layout.ts`'s own
|
|
@@ -32,7 +33,7 @@ export function createSkillLayout(required, _optional = {}) {
|
|
|
32
33
|
throw new Error('Skill roots must be absolute paths.');
|
|
33
34
|
if (!/^[a-z0-9]+(?:[-.][a-z0-9]+)*$/.test(workspaceDirectory))
|
|
34
35
|
throw new Error('Invalid workspace directory segment.');
|
|
35
|
-
if (!stateFileName ||
|
|
36
|
+
if (!stateFileName || hasSeparatorOrNul(stateFileName) || ['.', '..', 'SKILL.md', 'README.md', 'LICENSE', 'references', 'scripts', 'assets'].includes(stateFileName))
|
|
36
37
|
throw new Error('Invalid skill state file name.');
|
|
37
38
|
return Object.freeze({ resolve({ workspaceId }) {
|
|
38
39
|
// Normalize BEFORE validating, not after — see `agent-plugins/layout.ts`'s own comment at the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout.js","sourceRoot":"","sources":["../../../src/skills/install/layout.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"layout.js","sourceRoot":"","sources":["../../../src/skills/install/layout.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD;;;;;;GAMG;AACH,MAAM,uBAAuB,GAAG,+BAA+B,CAAC;AAChE,8EAA8E;AAC9E,MAAM,qBAAqB,GAAG,EAAE,CAAC;AACjC,+FAA+F;AAC/F,wEAAwE;AAExE;;;;;;;GAOG;AACH,0FAA0F;AAC1F,yFAAyF;AAEzF;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAkG,EAAE,YAAmC,EAAE;IACzK,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,kBAAkB,EAAE,aAAa,EAAE,GAAG,QAAQ,CAAC;IAC1E,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACpH,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAAC,kBAAkB,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IACvH,IAAI,CAAC,aAAa,IAAI,iBAAiB,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACxN,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,EAAE,WAAW,EAA2B;YACrE,8FAA8F;YAC9F,8FAA8F;YAC9F,6FAA6F;YAC7F,MAAM,UAAU,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;YAC7C,IAAI,UAAU,CAAC,MAAM,GAAG,qBAAqB,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,aAAa,WAAW,+BAA+B,CAAC,CAAC;YACrK,OAAO,EAAE,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,kBAAkB,EAAE,UAAU,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,aAAa,EAAE,CAAC;QACnI,CAAC,EAAE,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-filesystem.d.ts","sourceRoot":"","sources":["../../../src/skills/install/node-filesystem.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"node-filesystem.d.ts","sourceRoot":"","sources":["../../../src/skills/install/node-filesystem.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AASjD,wEAAwE;AACxE,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,SAAS,GAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAM,GAAG,cAAc,CAgCjI"}
|
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
import { lstat, mkdir, mkdtemp, open, rename, rm, writeFile } from 'node:fs/promises';
|
|
2
2
|
import { constants } from 'node:fs';
|
|
3
|
+
/** What an lstat result is, checked symlink-first (lstat never follows the link). */
|
|
4
|
+
function statKind(stat) {
|
|
5
|
+
if (stat.isSymbolicLink())
|
|
6
|
+
return 'symlink';
|
|
7
|
+
if (stat.isFile())
|
|
8
|
+
return 'file';
|
|
9
|
+
return stat.isDirectory() ? 'directory' : 'other';
|
|
10
|
+
}
|
|
3
11
|
/** Node adapter kept separate from the injected installation policy. */
|
|
4
12
|
export function createNodeSkillFilesystem(_required, _optional = {}) {
|
|
5
13
|
return {
|
|
@@ -7,7 +15,7 @@ export function createNodeSkillFilesystem(_required, _optional = {}) {
|
|
|
7
15
|
mkdtemp: ({ prefix }) => mkdtemp(prefix),
|
|
8
16
|
lstat: async ({ path }) => {
|
|
9
17
|
const stat = await lstat(path);
|
|
10
|
-
return { kind:
|
|
18
|
+
return { kind: statKind(stat), size: stat.size };
|
|
11
19
|
},
|
|
12
20
|
readFile: async ({ path, maxBytes }) => {
|
|
13
21
|
const handle = await open(path, constants.O_RDONLY | constants.O_NOFOLLOW);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-filesystem.js","sourceRoot":"","sources":["../../../src/skills/install/node-filesystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACtF,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGpC,wEAAwE;AACxE,MAAM,UAAU,yBAAyB,CAAC,SAAgC,EAAE,YAAmC,EAAE;IAC/G,OAAO;QACL,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACtE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;QACxC,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;YACxB,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;YAC/B,OAAO,EAAE,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"node-filesystem.js","sourceRoot":"","sources":["../../../src/skills/install/node-filesystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACtF,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGpC,qFAAqF;AACrF,SAAS,QAAQ,CAAC,IAAuC;IACvD,IAAI,IAAI,CAAC,cAAc,EAAE;QAAE,OAAO,SAAS,CAAC;IAC5C,IAAI,IAAI,CAAC,MAAM,EAAE;QAAE,OAAO,MAAM,CAAC;IACjC,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC;AACpD,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,yBAAyB,CAAC,SAAgC,EAAE,YAAmC,EAAE;IAC/G,OAAO;QACL,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACtE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;QACxC,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;YACxB,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;YAC/B,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QACnD,CAAC;QACD,QAAQ,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE;YACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC;YAC3E,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBACjC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,IAAI,GAAG,QAAQ;oBAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;gBAClG,MAAM,MAAM,GAAa,EAAE,CAAC;gBAC5B,IAAI,IAAI,GAAG,CAAC,CAAC;gBACb,SAAS,CAAC;oBACR,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;oBAChE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;oBAC/D,IAAI,CAAC,MAAM,CAAC,SAAS;wBAAE,MAAM;oBAC7B,IAAI,IAAI,MAAM,CAAC,SAAS,CAAC;oBACzB,IAAI,IAAI,GAAG,QAAQ;wBAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;oBAC3E,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;gBACnD,CAAC;gBACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC/B,CAAC;oBAAS,CAAC;gBAAC,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;YAAC,CAAC;QACrC,CAAC;QACD,+FAA+F;QAC/F,oFAAoF;QACpF,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QAClF,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QAC1C,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,OAAO,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC;KACtD,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file Character checks for skill path segments and file paths, as plain code: the regex
|
|
3
|
+
* spellings (`/[/\\\x00]/`, `/[\\\x00-\x1f\x7f:]/`) are control-character classes.
|
|
4
|
+
*/
|
|
5
|
+
/** Whether `value` contains a path separator (`/` or `\`) or a NUL character. */
|
|
6
|
+
export declare function hasSeparatorOrNul(value: string): boolean;
|
|
7
|
+
/** Whether `value` contains a backslash, a colon, or a control character (U+0000–U+001F, U+007F). */
|
|
8
|
+
export declare function hasUnsafePathCharacter(value: string): boolean;
|
|
9
|
+
//# sourceMappingURL=unsafe-chars.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unsafe-chars.d.ts","sourceRoot":"","sources":["../../../src/skills/install/unsafe-chars.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,iFAAiF;AACjF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,qGAAqG;AACrG,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAM7D"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file Character checks for skill path segments and file paths, as plain code: the regex
|
|
3
|
+
* spellings (`/[/\\\x00]/`, `/[\\\x00-\x1f\x7f:]/`) are control-character classes.
|
|
4
|
+
*/
|
|
5
|
+
/** Whether `value` contains a path separator (`/` or `\`) or a NUL character. */
|
|
6
|
+
export function hasSeparatorOrNul(value) {
|
|
7
|
+
return value.includes("/") || value.includes("\\") || value.includes("\0");
|
|
8
|
+
}
|
|
9
|
+
/** Whether `value` contains a backslash, a colon, or a control character (U+0000–U+001F, U+007F). */
|
|
10
|
+
export function hasUnsafePathCharacter(value) {
|
|
11
|
+
for (let i = 0; i < value.length; i += 1) {
|
|
12
|
+
const code = value.charCodeAt(i);
|
|
13
|
+
if (code < 0x20 || code === 0x7f || code === 0x5c || code === 0x3a)
|
|
14
|
+
return true;
|
|
15
|
+
}
|
|
16
|
+
return false;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=unsafe-chars.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unsafe-chars.js","sourceRoot":"","sources":["../../../src/skills/install/unsafe-chars.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,iFAAiF;AACjF,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,OAAO,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC7E,CAAC;AAED,qGAAqG;AACrG,MAAM,UAAU,sBAAsB,CAAC,KAAa;IAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;IAClF,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../src/skills/install/validation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../src/skills/install/validation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAGjD,MAAM,MAAM,aAAa,GAAG,cAAc,CAAC;AAC3C,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,QAAQ,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,QAAQ,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;IACzE,0FAA0F;gBAC9E,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;CAI5D;AACD,MAAM,WAAW,eAAe;IAAG,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;CAAE;AAC1F,eAAO,MAAM,eAAe,QAAkB,CAAC;AAC/C,eAAO,MAAM,eAAe,MAAM,CAAC;AACnC,eAAO,MAAM,oBAAoB,QAAc,CAAC;AAQhD,kGAAkG;AAClG,wBAAgB,iBAAiB,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,EAAE,QAA0B,EAAE,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,MAAM,CAMlI;AAED,wBAAgB,iBAAiB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,EAAE,SAAS,GAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAM,GAAG,IAAI,CAGjH;AAED,gGAAgG;AAChG,wBAAgB,qBAAqB,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,cAAc,CAAA;CAAE,EAAE,SAAS,GAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAM9L;AAYD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE;IAAE,KAAK,EAAE,SAAS,eAAe,EAAE,CAAC;IAAC,UAAU,EAAE,cAAc,CAAA;CAAE,EAAE,SAAS,GAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAM;;UArBR,MAAM;iBAAe,MAAM;EAgC5L"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/** Bounded skill-bundle validation; scripts are stored as data and never executed. */
|
|
2
2
|
import path from "node:path";
|
|
3
|
+
import { hasUnsafePathCharacter } from "./unsafe-chars.js";
|
|
3
4
|
export class SkillInputError extends Error {
|
|
4
5
|
constructor(required, optional = {}) {
|
|
5
6
|
super(typeof required === "string" ? required : required.message, optional);
|
|
@@ -26,7 +27,8 @@ export function decodeSkillBase64({ value }, { maxBytes = MAX_SKILL_BYTES } = {}
|
|
|
26
27
|
return bytes;
|
|
27
28
|
}
|
|
28
29
|
export function validateSkillPath({ filePath }, _optional = {}) {
|
|
29
|
-
|
|
30
|
+
const badShape = typeof filePath !== "string" || filePath.length === 0 || filePath.length > 240;
|
|
31
|
+
if (badShape || hasUnsafePathCharacter(filePath) || path.posix.isAbsolute(filePath) || filePath.split("/").some(p => !p || p === "." || p === ".." || p.startsWith(".")))
|
|
30
32
|
throw new SkillInputError({ message: `Unsafe skill file path: ${filePath}` });
|
|
31
33
|
}
|
|
32
34
|
/** Strict frontmatter for new installs; the legacy disk loader remains backwards compatible. */
|
|
@@ -98,7 +100,7 @@ function validateBundleFile({ file, prefix, seen, budget }) {
|
|
|
98
100
|
throw new SkillInputError({ message: "Skill files exceed 8 MiB combined." });
|
|
99
101
|
if (isText)
|
|
100
102
|
assertTextContent({ relative, bytes });
|
|
101
|
-
|
|
103
|
+
if (!isText && !matchesAssetSignature({ extension, bytes }))
|
|
102
104
|
throw new SkillInputError({ message: `Skill asset content does not match its file type: ${relative}` });
|
|
103
105
|
return { relative, bytes };
|
|
104
106
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../src/skills/install/validation.ts"],"names":[],"mappings":"AAAA,sFAAsF;AACtF,OAAO,IAAI,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../src/skills/install/validation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yauzl-archive-reader.d.ts","sourceRoot":"","sources":["../../../src/skills/install/yauzl-archive-reader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACpD,UAAU,QAAQ;IAAG,QAAQ,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAC;IAAC,sBAAsB,EAAE,MAAM,CAAA;CAAE;AACjG,UAAU,OAAO;IAAG,SAAS,IAAI,aAAa,CAAC,QAAQ,CAAC,CAAC;IAAC,qBAAqB,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG;QAAE,OAAO,IAAI,IAAI,CAAA;KAAE,CAAC,CAAC;IAAC,KAAK,IAAI,IAAI,CAAA;CAAE;AAC3K,MAAM,WAAW,eAAe;IAAG,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,WAAW,EAAE,OAAO,CAAC;QAAC,eAAe,EAAE,OAAO,CAAC;QAAC,kBAAkB,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CAAE;AACjL;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,eAAe,CAAA;CAAE,EAAE,SAAS,KAAK,GAAG,iBAAiB,
|
|
1
|
+
{"version":3,"file":"yauzl-archive-reader.d.ts","sourceRoot":"","sources":["../../../src/skills/install/yauzl-archive-reader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACpD,UAAU,QAAQ;IAAG,QAAQ,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAC;IAAC,sBAAsB,EAAE,MAAM,CAAA;CAAE;AACjG,UAAU,OAAO;IAAG,SAAS,IAAI,aAAa,CAAC,QAAQ,CAAC,CAAC;IAAC,qBAAqB,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG;QAAE,OAAO,IAAI,IAAI,CAAA;KAAE,CAAC,CAAC;IAAC,KAAK,IAAI,IAAI,CAAA;CAAE;AAC3K,MAAM,WAAW,eAAe;IAAG,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,WAAW,EAAE,OAAO,CAAC;QAAC,eAAe,EAAE,OAAO,CAAC;QAAC,kBAAkB,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CAAE;AACjL;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,eAAe,CAAA;CAAE,EAAE,SAAS,KAAK,GAAG,iBAAiB,CAuBtH"}
|
|
@@ -9,7 +9,10 @@ export function createYauzlSkillArchiveReader({ yauzl }, _optional = {}) {
|
|
|
9
9
|
entries: (async function* () {
|
|
10
10
|
for await (const entry of zip.eachEntry()) {
|
|
11
11
|
const type = (entry.externalFileAttributes >>> 16) & 0xf000;
|
|
12
|
-
|
|
12
|
+
// A set file type other than regular (0x8000) or directory (0x4000) is never extracted.
|
|
13
|
+
const special = type !== 0 && type !== 0x8000 && type !== 0x4000;
|
|
14
|
+
const namedKind = entry.fileName.endsWith("/") ? "directory" : "file";
|
|
15
|
+
const kind = special ? "other" : namedKind;
|
|
13
16
|
yield { path: entry.fileName, size: entry.uncompressedSize, kind,
|
|
14
17
|
async *read() {
|
|
15
18
|
const stream = await zip.openReadStreamPromise(entry);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yauzl-archive-reader.js","sourceRoot":"","sources":["../../../src/skills/install/yauzl-archive-reader.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,UAAU,6BAA6B,CAAC,EAAE,KAAK,EAA8B,EAAE,SAAS,GAAG,EAAE;IACjG,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE;YAC3B,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC;YACtI,OAAO;gBACL,OAAO,EAAE,CAAC,KAAK,SAAS,CAAC;oBACvB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC;wBAC1C,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,sBAAsB,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC;wBAC5D,MAAM,
|
|
1
|
+
{"version":3,"file":"yauzl-archive-reader.js","sourceRoot":"","sources":["../../../src/skills/install/yauzl-archive-reader.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,UAAU,6BAA6B,CAAC,EAAE,KAAK,EAA8B,EAAE,SAAS,GAAG,EAAE;IACjG,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE;YAC3B,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC;YACtI,OAAO;gBACL,OAAO,EAAE,CAAC,KAAK,SAAS,CAAC;oBACvB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC;wBAC1C,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,sBAAsB,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC;wBAC5D,wFAAwF;wBACxF,MAAM,OAAO,GAAG,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,MAAM,CAAC;wBACjE,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC;wBACtE,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;wBAC3C,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,gBAAgB,EAAE,IAAI;4BAC9D,KAAK,CAAC,CAAC,IAAI;gCACT,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;gCACtD,IAAI,CAAC;oCAAC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM;wCAAE,MAAM,KAAK,CAAC;gCAAC,CAAC;wCAC9C,CAAC;oCAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gCAAC,CAAC;4BAC/B,CAAC;yBACF,CAAC;oBACJ,CAAC;gBACH,CAAC,CAAC,EAAE;gBACJ,KAAK,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE;aACzB,CAAC;QACJ,CAAC,EAAE,CAAC;AACN,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jini-ai/agentic",
|
|
3
|
-
"version": "0.6.15
|
|
3
|
+
"version": "0.6.15",
|
|
4
4
|
"description": "Framework-free agent-control layer: page-capability vocabulary and manifests, the data-agent-* markup convention, AG-UI projection, generative-UI streams, and A2UI.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -77,12 +77,12 @@
|
|
|
77
77
|
"jsdom": "^25.0.1",
|
|
78
78
|
"zod": "^3.25.76",
|
|
79
79
|
"@jini-ai/core": "^0.6.13",
|
|
80
|
-
"@jini-ai/protocol": "^0.6.15
|
|
80
|
+
"@jini-ai/protocol": "^0.6.15"
|
|
81
81
|
},
|
|
82
82
|
"peerDependencies": {
|
|
83
|
-
"@jini-ai/protocol": "^0.6.
|
|
83
|
+
"@jini-ai/protocol": "^0.6.10",
|
|
84
84
|
"zod": "^3.25.76",
|
|
85
|
-
"@jini-ai/core": "^0.6.
|
|
85
|
+
"@jini-ai/core": "^0.6.10"
|
|
86
86
|
},
|
|
87
87
|
"peerDependenciesMeta": {
|
|
88
88
|
"@jini-ai/protocol": {
|