UNPKG

aiwg

Version:

Deployment tool and support utility for AI context. Copies agents, skills, commands, rules, and behaviors into the paths each AI platform reads (Claude Code, Codex, Copilot, Cursor, Warp, OpenClaw, and 6 more) so one source of truth works across 10 platfo

86 lines 2.33 kB
/** * Unified Extension Type System * * Provides a single schema for all AIWG extensions: agents, commands, skills, * hooks, tools, and MCP servers. Enables dynamic discovery, semantic search, * and unified help generation. * * @architecture @.aiwg/architecture/unified-extension-schema.md * @version 1.0.0 */ // ============================================ // Type Guards // ============================================ /** * Type guard for agent extensions */ export function isAgentExtension(ext) { return ext.type === 'agent' && ext.metadata.type === 'agent'; } /** * Type guard for command extensions */ export function isCommandExtension(ext) { return ext.type === 'command' && ext.metadata.type === 'command'; } /** * Type guard for skill extensions */ export function isSkillExtension(ext) { return ext.type === 'skill' && ext.metadata.type === 'skill'; } /** * Type guard for hook extensions */ export function isHookExtension(ext) { return ext.type === 'hook' && ext.metadata.type === 'hook'; } /** * Type guard for tool extensions */ export function isToolExtension(ext) { return ext.type === 'tool' && ext.metadata.type === 'tool'; } /** * Type guard for MCP server extensions */ export function isMCPServerExtension(ext) { return ext.type === 'mcp-server' && ext.metadata.type === 'mcp-server'; } /** * Type guard for framework extensions */ export function isFrameworkExtension(ext) { return ext.type === 'framework' && ext.metadata.type === 'framework'; } /** * Type guard for addon extensions */ export function isAddonExtension(ext) { return ext.type === 'addon' && ext.metadata.type === 'addon'; } /** * Type guard for template extensions */ export function isTemplateExtension(ext) { return ext.type === 'template' && ext.metadata.type === 'template'; } /** * Type guard for prompt extensions */ export function isPromptExtension(ext) { return ext.type === 'prompt' && ext.metadata.type === 'prompt'; } /** * Type guard for soul extensions */ export function isSoulExtension(ext) { return ext.type === 'soul' && ext.metadata.type === 'soul'; } /** * Type guard for behavior extensions */ export function isBehaviorExtension(ext) { return ext.type === 'behavior' && ext.metadata.type === 'behavior'; } //# sourceMappingURL=types.js.map