UNPKG

aiwg

Version:

Cognitive architecture for AI-augmented software development with structured memory, ensemble validation, and closed-loop correction. FAIR-aligned artifacts, 84% cost reduction via human-in-the-loop, standards adopted by 100+ organizations.

143 lines (131 loc) 2.88 kB
/** * Type definitions for CommandSmith feature * * CommandSmith generates platform-aware slash commands for agent orchestration. */ import { Platform } from '../../agents/types.js'; /** * Command template types */ export type CommandTemplate = 'utility' | 'transformation' | 'orchestration'; /** * Command argument definition */ export interface CommandArg { name: string; description: string; required: boolean; default?: string; } /** * Command option definition */ export interface CommandOption { name: string; description: string; type: 'string' | 'boolean' | 'number'; default?: string | boolean | number; } /** * Command generation options */ export interface CommandOptions { /** Command name (kebab-case) */ name: string; /** What the command does */ description: string; /** Template to use */ template?: CommandTemplate; /** Target platform */ platform: Platform; /** Project path for deployment */ projectPath: string; /** User guidance for generation */ guidance?: string; /** Enable interactive mode */ interactive?: boolean; /** Command arguments */ args?: CommandArg[]; /** Command options */ options?: CommandOption[]; /** Dry run (don't write files) */ dryRun?: boolean; /** Custom target directory */ targetDir?: string; } /** * Generated command result */ export interface GeneratedCommand { /** Command name */ name: string; /** Full path where command will be deployed */ path: string; /** Command file content */ content: string; /** Target platform */ platform: Platform; /** Template used */ template: CommandTemplate; } /** * Command frontmatter (Claude/Factory/Generic) */ export interface CommandFrontmatter { name: string; description: string; args: string; } /** * Command structure for Cursor (JSON format) */ export interface CursorCommandSpec { name: string; description: string; arguments: Array<{ name: string; description: string; required: boolean; type: string; default?: string; }>; options: Array<{ name: string; description: string; type: string; default?: string | boolean | number; }>; execution: { steps: string[]; }; } /** * Command deployment result */ export interface CommandDeploymentResult { /** Command that was deployed */ command: GeneratedCommand; /** Whether deployment was successful */ success: boolean; /** Error message if deployment failed */ error?: string; /** Whether file was backed up */ backed_up?: boolean; } /** * Validation issue */ export interface ValidationIssue { type: 'error' | 'warning' | 'info'; field: string; message: string; suggestion?: string; } /** * Command validation result */ export interface ValidationResult { valid: boolean; issues: ValidationIssue[]; command: GeneratedCommand; }