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
43 lines • 1.8 kB
TypeScript
/**
* Project-Local Bundle Scaffolding
*
* Creates a complete `.aiwg/<type>/<name>/` bundle with a valid manifest,
* a starter artifact (skill or rule), and a README that includes the
* identical-form portability reminder.
*
* The output is byte-identical-shaped to upstream addon directories so
* `aiwg promote` can graduate it without any rewrite.
*
* @design @.aiwg/architecture/adr-identical-form-portability.md (#1038)
* @implements #1050
*/
import type { ProjectLocalType } from './manifest.js';
export type StarterKind = 'skill' | 'rule' | 'agent' | 'minimal';
export interface ScaffoldOptions {
/** Bundle directory type. */
type: ProjectLocalType;
/** Bundle id (kebab-case, no leading/trailing hyphen). */
name: string;
/** Free-text human description. */
description?: string;
/** What starter artifact to drop in. Defaults to 'skill' for addon/extension; 'minimal' otherwise. */
starter?: StarterKind;
/** Project root. Defaults to process.cwd(). */
projectDir?: string;
/** Refuse to overwrite an existing bundle. Default true. */
refuseOnExists?: boolean;
/** Preview only — compute the file list without writing. Default false. */
dryRun?: boolean;
}
export interface ScaffoldResult {
/** Absolute path to the new bundle. */
bundlePath: string;
/** Files created (relative to bundle). For dry-run, files that WOULD be created. */
filesCreated: string[];
/** True when nothing was written because the bundle already exists. */
alreadyExists: boolean;
/** True when no files were written because dryRun was set. */
dryRun?: boolean;
}
export declare function scaffoldProjectLocalBundle(options: ScaffoldOptions): Promise<ScaffoldResult>;
//# sourceMappingURL=project-local-scaffold.d.ts.map