Skip to main content

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 forge;
33pub mod github;
34pub mod gitlab;
35pub mod gitmoji;
36pub mod history;
37pub mod hooks;
38// `issue_templates` is reached only through `crate::issue_templates` from
39// `cli.rs`; no integration test imports it, so it need not be `pub` (#342).
40pub(crate) mod issue_templates;
41pub mod json_api;
42pub mod labels;
43pub mod launcher;
44pub mod lifecycle;
45pub mod milestones;
46pub mod multiplexer;
47pub mod naming;
48pub mod pr_templates;
49pub mod presets;
50pub mod review;
51pub mod statusline;
52pub mod sync;
53pub mod templating;
54pub mod trust;
55pub mod tui;
56pub mod workspace;
57pub mod worktree;