@agentxm/extension-model 0.28.4-bootstrap.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +110 -0
- package/README.md +17 -0
- package/dist/src/unstable/agent-capabilities/catalog.d.ts +47000 -0
- package/dist/src/unstable/agent-capabilities/catalog.js +172 -0
- package/dist/src/unstable/agent-capabilities/data/agents/adal.d.ts +162 -0
- package/dist/src/unstable/agent-capabilities/data/agents/adal.js +134 -0
- package/dist/src/unstable/agent-capabilities/data/agents/aider-desk.d.ts +167 -0
- package/dist/src/unstable/agent-capabilities/data/agents/aider-desk.js +133 -0
- package/dist/src/unstable/agent-capabilities/data/agents/amp.d.ts +203 -0
- package/dist/src/unstable/agent-capabilities/data/agents/amp.js +187 -0
- package/dist/src/unstable/agent-capabilities/data/agents/antigravity-cli.d.ts +186 -0
- package/dist/src/unstable/agent-capabilities/data/agents/antigravity-cli.js +140 -0
- package/dist/src/unstable/agent-capabilities/data/agents/antigravity.d.ts +357 -0
- package/dist/src/unstable/agent-capabilities/data/agents/antigravity.js +294 -0
- package/dist/src/unstable/agent-capabilities/data/agents/augment.d.ts +383 -0
- package/dist/src/unstable/agent-capabilities/data/agents/augment.js +329 -0
- package/dist/src/unstable/agent-capabilities/data/agents/chatgpt.d.ts +159 -0
- package/dist/src/unstable/agent-capabilities/data/agents/chatgpt.js +117 -0
- package/dist/src/unstable/agent-capabilities/data/agents/claude-ai.d.ts +153 -0
- package/dist/src/unstable/agent-capabilities/data/agents/claude-ai.js +105 -0
- package/dist/src/unstable/agent-capabilities/data/agents/claude-code.d.ts +460 -0
- package/dist/src/unstable/agent-capabilities/data/agents/claude-code.js +406 -0
- package/dist/src/unstable/agent-capabilities/data/agents/cline.d.ts +225 -0
- package/dist/src/unstable/agent-capabilities/data/agents/cline.js +190 -0
- package/dist/src/unstable/agent-capabilities/data/agents/codearts-agent.d.ts +246 -0
- package/dist/src/unstable/agent-capabilities/data/agents/codearts-agent.js +206 -0
- package/dist/src/unstable/agent-capabilities/data/agents/codebuddy.d.ts +420 -0
- package/dist/src/unstable/agent-capabilities/data/agents/codebuddy.js +378 -0
- package/dist/src/unstable/agent-capabilities/data/agents/codemaker.d.ts +143 -0
- package/dist/src/unstable/agent-capabilities/data/agents/codemaker.js +112 -0
- package/dist/src/unstable/agent-capabilities/data/agents/codestudio.d.ts +165 -0
- package/dist/src/unstable/agent-capabilities/data/agents/codestudio.js +136 -0
- package/dist/src/unstable/agent-capabilities/data/agents/codex.d.ts +458 -0
- package/dist/src/unstable/agent-capabilities/data/agents/codex.js +399 -0
- package/dist/src/unstable/agent-capabilities/data/agents/command-code.d.ts +247 -0
- package/dist/src/unstable/agent-capabilities/data/agents/command-code.js +222 -0
- package/dist/src/unstable/agent-capabilities/data/agents/continue.d.ts +322 -0
- package/dist/src/unstable/agent-capabilities/data/agents/continue.js +273 -0
- package/dist/src/unstable/agent-capabilities/data/agents/cortex.d.ts +306 -0
- package/dist/src/unstable/agent-capabilities/data/agents/cortex.js +241 -0
- package/dist/src/unstable/agent-capabilities/data/agents/cowork.d.ts +185 -0
- package/dist/src/unstable/agent-capabilities/data/agents/cowork.js +133 -0
- package/dist/src/unstable/agent-capabilities/data/agents/crush.d.ts +249 -0
- package/dist/src/unstable/agent-capabilities/data/agents/crush.js +218 -0
- package/dist/src/unstable/agent-capabilities/data/agents/cursor.d.ts +300 -0
- package/dist/src/unstable/agent-capabilities/data/agents/cursor.js +282 -0
- package/dist/src/unstable/agent-capabilities/data/agents/deepagents.d.ts +159 -0
- package/dist/src/unstable/agent-capabilities/data/agents/deepagents.js +137 -0
- package/dist/src/unstable/agent-capabilities/data/agents/devin.d.ts +410 -0
- package/dist/src/unstable/agent-capabilities/data/agents/devin.js +358 -0
- package/dist/src/unstable/agent-capabilities/data/agents/dexto.d.ts +166 -0
- package/dist/src/unstable/agent-capabilities/data/agents/dexto.js +141 -0
- package/dist/src/unstable/agent-capabilities/data/agents/droid.d.ts +318 -0
- package/dist/src/unstable/agent-capabilities/data/agents/droid.js +257 -0
- package/dist/src/unstable/agent-capabilities/data/agents/firebender.d.ts +313 -0
- package/dist/src/unstable/agent-capabilities/data/agents/firebender.js +244 -0
- package/dist/src/unstable/agent-capabilities/data/agents/forgecode.d.ts +193 -0
- package/dist/src/unstable/agent-capabilities/data/agents/forgecode.js +160 -0
- package/dist/src/unstable/agent-capabilities/data/agents/gemini-app.d.ts +153 -0
- package/dist/src/unstable/agent-capabilities/data/agents/gemini-app.js +105 -0
- package/dist/src/unstable/agent-capabilities/data/agents/gemini-cli.d.ts +424 -0
- package/dist/src/unstable/agent-capabilities/data/agents/gemini-cli.js +411 -0
- package/dist/src/unstable/agent-capabilities/data/agents/github-copilot-cli.d.ts +300 -0
- package/dist/src/unstable/agent-capabilities/data/agents/github-copilot-cli.js +307 -0
- package/dist/src/unstable/agent-capabilities/data/agents/goose.d.ts +162 -0
- package/dist/src/unstable/agent-capabilities/data/agents/goose.js +131 -0
- package/dist/src/unstable/agent-capabilities/data/agents/grok-cli.d.ts +186 -0
- package/dist/src/unstable/agent-capabilities/data/agents/grok-cli.js +164 -0
- package/dist/src/unstable/agent-capabilities/data/agents/hermes.d.ts +303 -0
- package/dist/src/unstable/agent-capabilities/data/agents/hermes.js +223 -0
- package/dist/src/unstable/agent-capabilities/data/agents/ibm-bob.d.ts +231 -0
- package/dist/src/unstable/agent-capabilities/data/agents/ibm-bob.js +200 -0
- package/dist/src/unstable/agent-capabilities/data/agents/iflow-cli.d.ts +182 -0
- package/dist/src/unstable/agent-capabilities/data/agents/iflow-cli.js +126 -0
- package/dist/src/unstable/agent-capabilities/data/agents/index.d.ts +67 -0
- package/dist/src/unstable/agent-capabilities/data/agents/index.js +67 -0
- package/dist/src/unstable/agent-capabilities/data/agents/junie.d.ts +219 -0
- package/dist/src/unstable/agent-capabilities/data/agents/junie.js +200 -0
- package/dist/src/unstable/agent-capabilities/data/agents/kilo.d.ts +282 -0
- package/dist/src/unstable/agent-capabilities/data/agents/kilo.js +260 -0
- package/dist/src/unstable/agent-capabilities/data/agents/kimi-cli.d.ts +350 -0
- package/dist/src/unstable/agent-capabilities/data/agents/kimi-cli.js +274 -0
- package/dist/src/unstable/agent-capabilities/data/agents/kiro-cli.d.ts +227 -0
- package/dist/src/unstable/agent-capabilities/data/agents/kiro-cli.js +197 -0
- package/dist/src/unstable/agent-capabilities/data/agents/kode.d.ts +166 -0
- package/dist/src/unstable/agent-capabilities/data/agents/kode.js +141 -0
- package/dist/src/unstable/agent-capabilities/data/agents/lingma.d.ts +185 -0
- package/dist/src/unstable/agent-capabilities/data/agents/lingma.js +149 -0
- package/dist/src/unstable/agent-capabilities/data/agents/mcpjam.d.ts +144 -0
- package/dist/src/unstable/agent-capabilities/data/agents/mcpjam.js +116 -0
- package/dist/src/unstable/agent-capabilities/data/agents/minimax-code.d.ts +138 -0
- package/dist/src/unstable/agent-capabilities/data/agents/minimax-code.js +93 -0
- package/dist/src/unstable/agent-capabilities/data/agents/mistral-vibe.d.ts +244 -0
- package/dist/src/unstable/agent-capabilities/data/agents/mistral-vibe.js +200 -0
- package/dist/src/unstable/agent-capabilities/data/agents/mux.d.ts +155 -0
- package/dist/src/unstable/agent-capabilities/data/agents/mux.js +127 -0
- package/dist/src/unstable/agent-capabilities/data/agents/neovate.d.ts +211 -0
- package/dist/src/unstable/agent-capabilities/data/agents/neovate.js +178 -0
- package/dist/src/unstable/agent-capabilities/data/agents/ona.d.ts +167 -0
- package/dist/src/unstable/agent-capabilities/data/agents/ona.js +110 -0
- package/dist/src/unstable/agent-capabilities/data/agents/openclaw.d.ts +139 -0
- package/dist/src/unstable/agent-capabilities/data/agents/openclaw.js +114 -0
- package/dist/src/unstable/agent-capabilities/data/agents/opencode.d.ts +220 -0
- package/dist/src/unstable/agent-capabilities/data/agents/opencode.js +192 -0
- package/dist/src/unstable/agent-capabilities/data/agents/openhands.d.ts +245 -0
- package/dist/src/unstable/agent-capabilities/data/agents/openhands.js +184 -0
- package/dist/src/unstable/agent-capabilities/data/agents/pi.d.ts +185 -0
- package/dist/src/unstable/agent-capabilities/data/agents/pi.js +169 -0
- package/dist/src/unstable/agent-capabilities/data/agents/pochi.d.ts +199 -0
- package/dist/src/unstable/agent-capabilities/data/agents/pochi.js +163 -0
- package/dist/src/unstable/agent-capabilities/data/agents/qoder-cn.d.ts +199 -0
- package/dist/src/unstable/agent-capabilities/data/agents/qoder-cn.js +141 -0
- package/dist/src/unstable/agent-capabilities/data/agents/qoder.d.ts +414 -0
- package/dist/src/unstable/agent-capabilities/data/agents/qoder.js +378 -0
- package/dist/src/unstable/agent-capabilities/data/agents/qwen-code.d.ts +406 -0
- package/dist/src/unstable/agent-capabilities/data/agents/qwen-code.js +345 -0
- package/dist/src/unstable/agent-capabilities/data/agents/replit.d.ts +144 -0
- package/dist/src/unstable/agent-capabilities/data/agents/replit.js +116 -0
- package/dist/src/unstable/agent-capabilities/data/agents/roo.d.ts +192 -0
- package/dist/src/unstable/agent-capabilities/data/agents/roo.js +180 -0
- package/dist/src/unstable/agent-capabilities/data/agents/rovodev.d.ts +189 -0
- package/dist/src/unstable/agent-capabilities/data/agents/rovodev.js +156 -0
- package/dist/src/unstable/agent-capabilities/data/agents/tabnine-cli.d.ts +280 -0
- package/dist/src/unstable/agent-capabilities/data/agents/tabnine-cli.js +223 -0
- package/dist/src/unstable/agent-capabilities/data/agents/trae-cn.d.ts +188 -0
- package/dist/src/unstable/agent-capabilities/data/agents/trae-cn.js +156 -0
- package/dist/src/unstable/agent-capabilities/data/agents/trae.d.ts +188 -0
- package/dist/src/unstable/agent-capabilities/data/agents/trae.js +156 -0
- package/dist/src/unstable/agent-capabilities/data/agents/warp.d.ts +169 -0
- package/dist/src/unstable/agent-capabilities/data/agents/warp.js +133 -0
- package/dist/src/unstable/agent-capabilities/data/agents/windsurf.d.ts +414 -0
- package/dist/src/unstable/agent-capabilities/data/agents/windsurf.js +326 -0
- package/dist/src/unstable/agent-capabilities/data/agents/zed.d.ts +168 -0
- package/dist/src/unstable/agent-capabilities/data/agents/zed.js +109 -0
- package/dist/src/unstable/agent-capabilities/data/agents/zencoder.d.ts +168 -0
- package/dist/src/unstable/agent-capabilities/data/agents/zencoder.js +137 -0
- package/dist/src/unstable/agent-capabilities/data/agents/zenflow.d.ts +153 -0
- package/dist/src/unstable/agent-capabilities/data/agents/zenflow.js +96 -0
- package/dist/src/unstable/agent-capabilities/derive.d.ts +129 -0
- package/dist/src/unstable/agent-capabilities/derive.js +389 -0
- package/dist/src/unstable/agent-capabilities/index.d.ts +15 -0
- package/dist/src/unstable/agent-capabilities/index.js +15 -0
- package/dist/src/unstable/agent-capabilities/lookup.d.ts +10 -0
- package/dist/src/unstable/agent-capabilities/lookup.js +9 -0
- package/dist/src/unstable/agent-capabilities/schema.d.ts +3788 -0
- package/dist/src/unstable/agent-capabilities/schema.js +1218 -0
- package/dist/src/unstable/agent-capabilities/verification.d.ts +25 -0
- package/dist/src/unstable/agent-capabilities/verification.js +40 -0
- package/dist/src/unstable/agents/registry.d.ts +33 -0
- package/dist/src/unstable/agents/registry.js +50 -0
- package/dist/src/unstable/agents/types.d.ts +126 -0
- package/dist/src/unstable/agents/types.js +17 -0
- package/dist/src/unstable/date-time.d.ts +17 -0
- package/dist/src/unstable/date-time.js +30 -0
- package/dist/src/unstable/discovery-walk.d.ts +8 -0
- package/dist/src/unstable/discovery-walk.js +15 -0
- package/dist/src/unstable/extension-types/index.d.ts +8 -0
- package/dist/src/unstable/extension-types/index.js +8 -0
- package/dist/src/unstable/extension-types/schema.d.ts +154 -0
- package/dist/src/unstable/extension-types/schema.js +102 -0
- package/dist/src/unstable/extension-types/standards.d.ts +29 -0
- package/dist/src/unstable/extension-types/standards.js +29 -0
- package/dist/src/unstable/extensions/common.d.ts +539 -0
- package/dist/src/unstable/extensions/common.js +605 -0
- package/dist/src/unstable/extensions/deprecation.d.ts +42 -0
- package/dist/src/unstable/extensions/deprecation.js +46 -0
- package/dist/src/unstable/extensions/fqn-pattern.d.ts +17 -0
- package/dist/src/unstable/extensions/fqn-pattern.js +63 -0
- package/dist/src/unstable/extensions/fqn.d.ts +51 -0
- package/dist/src/unstable/extensions/fqn.js +51 -0
- package/dist/src/unstable/extensions/handle.d.ts +16 -0
- package/dist/src/unstable/extensions/handle.js +30 -0
- package/dist/src/unstable/extensions/index.d.ts +13 -0
- package/dist/src/unstable/extensions/index.js +13 -0
- package/dist/src/unstable/extensions/installable-types.d.ts +12 -0
- package/dist/src/unstable/extensions/installable-types.js +21 -0
- package/dist/src/unstable/extensions/license.d.ts +16 -0
- package/dist/src/unstable/extensions/license.js +29 -0
- package/dist/src/unstable/extensions/manifest-metadata.d.ts +18 -0
- package/dist/src/unstable/extensions/manifest-metadata.js +61 -0
- package/dist/src/unstable/extensions/refs/extension-ref.d.ts +20 -0
- package/dist/src/unstable/extensions/refs/extension-ref.js +12 -0
- package/dist/src/unstable/extensions/refs/hook.d.ts +29 -0
- package/dist/src/unstable/extensions/refs/hook.js +8 -0
- package/dist/src/unstable/extensions/refs/knowledge.d.ts +15 -0
- package/dist/src/unstable/extensions/refs/knowledge.js +2 -0
- package/dist/src/unstable/extensions/refs/mcp-server.d.ts +19 -0
- package/dist/src/unstable/extensions/refs/mcp-server.js +8 -0
- package/dist/src/unstable/extensions/refs/pack.d.ts +17 -0
- package/dist/src/unstable/extensions/refs/pack.js +10 -0
- package/dist/src/unstable/extensions/refs/ref-base.d.ts +125 -0
- package/dist/src/unstable/extensions/refs/ref-base.js +12 -0
- package/dist/src/unstable/extensions/refs/rule.d.ts +27 -0
- package/dist/src/unstable/extensions/refs/rule.js +8 -0
- package/dist/src/unstable/extensions/refs/skill.d.ts +28 -0
- package/dist/src/unstable/extensions/refs/skill.js +11 -0
- package/dist/src/unstable/extensions/refs/subagent.d.ts +19 -0
- package/dist/src/unstable/extensions/refs/subagent.js +8 -0
- package/dist/src/unstable/extensions/registry-source.d.ts +37 -0
- package/dist/src/unstable/extensions/registry-source.js +158 -0
- package/dist/src/unstable/extensions/release-age.d.ts +36 -0
- package/dist/src/unstable/extensions/release-age.js +11 -0
- package/dist/src/unstable/extensions/universal-skills-dir.d.ts +58 -0
- package/dist/src/unstable/extensions/universal-skills-dir.js +68 -0
- package/dist/src/unstable/hooks/manifest-schema.d.ts +175 -0
- package/dist/src/unstable/hooks/manifest-schema.js +112 -0
- package/dist/src/unstable/knowledge/concept-ref.d.ts +34 -0
- package/dist/src/unstable/knowledge/concept-ref.js +114 -0
- package/dist/src/unstable/knowledge/index.d.ts +8 -0
- package/dist/src/unstable/knowledge/index.js +8 -0
- package/dist/src/unstable/knowledge/manifest-schema.d.ts +60 -0
- package/dist/src/unstable/knowledge/manifest-schema.js +34 -0
- package/dist/src/unstable/mcps/manifest-schema.d.ts +899 -0
- package/dist/src/unstable/mcps/manifest-schema.js +230 -0
- package/dist/src/unstable/package-urls/companion-package.d.ts +14 -0
- package/dist/src/unstable/package-urls/companion-package.js +44 -0
- package/dist/src/unstable/package-urls/index.d.ts +4 -0
- package/dist/src/unstable/package-urls/index.js +4 -0
- package/dist/src/unstable/package-urls/internal.d.ts +6 -0
- package/dist/src/unstable/package-urls/internal.js +17 -0
- package/dist/src/unstable/package-urls/package-identity-purl.d.ts +5 -0
- package/dist/src/unstable/package-urls/package-identity-purl.js +26 -0
- package/dist/src/unstable/package-urls/vers-range.d.ts +34 -0
- package/dist/src/unstable/package-urls/vers-range.js +163 -0
- package/dist/src/unstable/packaging/index.d.ts +8 -0
- package/dist/src/unstable/packaging/index.js +8 -0
- package/dist/src/unstable/packaging/package-type.d.ts +23 -0
- package/dist/src/unstable/packaging/package-type.js +31 -0
- package/dist/src/unstable/packaging/package-url.d.ts +50 -0
- package/dist/src/unstable/packaging/package-url.js +93 -0
- package/dist/src/unstable/packs/manifest-schema.d.ts +66 -0
- package/dist/src/unstable/packs/manifest-schema.js +34 -0
- package/dist/src/unstable/path-types.d.ts +22 -0
- package/dist/src/unstable/path-types.js +48 -0
- package/dist/src/unstable/rules/manifest-schema.d.ts +70 -0
- package/dist/src/unstable/rules/manifest-schema.js +43 -0
- package/dist/src/unstable/schema-issues.d.ts +13 -0
- package/dist/src/unstable/schema-issues.js +34 -0
- package/dist/src/unstable/skills/manifest-schema.d.ts +69 -0
- package/dist/src/unstable/skills/manifest-schema.js +31 -0
- package/dist/src/unstable/sources/forge-grammar.d.ts +22 -0
- package/dist/src/unstable/sources/forge-grammar.js +50 -0
- package/dist/src/unstable/sources/parser.d.ts +85 -0
- package/dist/src/unstable/sources/parser.js +122 -0
- package/dist/src/unstable/sources/printer.d.ts +14 -0
- package/dist/src/unstable/sources/printer.js +45 -0
- package/dist/src/unstable/sources/source-hash.d.ts +24 -0
- package/dist/src/unstable/sources/source-hash.js +22 -0
- package/dist/src/unstable/sources/source-host-provider.d.ts +112 -0
- package/dist/src/unstable/sources/source-host-provider.js +11 -0
- package/dist/src/unstable/sources/types.d.ts +262 -0
- package/dist/src/unstable/sources/types.js +127 -0
- package/dist/src/unstable/sources/workspace.d.ts +13 -0
- package/dist/src/unstable/sources/workspace.js +13 -0
- package/dist/src/unstable/subagents/manifest-schema.d.ts +81 -0
- package/dist/src/unstable/subagents/manifest-schema.js +43 -0
- package/dist/src/unstable/version-constraints/version-constraints.d.ts +71 -0
- package/dist/src/unstable/version-constraints/version-constraints.js +144 -0
- package/dist/src/unstable/workspace-files.d.ts +13 -0
- package/dist/src/unstable/workspace-files.js +13 -0
- package/dist/src/unstable/workspace-scope.d.ts +11 -0
- package/dist/src/unstable/workspace-scope.js +10 -0
- package/package.json +271 -0
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { Agent, AgentExtensionCapability } from "./schema.js";
|
|
2
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
3
|
+
export declare const CAPABILITY_VERIFICATION_BUDGET_DAYS: {
|
|
4
|
+
readonly skill: 90;
|
|
5
|
+
};
|
|
6
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
7
|
+
export type AgentCapabilitySlot = keyof Agent["capabilities"] | "rule" | "permissions";
|
|
8
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
9
|
+
export interface CapabilityVerificationAge {
|
|
10
|
+
readonly agentId: string;
|
|
11
|
+
readonly capability: AgentCapabilitySlot;
|
|
12
|
+
readonly status: AgentExtensionCapability["axm"]["status"];
|
|
13
|
+
readonly lastVerified: string | null;
|
|
14
|
+
readonly ageDays: number | null;
|
|
15
|
+
readonly budgetDays: number | null;
|
|
16
|
+
readonly overdue: boolean;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Reports verification age for every catalog capability independently. Pass an
|
|
20
|
+
* ISO date explicitly so CI and maintenance tooling produce reproducible output.
|
|
21
|
+
*
|
|
22
|
+
* @experimental This API is unstable and may change without notice.
|
|
23
|
+
*/
|
|
24
|
+
export declare const capabilityVerificationAgeReport: (agents: ReadonlyArray<Agent>, asOf: string) => ReadonlyArray<CapabilityVerificationAge>;
|
|
25
|
+
//# sourceMappingURL=verification.d.ts.map
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
2
|
+
export const CAPABILITY_VERIFICATION_BUDGET_DAYS = {
|
|
3
|
+
skill: 90,
|
|
4
|
+
};
|
|
5
|
+
const DAY_IN_MILLISECONDS = 24 * 60 * 60 * 1_000;
|
|
6
|
+
const capabilitySlots = (agent) => [
|
|
7
|
+
["skill", agent.capabilities.skill],
|
|
8
|
+
["mcp-server", agent.capabilities["mcp-server"]],
|
|
9
|
+
["subagent", agent.capabilities.subagent],
|
|
10
|
+
["hook", agent.capabilities.hook],
|
|
11
|
+
["rule", agent.instructions],
|
|
12
|
+
["permissions", agent.permissions],
|
|
13
|
+
];
|
|
14
|
+
const ageInDays = (lastVerified, asOf) => {
|
|
15
|
+
const verifiedAt = Date.parse(`${lastVerified}T00:00:00.000Z`);
|
|
16
|
+
const reportAt = Date.parse(`${asOf}T00:00:00.000Z`);
|
|
17
|
+
return Math.floor((reportAt - verifiedAt) / DAY_IN_MILLISECONDS);
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Reports verification age for every catalog capability independently. Pass an
|
|
21
|
+
* ISO date explicitly so CI and maintenance tooling produce reproducible output.
|
|
22
|
+
*
|
|
23
|
+
* @experimental This API is unstable and may change without notice.
|
|
24
|
+
*/
|
|
25
|
+
export const capabilityVerificationAgeReport = (agents, asOf) => agents.flatMap((agent) => capabilitySlots(agent).map(([capabilityName, capability]) => {
|
|
26
|
+
const budgetDays = capabilityName === "skill" ? CAPABILITY_VERIFICATION_BUDGET_DAYS.skill : null;
|
|
27
|
+
const ageDays = capability.axm.lastVerified === null ? null : ageInDays(capability.axm.lastVerified, asOf);
|
|
28
|
+
return {
|
|
29
|
+
agentId: agent.id,
|
|
30
|
+
capability: capabilityName,
|
|
31
|
+
status: capability.axm.status,
|
|
32
|
+
lastVerified: capability.axm.lastVerified,
|
|
33
|
+
ageDays,
|
|
34
|
+
budgetDays,
|
|
35
|
+
overdue: capability.axm.status === "supported" &&
|
|
36
|
+
budgetDays !== null &&
|
|
37
|
+
(ageDays === null || ageDays > budgetDays),
|
|
38
|
+
};
|
|
39
|
+
}));
|
|
40
|
+
//# sourceMappingURL=verification.js.map
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent registry containing all known AI coding agents.
|
|
3
|
+
*
|
|
4
|
+
* Derives descriptors from the capability catalog. O(1) lookup by agent ID.
|
|
5
|
+
*
|
|
6
|
+
* @experimental This API is unstable and may change without notice.
|
|
7
|
+
* @packageDocumentation
|
|
8
|
+
*/
|
|
9
|
+
import { type AgentId, type AgentRegistry } from "./types.js";
|
|
10
|
+
/**
|
|
11
|
+
* Complete registry of all known AI coding agents.
|
|
12
|
+
*
|
|
13
|
+
* Keys are agent IDs, values are full descriptor objects.
|
|
14
|
+
* Paths are pre-expanded at module initialization.
|
|
15
|
+
*
|
|
16
|
+
* @experimental This API is unstable and may change without notice.
|
|
17
|
+
*/
|
|
18
|
+
export declare const AGENTS: AgentRegistry;
|
|
19
|
+
/**
|
|
20
|
+
* Get all registered agent IDs.
|
|
21
|
+
*
|
|
22
|
+
* @returns Array of all agent identifiers
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* ```typescript
|
|
26
|
+
* const ids = getAgentIds();
|
|
27
|
+
* // ["adal", "amp", "antigravity", "augment", "claude-code", ...]
|
|
28
|
+
* ```
|
|
29
|
+
*
|
|
30
|
+
* @experimental This API is unstable and may change without notice.
|
|
31
|
+
*/
|
|
32
|
+
export declare const getAgentIds: () => ReadonlyArray<AgentId>;
|
|
33
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent registry containing all known AI coding agents.
|
|
3
|
+
*
|
|
4
|
+
* Derives descriptors from the capability catalog. O(1) lookup by agent ID.
|
|
5
|
+
*
|
|
6
|
+
* @experimental This API is unstable and may change without notice.
|
|
7
|
+
* @packageDocumentation
|
|
8
|
+
*/
|
|
9
|
+
import * as Record from "effect/Record";
|
|
10
|
+
import { CONFIGURABLE_AGENTS_BY_ID } from "../agent-capabilities/catalog.js";
|
|
11
|
+
import { deriveAgentDescriptor } from "../agent-capabilities/derive.js";
|
|
12
|
+
import { UNIVERSAL_SKILLS_DIR } from "../extensions/universal-skills-dir.js";
|
|
13
|
+
import { AGENT_IDS } from "./types.js";
|
|
14
|
+
const UNIVERSAL_AGENT_DESCRIPTOR = {
|
|
15
|
+
id: "universal",
|
|
16
|
+
name: "Universal",
|
|
17
|
+
rootDir: undefined,
|
|
18
|
+
skills: {
|
|
19
|
+
dir: UNIVERSAL_SKILLS_DIR,
|
|
20
|
+
additionalReadPaths: [],
|
|
21
|
+
},
|
|
22
|
+
detection: { project: { markers: [] }, user: { markers: [] } },
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* Complete registry of all known AI coding agents.
|
|
26
|
+
*
|
|
27
|
+
* Keys are agent IDs, values are full descriptor objects.
|
|
28
|
+
* Paths are pre-expanded at module initialization.
|
|
29
|
+
*
|
|
30
|
+
* @experimental This API is unstable and may change without notice.
|
|
31
|
+
*/
|
|
32
|
+
export const AGENTS = {
|
|
33
|
+
...Record.map(CONFIGURABLE_AGENTS_BY_ID, deriveAgentDescriptor),
|
|
34
|
+
universal: UNIVERSAL_AGENT_DESCRIPTOR,
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* Get all registered agent IDs.
|
|
38
|
+
*
|
|
39
|
+
* @returns Array of all agent identifiers
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```typescript
|
|
43
|
+
* const ids = getAgentIds();
|
|
44
|
+
* // ["adal", "amp", "antigravity", "augment", "claude-code", ...]
|
|
45
|
+
* ```
|
|
46
|
+
*
|
|
47
|
+
* @experimental This API is unstable and may change without notice.
|
|
48
|
+
*/
|
|
49
|
+
export const getAgentIds = () => AGENT_IDS;
|
|
50
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type definitions for AI coding agent configuration.
|
|
3
|
+
*
|
|
4
|
+
* @experimental This API is unstable and may change without notice.
|
|
5
|
+
* @packageDocumentation
|
|
6
|
+
*/
|
|
7
|
+
import type { Record } from "effect";
|
|
8
|
+
import { CONFIGURABLE_AGENT_IDS, type ConfigurableAgentId } from "../agent-capabilities/catalog.js";
|
|
9
|
+
import type { DetectionMarker, Scope, ScopeDetection, SkillReadPath } from "../agent-capabilities/schema.js";
|
|
10
|
+
/**
|
|
11
|
+
* Skills-specific configuration for an agent.
|
|
12
|
+
*
|
|
13
|
+
* @experimental This API is unstable and may change without notice.
|
|
14
|
+
*/
|
|
15
|
+
export interface AgentSkillsDescriptor {
|
|
16
|
+
/** Skills directory, relative to cwd (e.g., ".claude/skills") */
|
|
17
|
+
readonly dir: string;
|
|
18
|
+
/** Additional native directories read for discovery. AXM never writes to these paths. */
|
|
19
|
+
readonly additionalReadPaths: ReadonlyArray<SkillReadPath>;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Subagents-specific configuration for an agent.
|
|
23
|
+
*
|
|
24
|
+
* @experimental This API is unstable and may change without notice.
|
|
25
|
+
*/
|
|
26
|
+
export interface AgentSubagentsDescriptor {
|
|
27
|
+
/** Subagents directory, relative to cwd (e.g., ".claude/agents") */
|
|
28
|
+
readonly dir: string;
|
|
29
|
+
/**
|
|
30
|
+
* Scopes the agent itself supports for subagents. See
|
|
31
|
+
* The scopes the agent itself supports for subagents.
|
|
32
|
+
*/
|
|
33
|
+
readonly scopes: ReadonlyArray<Scope>;
|
|
34
|
+
/**
|
|
35
|
+
* When true, the path is a single file (e.g., ".roomodes") rather than a
|
|
36
|
+
* directory containing subagent files.
|
|
37
|
+
*/
|
|
38
|
+
readonly isFile?: boolean;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Workspace instruction-file convention for one coding agent.
|
|
42
|
+
*
|
|
43
|
+
* `rulesDir` on the file-based variants is a *secondary* native rules directory
|
|
44
|
+
* the agent also reads alongside its instruction file (e.g. Cursor reads both
|
|
45
|
+
* `AGENTS.md` and `.cursor/rules`). AXM does not write it — the field exists so
|
|
46
|
+
* status output can say so rather than silently reporting the agent as fully
|
|
47
|
+
* synced.
|
|
48
|
+
*
|
|
49
|
+
* @experimental
|
|
50
|
+
*/
|
|
51
|
+
export type AgentInstructionsDescriptor = {
|
|
52
|
+
readonly kind: "agents-md";
|
|
53
|
+
readonly rulesDir?: string;
|
|
54
|
+
} | {
|
|
55
|
+
readonly kind: "own-file";
|
|
56
|
+
readonly file: string;
|
|
57
|
+
readonly importSyntax?: "at-path";
|
|
58
|
+
readonly rulesDir?: string;
|
|
59
|
+
} | {
|
|
60
|
+
readonly kind: "rules-dir";
|
|
61
|
+
readonly dir: string;
|
|
62
|
+
readonly format: "frontmatter";
|
|
63
|
+
};
|
|
64
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
65
|
+
export type AgentDetectionMarker = DetectionMarker;
|
|
66
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
67
|
+
export type AgentScopeDetectionDescriptor = ScopeDetection;
|
|
68
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
69
|
+
export interface AgentDetectionDescriptor {
|
|
70
|
+
/** Project-scope markers resolved relative to the project root. */
|
|
71
|
+
readonly project: AgentScopeDetectionDescriptor;
|
|
72
|
+
/** User-scope markers resolved relative to home/config roots; executables use PATH. */
|
|
73
|
+
readonly user: AgentScopeDetectionDescriptor;
|
|
74
|
+
}
|
|
75
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
76
|
+
export { CONFIGURABLE_AGENT_IDS, type ConfigurableAgentId };
|
|
77
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
78
|
+
export declare const AGENT_IDS: readonly ["adal", "aider-desk", "amp", "antigravity", "antigravity-cli", "augment", "claude-code", "cline", "codearts-agent", "codebuddy", "codemaker", "codestudio", "codex", "command-code", "continue", "cortex", "crush", "cursor", "deepagents", "devin", "dexto", "droid", "firebender", "forgecode", "gemini-cli", "github-copilot-cli", "goose", "grok-cli", "hermes", "ibm-bob", "iflow-cli", "junie", "lingma", "kilo", "kimi-cli", "kiro-cli", "kode", "mcpjam", "minimax-code", "mistral-vibe", "mux", "neovate", "openclaw", "opencode", "openhands", "ona", "pi", "pochi", "qoder", "qoder-cn", "qwen-code", "replit", "roo", "rovodev", "tabnine-cli", "trae-cn", "trae", "warp", "windsurf", "zencoder", "zed", "zenflow", "universal"];
|
|
79
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
80
|
+
export type AgentId = (typeof AGENT_IDS)[number];
|
|
81
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
82
|
+
export declare const isConfigurableAgentId: (id: AgentId) => id is ConfigurableAgentId;
|
|
83
|
+
/**
|
|
84
|
+
* Configuration for an AI coding agent.
|
|
85
|
+
*
|
|
86
|
+
* @experimental This API is unstable and may change without notice.
|
|
87
|
+
*/
|
|
88
|
+
export interface AgentDescriptor {
|
|
89
|
+
/** Unique identifier (e.g., "claude-code") */
|
|
90
|
+
readonly id: AgentId;
|
|
91
|
+
/** Human-readable display name (e.g., "Claude Code") */
|
|
92
|
+
readonly name: string;
|
|
93
|
+
/**
|
|
94
|
+
* Per-agent native configuration root, relative to the workspace root
|
|
95
|
+
* (e.g., `.claude` for Claude Code, `.cursor` for Cursor). The
|
|
96
|
+
* workspace read-model scanners look for this agent's `settings.json`,
|
|
97
|
+
* `mcp.json`, and other native config files inside this directory.
|
|
98
|
+
*
|
|
99
|
+
* Three states (with `exactOptionalPropertyTypes: true`):
|
|
100
|
+
*
|
|
101
|
+
* - `string` — use this directory as the explicit native config root.
|
|
102
|
+
* - omitted (key not present) — fall back to the first segment of
|
|
103
|
+
* `skills.dir` when a verified Skill surface exists, otherwise `.<id>`.
|
|
104
|
+
* - `undefined` — explicit opt-out. Scanners SHALL NOT attempt to
|
|
105
|
+
* discover native config for this agent. Use this when an agent's
|
|
106
|
+
* first `skills.dir` segment collides with another agent's (e.g.,
|
|
107
|
+
* several agents share a parent like `.agents`) and there is no
|
|
108
|
+
* authoritative answer about the real native config root.
|
|
109
|
+
*/
|
|
110
|
+
readonly rootDir?: string | undefined;
|
|
111
|
+
/** Skills installation configuration, omitted when AXM has no verified writable surface. */
|
|
112
|
+
readonly skills?: AgentSkillsDescriptor;
|
|
113
|
+
/** Subagents installation configuration (optional — not all agents support subagents) */
|
|
114
|
+
readonly subagents?: AgentSubagentsDescriptor;
|
|
115
|
+
/** Workspace instruction-file convention for this coding agent. */
|
|
116
|
+
readonly instructions?: AgentInstructionsDescriptor;
|
|
117
|
+
/** Structured per-scope markers used by agent detection. */
|
|
118
|
+
readonly detection: AgentDetectionDescriptor;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Registry of all known agents, keyed by agent ID for O(1) lookup.
|
|
122
|
+
*
|
|
123
|
+
* @experimental This API is unstable and may change without notice.
|
|
124
|
+
*/
|
|
125
|
+
export type AgentRegistry = Record.ReadonlyRecord<AgentId, AgentDescriptor>;
|
|
126
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type definitions for AI coding agent configuration.
|
|
3
|
+
*
|
|
4
|
+
* @experimental This API is unstable and may change without notice.
|
|
5
|
+
* @packageDocumentation
|
|
6
|
+
*/
|
|
7
|
+
import { CONFIGURABLE_AGENT_IDS } from "../agent-capabilities/catalog.js";
|
|
8
|
+
// -----------------------------------------------------------------------------
|
|
9
|
+
// Agent Identifiers
|
|
10
|
+
// -----------------------------------------------------------------------------
|
|
11
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
12
|
+
export { CONFIGURABLE_AGENT_IDS };
|
|
13
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
14
|
+
export const AGENT_IDS = [...CONFIGURABLE_AGENT_IDS, "universal"];
|
|
15
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
16
|
+
export const isConfigurableAgentId = (id) => id !== "universal";
|
|
17
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import * as Schema from "effect/Schema";
|
|
2
|
+
/**
|
|
3
|
+
* Canonical timestamp schema: ISO 8601 UTC string on the wire, `DateTime.Utc`
|
|
4
|
+
* in memory.
|
|
5
|
+
*
|
|
6
|
+
* Decoding accepts any string `DateTime.make` understands and normalizes it to
|
|
7
|
+
* UTC; malformed strings fail decoding. Encoding always produces an ISO 8601
|
|
8
|
+
* UTC string (e.g. 2024-01-15T12:00:00.000Z), so wire formats are unchanged
|
|
9
|
+
* from the previous hand-written ISO-string handling.
|
|
10
|
+
*
|
|
11
|
+
* The encoded string side carries the `format: "date-time"` annotation so
|
|
12
|
+
* OpenAPI and JSON Schema emissions preserve the timestamp format.
|
|
13
|
+
*
|
|
14
|
+
* @experimental This API is unstable and may change without notice.
|
|
15
|
+
*/
|
|
16
|
+
export declare const DateTimeUtcSchema: Schema.decodeTo<Schema.DateTimeUtc, Schema.String, never, never>;
|
|
17
|
+
//# sourceMappingURL=date-time.d.ts.map
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import * as Schema from "effect/Schema";
|
|
2
|
+
import * as SchemaTransformation from "effect/SchemaTransformation";
|
|
3
|
+
/**
|
|
4
|
+
* Canonical timestamp schema: ISO 8601 UTC string on the wire, `DateTime.Utc`
|
|
5
|
+
* in memory.
|
|
6
|
+
*
|
|
7
|
+
* Decoding accepts any string `DateTime.make` understands and normalizes it to
|
|
8
|
+
* UTC; malformed strings fail decoding. Encoding always produces an ISO 8601
|
|
9
|
+
* UTC string (e.g. 2024-01-15T12:00:00.000Z), so wire formats are unchanged
|
|
10
|
+
* from the previous hand-written ISO-string handling.
|
|
11
|
+
*
|
|
12
|
+
* The encoded string side carries the `format: "date-time"` annotation so
|
|
13
|
+
* OpenAPI and JSON Schema emissions preserve the timestamp format.
|
|
14
|
+
*
|
|
15
|
+
* @experimental This API is unstable and may change without notice.
|
|
16
|
+
*/
|
|
17
|
+
export const DateTimeUtcSchema = Schema.String.annotate({
|
|
18
|
+
identifier: "IsoDateTimeString",
|
|
19
|
+
title: "ISO Date-Time String",
|
|
20
|
+
description: "A date and time string (e.g. 2024-01-15T12:00:00.000Z).",
|
|
21
|
+
format: "date-time",
|
|
22
|
+
})
|
|
23
|
+
.pipe(Schema.decodeTo(Schema.DateTimeUtc, SchemaTransformation.dateTimeUtcFromString))
|
|
24
|
+
.annotate({
|
|
25
|
+
identifier: "IsoDateTimeString",
|
|
26
|
+
title: "ISO Date-Time String",
|
|
27
|
+
description: "A date and time string (e.g. 2024-01-15T12:00:00.000Z).",
|
|
28
|
+
message: "Expected an ISO 8601 date-time string (e.g., 2024-01-15T12:00:00.000Z)",
|
|
29
|
+
});
|
|
30
|
+
//# sourceMappingURL=date-time.js.map
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared recursive discovery walk policy for extension scanners.
|
|
3
|
+
*
|
|
4
|
+
* @experimental This API is unstable and may change without notice.
|
|
5
|
+
*/
|
|
6
|
+
export declare const DISCOVERY_SKIPPED_DIRECTORIES: ReadonlySet<string>;
|
|
7
|
+
export declare const DISCOVERY_MAX_DEPTH = 5;
|
|
8
|
+
//# sourceMappingURL=discovery-walk.d.ts.map
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared recursive discovery walk policy for extension scanners.
|
|
3
|
+
*
|
|
4
|
+
* @experimental This API is unstable and may change without notice.
|
|
5
|
+
*/
|
|
6
|
+
export const DISCOVERY_SKIPPED_DIRECTORIES = new Set([
|
|
7
|
+
"node_modules",
|
|
8
|
+
".git",
|
|
9
|
+
".axm",
|
|
10
|
+
"dist",
|
|
11
|
+
"build",
|
|
12
|
+
"__pycache__",
|
|
13
|
+
]);
|
|
14
|
+
export const DISCOVERY_MAX_DEPTH = 5;
|
|
15
|
+
//# sourceMappingURL=discovery-walk.js.map
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Area barrel for the package public surface.
|
|
3
|
+
*
|
|
4
|
+
* @experimental This API is unstable and may change without notice.
|
|
5
|
+
*/
|
|
6
|
+
export { CATALOG_EXTENSION_TYPES, type CatalogExtensionType, CatalogExtensionTypeSchema, type DocLink, DocLinkSchema, type ExtensionTypeCatalog, ExtensionTypeCatalogSchema, type ExtensionTypeDefinition, ExtensionTypeDefinitionSchema, LEAF_EXTENSION_TYPES, type LeafExtensionType, LeafExtensionTypeSchema, type Standard, StandardSchema, type Url, UrlSchema, isCatalogExtensionType, } from "./schema.js";
|
|
7
|
+
export { STANDARDS } from "./standards.js";
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Area barrel for the package public surface.
|
|
3
|
+
*
|
|
4
|
+
* @experimental This API is unstable and may change without notice.
|
|
5
|
+
*/
|
|
6
|
+
export { CATALOG_EXTENSION_TYPES, CatalogExtensionTypeSchema, DocLinkSchema, ExtensionTypeCatalogSchema, ExtensionTypeDefinitionSchema, LEAF_EXTENSION_TYPES, LeafExtensionTypeSchema, StandardSchema, UrlSchema, isCatalogExtensionType, } from "./schema.js";
|
|
7
|
+
export { STANDARDS } from "./standards.js";
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent-agnostic extension type catalog schemas.
|
|
3
|
+
*
|
|
4
|
+
* @experimental This API is unstable and may change without notice.
|
|
5
|
+
*/
|
|
6
|
+
import * as Schema from "effect/Schema";
|
|
7
|
+
import type { ExtensionType } from "../extensions/common.js";
|
|
8
|
+
export type { PerAgentType, WorkspaceCapabilityKey, WorkspaceCapabilityType, } from "../extensions/common.js";
|
|
9
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
10
|
+
export declare const LEAF_EXTENSION_TYPES: readonly ["skill", "mcp-server", "subagent", "rule", "hook"];
|
|
11
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
12
|
+
export type LeafExtensionType = (typeof LEAF_EXTENSION_TYPES)[number];
|
|
13
|
+
declare const _leafCoversInstallableTypes: true;
|
|
14
|
+
export type _LeafExtensionTypeCoverage = typeof _leafCoversInstallableTypes;
|
|
15
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
16
|
+
export declare const LeafExtensionTypeSchema: Schema.Literals<readonly ["skill", "mcp-server", "subagent", "rule", "hook"]>;
|
|
17
|
+
/** Registry/package extension types, including workspace-only knowledge bundles. */
|
|
18
|
+
export declare const CATALOG_EXTENSION_TYPES: readonly ["skill", "mcp-server", "subagent", "rule", "hook", "knowledge"];
|
|
19
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
20
|
+
export type CatalogExtensionType = (typeof CATALOG_EXTENSION_TYPES)[number];
|
|
21
|
+
declare const _catalogCoversNonPackTypes: true;
|
|
22
|
+
export type _CatalogExtensionTypeCoverage = typeof _catalogCoversNonPackTypes;
|
|
23
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
24
|
+
export declare const isCatalogExtensionType: (type: ExtensionType) => type is CatalogExtensionType;
|
|
25
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
26
|
+
export declare const CatalogExtensionTypeSchema: Schema.Literals<readonly ["skill", "mcp-server", "subagent", "rule", "hook", "knowledge"]>;
|
|
27
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
28
|
+
export declare const UrlSchema: Schema.NonEmptyString;
|
|
29
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
30
|
+
export type Url = Schema.Schema.Type<typeof UrlSchema>;
|
|
31
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
32
|
+
export declare const StandardSchema: Schema.Struct<{
|
|
33
|
+
readonly id: Schema.NonEmptyString;
|
|
34
|
+
readonly name: Schema.NonEmptyString;
|
|
35
|
+
readonly url: Schema.NonEmptyString;
|
|
36
|
+
}>;
|
|
37
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
38
|
+
export type Standard = Schema.Schema.Type<typeof StandardSchema>;
|
|
39
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
40
|
+
export declare const DocLinkSchema: Schema.Struct<{
|
|
41
|
+
readonly label: Schema.NonEmptyString;
|
|
42
|
+
readonly url: Schema.NonEmptyString;
|
|
43
|
+
}>;
|
|
44
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
45
|
+
export type DocLink = Schema.Schema.Type<typeof DocLinkSchema>;
|
|
46
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
47
|
+
export declare const ExtensionTypeDefinitionSchema: Schema.Struct<{
|
|
48
|
+
readonly id: Schema.Literals<readonly ["skill", "mcp-server", "subagent", "rule", "hook", "knowledge"]>;
|
|
49
|
+
readonly summary: Schema.NonEmptyString;
|
|
50
|
+
readonly description: Schema.NonEmptyString;
|
|
51
|
+
readonly standard: Schema.NullOr<Schema.Struct<{
|
|
52
|
+
readonly id: Schema.NonEmptyString;
|
|
53
|
+
readonly name: Schema.NonEmptyString;
|
|
54
|
+
readonly url: Schema.NonEmptyString;
|
|
55
|
+
}>>;
|
|
56
|
+
readonly docs: Schema.$Array<Schema.Struct<{
|
|
57
|
+
readonly label: Schema.NonEmptyString;
|
|
58
|
+
readonly url: Schema.NonEmptyString;
|
|
59
|
+
}>>;
|
|
60
|
+
}>;
|
|
61
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
62
|
+
export type ExtensionTypeDefinition = Schema.Schema.Type<typeof ExtensionTypeDefinitionSchema>;
|
|
63
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
64
|
+
export type ExtensionTypeCatalog = {
|
|
65
|
+
readonly [Type in CatalogExtensionType]: ExtensionTypeDefinition;
|
|
66
|
+
};
|
|
67
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
68
|
+
export declare const ExtensionTypeCatalogSchema: Schema.Struct<{
|
|
69
|
+
readonly skill: Schema.Struct<{
|
|
70
|
+
readonly id: Schema.Literals<readonly ["skill", "mcp-server", "subagent", "rule", "hook", "knowledge"]>;
|
|
71
|
+
readonly summary: Schema.NonEmptyString;
|
|
72
|
+
readonly description: Schema.NonEmptyString;
|
|
73
|
+
readonly standard: Schema.NullOr<Schema.Struct<{
|
|
74
|
+
readonly id: Schema.NonEmptyString;
|
|
75
|
+
readonly name: Schema.NonEmptyString;
|
|
76
|
+
readonly url: Schema.NonEmptyString;
|
|
77
|
+
}>>;
|
|
78
|
+
readonly docs: Schema.$Array<Schema.Struct<{
|
|
79
|
+
readonly label: Schema.NonEmptyString;
|
|
80
|
+
readonly url: Schema.NonEmptyString;
|
|
81
|
+
}>>;
|
|
82
|
+
}>;
|
|
83
|
+
readonly "mcp-server": Schema.Struct<{
|
|
84
|
+
readonly id: Schema.Literals<readonly ["skill", "mcp-server", "subagent", "rule", "hook", "knowledge"]>;
|
|
85
|
+
readonly summary: Schema.NonEmptyString;
|
|
86
|
+
readonly description: Schema.NonEmptyString;
|
|
87
|
+
readonly standard: Schema.NullOr<Schema.Struct<{
|
|
88
|
+
readonly id: Schema.NonEmptyString;
|
|
89
|
+
readonly name: Schema.NonEmptyString;
|
|
90
|
+
readonly url: Schema.NonEmptyString;
|
|
91
|
+
}>>;
|
|
92
|
+
readonly docs: Schema.$Array<Schema.Struct<{
|
|
93
|
+
readonly label: Schema.NonEmptyString;
|
|
94
|
+
readonly url: Schema.NonEmptyString;
|
|
95
|
+
}>>;
|
|
96
|
+
}>;
|
|
97
|
+
readonly subagent: Schema.Struct<{
|
|
98
|
+
readonly id: Schema.Literals<readonly ["skill", "mcp-server", "subagent", "rule", "hook", "knowledge"]>;
|
|
99
|
+
readonly summary: Schema.NonEmptyString;
|
|
100
|
+
readonly description: Schema.NonEmptyString;
|
|
101
|
+
readonly standard: Schema.NullOr<Schema.Struct<{
|
|
102
|
+
readonly id: Schema.NonEmptyString;
|
|
103
|
+
readonly name: Schema.NonEmptyString;
|
|
104
|
+
readonly url: Schema.NonEmptyString;
|
|
105
|
+
}>>;
|
|
106
|
+
readonly docs: Schema.$Array<Schema.Struct<{
|
|
107
|
+
readonly label: Schema.NonEmptyString;
|
|
108
|
+
readonly url: Schema.NonEmptyString;
|
|
109
|
+
}>>;
|
|
110
|
+
}>;
|
|
111
|
+
readonly rule: Schema.Struct<{
|
|
112
|
+
readonly id: Schema.Literals<readonly ["skill", "mcp-server", "subagent", "rule", "hook", "knowledge"]>;
|
|
113
|
+
readonly summary: Schema.NonEmptyString;
|
|
114
|
+
readonly description: Schema.NonEmptyString;
|
|
115
|
+
readonly standard: Schema.NullOr<Schema.Struct<{
|
|
116
|
+
readonly id: Schema.NonEmptyString;
|
|
117
|
+
readonly name: Schema.NonEmptyString;
|
|
118
|
+
readonly url: Schema.NonEmptyString;
|
|
119
|
+
}>>;
|
|
120
|
+
readonly docs: Schema.$Array<Schema.Struct<{
|
|
121
|
+
readonly label: Schema.NonEmptyString;
|
|
122
|
+
readonly url: Schema.NonEmptyString;
|
|
123
|
+
}>>;
|
|
124
|
+
}>;
|
|
125
|
+
readonly hook: Schema.Struct<{
|
|
126
|
+
readonly id: Schema.Literals<readonly ["skill", "mcp-server", "subagent", "rule", "hook", "knowledge"]>;
|
|
127
|
+
readonly summary: Schema.NonEmptyString;
|
|
128
|
+
readonly description: Schema.NonEmptyString;
|
|
129
|
+
readonly standard: Schema.NullOr<Schema.Struct<{
|
|
130
|
+
readonly id: Schema.NonEmptyString;
|
|
131
|
+
readonly name: Schema.NonEmptyString;
|
|
132
|
+
readonly url: Schema.NonEmptyString;
|
|
133
|
+
}>>;
|
|
134
|
+
readonly docs: Schema.$Array<Schema.Struct<{
|
|
135
|
+
readonly label: Schema.NonEmptyString;
|
|
136
|
+
readonly url: Schema.NonEmptyString;
|
|
137
|
+
}>>;
|
|
138
|
+
}>;
|
|
139
|
+
readonly knowledge: Schema.Struct<{
|
|
140
|
+
readonly id: Schema.Literals<readonly ["skill", "mcp-server", "subagent", "rule", "hook", "knowledge"]>;
|
|
141
|
+
readonly summary: Schema.NonEmptyString;
|
|
142
|
+
readonly description: Schema.NonEmptyString;
|
|
143
|
+
readonly standard: Schema.NullOr<Schema.Struct<{
|
|
144
|
+
readonly id: Schema.NonEmptyString;
|
|
145
|
+
readonly name: Schema.NonEmptyString;
|
|
146
|
+
readonly url: Schema.NonEmptyString;
|
|
147
|
+
}>>;
|
|
148
|
+
readonly docs: Schema.$Array<Schema.Struct<{
|
|
149
|
+
readonly label: Schema.NonEmptyString;
|
|
150
|
+
readonly url: Schema.NonEmptyString;
|
|
151
|
+
}>>;
|
|
152
|
+
}>;
|
|
153
|
+
}>;
|
|
154
|
+
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent-agnostic extension type catalog schemas.
|
|
3
|
+
*
|
|
4
|
+
* @experimental This API is unstable and may change without notice.
|
|
5
|
+
*/
|
|
6
|
+
import * as Schema from "effect/Schema";
|
|
7
|
+
const isUrl = (value) => {
|
|
8
|
+
try {
|
|
9
|
+
new URL(value);
|
|
10
|
+
return true;
|
|
11
|
+
}
|
|
12
|
+
catch {
|
|
13
|
+
return false;
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
17
|
+
export const LEAF_EXTENSION_TYPES = [
|
|
18
|
+
"skill",
|
|
19
|
+
"mcp-server",
|
|
20
|
+
"subagent",
|
|
21
|
+
"rule",
|
|
22
|
+
"hook",
|
|
23
|
+
];
|
|
24
|
+
const _leafCoversInstallableTypes = true;
|
|
25
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
26
|
+
export const LeafExtensionTypeSchema = Schema.Literals(LEAF_EXTENSION_TYPES).annotate({
|
|
27
|
+
identifier: "LeafExtensionType",
|
|
28
|
+
title: "Leaf Extension Type",
|
|
29
|
+
description: "Installable extension type excluding packs.",
|
|
30
|
+
});
|
|
31
|
+
/** Registry/package extension types, including workspace-only knowledge bundles. */
|
|
32
|
+
export const CATALOG_EXTENSION_TYPES = [
|
|
33
|
+
...LEAF_EXTENSION_TYPES,
|
|
34
|
+
"knowledge",
|
|
35
|
+
];
|
|
36
|
+
const _catalogCoversNonPackTypes = true;
|
|
37
|
+
const catalogExtensionTypeSet = new Set(CATALOG_EXTENSION_TYPES);
|
|
38
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
39
|
+
export const isCatalogExtensionType = (type) => catalogExtensionTypeSet.has(type);
|
|
40
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
41
|
+
export const CatalogExtensionTypeSchema = Schema.Literals(CATALOG_EXTENSION_TYPES).annotate({
|
|
42
|
+
identifier: "CatalogExtensionType",
|
|
43
|
+
title: "Catalog Extension Type",
|
|
44
|
+
description: "Non-pack extension types represented by the AgentXM registry.",
|
|
45
|
+
});
|
|
46
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
47
|
+
export const UrlSchema = Schema.NonEmptyString.pipe(Schema.check(Schema.makeFilter((value) => (isUrl(value) ? undefined : `Expected URL, got ${value}`)))).annotate({
|
|
48
|
+
identifier: "Url",
|
|
49
|
+
title: "URL",
|
|
50
|
+
description: "Absolute URL string.",
|
|
51
|
+
examples: ["https://example.com/docs"],
|
|
52
|
+
});
|
|
53
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
54
|
+
export const StandardSchema = Schema.Struct({
|
|
55
|
+
id: Schema.NonEmptyString,
|
|
56
|
+
name: Schema.NonEmptyString,
|
|
57
|
+
url: UrlSchema,
|
|
58
|
+
}).annotate({
|
|
59
|
+
identifier: "Standard",
|
|
60
|
+
title: "Standard",
|
|
61
|
+
description: "Open standard that is authoritative for an extension type's capability.",
|
|
62
|
+
});
|
|
63
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
64
|
+
export const DocLinkSchema = Schema.Struct({
|
|
65
|
+
label: Schema.NonEmptyString,
|
|
66
|
+
url: UrlSchema,
|
|
67
|
+
}).annotate({
|
|
68
|
+
identifier: "DocLink",
|
|
69
|
+
title: "Documentation Link",
|
|
70
|
+
description: "Documentation reference for an agent or capability.",
|
|
71
|
+
});
|
|
72
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
73
|
+
export const ExtensionTypeDefinitionSchema = Schema.Struct({
|
|
74
|
+
id: CatalogExtensionTypeSchema,
|
|
75
|
+
summary: Schema.NonEmptyString,
|
|
76
|
+
description: Schema.NonEmptyString,
|
|
77
|
+
standard: Schema.NullOr(StandardSchema),
|
|
78
|
+
docs: Schema.Array(DocLinkSchema).check(Schema.makeFilter((docs) => docs.length > 0 ? true : "Every catalog entry needs at least one doc link")),
|
|
79
|
+
})
|
|
80
|
+
.annotate({
|
|
81
|
+
identifier: "ExtensionTypeDefinition",
|
|
82
|
+
title: "Extension Type Definition",
|
|
83
|
+
description: "Agent-agnostic catalog entry describing one leaf extension type's capability.",
|
|
84
|
+
})
|
|
85
|
+
.check(Schema.makeFilter((definition) => definition.standard === null ||
|
|
86
|
+
definition.docs.every((doc) => doc.url !== definition.standard?.url)
|
|
87
|
+
? true
|
|
88
|
+
: "Doc links must be distinct from the governing standard's url"));
|
|
89
|
+
/** @experimental This API is unstable and may change without notice. */
|
|
90
|
+
export const ExtensionTypeCatalogSchema = Schema.Struct({
|
|
91
|
+
skill: ExtensionTypeDefinitionSchema,
|
|
92
|
+
"mcp-server": ExtensionTypeDefinitionSchema,
|
|
93
|
+
subagent: ExtensionTypeDefinitionSchema,
|
|
94
|
+
rule: ExtensionTypeDefinitionSchema,
|
|
95
|
+
hook: ExtensionTypeDefinitionSchema,
|
|
96
|
+
knowledge: ExtensionTypeDefinitionSchema,
|
|
97
|
+
}).annotate({
|
|
98
|
+
identifier: "ExtensionTypeCatalog",
|
|
99
|
+
title: "Extension Type Catalog",
|
|
100
|
+
description: "Agent-agnostic catalog keyed by leaf extension type.",
|
|
101
|
+
});
|
|
102
|
+
//# sourceMappingURL=schema.js.map
|