/** * `peaks skill sediment ` — Sediment pool CLI primitives. * * Slices 2026-07-04-cli-15a (Task 15a) and 2026-07-04-cli-15b (Task 15b) * of the 18-verb plan. This file implements 8 of 18 verbs: * * Task 15a: * add-segment — scaffold ~/.peaks/skills/segments//SKILL.md * add-bee — write ~/.peaks/skills/bees//manifest.json * list — read index.json via readPool * rebuild-index — rewrite index.json from filesystem state * * Task 15b: * refine-bee — append a NL-described patch to an existing bee manifest * clone-bee — duplicate an existing bee to a new name, status reset * promote — flip candidate → stable when PromotionGate passes * retire — flip → retired, optionally record a reason * * Other verbs (dispose / releases / release-show / release-diff / export / * import / gc-blobs / search / recent / show) return * `{ ok: false, error: "UNKNOWN_VERB: …" }` until Tasks 15c / 15d fill them. * * The CLI boundary is runSediment(argv, { home }): it returns a * `{ ok, error?, data? }` envelope so program.ts can render the result * as JSON via peaks-cli's existing printResult primitive. * * The verb bodies live beside this file — `sediment-pool-commands.ts` (the * pool verbs), `sediment-release-commands.ts` (the retained-release verbs) * and `sediment-query-commands.ts` (the read-only verbs) — with the argv * parser in `sediment-argv-flags.ts`. This module owns the dispatch table, * `parseFlags`' re-export and the commander registration. */ import type { Command } from 'commander'; import { type ProgramIO } from '../cli-helpers.js'; import type { CliResult } from './sediment-command-shared.js'; export { ParsedFlags, parseFlags } from './sediment-argv-flags.js'; export type { CliResult } from './sediment-command-shared.js'; /** Dispatch a sediment verb argv to the matching implementation. * * Returns { ok: true, data? } on success and { ok: false, error } * on validation failure or SYSTEM_PATH_FORBIDDEN. Unknown verbs * return `{ ok: false, error: "UNKNOWN_VERB: " }` so callers can * distinguish "not yet implemented" from "zod rejected". */ export declare function runSediment(argv: string[], { home }: { home: string; }): Promise; /** Register the `peaks skill sediment ` subcommand group. * * Task 15a wired 4 verbs; Task 15b adds 4 more (refine-bee / clone-bee / * promote / retire). The subcommand accepts variadic args so caller-side * code (peaks-cli action handler) can re-dispatch to `runSediment` for * the actual verb routing. Subsequent tasks (15c / 15d) will add the * remaining 10 verbs by extending the `runSediment` switch statement. */ export declare function registerSedimentCommands(program: Command, io: ProgramIO): void;