## plane-cli-requiem

Rust CLI for Plane.so project management. Single binary, publishes to crates.io.

### Build & Test

```bash
cargo check          # type-check
cargo build          # debug build
cargo build --release  # release build; binary at target/release/plane
cargo test           # run tests
```

### Architecture

- `src/api/` — Plane API client, wire protocol types, entity identifiers
- `src/commands/` — one file per CLI subcommand, dispatch via clap derive
- `src/config/` — settings persistence (~/.plane-cli-requiem/config.toml), session resolution, per-repo .plane.toml overrides
- `src/terminal_ui/` — output format detection (table/json/csv)
- `docs/plane-api-reference.md` — Plane REST API schema reference

### Config

Per-workspace project scoping; each workspace entry owns its `default_project`. No global `default_project`.

`.plane.toml` in a repo root overrides the global config (workspace + project).

### Enforcement

This project follows the ai-lab plugin enforcement rules when edited from ai-lab. When edited standalone, follow the same principles: no Options in domain types, no bools, params structs for multi-arg functions, full match statements.

### API Reference

`docs/plane-api-reference.md` has the full Plane API schema. Read it before adding new API calls.
