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
text/typescript
/**
* 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;
}