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

139 lines 3.98 kB
/** * Agent Deployment System - Type Definitions * * Defines interfaces and types for multi-platform agent deployment. */ /** * Supported deployment platforms/providers. * * | Platform | Agent Location | Config File | Status | * |------------|--------------------------|----------------------|---------------| * | claude | .claude/agents/ | CLAUDE.md | ✅ Full | * | factory | .factory/droids/ | AGENTS.md | ✅ Full | * | cursor | .cursor/agents/ | .cursor/rules/ (MDC) | ✅ Full | * | codex | .codex/agents/ | AGENTS.md | ✅ Full | * | opencode | .opencode/agent/ | AGENTS.md | ✅ Full | * | warp | .warp/agents/ | WARP.md | ✅ Full | * | windsurf | .windsurf/agents/ | .windsurfrules | 🧪 Experimental | * | copilot | .github/agents/ | copilot-instructions | ✅ Full | * | hermes | ~/.hermes/skills/ | AGENTS.md | ✅ MCP sidecar | * | openclaw | ~/.openclaw/agents/ | AGENTS.md | ✅ Full | * | generic | agents/ | varies | ✅ Full | * * CLI usage: --provider <platform> or --platform <platform> */ export type Platform = 'claude' | 'codex' | 'copilot' | 'cursor' | 'factory' | 'hermes' | 'opencode' | 'openclaw' | 'warp' | 'windsurf' | 'generic'; export type AgentCategory = 'writing-quality' | 'sdlc' | 'security' | 'testing' | 'architecture' | 'documentation' | 'general'; export type ArtifactType = 'agent' | 'command' | 'skill' | 'rule'; export type SupportLevel = 'native' | 'conventional' | 'aggregated'; /** * Provider path configuration (all four artifact types required) */ export interface ProviderPaths { agents: string; commands: string; skills: string; rules: string; } /** * Support level per artifact type for a provider */ export interface ProviderSupport { agents: SupportLevel; commands: SupportLevel; skills: SupportLevel; rules: SupportLevel; } /** * Agent metadata from frontmatter */ export interface AgentMetadata { name: string; description: string; category?: AgentCategory; model?: string; tools?: string[]; dependencies?: string[]; version?: string; } /** * Parsed agent information */ export interface AgentInfo { metadata: AgentMetadata; content: string; filePath: string; fileName: string; } /** * Deployment target specification */ export interface DeploymentTarget { platform: Platform; projectPath: string; agentsPath?: string; } /** * Deployment options */ export interface DeploymentOptions { categories?: AgentCategory[]; agentNames?: string[]; dryRun?: boolean; force?: boolean; backup?: boolean; verbose?: boolean; } /** * Validation issue */ export interface ValidationIssue { type: 'error' | 'warning' | 'info'; field: string; message: string; suggestion?: string; } /** * Validation result */ export interface ValidationResult { valid: boolean; issues: ValidationIssue[]; agent: AgentInfo; } /** * Deployment result for a single agent */ export interface AgentDeploymentResult { agent: AgentInfo; success: boolean; targetPath: string; error?: string; } /** * Overall deployment result */ export interface DeploymentResult { platform: Platform; projectPath: string; deployed: AgentDeploymentResult[]; skipped: AgentInfo[]; failed: { agent: AgentInfo; error: string; }[]; backupPath?: string; totalAgents: number; deployedCount: number; skippedCount: number; failedCount: number; } /** * Agent packaging result */ export interface PackagedAgent { agent: AgentInfo; content: string; format: Platform; } //# sourceMappingURL=types.d.ts.map