Note: For project-wide architecture and future refactor plans, see the root
../CLAUDE.md.
This crate embeds its CLI documentation from docs/ into the homeboy binary.
Key references:
- Embedded docs topics map to paths under
docs/without the.mdextension (e.g.docs/commands/deploy.md->commands/deploy). - Command output is machine-oriented and wrapped in a stable JSON envelope: docs/json-output/json-output-contract.md.
When updating documentation, keep it concise and aligned with current implementation.
When validating changes in this workspace, always run tests using the release target:
cargo test --release- When running the CLI for validation, prefer
cargo run --release -p homeboy -- <args>.
When working with Homeboy-managed repositories:
- Always start with
homeboy status --full- Understand context before any operations - Use Homeboy commands for version changes -
homeboy version set/bump, never manual file edits - Use Homeboy for builds -
homeboy build <component>, not manual build scripts - Use Homeboy for deploys -
homeboy deploy, not manual rsync/scp
Never assume repo structure. Let homeboy status --full tell you:
- Which components exist
- What build commands are configured
- What version targets are managed
- What gaps need remediation