@enactprotocol/shared 2.1.23 → 2.1.24
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/manifest/index.d.ts +2 -2
- package/dist/manifest/index.d.ts.map +1 -1
- package/dist/manifest/index.js +1 -1
- package/dist/manifest/index.js.map +1 -1
- package/dist/manifest/loader.d.ts +14 -4
- package/dist/manifest/loader.d.ts.map +1 -1
- package/dist/manifest/loader.js +12 -8
- package/dist/manifest/loader.js.map +1 -1
- package/dist/manifest/validator.d.ts +21 -4
- package/dist/manifest/validator.d.ts.map +1 -1
- package/dist/manifest/validator.js +72 -47
- package/dist/manifest/validator.js.map +1 -1
- package/dist/resolver.d.ts +3 -0
- package/dist/resolver.d.ts.map +1 -1
- package/dist/resolver.js +12 -5
- package/dist/resolver.js.map +1 -1
- package/package.json +2 -2
- package/src/manifest/index.ts +3 -0
- package/src/manifest/loader.ts +29 -9
- package/src/manifest/validator.ts +102 -57
- package/src/resolver.ts +18 -6
- package/tests/manifest/validator.test.ts +77 -0
- package/tsconfig.tsbuildinfo +1 -1
package/dist/manifest/index.d.ts
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
* Manifest module exports
|
|
3
3
|
*/
|
|
4
4
|
export { ManifestParseError, parseManifest, parseManifestAuto, parseYaml, extractFrontmatter, detectFormat, type ManifestFormat, } from "./parser";
|
|
5
|
-
export { validateManifest, validateManifestStrict, isValidToolName, isValidVersion, isValidTimeout, ToolManifestSchema, } from "./validator";
|
|
6
|
-
export { ManifestLoadError, loadManifest, loadManifestFromDir, findManifestFile, hasManifest, tryLoadManifest, tryLoadManifestFromDir, type LoadedManifest, } from "./loader";
|
|
5
|
+
export { validateManifest, validateManifestStrict, isValidToolName, isValidLocalToolName, isValidVersion, isValidTimeout, ToolManifestSchema, type ValidateManifestOptions, } from "./validator";
|
|
6
|
+
export { ManifestLoadError, loadManifest, loadManifestFromDir, findManifestFile, hasManifest, tryLoadManifest, tryLoadManifestFromDir, type LoadedManifest, type LoadManifestOptions, } from "./loader";
|
|
7
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/manifest/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,kBAAkB,EAClB,YAAY,EACZ,KAAK,cAAc,GACpB,MAAM,UAAU,CAAC;AAGlB,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,eAAe,EACf,cAAc,EACd,cAAc,EACd,kBAAkB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/manifest/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,kBAAkB,EAClB,YAAY,EACZ,KAAK,cAAc,GACpB,MAAM,UAAU,CAAC;AAGlB,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,eAAe,EACf,oBAAoB,EACpB,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,KAAK,uBAAuB,GAC7B,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,sBAAsB,EACtB,KAAK,cAAc,EACnB,KAAK,mBAAmB,GACzB,MAAM,UAAU,CAAC"}
|
package/dist/manifest/index.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
// Parser
|
|
5
5
|
export { ManifestParseError, parseManifest, parseManifestAuto, parseYaml, extractFrontmatter, detectFormat, } from "./parser";
|
|
6
6
|
// Validator
|
|
7
|
-
export { validateManifest, validateManifestStrict, isValidToolName, isValidVersion, isValidTimeout, ToolManifestSchema, } from "./validator";
|
|
7
|
+
export { validateManifest, validateManifestStrict, isValidToolName, isValidLocalToolName, isValidVersion, isValidTimeout, ToolManifestSchema, } from "./validator";
|
|
8
8
|
// Loader
|
|
9
9
|
export { ManifestLoadError, loadManifest, loadManifestFromDir, findManifestFile, hasManifest, tryLoadManifest, tryLoadManifestFromDir, } from "./loader";
|
|
10
10
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/manifest/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,SAAS;AACT,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,kBAAkB,EAClB,YAAY,GAEb,MAAM,UAAU,CAAC;AAElB,YAAY;AACZ,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,eAAe,EACf,cAAc,EACd,cAAc,EACd,kBAAkB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/manifest/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,SAAS;AACT,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,kBAAkB,EAClB,YAAY,GAEb,MAAM,UAAU,CAAC;AAElB,YAAY;AACZ,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,eAAe,EACf,oBAAoB,EACpB,cAAc,EACd,cAAc,EACd,kBAAkB,GAEnB,MAAM,aAAa,CAAC;AAErB,SAAS;AACT,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,sBAAsB,GAGvB,MAAM,UAAU,CAAC"}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* Provides high-level functions to load tool manifests from files
|
|
5
5
|
*/
|
|
6
6
|
import type { ToolManifest, ValidationResult } from "../types/manifest";
|
|
7
|
+
import { type ValidateManifestOptions } from "./validator";
|
|
7
8
|
/**
|
|
8
9
|
* Error thrown when loading a manifest fails
|
|
9
10
|
*/
|
|
@@ -27,24 +28,31 @@ export interface LoadedManifest {
|
|
|
27
28
|
/** Validation warnings (if any) */
|
|
28
29
|
warnings?: ValidationResult["warnings"];
|
|
29
30
|
}
|
|
31
|
+
/**
|
|
32
|
+
* Options for loading a manifest
|
|
33
|
+
*/
|
|
34
|
+
export interface LoadManifestOptions extends ValidateManifestOptions {
|
|
35
|
+
}
|
|
30
36
|
/**
|
|
31
37
|
* Load a manifest from a file path
|
|
32
38
|
*
|
|
33
39
|
* @param filePath - Path to the manifest file (SKILL.md, enact.md, enact.yaml, or enact.yml)
|
|
40
|
+
* @param options - Options for loading and validation
|
|
34
41
|
* @returns LoadedManifest with validated manifest and metadata
|
|
35
42
|
* @throws ManifestLoadError if file doesn't exist, parse fails, or validation fails
|
|
36
43
|
*/
|
|
37
|
-
export declare function loadManifest(filePath: string): LoadedManifest;
|
|
44
|
+
export declare function loadManifest(filePath: string, options?: LoadManifestOptions): LoadedManifest;
|
|
38
45
|
/**
|
|
39
46
|
* Find and load a manifest from a directory
|
|
40
47
|
*
|
|
41
48
|
* Searches for SKILL.md, enact.md, enact.yaml, or enact.yml in the given directory
|
|
42
49
|
*
|
|
43
50
|
* @param dir - Directory to search for manifest
|
|
51
|
+
* @param options - Options for loading and validation
|
|
44
52
|
* @returns LoadedManifest if found
|
|
45
53
|
* @throws ManifestLoadError if no manifest found or loading fails
|
|
46
54
|
*/
|
|
47
|
-
export declare function loadManifestFromDir(dir: string): LoadedManifest;
|
|
55
|
+
export declare function loadManifestFromDir(dir: string, options?: LoadManifestOptions): LoadedManifest;
|
|
48
56
|
/**
|
|
49
57
|
* Find a manifest file in a directory without loading it
|
|
50
58
|
*
|
|
@@ -63,14 +71,16 @@ export declare function hasManifest(dir: string): boolean;
|
|
|
63
71
|
* Try to load a manifest, returning null instead of throwing
|
|
64
72
|
*
|
|
65
73
|
* @param filePath - Path to the manifest file
|
|
74
|
+
* @param options - Options for loading and validation
|
|
66
75
|
* @returns LoadedManifest or null if loading fails
|
|
67
76
|
*/
|
|
68
|
-
export declare function tryLoadManifest(filePath: string): LoadedManifest | null;
|
|
77
|
+
export declare function tryLoadManifest(filePath: string, options?: LoadManifestOptions): LoadedManifest | null;
|
|
69
78
|
/**
|
|
70
79
|
* Try to load a manifest from a directory, returning null instead of throwing
|
|
71
80
|
*
|
|
72
81
|
* @param dir - Directory to search
|
|
82
|
+
* @param options - Options for loading and validation
|
|
73
83
|
* @returns LoadedManifest or null if no manifest found or loading fails
|
|
74
84
|
*/
|
|
75
|
-
export declare function tryLoadManifestFromDir(dir: string): LoadedManifest | null;
|
|
85
|
+
export declare function tryLoadManifestFromDir(dir: string, options?: LoadManifestOptions): LoadedManifest | null;
|
|
76
86
|
//# sourceMappingURL=loader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/manifest/loader.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAkB,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/manifest/loader.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAkB,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAGxF,OAAO,EAAE,KAAK,uBAAuB,EAAoB,MAAM,aAAa,CAAC;AAE7E;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;aAGxB,QAAQ,EAAE,MAAM;aAChB,aAAa,CAAC,EAAE,KAAK;gBAFrC,OAAO,EAAE,MAAM,EACC,QAAQ,EAAE,MAAM,EAChB,aAAa,CAAC,EAAE,KAAK,YAAA;CAKxC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,6BAA6B;IAC7B,QAAQ,EAAE,YAAY,CAAC;IACvB,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,8CAA8C;IAC9C,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,iDAAiD;IACjD,QAAQ,EAAE,MAAM,CAAC;IACjB,mCAAmC;IACnC,QAAQ,CAAC,EAAE,gBAAgB,CAAC,UAAU,CAAC,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,uBAAuB;CAEnE;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,mBAAwB,GAAG,cAAc,CA0DhG;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,mBAAwB,GAChC,cAAc,CAahB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQ3D;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEhD;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,mBAAwB,GAChC,cAAc,GAAG,IAAI,CAMvB;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,mBAAwB,GAChC,cAAc,GAAG,IAAI,CAMvB"}
|
package/dist/manifest/loader.js
CHANGED
|
@@ -25,10 +25,11 @@ export class ManifestLoadError extends Error {
|
|
|
25
25
|
* Load a manifest from a file path
|
|
26
26
|
*
|
|
27
27
|
* @param filePath - Path to the manifest file (SKILL.md, enact.md, enact.yaml, or enact.yml)
|
|
28
|
+
* @param options - Options for loading and validation
|
|
28
29
|
* @returns LoadedManifest with validated manifest and metadata
|
|
29
30
|
* @throws ManifestLoadError if file doesn't exist, parse fails, or validation fails
|
|
30
31
|
*/
|
|
31
|
-
export function loadManifest(filePath) {
|
|
32
|
+
export function loadManifest(filePath, options = {}) {
|
|
32
33
|
// Check file exists
|
|
33
34
|
if (!existsSync(filePath)) {
|
|
34
35
|
throw new ManifestLoadError(`Manifest file not found: ${filePath}`, filePath);
|
|
@@ -53,7 +54,7 @@ export function loadManifest(filePath) {
|
|
|
53
54
|
throw new ManifestLoadError(`Failed to parse manifest: ${error.message}`, filePath, error);
|
|
54
55
|
}
|
|
55
56
|
// Validate the manifest
|
|
56
|
-
const validation = validateManifest(parsed.manifest);
|
|
57
|
+
const validation = validateManifest(parsed.manifest, options);
|
|
57
58
|
if (!validation.valid) {
|
|
58
59
|
const errorMessages = validation.errors?.map((e) => ` - ${e.path}: ${e.message}`).join("\n") ?? "";
|
|
59
60
|
throw new ManifestLoadError(`Manifest validation failed:\n${errorMessages}`, filePath);
|
|
@@ -78,15 +79,16 @@ export function loadManifest(filePath) {
|
|
|
78
79
|
* Searches for SKILL.md, enact.md, enact.yaml, or enact.yml in the given directory
|
|
79
80
|
*
|
|
80
81
|
* @param dir - Directory to search for manifest
|
|
82
|
+
* @param options - Options for loading and validation
|
|
81
83
|
* @returns LoadedManifest if found
|
|
82
84
|
* @throws ManifestLoadError if no manifest found or loading fails
|
|
83
85
|
*/
|
|
84
|
-
export function loadManifestFromDir(dir) {
|
|
86
|
+
export function loadManifestFromDir(dir, options = {}) {
|
|
85
87
|
// Try each manifest filename in order of preference
|
|
86
88
|
for (const filename of MANIFEST_FILES) {
|
|
87
89
|
const filePath = join(dir, filename);
|
|
88
90
|
if (existsSync(filePath)) {
|
|
89
|
-
return loadManifest(filePath);
|
|
91
|
+
return loadManifest(filePath, options);
|
|
90
92
|
}
|
|
91
93
|
}
|
|
92
94
|
throw new ManifestLoadError(`No manifest found in directory: ${dir}. Expected one of: ${MANIFEST_FILES.join(", ")}`, dir);
|
|
@@ -119,11 +121,12 @@ export function hasManifest(dir) {
|
|
|
119
121
|
* Try to load a manifest, returning null instead of throwing
|
|
120
122
|
*
|
|
121
123
|
* @param filePath - Path to the manifest file
|
|
124
|
+
* @param options - Options for loading and validation
|
|
122
125
|
* @returns LoadedManifest or null if loading fails
|
|
123
126
|
*/
|
|
124
|
-
export function tryLoadManifest(filePath) {
|
|
127
|
+
export function tryLoadManifest(filePath, options = {}) {
|
|
125
128
|
try {
|
|
126
|
-
return loadManifest(filePath);
|
|
129
|
+
return loadManifest(filePath, options);
|
|
127
130
|
}
|
|
128
131
|
catch {
|
|
129
132
|
return null;
|
|
@@ -133,11 +136,12 @@ export function tryLoadManifest(filePath) {
|
|
|
133
136
|
* Try to load a manifest from a directory, returning null instead of throwing
|
|
134
137
|
*
|
|
135
138
|
* @param dir - Directory to search
|
|
139
|
+
* @param options - Options for loading and validation
|
|
136
140
|
* @returns LoadedManifest or null if no manifest found or loading fails
|
|
137
141
|
*/
|
|
138
|
-
export function tryLoadManifestFromDir(dir) {
|
|
142
|
+
export function tryLoadManifestFromDir(dir, options = {}) {
|
|
139
143
|
try {
|
|
140
|
-
return loadManifestFromDir(dir);
|
|
144
|
+
return loadManifestFromDir(dir, options);
|
|
141
145
|
}
|
|
142
146
|
catch {
|
|
143
147
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/manifest/loader.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AACjE,OAAO,
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/manifest/loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
import { z } from "zod/v4";
|
|
7
7
|
import type { ToolManifest, ValidationResult } from "../types/manifest";
|
|
8
8
|
/**
|
|
9
|
-
* Complete tool manifest schema
|
|
9
|
+
* Complete tool manifest schema (strict - requires hierarchical names)
|
|
10
10
|
*/
|
|
11
11
|
declare const ToolManifestSchema: z.ZodObject<{
|
|
12
12
|
name: z.ZodString;
|
|
@@ -63,26 +63,43 @@ declare const ToolManifestSchema: z.ZodObject<{
|
|
|
63
63
|
description: z.ZodOptional<z.ZodString>;
|
|
64
64
|
}, z.core.$strip>>>;
|
|
65
65
|
}, z.core.$loose>;
|
|
66
|
+
/**
|
|
67
|
+
* Options for manifest validation
|
|
68
|
+
*/
|
|
69
|
+
export interface ValidateManifestOptions {
|
|
70
|
+
/**
|
|
71
|
+
* Allow simple tool names without hierarchy (e.g., "my-tool" instead of "org/my-tool").
|
|
72
|
+
* Use this for local tools that won't be published.
|
|
73
|
+
* @default false
|
|
74
|
+
*/
|
|
75
|
+
allowSimpleNames?: boolean;
|
|
76
|
+
}
|
|
66
77
|
/**
|
|
67
78
|
* Validate a tool manifest
|
|
68
79
|
*
|
|
69
80
|
* @param manifest - The manifest to validate (parsed but unvalidated)
|
|
81
|
+
* @param options - Validation options
|
|
70
82
|
* @returns ValidationResult with valid flag, errors, and warnings
|
|
71
83
|
*/
|
|
72
|
-
export declare function validateManifest(manifest: unknown): ValidationResult;
|
|
84
|
+
export declare function validateManifest(manifest: unknown, options?: ValidateManifestOptions): ValidationResult;
|
|
73
85
|
/**
|
|
74
86
|
* Validate and return the typed manifest
|
|
75
87
|
* Throws if validation fails
|
|
76
88
|
*
|
|
77
89
|
* @param manifest - The manifest to validate
|
|
90
|
+
* @param options - Validation options
|
|
78
91
|
* @returns The validated ToolManifest
|
|
79
92
|
* @throws Error if validation fails
|
|
80
93
|
*/
|
|
81
|
-
export declare function validateManifestStrict(manifest: unknown): ToolManifest;
|
|
94
|
+
export declare function validateManifestStrict(manifest: unknown, options?: ValidateManifestOptions): ToolManifest;
|
|
82
95
|
/**
|
|
83
|
-
* Check if a string is a valid tool name
|
|
96
|
+
* Check if a string is a valid tool name (hierarchical format for publishing)
|
|
84
97
|
*/
|
|
85
98
|
export declare function isValidToolName(name: string): boolean;
|
|
99
|
+
/**
|
|
100
|
+
* Check if a string is a valid local tool name (allows simple names)
|
|
101
|
+
*/
|
|
102
|
+
export declare function isValidLocalToolName(name: string): boolean;
|
|
86
103
|
/**
|
|
87
104
|
* Check if a string is a valid semver version
|
|
88
105
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../src/manifest/validator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,KAAK,EACV,YAAY,EAEZ,gBAAgB,EAEjB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../src/manifest/validator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,KAAK,EACV,YAAY,EAEZ,gBAAgB,EAEjB,MAAM,mBAAmB,CAAC;AA+I3B;;GAEG;AACH,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAkC,CAAC;AAoG3D;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,OAAO,EACjB,OAAO,GAAE,uBAA4B,GACpC,gBAAgB,CAmBlB;AAED;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,OAAO,EACjB,OAAO,GAAE,uBAA4B,GACpC,YAAY,CASd;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAErD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEvD;AAGD,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
|
|
@@ -66,56 +66,72 @@ const JsonSchemaSchema = z
|
|
|
66
66
|
*/
|
|
67
67
|
const SEMVER_REGEX = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;
|
|
68
68
|
/**
|
|
69
|
-
* Tool name regex - hierarchical path format
|
|
69
|
+
* Tool name regex - hierarchical path format (required for publishing)
|
|
70
70
|
*/
|
|
71
71
|
const TOOL_NAME_REGEX = /^[a-z0-9_-]+(?:\/[a-z0-9_-]+)+$/;
|
|
72
|
+
/**
|
|
73
|
+
* Tool name regex - simple format (allowed for local tools)
|
|
74
|
+
* Allows both hierarchical (org/tool) and simple (my-tool) names
|
|
75
|
+
*/
|
|
76
|
+
const TOOL_NAME_REGEX_LOCAL = /^[a-z0-9_-]+(?:\/[a-z0-9_-]+)*$/;
|
|
72
77
|
/**
|
|
73
78
|
* Go duration regex (used for timeout)
|
|
74
79
|
*/
|
|
75
80
|
const GO_DURATION_REGEX = /^(\d+)(ns|us|µs|ms|s|m|h)$/;
|
|
76
81
|
/**
|
|
77
|
-
*
|
|
82
|
+
* Create a tool manifest schema with configurable name validation
|
|
78
83
|
*/
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
.
|
|
84
|
-
|
|
85
|
-
.
|
|
86
|
-
|
|
87
|
-
.string()
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
.string()
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
.string()
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
84
|
+
function createToolManifestSchema(allowSimpleNames) {
|
|
85
|
+
const nameRegex = allowSimpleNames ? TOOL_NAME_REGEX_LOCAL : TOOL_NAME_REGEX;
|
|
86
|
+
const nameMessage = allowSimpleNames
|
|
87
|
+
? "Tool name must contain only lowercase letters, numbers, hyphens, and underscores"
|
|
88
|
+
: "Tool name must be hierarchical path format (e.g., 'org/tool' or 'org/category/tool')";
|
|
89
|
+
return z
|
|
90
|
+
.object({
|
|
91
|
+
// Required fields
|
|
92
|
+
name: z.string().min(1, "Tool name is required").regex(nameRegex, nameMessage),
|
|
93
|
+
description: z
|
|
94
|
+
.string()
|
|
95
|
+
.min(1, "Description is required")
|
|
96
|
+
.max(500, "Description should be 500 characters or less"),
|
|
97
|
+
// Recommended fields
|
|
98
|
+
enact: z.string().optional(),
|
|
99
|
+
version: z
|
|
100
|
+
.string()
|
|
101
|
+
.regex(SEMVER_REGEX, "Version must be valid semver (e.g., '1.0.0')")
|
|
102
|
+
.optional(),
|
|
103
|
+
from: z.string().optional(),
|
|
104
|
+
command: z.string().optional(),
|
|
105
|
+
timeout: z
|
|
106
|
+
.string()
|
|
107
|
+
.regex(GO_DURATION_REGEX, "Timeout must be Go duration format (e.g., '30s', '5m', '1h')")
|
|
108
|
+
.optional(),
|
|
109
|
+
license: z.string().optional(),
|
|
110
|
+
tags: z.array(z.string()).optional(),
|
|
111
|
+
// Schema fields
|
|
112
|
+
inputSchema: JsonSchemaSchema.optional(),
|
|
113
|
+
outputSchema: JsonSchemaSchema.optional(),
|
|
114
|
+
// Environment variables
|
|
115
|
+
env: z.record(z.string(), EnvVariableSchema).optional(),
|
|
116
|
+
// Behavior & Resources
|
|
117
|
+
annotations: ToolAnnotationsSchema.optional(),
|
|
118
|
+
resources: ResourceRequirementsSchema.optional(),
|
|
119
|
+
// Documentation
|
|
120
|
+
doc: z.string().optional(),
|
|
121
|
+
authors: z.array(AuthorSchema).optional(),
|
|
122
|
+
// Testing
|
|
123
|
+
examples: z.array(ToolExampleSchema).optional(),
|
|
124
|
+
})
|
|
125
|
+
.passthrough(); // Allow x-* custom fields
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Complete tool manifest schema (strict - requires hierarchical names)
|
|
129
|
+
*/
|
|
130
|
+
const ToolManifestSchema = createToolManifestSchema(false);
|
|
131
|
+
/**
|
|
132
|
+
* Local tool manifest schema (relaxed - allows simple names)
|
|
133
|
+
*/
|
|
134
|
+
const ToolManifestSchemaLocal = createToolManifestSchema(true);
|
|
119
135
|
// ==================== Validation Functions ====================
|
|
120
136
|
/**
|
|
121
137
|
* Convert Zod error to our ValidationError format
|
|
@@ -201,10 +217,12 @@ function generateWarnings(manifest) {
|
|
|
201
217
|
* Validate a tool manifest
|
|
202
218
|
*
|
|
203
219
|
* @param manifest - The manifest to validate (parsed but unvalidated)
|
|
220
|
+
* @param options - Validation options
|
|
204
221
|
* @returns ValidationResult with valid flag, errors, and warnings
|
|
205
222
|
*/
|
|
206
|
-
export function validateManifest(manifest) {
|
|
207
|
-
const
|
|
223
|
+
export function validateManifest(manifest, options = {}) {
|
|
224
|
+
const schema = options.allowSimpleNames ? ToolManifestSchemaLocal : ToolManifestSchema;
|
|
225
|
+
const result = schema.safeParse(manifest);
|
|
208
226
|
if (!result.success) {
|
|
209
227
|
return {
|
|
210
228
|
valid: false,
|
|
@@ -224,11 +242,12 @@ export function validateManifest(manifest) {
|
|
|
224
242
|
* Throws if validation fails
|
|
225
243
|
*
|
|
226
244
|
* @param manifest - The manifest to validate
|
|
245
|
+
* @param options - Validation options
|
|
227
246
|
* @returns The validated ToolManifest
|
|
228
247
|
* @throws Error if validation fails
|
|
229
248
|
*/
|
|
230
|
-
export function validateManifestStrict(manifest) {
|
|
231
|
-
const result = validateManifest(manifest);
|
|
249
|
+
export function validateManifestStrict(manifest, options = {}) {
|
|
250
|
+
const result = validateManifest(manifest, options);
|
|
232
251
|
if (!result.valid) {
|
|
233
252
|
const errorMessages = result.errors?.map((e) => `${e.path}: ${e.message}`).join(", ");
|
|
234
253
|
throw new Error(`Manifest validation failed: ${errorMessages}`);
|
|
@@ -236,11 +255,17 @@ export function validateManifestStrict(manifest) {
|
|
|
236
255
|
return manifest;
|
|
237
256
|
}
|
|
238
257
|
/**
|
|
239
|
-
* Check if a string is a valid tool name
|
|
258
|
+
* Check if a string is a valid tool name (hierarchical format for publishing)
|
|
240
259
|
*/
|
|
241
260
|
export function isValidToolName(name) {
|
|
242
261
|
return TOOL_NAME_REGEX.test(name);
|
|
243
262
|
}
|
|
263
|
+
/**
|
|
264
|
+
* Check if a string is a valid local tool name (allows simple names)
|
|
265
|
+
*/
|
|
266
|
+
export function isValidLocalToolName(name) {
|
|
267
|
+
return TOOL_NAME_REGEX_LOCAL.test(name);
|
|
268
|
+
}
|
|
244
269
|
/**
|
|
245
270
|
* Check if a string is a valid semver version
|
|
246
271
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/manifest/validator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/manifest/validator.ts"],"names":[],"mappings":"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"}
|
package/dist/resolver.d.ts
CHANGED
|
@@ -47,6 +47,9 @@ export declare function getToolPath(toolsDir: string, toolName: string): string;
|
|
|
47
47
|
/**
|
|
48
48
|
* Resolve a tool from a file path
|
|
49
49
|
*
|
|
50
|
+
* Local/file tools are allowed to have simple names (without hierarchy)
|
|
51
|
+
* since they don't need to be published.
|
|
52
|
+
*
|
|
50
53
|
* @param filePath - Path to manifest file or directory containing manifest
|
|
51
54
|
* @returns ToolResolution
|
|
52
55
|
* @throws ToolResolveError if not found
|
package/dist/resolver.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../src/resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAOH,OAAO,KAAK,EAAgB,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAErE;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;aAGvB,QAAQ,EAAE,MAAM;aAChB,iBAAiB,CAAC,EAAE,MAAM,EAAE;gBAF5C,OAAO,EAAE,MAAM,EACC,QAAQ,EAAE,MAAM,EAChB,iBAAiB,CAAC,EAAE,MAAM,EAAE,YAAA;CAK/C;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+BAA+B;IAC/B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wBAAwB;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAGnD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEtE;
|
|
1
|
+
{"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../src/resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAOH,OAAO,KAAK,EAAgB,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAErE;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;aAGvB,QAAQ,EAAE,MAAM;aAChB,iBAAiB,CAAC,EAAE,MAAM,EAAE;gBAF5C,OAAO,EAAE,MAAM,EACC,QAAQ,EAAE,MAAM,EAChB,iBAAiB,CAAC,EAAE,MAAM,EAAE,YAAA;CAK/C;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+BAA+B;IAC/B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wBAAwB;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAGnD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEtE;AAuCD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAiCpE;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,cAAc,CAqE1F;AA6BD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,cAAc,EAAE,MAAM,EACtB,OAAO,GAAE,cAAmB,GAC3B,cAAc,GAAG,IAAI,CAiBvB;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,cAAc,EAAE,MAAM,EACtB,OAAO,GAAE,cAAmB,GAC3B,cAAc,CAsBhB;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,MAAM,EAAE,CA2B3F"}
|
package/dist/resolver.js
CHANGED
|
@@ -50,9 +50,10 @@ export function getToolPath(toolsDir, toolName) {
|
|
|
50
50
|
*
|
|
51
51
|
* @param dir - Directory to check
|
|
52
52
|
* @param location - The location type for metadata
|
|
53
|
+
* @param options - Options for loading the manifest
|
|
53
54
|
* @returns ToolResolution or null if not found/invalid
|
|
54
55
|
*/
|
|
55
|
-
function tryLoadFromDir(dir, location) {
|
|
56
|
+
function tryLoadFromDir(dir, location, options = {}) {
|
|
56
57
|
if (!existsSync(dir)) {
|
|
57
58
|
return null;
|
|
58
59
|
}
|
|
@@ -61,7 +62,7 @@ function tryLoadFromDir(dir, location) {
|
|
|
61
62
|
return null;
|
|
62
63
|
}
|
|
63
64
|
try {
|
|
64
|
-
const loaded = loadManifest(manifestPath);
|
|
65
|
+
const loaded = loadManifest(manifestPath, options);
|
|
65
66
|
return {
|
|
66
67
|
manifest: loaded.manifest,
|
|
67
68
|
sourceDir: dir,
|
|
@@ -78,12 +79,17 @@ function tryLoadFromDir(dir, location) {
|
|
|
78
79
|
/**
|
|
79
80
|
* Resolve a tool from a file path
|
|
80
81
|
*
|
|
82
|
+
* Local/file tools are allowed to have simple names (without hierarchy)
|
|
83
|
+
* since they don't need to be published.
|
|
84
|
+
*
|
|
81
85
|
* @param filePath - Path to manifest file or directory containing manifest
|
|
82
86
|
* @returns ToolResolution
|
|
83
87
|
* @throws ToolResolveError if not found
|
|
84
88
|
*/
|
|
85
89
|
export function resolveToolFromPath(filePath) {
|
|
86
90
|
const absolutePath = isAbsolute(filePath) ? filePath : resolve(filePath);
|
|
91
|
+
// Local tools can have simple names (no hierarchy required)
|
|
92
|
+
const localOptions = { allowSimpleNames: true };
|
|
87
93
|
// Check if it's a manifest file directly
|
|
88
94
|
if (absolutePath.endsWith(".yaml") ||
|
|
89
95
|
absolutePath.endsWith(".yml") ||
|
|
@@ -91,7 +97,7 @@ export function resolveToolFromPath(filePath) {
|
|
|
91
97
|
if (!existsSync(absolutePath)) {
|
|
92
98
|
throw new ToolResolveError(`Manifest file not found: ${absolutePath}`, filePath);
|
|
93
99
|
}
|
|
94
|
-
const loaded = loadManifest(absolutePath);
|
|
100
|
+
const loaded = loadManifest(absolutePath, localOptions);
|
|
95
101
|
return {
|
|
96
102
|
manifest: loaded.manifest,
|
|
97
103
|
sourceDir: dirname(absolutePath),
|
|
@@ -101,7 +107,7 @@ export function resolveToolFromPath(filePath) {
|
|
|
101
107
|
};
|
|
102
108
|
}
|
|
103
109
|
// Treat as directory
|
|
104
|
-
const result = tryLoadFromDir(absolutePath, "file");
|
|
110
|
+
const result = tryLoadFromDir(absolutePath, "file", localOptions);
|
|
105
111
|
if (result) {
|
|
106
112
|
return result;
|
|
107
113
|
}
|
|
@@ -240,7 +246,8 @@ export function resolveToolAuto(toolNameOrPath, options = {}) {
|
|
|
240
246
|
}
|
|
241
247
|
// Check if the path exists as-is (could be a relative directory without ./)
|
|
242
248
|
if (existsSync(toolNameOrPath)) {
|
|
243
|
-
|
|
249
|
+
// Local tools can have simple names (no hierarchy required)
|
|
250
|
+
const result = tryLoadFromDir(resolve(toolNameOrPath), "file", { allowSimpleNames: true });
|
|
244
251
|
if (result) {
|
|
245
252
|
return result;
|
|
246
253
|
}
|
package/dist/resolver.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../src/resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,
|
|
1
|
+
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../src/resolver.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@enactprotocol/shared",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.24",
|
|
4
4
|
"description": "Core business logic and utilities for Enact",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
"typecheck": "tsc --noEmit"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@enactprotocol/trust": "2.1.
|
|
21
|
+
"@enactprotocol/trust": "2.1.24",
|
|
22
22
|
"js-yaml": "^4.1.1",
|
|
23
23
|
"zod": "^4.1.13"
|
|
24
24
|
},
|
package/src/manifest/index.ts
CHANGED
|
@@ -18,9 +18,11 @@ export {
|
|
|
18
18
|
validateManifest,
|
|
19
19
|
validateManifestStrict,
|
|
20
20
|
isValidToolName,
|
|
21
|
+
isValidLocalToolName,
|
|
21
22
|
isValidVersion,
|
|
22
23
|
isValidTimeout,
|
|
23
24
|
ToolManifestSchema,
|
|
25
|
+
type ValidateManifestOptions,
|
|
24
26
|
} from "./validator";
|
|
25
27
|
|
|
26
28
|
// Loader
|
|
@@ -33,4 +35,5 @@ export {
|
|
|
33
35
|
tryLoadManifest,
|
|
34
36
|
tryLoadManifestFromDir,
|
|
35
37
|
type LoadedManifest,
|
|
38
|
+
type LoadManifestOptions,
|
|
36
39
|
} from "./loader";
|