@agentxm/client-core 0.4.3 → 0.4.5
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/src/unstable/lint/catalog/index.d.ts +1 -1
- package/dist/src/unstable/lint/catalog/index.d.ts.map +1 -1
- package/dist/src/unstable/lint/catalog/index.js +1 -1
- package/dist/src/unstable/lint/catalog/index.js.map +1 -1
- package/dist/src/unstable/lint/catalog/skill/manifest-present.d.ts +7 -1
- package/dist/src/unstable/lint/catalog/skill/manifest-present.d.ts.map +1 -1
- package/dist/src/unstable/lint/catalog/skill/manifest-present.js +8 -2
- package/dist/src/unstable/lint/catalog/skill/manifest-present.js.map +1 -1
- package/dist/src/unstable/lint/catalog/skill-accessor/contexts.d.ts +6 -1
- package/dist/src/unstable/lint/catalog/skill-accessor/contexts.d.ts.map +1 -1
- package/dist/src/unstable/lint/catalog/skill-accessor/contexts.js +6 -1
- package/dist/src/unstable/lint/catalog/skill-accessor/contexts.js.map +1 -1
- package/dist/src/unstable/lint/catalog/skill-accessor/vft.d.ts +19 -0
- package/dist/src/unstable/lint/catalog/skill-accessor/vft.d.ts.map +1 -1
- package/dist/src/unstable/lint/catalog/skill-accessor/vft.js +52 -0
- package/dist/src/unstable/lint/catalog/skill-accessor/vft.js.map +1 -1
- package/dist/src/unstable/lint/catalog/workspace-accessor/contexts.d.ts.map +1 -1
- package/dist/src/unstable/lint/catalog/workspace-accessor/contexts.js +7 -3
- package/dist/src/unstable/lint/catalog/workspace-accessor/contexts.js.map +1 -1
- package/dist/src/unstable/lint/context.d.ts +17 -0
- package/dist/src/unstable/lint/context.d.ts.map +1 -1
- package/dist/src/unstable/lint/index.d.ts +1 -1
- package/dist/src/unstable/lint/index.d.ts.map +1 -1
- package/dist/src/unstable/lint/index.js +1 -1
- package/dist/src/unstable/lint/index.js.map +1 -1
- package/package.json +2 -2
- package/site-content/install.cmd +80 -0
- package/site-content/install.md +63 -25
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
export { skillRules } from "./skill.js";
|
|
17
17
|
export { packRules } from "./pack.js";
|
|
18
18
|
export { workspaceRules } from "./workspace.js";
|
|
19
|
-
export { makeVftSkillFileAccessor, type VFTNode } from "./skill-accessor/vft.js";
|
|
19
|
+
export { makeVftSkillFileAccessor, makeVftSkillFileAccessorScoped, type VFTNode, } from "./skill-accessor/vft.js";
|
|
20
20
|
export { makePlatformSkillFileAccessor, type SkillAccessorPlatform, } from "./skill-accessor/platform.js";
|
|
21
21
|
export { buildSkillRuleContexts, type InstalledSkillInfo, type SkillIndexView, } from "./skill-accessor/contexts.js";
|
|
22
22
|
export { makeVftPackFileAccessor, type PackVFTNode } from "./pack-accessor/vft.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/unstable/lint/catalog/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGhD,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/unstable/lint/catalog/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGhD,OAAO,EACL,wBAAwB,EACxB,8BAA8B,EAC9B,KAAK,OAAO,GACb,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,6BAA6B,EAC7B,KAAK,qBAAqB,GAC3B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,KAAK,cAAc,GACpB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAE,uBAAuB,EAAE,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACnF,OAAO,EACL,4BAA4B,EAC5B,KAAK,oBAAoB,GAC1B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,qBAAqB,EACrB,KAAK,iBAAiB,EACtB,KAAK,aAAa,GACnB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EACL,iCAAiC,EACjC,KAAK,iCAAiC,EACtC,KAAK,yBAAyB,EAC9B,KAAK,kBAAkB,GACxB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,yBAAyB,EACzB,6BAA6B,EAC7B,+BAA+B,EAC/B,sBAAsB,EACtB,wBAAwB,EACxB,8BAA8B,EAC9B,uBAAuB,EACvB,KAAK,0BAA0B,EAC/B,KAAK,mCAAmC,EACxC,KAAK,iCAAiC,EACtC,KAAK,6BAA6B,EAClC,KAAK,cAAc,GACpB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,6BAA6B,EAC7B,2BAA2B,EAC3B,KAAK,yBAAyB,GAC/B,MAAM,oCAAoC,CAAC;AAE5C;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,EAAE,aAAa,CAAC,MAAM,CAInD,CAAC"}
|
|
@@ -20,7 +20,7 @@ export { skillRules } from "./skill.js";
|
|
|
20
20
|
export { packRules } from "./pack.js";
|
|
21
21
|
export { workspaceRules } from "./workspace.js";
|
|
22
22
|
// Phase 3a accessor + context-builder helpers.
|
|
23
|
-
export { makeVftSkillFileAccessor } from "./skill-accessor/vft.js";
|
|
23
|
+
export { makeVftSkillFileAccessor, makeVftSkillFileAccessorScoped, } from "./skill-accessor/vft.js";
|
|
24
24
|
export { makePlatformSkillFileAccessor, } from "./skill-accessor/platform.js";
|
|
25
25
|
export { buildSkillRuleContexts, } from "./skill-accessor/contexts.js";
|
|
26
26
|
// Phase 3b accessor + context-builder helpers.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/unstable/lint/catalog/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,+CAA+C;AAC/C,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/unstable/lint/catalog/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,+CAA+C;AAC/C,OAAO,EACL,wBAAwB,EACxB,8BAA8B,GAE/B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,6BAA6B,GAE9B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,sBAAsB,GAGvB,MAAM,8BAA8B,CAAC;AAEtC,+CAA+C;AAC/C,OAAO,EAAE,uBAAuB,EAAoB,MAAM,wBAAwB,CAAC;AACnF,OAAO,EACL,4BAA4B,GAE7B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,qBAAqB,GAGtB,MAAM,6BAA6B,CAAC;AAErC,+CAA+C;AAC/C,OAAO,EACL,iCAAiC,GAIlC,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,yBAAyB,EACzB,6BAA6B,EAC7B,+BAA+B,EAC/B,sBAAsB,EACtB,wBAAwB,EACxB,8BAA8B,EAC9B,uBAAuB,GAMxB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,6BAA6B,EAC7B,2BAA2B,GAE5B,MAAM,oCAAoC,CAAC;AAE5C;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAA0B;IACtD,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9B,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7B,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;CACnC,CAAC"}
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* `skill/manifest-present` — native skills must have a `skill.json` at the
|
|
3
|
-
*
|
|
3
|
+
* extension package root.
|
|
4
|
+
*
|
|
5
|
+
* Reads through `context.packageFiles` (package-root accessor) rather than
|
|
6
|
+
* `context.files` (content-root accessor). For native skills, the package
|
|
7
|
+
* root contains `skill.json` and a `src/` directory holding the skill
|
|
8
|
+
* content; `context.files` is rooted at `src/`, so `skill.json` is only
|
|
9
|
+
* reachable via `packageFiles`.
|
|
4
10
|
*
|
|
5
11
|
* Native-only via `check` early-return: when `subject.isNative === false`
|
|
6
12
|
* (managed-external skills without a declared manifest), the rule produces
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest-present.d.ts","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/skill/manifest-present.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"manifest-present.d.ts","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/skill/manifest-present.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAmB,YAAY,EAAE,MAAM,eAAe,CAAC;AAKnE,eAAO,MAAM,mBAAmB,EAAE,YAAY,CAAC,gBAAgB,CA4B9D,CAAC"}
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* `skill/manifest-present` — native skills must have a `skill.json` at the
|
|
3
|
-
*
|
|
3
|
+
* extension package root.
|
|
4
|
+
*
|
|
5
|
+
* Reads through `context.packageFiles` (package-root accessor) rather than
|
|
6
|
+
* `context.files` (content-root accessor). For native skills, the package
|
|
7
|
+
* root contains `skill.json` and a `src/` directory holding the skill
|
|
8
|
+
* content; `context.files` is rooted at `src/`, so `skill.json` is only
|
|
9
|
+
* reachable via `packageFiles`.
|
|
4
10
|
*
|
|
5
11
|
* Native-only via `check` early-return: when `subject.isNative === false`
|
|
6
12
|
* (managed-external skills without a declared manifest), the rule produces
|
|
@@ -24,7 +30,7 @@ export const manifestPresentRule = {
|
|
|
24
30
|
if (!context.subject.isNative) {
|
|
25
31
|
return Effect.succeed([]);
|
|
26
32
|
}
|
|
27
|
-
return Effect.map(context.
|
|
33
|
+
return Effect.map(context.packageFiles.exists(SKILL_JSON), (present) => {
|
|
28
34
|
if (present) {
|
|
29
35
|
return [];
|
|
30
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest-present.js","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/skill/manifest-present.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"manifest-present.js","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/skill/manifest-present.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAIxC,MAAM,OAAO,GAAG,wBAAwB,CAAC;AACzC,MAAM,UAAU,GAAG,YAAY,CAAC;AAEhC,MAAM,CAAC,MAAM,mBAAmB,GAAmC;IACjE,EAAE,EAAE,OAAO;IACX,WAAW,EAAE,mDAAmD;IAChE,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE,OAAO;IACjB,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE;QACjB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YAC9B,OAAO,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO,MAAM,CAAC,GAAG,CACf,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,EACvC,CAAC,OAAO,EAAkC,EAAE;YAC1C,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,OAAO;gBACL;oBACE,IAAI,EAAE,UAAU;oBAChB,MAAM,EAAE,OAAO;oBACf,QAAQ,EAAE,OAAO;oBACjB,OAAO,EACL,wIAAwI;oBAC1I,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;iBAC/B;aACF,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;CACF,CAAC"}
|
|
@@ -13,8 +13,12 @@
|
|
|
13
13
|
* once per skill, so rules don't re-read + re-parse).
|
|
14
14
|
* - `displayRoot` — posix-relative root used by the renderer; the caller
|
|
15
15
|
* picks per provenance (see the table below).
|
|
16
|
-
* - `files` — the pre-bound `SkillFileAccessor
|
|
16
|
+
* - `files` — the pre-bound content-root `SkillFileAccessor` (rooted at the
|
|
17
|
+
* directory containing `SKILL.md`). The caller chooses VFT or
|
|
17
18
|
* platform-backed.
|
|
19
|
+
* - `packageFiles` — the pre-bound package-root `SkillFileAccessor` (rooted
|
|
20
|
+
* at the directory containing `skill.json` for native skills). For
|
|
21
|
+
* non-native skills, callers MAY alias `files`.
|
|
18
22
|
*
|
|
19
23
|
* Provenance → `displayRoot` table:
|
|
20
24
|
*
|
|
@@ -40,6 +44,7 @@ export interface InstalledSkillInfo {
|
|
|
40
44
|
readonly skillJson: unknown;
|
|
41
45
|
readonly displayRoot: string;
|
|
42
46
|
readonly files: SkillFileAccessor;
|
|
47
|
+
readonly packageFiles: SkillFileAccessor;
|
|
43
48
|
}
|
|
44
49
|
/**
|
|
45
50
|
* Minimal structural shape of the WorkspaceIndex subset `buildSkillRuleContexts`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contexts.d.ts","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/skill-accessor/contexts.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"contexts.d.ts","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/skill-accessor/contexts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAM5E;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC;IAClC,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAAC;CAC1C;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,eAAe,EAAE,aAAa,CAAC,kBAAkB,CAAC,CAAC;CAC7D;AAMD;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,GAAI,OAAO,cAAc,KAAG,aAAa,CAAC,gBAAgB,CAW1F,CAAC"}
|
|
@@ -13,8 +13,12 @@
|
|
|
13
13
|
* once per skill, so rules don't re-read + re-parse).
|
|
14
14
|
* - `displayRoot` — posix-relative root used by the renderer; the caller
|
|
15
15
|
* picks per provenance (see the table below).
|
|
16
|
-
* - `files` — the pre-bound `SkillFileAccessor
|
|
16
|
+
* - `files` — the pre-bound content-root `SkillFileAccessor` (rooted at the
|
|
17
|
+
* directory containing `SKILL.md`). The caller chooses VFT or
|
|
17
18
|
* platform-backed.
|
|
19
|
+
* - `packageFiles` — the pre-bound package-root `SkillFileAccessor` (rooted
|
|
20
|
+
* at the directory containing `skill.json` for native skills). For
|
|
21
|
+
* non-native skills, callers MAY alias `files`.
|
|
18
22
|
*
|
|
19
23
|
* Provenance → `displayRoot` table:
|
|
20
24
|
*
|
|
@@ -45,6 +49,7 @@ export const buildSkillRuleContexts = (index) => index.installedSkills.map((info
|
|
|
45
49
|
skillJson: info.skillJson,
|
|
46
50
|
},
|
|
47
51
|
files: info.files,
|
|
52
|
+
packageFiles: info.packageFiles,
|
|
48
53
|
displayRoot: info.displayRoot,
|
|
49
54
|
}));
|
|
50
55
|
//# sourceMappingURL=contexts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contexts.js","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/skill-accessor/contexts.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"contexts.js","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/skill-accessor/contexts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAmCH,gFAAgF;AAChF,yBAAyB;AACzB,gFAAgF;AAEhF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,KAAqB,EAAmC,EAAE,CAC/F,KAAK,CAAC,eAAe,CAAC,GAAG,CACvB,CAAC,IAAI,EAAoB,EAAE,CAAC,CAAC;IAC3B,OAAO,EAAE;QACP,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,SAAS,EAAE,IAAI,CAAC,SAAS;KAC1B;IACD,KAAK,EAAE,IAAI,CAAC,KAAK;IACjB,YAAY,EAAE,IAAI,CAAC,YAAY;IAC/B,WAAW,EAAE,IAAI,CAAC,WAAW;CAC9B,CAAC,CACH,CAAC"}
|
|
@@ -55,4 +55,23 @@ export interface VFTNode {
|
|
|
55
55
|
* @experimental This API is unstable and may change without notice.
|
|
56
56
|
*/
|
|
57
57
|
export declare const makeVftSkillFileAccessor: (tree: VFTNode) => SkillFileAccessor;
|
|
58
|
+
/**
|
|
59
|
+
* Build a VFT-backed `SkillFileAccessor` rooted at a sub-path of the tree.
|
|
60
|
+
*
|
|
61
|
+
* Publish callers use this when the archive layout nests the skill content
|
|
62
|
+
* under a directory (for native managed skills: `src/` holds the content
|
|
63
|
+
* accessor root while the archive root holds the extension package). The
|
|
64
|
+
* `prefix` is a posix path relative to the tree root; every rule-supplied
|
|
65
|
+
* path is resolved as `<prefix>/<path>` before dispatching to the tree.
|
|
66
|
+
*
|
|
67
|
+
* Bounds enforcement matches {@link makeVftSkillFileAccessor} — path traversal
|
|
68
|
+
* checks run on the caller-supplied path before the prefix is applied, so
|
|
69
|
+
* rules still cannot escape above the scoped root.
|
|
70
|
+
*
|
|
71
|
+
* The prefix itself is normalized posix (leading `./` and trailing `/` stripped);
|
|
72
|
+
* an empty or `.` prefix is equivalent to {@link makeVftSkillFileAccessor}.
|
|
73
|
+
*
|
|
74
|
+
* @experimental This API is unstable and may change without notice.
|
|
75
|
+
*/
|
|
76
|
+
export declare const makeVftSkillFileAccessorScoped: (tree: VFTNode, prefix: string) => SkillFileAccessor;
|
|
58
77
|
//# sourceMappingURL=vft.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vft.d.ts","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/skill-accessor/vft.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAGH,OAAO,KAAK,EAAmB,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAM3E;;;;;;;;GAQG;AACH,MAAM,WAAW,OAAO;IACtB;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC;IACjD;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,UAAU,GAAG,SAAS,CAAC;CACjE;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,wBAAwB,GAAI,MAAM,OAAO,KAAG,iBAqBxD,CAAC"}
|
|
1
|
+
{"version":3,"file":"vft.d.ts","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/skill-accessor/vft.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAGH,OAAO,KAAK,EAAmB,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAM3E;;;;;;;;GAQG;AACH,MAAM,WAAW,OAAO;IACtB;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC;IACjD;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,UAAU,GAAG,SAAS,CAAC;CACjE;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,wBAAwB,GAAI,MAAM,OAAO,KAAG,iBAqBxD,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,8BAA8B,GACzC,MAAM,OAAO,EACb,QAAQ,MAAM,KACb,iBA2BF,CAAC"}
|
|
@@ -56,6 +56,58 @@ export const makeVftSkillFileAccessor = (tree) => {
|
|
|
56
56
|
},
|
|
57
57
|
};
|
|
58
58
|
};
|
|
59
|
+
/**
|
|
60
|
+
* Build a VFT-backed `SkillFileAccessor` rooted at a sub-path of the tree.
|
|
61
|
+
*
|
|
62
|
+
* Publish callers use this when the archive layout nests the skill content
|
|
63
|
+
* under a directory (for native managed skills: `src/` holds the content
|
|
64
|
+
* accessor root while the archive root holds the extension package). The
|
|
65
|
+
* `prefix` is a posix path relative to the tree root; every rule-supplied
|
|
66
|
+
* path is resolved as `<prefix>/<path>` before dispatching to the tree.
|
|
67
|
+
*
|
|
68
|
+
* Bounds enforcement matches {@link makeVftSkillFileAccessor} — path traversal
|
|
69
|
+
* checks run on the caller-supplied path before the prefix is applied, so
|
|
70
|
+
* rules still cannot escape above the scoped root.
|
|
71
|
+
*
|
|
72
|
+
* The prefix itself is normalized posix (leading `./` and trailing `/` stripped);
|
|
73
|
+
* an empty or `.` prefix is equivalent to {@link makeVftSkillFileAccessor}.
|
|
74
|
+
*
|
|
75
|
+
* @experimental This API is unstable and may change without notice.
|
|
76
|
+
*/
|
|
77
|
+
export const makeVftSkillFileAccessorScoped = (tree, prefix) => {
|
|
78
|
+
const normalizedPrefix = normalizePrefix(prefix);
|
|
79
|
+
if (normalizedPrefix === "") {
|
|
80
|
+
return makeVftSkillFileAccessor(tree);
|
|
81
|
+
}
|
|
82
|
+
const join = (path) => path === "" ? normalizedPrefix : `${normalizedPrefix}/${path}`;
|
|
83
|
+
return {
|
|
84
|
+
exists: (path) => {
|
|
85
|
+
const normalized = normalizeAndCheck(path);
|
|
86
|
+
if (normalized.kind !== "ok") {
|
|
87
|
+
return Effect.succeed(false);
|
|
88
|
+
}
|
|
89
|
+
return Effect.succeed(tree.hasFile(join(normalized.path)));
|
|
90
|
+
},
|
|
91
|
+
readBytes: (path) => {
|
|
92
|
+
const normalized = normalizeAndCheck(path);
|
|
93
|
+
if (normalized.kind === "escape") {
|
|
94
|
+
return failFileAccess(path, "path-escape", `path escapes the accessor root: ${path}`);
|
|
95
|
+
}
|
|
96
|
+
const bytes = tree.getFile(join(normalized.path));
|
|
97
|
+
if (bytes === undefined) {
|
|
98
|
+
return failFileAccess(path, "read-error", `file not found at ${path}`);
|
|
99
|
+
}
|
|
100
|
+
return Effect.succeed(bytes);
|
|
101
|
+
},
|
|
102
|
+
};
|
|
103
|
+
};
|
|
104
|
+
const normalizePrefix = (prefix) => {
|
|
105
|
+
const stripped = prefix.replace(/\\/g, "/").replace(/^\.\//, "").replace(/\/+$/, "");
|
|
106
|
+
if (stripped === "" || stripped === ".") {
|
|
107
|
+
return "";
|
|
108
|
+
}
|
|
109
|
+
return stripped;
|
|
110
|
+
};
|
|
59
111
|
const normalizeAndCheck = (path) => {
|
|
60
112
|
if (path === "" || path === "." || path === "./") {
|
|
61
113
|
return { kind: "ok", path: "" };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vft.js","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/skill-accessor/vft.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AA4BxC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,IAAa,EAAqB,EAAE;IAC3E,OAAO;QACL,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACf,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,UAAU,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;gBAC7B,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC/B,CAAC;YACD,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QACvD,CAAC;QACD,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE;YAClB,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,UAAU,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACjC,OAAO,cAAc,CAAC,IAAI,EAAE,aAAa,EAAE,mCAAmC,IAAI,EAAE,CAAC,CAAC;YACxF,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAC5C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,OAAO,cAAc,CAAC,IAAI,EAAE,YAAY,EAAE,qBAAqB,IAAI,EAAE,CAAC,CAAC;YACzE,CAAC;YACD,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAQF,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAmB,EAAE;IAC1D,IAAI,IAAI,KAAK,EAAE,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QACjD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IAClC,CAAC;IACD,uEAAuE;IACvE,8CAA8C;IAC9C,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAChF,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC5B,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACvC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC5B,CAAC;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;AAC1C,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CACrB,IAAY,EACZ,MAAiC,EACjC,OAAe,EAC6B,EAAE,CAC9C,MAAM,CAAC,IAAI,CAAC;IACV,IAAI,EAAE,iBAA0B;IAChC,IAAI;IACJ,MAAM;IACN,OAAO;CACR,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"vft.js","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/skill-accessor/vft.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contexts.d.ts","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/workspace-accessor/contexts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,KAAK,KAAK,UAAU,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,KAAK,IAAI,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACpB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,aAAa,EACnB,MAAM,8BAA8B,CAAC;AAItC,OAAO,KAAK,EAAE,yBAAyB,EAAsB,MAAM,eAAe,CAAC;AAMnF;;;;;;;GAOG;AACH,MAAM,WAAW,cAAe,SAAQ,cAAc,EAAE,aAAa;IACnE,QAAQ,CAAC,eAAe,EAAE,aAAa,CAAC,kBAAkB,CAAC,CAAC;IAC5D,QAAQ,CAAC,cAAc,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;CAC3D;AAMD;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,QAAQ,EAAE,yBAAyB,CAAC;IAC7C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAAC;IACnC;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,GACpC,MAAM,6BAA6B,KAClC,oBAaF,CAAC;AAeF;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,GAAI,OAAO,MAAM,EAAE,MAAM,MAAM,KAAG,MAC9B,CAAC;AAEhD;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,GAAI,MAAM,MAAM,KAAG,MACb,CAAC;AAE5C;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB,GAAI,OAAO,MAAM,EAAE,MAAM,MAAM,KAAG,MAC5B,CAAC;AAO3C;;;GAGG;AACH,MAAM,WAAW,iCAAiC;IAChD,QAAQ,CAAC,QAAQ,EAAE;QACjB,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAC,UAAU,CAAC;QACnC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;KAC1B,CAAC;IACF,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B;AAED;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,GACxC,MAAM,iCAAiC,KACtC,
|
|
1
|
+
{"version":3,"file":"contexts.d.ts","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/workspace-accessor/contexts.ts"],"names":[],"mappings":"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"}
|
|
@@ -83,12 +83,14 @@ export const registryPackDisplayRoot = (owner, name) => `.axm/extensions/${owner
|
|
|
83
83
|
* @experimental This API is unstable and may change without notice.
|
|
84
84
|
*/
|
|
85
85
|
export const buildNativeInstalledSkillInfo = (args) => {
|
|
86
|
-
const
|
|
86
|
+
const packageRoot = args.platform.path.resolve(args.workspaceRoot, `.axm/extensions/${args.owner}/skills/${args.name}`);
|
|
87
|
+
const contentRoot = args.platform.path.resolve(packageRoot, "src");
|
|
87
88
|
return {
|
|
88
89
|
isNative: true,
|
|
89
90
|
skillJson: args.skillJson,
|
|
90
91
|
displayRoot: registryNativeSkillDisplayRoot(args.owner, args.name),
|
|
91
|
-
files: makePlatformSkillFileAccessor(args.platform,
|
|
92
|
+
files: makePlatformSkillFileAccessor(args.platform, contentRoot),
|
|
93
|
+
packageFiles: makePlatformSkillFileAccessor(args.platform, packageRoot),
|
|
92
94
|
};
|
|
93
95
|
};
|
|
94
96
|
/**
|
|
@@ -98,11 +100,13 @@ export const buildNativeInstalledSkillInfo = (args) => {
|
|
|
98
100
|
*/
|
|
99
101
|
export const buildExternalInstalledSkillInfo = (args) => {
|
|
100
102
|
const absoluteRoot = args.platform.path.resolve(args.workspaceRoot, `.axm/extensions/external/skills/${args.name}`);
|
|
103
|
+
const accessor = makePlatformSkillFileAccessor(args.platform, absoluteRoot);
|
|
101
104
|
return {
|
|
102
105
|
isNative: false,
|
|
103
106
|
skillJson: undefined,
|
|
104
107
|
displayRoot: externalSkillDisplayRoot(args.name),
|
|
105
|
-
files:
|
|
108
|
+
files: accessor,
|
|
109
|
+
packageFiles: accessor,
|
|
106
110
|
};
|
|
107
111
|
};
|
|
108
112
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contexts.js","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/workspace-accessor/contexts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAIxC,OAAO,EACL,sBAAsB,GAGvB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,qBAAqB,GAGtB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AAC9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,8BAA8B,CAAC;AAC5E,OAAO,EAAE,iCAAiC,EAAE,MAAM,eAAe,CAAC;AAuClE;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,IAAmC,EACb,EAAE;IACxB,MAAM,SAAS,GAAG,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,iCAAiC,CAAC;QACjD,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,IAAI,CAAC,KAAK;KAClB,CAAC,CAAC;IACH,OAAO;QACL,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;QACxD,SAAS,EAAE,QAAQ;QACnB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;KACpC,CAAC;AACJ,CAAC,CAAC;AAEF,gFAAgF;AAChF,4BAA4B;AAC5B,gFAAgF;AAEhF,MAAM,oBAAoB,GAAG,CAAC,KAAqB,EAAsB,EAAE,CAAC,CAAC;IAC3E,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;IACjE,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;CAChE,CAAC,CAAC;AAEH,gFAAgF;AAChF,mCAAmC;AACnC,gFAAgF;AAEhF;;;;GAIG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,KAAa,EAAE,IAAY,EAAU,EAAE,CACpF,mBAAmB,KAAK,WAAW,IAAI,MAAM,CAAC;AAEhD;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,IAAY,EAAU,EAAE,CAC/D,mCAAmC,IAAI,EAAE,CAAC;AAE5C;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,KAAa,EAAE,IAAY,EAAU,EAAE,CAC7E,mBAAmB,KAAK,UAAU,IAAI,EAAE,CAAC;AAsB3C;;;;GAIG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAC3C,IAAuC,EACnB,EAAE;IACtB,MAAM,
|
|
1
|
+
{"version":3,"file":"contexts.js","sourceRoot":"","sources":["../../../../../../src/unstable/lint/catalog/workspace-accessor/contexts.ts"],"names":[],"mappings":"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"}
|
|
@@ -159,7 +159,24 @@ export interface WorkspaceLintAccessor {
|
|
|
159
159
|
*/
|
|
160
160
|
export interface SkillRuleContext<S = SkillContent> {
|
|
161
161
|
readonly subject: S;
|
|
162
|
+
/**
|
|
163
|
+
* Content-root accessor. Rooted at the directory containing `SKILL.md`.
|
|
164
|
+
* For native (registry-installed) skills this is the `src/` sub-directory
|
|
165
|
+
* of the extension package; for non-native skills it is the skill's own
|
|
166
|
+
* directory. Rules validating skill content (`skill-md-present`,
|
|
167
|
+
* `frontmatter-parseable`, and any future rule evaluating files that
|
|
168
|
+
* render into agent directories) read through this accessor.
|
|
169
|
+
*/
|
|
162
170
|
readonly files: SkillFileAccessor;
|
|
171
|
+
/**
|
|
172
|
+
* Package-root accessor. Rooted at the skill's extension package root —
|
|
173
|
+
* the directory containing `skill.json` for native skills. For non-native
|
|
174
|
+
* skills that have no package/content split, this MAY alias `files`.
|
|
175
|
+
* Rules validating package-shape concerns (`manifest-present` and any
|
|
176
|
+
* future rule inspecting files at or above the content root) read through
|
|
177
|
+
* this accessor.
|
|
178
|
+
*/
|
|
179
|
+
readonly packageFiles: SkillFileAccessor;
|
|
163
180
|
readonly displayRoot: string;
|
|
164
181
|
}
|
|
165
182
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../src/unstable/lint/context.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../src/unstable/lint/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,5 +24,5 @@ export { issuesToFindings } from "./issues-to-findings.js";
|
|
|
24
24
|
export type { LintConfig, LintRuleSeverity, LintRulesMap } from "./config.js";
|
|
25
25
|
export { LintConfigSchema, LintRuleSeveritySchema, LintRulesMapSchema, platformCanonicalLintConfig, registerLintRuleIds, registeredLintRuleIds, } from "./config.js";
|
|
26
26
|
export { collectAutofixableEntries, collectRenderedFindings, countFindings, detectPublishGateDrift, evaluateAllCatalogs, renderFindingsText, resolveLintExitCategory, summarizeEvaluations, toLintHumanBlocks, toLintJsonDocument, type FindingCounts, type FixSummary, type GroupEvaluations, type LintHumanBlock, type LintHumanDiagnostic, type LintHumanReporter, type LintExitCategory, type LintJsonDocument, type LintJsonFinding, type LintSummary, type RenderFindingsArgs, type RenderedFinding, } from "./cli.js";
|
|
27
|
-
export { allCatalogRuleIds, buildExternalInstalledSkillInfo, buildInstalledPackInfo, buildNativeInstalledSkillInfo, buildPackRuleContexts, buildSkillRuleContexts, buildWorkspaceRuleContext, externalSkillDisplayRoot, isPerExtensionOperationName, makePlatformPackFileAccessor, makePlatformSkillFileAccessor, makePlatformWorkspaceLintAccessor, makeVftPackFileAccessor, makeVftSkillFileAccessor, packRules, PER_EXTENSION_OPERATION_NAMES, registryNativeSkillDisplayRoot, registryPackDisplayRoot, skillRules, workspaceRules, type BuildInstalledPackInfoArgs, type BuildInstalledSkillInfoExternalArgs, type BuildInstalledSkillInfoNativeArgs, type BuildWorkspaceRuleContextArgs, type InstalledPackInfo, type InstalledSkillInfo, type PackAccessorPlatform, type PackIndexView, type PackVFTNode, type PerExtensionOperationName, type PlatformWorkspaceLintAccessorArgs, type SkillAccessorPlatform, type SkillIndexView, type VFTNode, type WorkspaceAccessorPlatform, type WorkspaceIndex, type WorkspaceIndexView, } from "./catalog/index.js";
|
|
27
|
+
export { allCatalogRuleIds, buildExternalInstalledSkillInfo, buildInstalledPackInfo, buildNativeInstalledSkillInfo, buildPackRuleContexts, buildSkillRuleContexts, buildWorkspaceRuleContext, externalSkillDisplayRoot, isPerExtensionOperationName, makePlatformPackFileAccessor, makePlatformSkillFileAccessor, makePlatformWorkspaceLintAccessor, makeVftPackFileAccessor, makeVftSkillFileAccessor, makeVftSkillFileAccessorScoped, packRules, PER_EXTENSION_OPERATION_NAMES, registryNativeSkillDisplayRoot, registryPackDisplayRoot, skillRules, workspaceRules, type BuildInstalledPackInfoArgs, type BuildInstalledSkillInfoExternalArgs, type BuildInstalledSkillInfoNativeArgs, type BuildWorkspaceRuleContextArgs, type InstalledPackInfo, type InstalledSkillInfo, type PackAccessorPlatform, type PackIndexView, type PackVFTNode, type PerExtensionOperationName, type PlatformWorkspaceLintAccessorArgs, type SkillAccessorPlatform, type SkillIndexView, type VFTNode, type WorkspaceAccessorPlatform, type WorkspaceIndex, type WorkspaceIndexView, } from "./catalog/index.js";
|
|
28
28
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/unstable/lint/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,YAAY,EACV,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,WAAW,EACX,eAAe,EACf,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,QAAQ,GACT,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAGvF,YAAY,EACV,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG3D,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EAClB,2BAA2B,EAC3B,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAKrB,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EACvB,aAAa,EACb,sBAAsB,EACtB,mBAAmB,EACnB,kBAAkB,EAClB,uBAAuB,EACvB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,eAAe,GACrB,MAAM,UAAU,CAAC;AAMlB,OAAO,EACL,iBAAiB,EACjB,+BAA+B,EAC/B,sBAAsB,EACtB,6BAA6B,EAC7B,qBAAqB,EACrB,sBAAsB,EACtB,yBAAyB,EACzB,wBAAwB,EACxB,2BAA2B,EAC3B,4BAA4B,EAC5B,6BAA6B,EAC7B,iCAAiC,EACjC,uBAAuB,EACvB,wBAAwB,EACxB,SAAS,EACT,6BAA6B,EAC7B,8BAA8B,EAC9B,uBAAuB,EACvB,UAAU,EACV,cAAc,EACd,KAAK,0BAA0B,EAC/B,KAAK,mCAAmC,EACxC,KAAK,iCAAiC,EACtC,KAAK,6BAA6B,EAClC,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,yBAAyB,EAC9B,KAAK,iCAAiC,EACtC,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,KAAK,OAAO,EACZ,KAAK,yBAAyB,EAC9B,KAAK,cAAc,EACnB,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/unstable/lint/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,YAAY,EACV,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,WAAW,EACX,eAAe,EACf,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,QAAQ,GACT,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAGvF,YAAY,EACV,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG3D,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EAClB,2BAA2B,EAC3B,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAKrB,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EACvB,aAAa,EACb,sBAAsB,EACtB,mBAAmB,EACnB,kBAAkB,EAClB,uBAAuB,EACvB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,eAAe,GACrB,MAAM,UAAU,CAAC;AAMlB,OAAO,EACL,iBAAiB,EACjB,+BAA+B,EAC/B,sBAAsB,EACtB,6BAA6B,EAC7B,qBAAqB,EACrB,sBAAsB,EACtB,yBAAyB,EACzB,wBAAwB,EACxB,2BAA2B,EAC3B,4BAA4B,EAC5B,6BAA6B,EAC7B,iCAAiC,EACjC,uBAAuB,EACvB,wBAAwB,EACxB,8BAA8B,EAC9B,SAAS,EACT,6BAA6B,EAC7B,8BAA8B,EAC9B,uBAAuB,EACvB,UAAU,EACV,cAAc,EACd,KAAK,0BAA0B,EAC/B,KAAK,mCAAmC,EACxC,KAAK,iCAAiC,EACtC,KAAK,6BAA6B,EAClC,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,yBAAyB,EAC9B,KAAK,iCAAiC,EACtC,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,KAAK,OAAO,EACZ,KAAK,yBAAyB,EAC9B,KAAK,cAAc,EACnB,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC"}
|
|
@@ -31,5 +31,5 @@ export { collectAutofixableEntries, collectRenderedFindings, countFindings, dete
|
|
|
31
31
|
// Phase 3c lands `workspaceRules`). Importing this index triggers each
|
|
32
32
|
// catalog's module-load `registerLintRuleIds(...)` call so
|
|
33
33
|
// `.axm/settings.json` `lint.rules` keys can reference any exported rule id.
|
|
34
|
-
export { allCatalogRuleIds, buildExternalInstalledSkillInfo, buildInstalledPackInfo, buildNativeInstalledSkillInfo, buildPackRuleContexts, buildSkillRuleContexts, buildWorkspaceRuleContext, externalSkillDisplayRoot, isPerExtensionOperationName, makePlatformPackFileAccessor, makePlatformSkillFileAccessor, makePlatformWorkspaceLintAccessor, makeVftPackFileAccessor, makeVftSkillFileAccessor, packRules, PER_EXTENSION_OPERATION_NAMES, registryNativeSkillDisplayRoot, registryPackDisplayRoot, skillRules, workspaceRules, } from "./catalog/index.js";
|
|
34
|
+
export { allCatalogRuleIds, buildExternalInstalledSkillInfo, buildInstalledPackInfo, buildNativeInstalledSkillInfo, buildPackRuleContexts, buildSkillRuleContexts, buildWorkspaceRuleContext, externalSkillDisplayRoot, isPerExtensionOperationName, makePlatformPackFileAccessor, makePlatformSkillFileAccessor, makePlatformWorkspaceLintAccessor, makeVftPackFileAccessor, makeVftSkillFileAccessor, makeVftSkillFileAccessorScoped, packRules, PER_EXTENSION_OPERATION_NAMES, registryNativeSkillDisplayRoot, registryPackDisplayRoot, skillRules, workspaceRules, } from "./catalog/index.js";
|
|
35
35
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/unstable/lint/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAgBH,yCAAyC;AACzC,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAkB,MAAM,eAAe,CAAC;AAqBvF,iBAAiB;AACjB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,2BAA2B;AAC3B,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAI3D,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EAClB,2BAA2B,EAC3B,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAErB,0EAA0E;AAC1E,wEAAwE;AACxE,2BAA2B;AAC3B,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EACvB,aAAa,EACb,sBAAsB,EACtB,mBAAmB,EACnB,kBAAkB,EAClB,uBAAuB,EACvB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,GAanB,MAAM,UAAU,CAAC;AAElB,0EAA0E;AAC1E,uEAAuE;AACvE,2DAA2D;AAC3D,6EAA6E;AAC7E,OAAO,EACL,iBAAiB,EACjB,+BAA+B,EAC/B,sBAAsB,EACtB,6BAA6B,EAC7B,qBAAqB,EACrB,sBAAsB,EACtB,yBAAyB,EACzB,wBAAwB,EACxB,2BAA2B,EAC3B,4BAA4B,EAC5B,6BAA6B,EAC7B,iCAAiC,EACjC,uBAAuB,EACvB,wBAAwB,EACxB,SAAS,EACT,6BAA6B,EAC7B,8BAA8B,EAC9B,uBAAuB,EACvB,UAAU,EACV,cAAc,GAkBf,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/unstable/lint/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAgBH,yCAAyC;AACzC,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAkB,MAAM,eAAe,CAAC;AAqBvF,iBAAiB;AACjB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,2BAA2B;AAC3B,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAI3D,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EAClB,2BAA2B,EAC3B,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAErB,0EAA0E;AAC1E,wEAAwE;AACxE,2BAA2B;AAC3B,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EACvB,aAAa,EACb,sBAAsB,EACtB,mBAAmB,EACnB,kBAAkB,EAClB,uBAAuB,EACvB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,GAanB,MAAM,UAAU,CAAC;AAElB,0EAA0E;AAC1E,uEAAuE;AACvE,2DAA2D;AAC3D,6EAA6E;AAC7E,OAAO,EACL,iBAAiB,EACjB,+BAA+B,EAC/B,sBAAsB,EACtB,6BAA6B,EAC7B,qBAAqB,EACrB,sBAAsB,EACtB,yBAAyB,EACzB,wBAAwB,EACxB,2BAA2B,EAC3B,4BAA4B,EAC5B,6BAA6B,EAC7B,iCAAiC,EACjC,uBAAuB,EACvB,wBAAwB,EACxB,8BAA8B,EAC9B,SAAS,EACT,6BAA6B,EAC7B,8BAA8B,EAC9B,uBAAuB,EACvB,UAAU,EACV,cAAc,GAkBf,MAAM,oBAAoB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agentxm/client-core",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.5",
|
|
4
4
|
"description": "Core library for the axm agent extension manager. Unstable and unsupported — use the axm.sh CLI.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -215,6 +215,6 @@
|
|
|
215
215
|
"typescript": "^5.9.3",
|
|
216
216
|
"vitest": "^4.0.0",
|
|
217
217
|
"yaml": "^2.8.2",
|
|
218
|
-
"@agentxm/client-utils": "^0.4.
|
|
218
|
+
"@agentxm/client-utils": "^0.4.5"
|
|
219
219
|
}
|
|
220
220
|
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
@echo off
|
|
2
|
+
setlocal
|
|
3
|
+
|
|
4
|
+
rem Install script for axm - the extension manager for AI coding agents.
|
|
5
|
+
rem Usage: curl -fsSL -o install.cmd https://axm.sh/install.cmd && install.cmd
|
|
6
|
+
|
|
7
|
+
if defined AXM_INSTALL_BASE_URL (
|
|
8
|
+
set "BINARY_URL=%AXM_INSTALL_BASE_URL%/axm-windows-x64.exe"
|
|
9
|
+
) else (
|
|
10
|
+
set "BINARY_URL=https://github.com/agentxm/axm/releases/latest/download/axm-windows-x64.exe"
|
|
11
|
+
)
|
|
12
|
+
set "INSTALL_DIR=%LOCALAPPDATA%\axm"
|
|
13
|
+
set "INSTALL_PATH=%INSTALL_DIR%\axm.exe"
|
|
14
|
+
|
|
15
|
+
call :check_curl
|
|
16
|
+
call :install_axm
|
|
17
|
+
call :verify
|
|
18
|
+
goto :eof
|
|
19
|
+
|
|
20
|
+
:check_curl
|
|
21
|
+
where curl >nul 2>&1
|
|
22
|
+
if %errorlevel% neq 0 (
|
|
23
|
+
echo Error: curl is required but not found.
|
|
24
|
+
echo curl is included with Windows 10 and later.
|
|
25
|
+
echo.
|
|
26
|
+
echo If you are on an older version of Windows, use the PowerShell installer instead:
|
|
27
|
+
echo irm https://axm.sh/install.ps1 ^| iex
|
|
28
|
+
exit /b 1
|
|
29
|
+
)
|
|
30
|
+
goto :eof
|
|
31
|
+
|
|
32
|
+
:install_axm
|
|
33
|
+
echo Installing axm...
|
|
34
|
+
|
|
35
|
+
if not exist "%INSTALL_DIR%" (
|
|
36
|
+
mkdir "%INSTALL_DIR%"
|
|
37
|
+
if %errorlevel% neq 0 (
|
|
38
|
+
echo Error: Failed to create install directory: %INSTALL_DIR%
|
|
39
|
+
exit /b 1
|
|
40
|
+
)
|
|
41
|
+
)
|
|
42
|
+
|
|
43
|
+
curl -fsSL -o "%INSTALL_PATH%" "%BINARY_URL%"
|
|
44
|
+
if %errorlevel% neq 0 (
|
|
45
|
+
echo Error: Failed to download axm binary.
|
|
46
|
+
echo URL: %BINARY_URL%
|
|
47
|
+
exit /b 1
|
|
48
|
+
)
|
|
49
|
+
|
|
50
|
+
rem Write install metadata
|
|
51
|
+
set "META_FILE=%INSTALL_DIR%\install-meta.json"
|
|
52
|
+
for /f %%i in ('powershell -NoProfile -Command "[DateTime]::UtcNow.ToString(\"yyyy-MM-dd'T'HH:mm:ss'Z'\")"') do set "TIMESTAMP=%%i"
|
|
53
|
+
if %errorlevel% neq 0 (
|
|
54
|
+
echo Error: Failed to generate install timestamp.
|
|
55
|
+
exit /b 1
|
|
56
|
+
)
|
|
57
|
+
echo {"method": "script", "installedAt": "%TIMESTAMP%"}>"%META_FILE%"
|
|
58
|
+
goto :eof
|
|
59
|
+
|
|
60
|
+
:verify
|
|
61
|
+
where axm >nul 2>&1
|
|
62
|
+
if %errorlevel% neq 0 (
|
|
63
|
+
echo.
|
|
64
|
+
echo axm was installed to %INSTALL_PATH%
|
|
65
|
+
echo but is not on your PATH.
|
|
66
|
+
echo.
|
|
67
|
+
echo To add it, run:
|
|
68
|
+
echo setx PATH "%%PATH%%;%INSTALL_DIR%"
|
|
69
|
+
echo.
|
|
70
|
+
echo Then open a new terminal and run:
|
|
71
|
+
echo axm --version
|
|
72
|
+
echo.
|
|
73
|
+
goto :eof
|
|
74
|
+
)
|
|
75
|
+
|
|
76
|
+
echo.
|
|
77
|
+
axm --version
|
|
78
|
+
echo.
|
|
79
|
+
echo Done! Run 'axm auth login' to authenticate.
|
|
80
|
+
goto :eof
|
package/site-content/install.md
CHANGED
|
@@ -34,14 +34,27 @@ extensions; public extensions install without an account.
|
|
|
34
34
|
|
|
35
35
|
## Detect existing install
|
|
36
36
|
|
|
37
|
-
Before installing, check whether axm is already on the machine
|
|
37
|
+
Before installing, check whether axm is already on the machine. This is a
|
|
38
|
+
**probe** — "not installed" is an expected outcome, not a failure. Invoke it
|
|
39
|
+
so the shell exits 0 on either branch and the signal lives in stdout (see
|
|
40
|
+
**Probe commands** under Invariants):
|
|
41
|
+
|
|
42
|
+
On macOS / Linux:
|
|
38
43
|
|
|
39
44
|
```bash
|
|
40
|
-
axm --version
|
|
45
|
+
command -v axm >/dev/null 2>&1 && axm --version || echo "NOT_INSTALLED"
|
|
41
46
|
```
|
|
42
47
|
|
|
43
|
-
|
|
44
|
-
|
|
48
|
+
On Windows (PowerShell):
|
|
49
|
+
|
|
50
|
+
```powershell
|
|
51
|
+
if (Get-Command axm -ErrorAction SilentlyContinue) { axm --version } else { "NOT_INSTALLED" }
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Branch on the output:
|
|
55
|
+
|
|
56
|
+
- **Prints `X.Y.Z`** → axm is installed. Upgrade it to the latest version
|
|
57
|
+
and skip the Install section:
|
|
45
58
|
|
|
46
59
|
```bash
|
|
47
60
|
axm upgrade
|
|
@@ -50,13 +63,12 @@ axm --version
|
|
|
50
63
|
`axm upgrade` auto-detects how axm was installed. For script installs it
|
|
51
64
|
downloads and swaps the binary in place. For Homebrew or npm installs it
|
|
52
65
|
prints the exact command to run (`brew upgrade agentxm/tap/axm` or
|
|
53
|
-
`npm update -g axm.sh`) — run whichever it emits, then re-run
|
|
54
|
-
|
|
66
|
+
`npm update -g axm.sh`) — run whichever it emits, then re-run the probe
|
|
67
|
+
above. Continue to **Verify** when done.
|
|
55
68
|
|
|
56
|
-
- **
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
the Install section.
|
|
69
|
+
- **Prints `NOT_INSTALLED`** → axm is not installed. Continue to **Install**.
|
|
70
|
+
- **Prints anything else** → treat as not installed and reinstall via the
|
|
71
|
+
Install section.
|
|
60
72
|
|
|
61
73
|
## Choose install method
|
|
62
74
|
|
|
@@ -187,10 +199,12 @@ axm --version
|
|
|
187
199
|
|
|
188
200
|
---
|
|
189
201
|
|
|
190
|
-
EXECUTE NOW: Run
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
202
|
+
EXECUTE NOW: Run the probe from **Detect existing install** (not bare
|
|
203
|
+
`axm --version` — see **Probe commands** under Invariants). If the output
|
|
204
|
+
is `X.Y.Z`, run `axm upgrade`. If the output is `NOT_INSTALLED`, detect
|
|
205
|
+
available package managers per **Choose install method**, ask the user if
|
|
206
|
+
more than one is available, and run the chosen installer. Stop when the
|
|
207
|
+
probe prints `X.Y.Z`, then proceed to **Check sign-in state**.
|
|
194
208
|
|
|
195
209
|
---
|
|
196
210
|
|
|
@@ -198,15 +212,29 @@ when `axm --version` succeeds, then proceed to **Check sign-in state**.
|
|
|
198
212
|
|
|
199
213
|
axm is installed. Before continuing, detect whether this machine is already
|
|
200
214
|
signed in to AgentXM.ai — the result decides whether to ask the user about
|
|
201
|
-
signing in or skip straight to workspace setup.
|
|
215
|
+
signing in or skip straight to workspace setup. This is a **probe** — "not
|
|
216
|
+
signed in" is an expected outcome, not a failure. Invoke it so the shell
|
|
217
|
+
exits 0 on either branch and the signal lives in stdout (see **Probe
|
|
218
|
+
commands** under Invariants):
|
|
219
|
+
|
|
220
|
+
On macOS / Linux:
|
|
202
221
|
|
|
203
222
|
```bash
|
|
204
|
-
axm whoami --json
|
|
223
|
+
axm whoami --json 2>/dev/null || echo '{"type":"error","code":"AUTH_LOGIN_REQUIRED"}'
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
On Windows (PowerShell):
|
|
227
|
+
|
|
228
|
+
```powershell
|
|
229
|
+
try { axm whoami --json } catch { '{"type":"error","code":"AUTH_LOGIN_REQUIRED"}' }
|
|
205
230
|
```
|
|
206
231
|
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
232
|
+
Branch on the JSON `type` field in stdout:
|
|
233
|
+
|
|
234
|
+
- **`type` is not `"error"`** (identity payload) → already signed in. Skip
|
|
235
|
+
to **Workspace setup**.
|
|
236
|
+
- **`type` is `"error"`** (typically with `code` = `AUTH_LOGIN_REQUIRED`) →
|
|
237
|
+
not signed in. Continue to **Ask the user what to do next**.
|
|
210
238
|
|
|
211
239
|
## Ask the user what to do next
|
|
212
240
|
|
|
@@ -272,16 +300,18 @@ Offer both paths and let the user pick:
|
|
|
272
300
|
paste a token the user has not shared with you.
|
|
273
301
|
|
|
274
302
|
Wait for the user to confirm sign-in is complete. Tell them you're about to
|
|
275
|
-
re-run
|
|
276
|
-
|
|
303
|
+
re-run the sign-in probe to verify the sign-in succeeded before moving on.
|
|
304
|
+
Use the same wrapper form as **Check sign-in state** so an unfinished
|
|
305
|
+
sign-in doesn't surface as a tool error:
|
|
277
306
|
|
|
278
307
|
```bash
|
|
279
|
-
axm whoami --json
|
|
308
|
+
axm whoami --json 2>/dev/null || echo '{"type":"error","code":"AUTH_LOGIN_REQUIRED"}'
|
|
280
309
|
```
|
|
281
310
|
|
|
282
|
-
If
|
|
283
|
-
sign-in did not complete —
|
|
284
|
-
retry the same path or
|
|
311
|
+
If the JSON `type` is not `"error"` (identity payload), continue to
|
|
312
|
+
**Workspace setup**. If `type` is `"error"`, the sign-in did not complete —
|
|
313
|
+
explain which check failed and ask the user to retry the same path or
|
|
314
|
+
switch paths.
|
|
285
315
|
|
|
286
316
|
---
|
|
287
317
|
|
|
@@ -304,6 +334,14 @@ unmanaged skills), extension management, and publishing.
|
|
|
304
334
|
|
|
305
335
|
## Invariants
|
|
306
336
|
|
|
337
|
+
- **Probe commands exit 0.** `axm --version` and `axm whoami --json` have
|
|
338
|
+
expected non-zero exit paths ("not installed", "not signed in") that are
|
|
339
|
+
part of the flow, not failures. Always invoke them using the wrappers in
|
|
340
|
+
**Detect existing install** and **Check sign-in state** so the shell
|
|
341
|
+
exits 0 on either branch and the signal lives in stdout; branch on the
|
|
342
|
+
output, not the exit code. Bare invocations surface expected non-zero
|
|
343
|
+
exits as tool errors in the agent's transcript, which is jarring and
|
|
344
|
+
implies something went wrong.
|
|
307
345
|
- **Explain why you're asking.** Whenever you need the user's consent, input,
|
|
308
346
|
or out-of-band action — picking an install method, running `axm login`,
|
|
309
347
|
opening a signup URL, approving a command you'd otherwise run yourself —
|