docs(reference): add the loadouts reference page - #868
Conversation
Add docs/reference/loadouts.md and restore its entry in the reference manifest. Split out from the CLI/config reference PR because loadouts is a leaf page: it links out to the CLI and config references but nothing links back to it, so deferring it kept both PRs under 1000 lines and link-clean. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
| consistency with Minimal's state and cache dirs, not | ||
| `~/Library/Application Support`. The global |
There was a problem hiding this comment.
We can probably omit the part about ~/Library/Application Support
There was a problem hiding this comment.
Done in bd69733 — dropped the ~/Library/Application Support aside; the sentence now just states macOS uses $HOME/.config.
| > **Current limitations**: of the four things a loadout can contribute, | ||
| > **packages** and **vars** take effect inside the session today. **Patches** | ||
| > and **lifecycle hooks** are parsed, validated, and composed into the | ||
| > session's configuration, but the session launcher does not yet apply them | ||
| > inside the sandbox — the daemon holds them with the session and logs each | ||
| > one as deferred. The schema below documents all four so files written | ||
| > now stay valid as the remaining plumbing lands. | ||
|
|
There was a problem hiding this comment.
I would just remove this block. It will no longer be true by the time we GA
There was a problem hiding this comment.
Done in bd69733 — removed the block. Consistent with patches/hooks being applied in-session by GA, so the deferred caveat would be stale.
| { dest = "~/.config/helix/config.toml", source = "~/dotfiles/helix/config.toml" }, | ||
| { dest = "~/.config/helix/languages.toml", source = "~/dotfiles/helix/languages.toml" }, | ||
| { dest = "~/.config/helix/themes/", source = "~/dotfiles/helix/themes/**/*.toml" }, | ||
|
|
||
| # Zellij: single config file plus a layouts directory. | ||
| { dest = "~/.config/zellij/config.kdl", source = "~/dotfiles/zellij/config.kdl" }, | ||
| { dest = "~/.config/zellij/layouts/", source = "~/dotfiles/zellij/layouts/**/*.kdl" }, |
There was a problem hiding this comment.
dest shouldn't have the ~/ dest is always relative to ~/.
There was a problem hiding this comment.
Fixed in bd69733 — dropped the leading ~/ here and on every other dest example (helix/zellij/psqlrc/nvim). dest is resolved relative to $HOME, so it's redundant. Also reworded the dest prose at the bottom to match.
| ``` | ||
|
|
||
| Names are not checked at activation: an unknown package composes cleanly | ||
| and fails later, when the session sandbox first spawns, with |
There was a problem hiding this comment.
I think we decided to no longer use the term sandbox. I would just change this to "session"
There was a problem hiding this comment.
Done in bd69733 — "session sandbox" → "session" here and at the schema note below. Left line 17's "task sandboxes (mip run)" as-is since that's the one-shot task environment, not the interactive session.
| { dest = "~/.psqlrc", source = "~/dotfiles/psqlrc" }, | ||
| { dest = "certs/", source = ["~/ca/root.pem", "~/ca/dev.pem"] }, | ||
| { dest = "~/.config/nvim/", source = "~/dotfiles/nvim/**/*.lua" }, |
There was a problem hiding this comment.
Same comment with respect to leading ~/
| dotfile tree the host may not have is safe. Other enumeration failures | ||
| (permission denied, unreadable entries) still fail the composition. | ||
|
|
||
| **`dest`** is interpreted relative to the sandbox user's home directory; a |
There was a problem hiding this comment.
Leading ~/ should not be included.
There was a problem hiding this comment.
Fixed in bd69733 — the prose now reads "interpreted relative to the session user's home directory" with no ~/ recommendation, and every example matches.
Replace prose em-dashes with context-appropriate punctuation (commas, colons, semicolons, and parentheses) throughout the loadouts reference. Wording and meaning are unchanged, including the deferred patches/hooks caveat; code blocks and verbatim output are untouched.
Drop the leading `~/` from every patch `dest` example: `dest` is always resolved relative to the session user's home, so the prefix is redundant. Remove the "Current limitations" deferred-patches/hooks block (it will be untrue by GA), omit the macOS `~/Library/Application Support` aside, and use "session" rather than "sandbox" for the interactive session context. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Note that hook execution is not yet wired up, replace the list-source certs example with a glob (same-dest list entries fail composition), correct dest semantics (verbatim path for literal sources, directory for globs), scope host-home expansion to the tilde prefix ($HOME resolves against session vars), quote the frontmatter description, and point task sandboxes at the Tasks page without naming the CLI. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Adds
docs/reference/loadouts.md(367 lines) — the loadouts reference page — and restores itsmanifest.jsonentry. This is the second half of the reference-docs work (WS8); the first half is #863.Why it's separate / stacked on #863
The reference docs form a cyclic link graph centered on
cli-mip.md, so a session/build split would leave dead links between merges.loadouts.mdis the one clean fault line — a leaf (nothing links to it), so it split out cleanly. It links out tocli-min.md,cli-mip.md,minimal-dot-toml.md, andtasks.md; two of those live in #863, so this PR is based onpr/05-cli-referenceto stay link-clean. I'll retarget it tomainonce #863 merges.Verification
manifest.jsonvalid; all 12 pages present (loadouts restored).🤖 Generated with Claude Code
Note
Add loadouts reference page to documentation
Adds loadouts.md covering the Loadouts feature schema, config directory layout, CLI selection flags, client config keys, composition/conflict policy, and environment variable behavior in the attach shell. Also registers the new page in manifest.json.
Changes since #868 opened
sourceanddestconfiguration fields in loadouts [0fe0e86]Macroscope summarized bf4e1b1.