/** * What init ships, grouped into packs (GH #411). * * Claude Code lists every installed skill and command with its description in * a budget of about 1% of the context window (~8k chars on a 200k model), and * past it drops descriptions. Installing all 88 skills, 112 commands and 84 * agents used ~39.5k chars of skill/command listing and ~13k of agent listing, * so most descriptions were never shown. `init` now installs the `core` pack; * the rest are opt-in: `init --packs a,b`, `init --all-packs`, the wizard, or * `monomind packs add ` later. * * Core is what the everyday engineering loop uses. The 2026-09 value review * found 7 of 88 agents ever spawned in 702 transcripts; a scan of ~2,700 * maintainer transcripts (2026-09-30) agrees: besides built-ins, spawns went * to coder, reviewer, researcher, Frontend Developer, Security Engineer, * tester, Technical Writer, Software Architect, Monodesign, Git Workflow * Master and DevOps Automator; the skills invoked were the mastermind * workflows (review, repeat, plan, execute, debug), monodesign, * agent-browser-testing and github-toolkit; the only slash commands were * /mastermind:review and /mastermind:do. Core also keeps every agent the * generated CLAUDE.md names as a fallback, every skill the platform adapters * always write (MASTERMIND_SKILLS) and every file core reads by path. * * Skills are skill directory names, commands and agents are paths relative to * `.claude/commands` / `.claude/agents` — a directory (everything in it) or a * single `.md` file. No name appears in two packs. */ export interface AssetPack { name: string; description: string; skills: readonly string[]; commands: readonly string[]; agents: readonly string[]; } export declare const CORE_PACK: AssetPack; export declare const OPTIONAL_PACKS: readonly AssetPack[]; export declare const PACKS: readonly AssetPack[]; /** Names of the opt-in packs, in display order. */ export declare const PACK_NAMES: readonly string[]; export type AssetKind = 'skills' | 'commands' | 'agents'; /** Every entry of one kind across `packs`, de-duplicated, in order. */ export declare function packEntries(packs: readonly AssetPack[], kind: AssetKind): string[]; /** The top-level name an entry lives under (`mastermind/do.md` → `mastermind`). */ export declare function topLevel(entry: string): string; /** * Parse a `--packs a,b` value. `all` selects every pack; `core` is accepted * and ignored (it is always installed). Unknown names are an error. */ export declare function parsePackList(value: string): { ok: true; packs: string[]; } | { ok: false; message: string; }; /** The packs a run installs for one kind: every pack under `all`, else core * (unless turned off) plus the opt-in packs in `options.packs`. */ export declare function selectedPacks(options: { packs?: readonly string[]; } & Record, kind: AssetKind): AssetPack[]; //# sourceMappingURL=packs.d.ts.map