gwm/lib.rs
1//! gwm — git worktree manager (lib root).
2//!
3//! **Internal test seam — NOT a public API.** This library target exists for
4//! one reason: the binary (`src/main.rs`) and the integration tests under
5//! `tests/` share a single module tree, and Rust integration tests can only
6//! reach it through a `pub` lib. The whole crate is therefore `#![doc(hidden)]`
7//! and every `pub` item below carries **no SemVer guarantee** — signatures,
8//! modules, and types here are free to change in any release, major or not.
9//!
10//! Do not `cargo add gwm-cli` to build on `gwm::*`. The published crate ships
11//! this lib only as a byproduct of shipping the `gwm` binary; it is not a
12//! supported dependency. The contracts that *are* stable — the CLI, the
13//! `--format=json` / daemon payloads, and the `.gwm.toml` schema — are
14//! documented in `docs/6.development/3.stability.md` and frozen by
15//! `tests/contract_tests.rs`.
16#![doc(hidden)]
17
18pub mod agent_sessions;
19pub mod aliases;
20pub mod bootstrap;
21pub mod clean;
22pub mod cli;
23pub mod clipboard;
24pub mod command_log;
25pub mod config;
26pub mod config_cli;
27pub mod contract;
28pub mod daemon;
29pub mod doctor;
30pub mod error;
31pub mod exec;
32pub mod github;
33pub mod gitmoji;
34pub mod history;
35pub mod hooks;
36// `issue_templates` is reached only through `crate::issue_templates` from
37// `cli.rs`; no integration test imports it, so it need not be `pub` (#342).
38pub(crate) mod issue_templates;
39pub mod json_api;
40pub mod labels;
41pub mod launcher;
42pub mod lifecycle;
43pub mod milestones;
44pub mod multiplexer;
45pub mod naming;
46pub mod pr_templates;
47pub mod presets;
48pub mod review;
49pub mod statusline;
50pub mod sync;
51pub mod templating;
52pub mod trust;
53pub mod tui;
54pub mod workspace;
55pub mod worktree;