Skip to main content

spec_driven_docs/cli/
ki.rs

1//! `ki` subcommand: parse-shape.
2//!
3//! Holds the clap derive structs only. No I/O, no business logic.
4
5use camino::Utf8PathBuf;
6use clap::Subcommand;
7
8/// Read the known-issue zone.
9#[derive(Debug, clap::Args)]
10pub struct KiArgs {
11    /// The verb to run.
12    #[command(subcommand)]
13    pub command: KiCommand,
14}
15
16/// Every verb `sdd ki` offers.
17#[derive(Debug, Subcommand)]
18pub enum KiCommand {
19    /// List every known-issue record and its two axes.
20    List(ListArgs),
21}
22
23/// List every known-issue record and its two axes.
24#[derive(Debug, clap::Args)]
25pub struct ListArgs {
26    /// The repository to read; absolute, or the working directory.
27    #[arg(long, default_value = ".")]
28    pub target: Utf8PathBuf,
29
30    /// Print one JSON array instead of text.
31    #[arg(long)]
32    pub json: bool,
33}