Skip to content

Commit 74ef31e

Browse files
committed
Docs: link the obvious orphan docs + resolve connect-to-server spec; handle paren dirs in docs-reachable
Connected 17 of the 23 orphaned docs to the reachable tree (230 → 247 reachable, 6 orphans left, all deliberately deferred): - **`connect-to-server-plan.md`**: investigation confirmed it shipped in v0.11.0 (manual SMB "Connect to server", `network/manual_servers.rs` + MCP tools + dialog). Moved out of `later/` to the specs root and ticked in the index. - **4 subsystem dirs** named in `architecture.md` / `apps/desktop/CLAUDE.md` so their CLAUDE.md resolve (`routes/(main)/`, `apps/desktop/scripts/`, `packaging/homebrew/`). - **Guides** linked from their natural homes: the three dependency guides from `architecture.md` § Dependency management; signing + homebrew-cask from `releasing.md`; benchmarking/error-handling/mcp-development from the colocated `listing` / `friendly_error` / `mcp` CLAUDE.md; generating-test-files from `tooling/testing.md`; multi-agent-refactors from `AGENTS.md` § Workflow. - **Notes** linked from the subsystem they inform (`smb-auth-flow-redesign` → network, `sort-order-shortcut-research` → shortcuts) and `notes/README.md` from `AGENTS.md`. Also: `docs-reachable` now resolves SvelteKit group dirs (parens in backtick directory references), so `routes/(main)/` connects. Parens stay out of the file-token regex (they'd swallow a `](path)` delimiter); a test covers the dir case. Left as orphans for us to decide (stale / no code home): `benchmarks/smb/CLAUDE.md`, `guides/test-purchase-flow.md`, `guides/testing/index.md`, `guides/testing/setting-up-smb-test-containers-on-linux.md`, `notes/disk-cleanup-advice-process.md`, `notes/totalcmd-plugin-analysis.md`.
1 parent 185afdd commit 74ef31e

14 files changed

Lines changed: 35 additions & 6 deletions

File tree

AGENTS.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,8 @@ Core structure:
107107
- `/brand/` - Tracked brand/press-kit assets (logos, master screenshots, marketing copy). See its `CLAUDE.md`
108108
- `/docs/` - Dev docs
109109
- `guides/` - How-to guides
110-
- `notes/` - Temporary reference notes (benchmarks, analysis) linked from CLAUDE.md files
110+
- `notes/` - Temporary reference notes (benchmarks, analysis) linked from CLAUDE.md files; see
111+
[notes/README.md](docs/notes/README.md)
111112
- `specs/` - Per-development specs and task lists (temporary, periodically wiped); see
112113
[specs/index.md](docs/specs/index.md)
113114
- `tooling/` - Internal tooling docs
@@ -296,6 +297,7 @@ shims on PATH; if `go` / `node` isn't found, check that `~/.local/share/mise/shi
296297
- **Don't `git push` without explicit approval, and don't push routinely** (solo work, limited CI). See the
297298
`push-cadence` and `no-external-actions` user rules.
298299
- Step back and reflect per milestone. Is what you did solid AND elegant? Are you confident AND proud?
300+
- For large parallel-agent efforts, see [multi-agent refactors](docs/guides/multi-agent-refactors.md).
299301
- **The delivery pipeline is fully wired; don't re-audit it.** Releases are agent-automated end to end (tag → CI
300302
build/sign/notarize → publish `latest.json` → website deploy → silent in-app update via the FDA-preserving updater),
301303
and user-feedback loops are live (crash reports → email cron, error reports → instant Discord webhook, anonymous

apps/desktop/CLAUDE.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ Don't delete either shield. If a new always-edited non-build file type shows up
5050

5151
- `src/`: Svelte frontend (SvelteKit static adapter, TypeScript strict, custom CSS with design tokens)
5252
- `src-tauri/`: Rust backend (Tauri 2, serde, notify, tokio)
53+
- `scripts/`: dev/build scripts (the `scripts/tauri-wrapper.js` wrapper, instance-isolation); see its `CLAUDE.md`
5354
- `scripts/tauri-wrapper.js`: dev/build wrapper (env vars, dev config injection)
5455
- `test/`: Vitest unit tests
5556
- `test/e2e-linux/`: WebDriverIO + tauri-driver E2E tests (Docker)

apps/desktop/src-tauri/src/file_system/listing/CLAUDE.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
Backend directory reading, caching, sorting, and streaming for the file explorer. Handles 100k+ file directories with non-blocking I/O and progress events.
44

5+
For profiling listing performance, see `docs/guides/benchmarking-file-loading.md`.
6+
57
## Architecture
68

79
### Module structure

apps/desktop/src-tauri/src/file_system/volume/friendly_error/CLAUDE.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ we show a friendly title, a plain-language explanation, and provider-specific ad
88
Parent: [`volume/CLAUDE.md`](../CLAUDE.md). The trait + manager + capability matrix live there; this file is just the
99
error-mapping subsystem.
1010

11+
For the broader error-handling conventions across the app, see `docs/guides/error-handling.md`.
12+
1113
## Philosophy
1214

1315
**The user should never feel alone with a broken state.** Every error message should feel like the app is putting its

apps/desktop/src-tauri/src/mcp/CLAUDE.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
Exposes Cmdr to AI agents via the Model Context Protocol. Security model is parity: agents can only do what users can
44
do, no filesystem access. Streamable HTTP transport, `127.0.0.1` only, ephemeral port by default.
55

6+
For adding or changing tools, see `docs/guides/mcp-development.md`.
7+
68
## Module map
79

810
- `server.rs`: HTTP server, bind/lifecycle, auth gate (`tool_call_requires_token`, `validate_token`, `validate_origin`).

apps/desktop/src-tauri/src/network/CLAUDE.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ Discover, browse, and mount SMB network shares on macOS and Linux. Discovery via
55

66
Frontend counterpart: [`apps/desktop/src/lib/file-explorer/network/CLAUDE.md`](../../../src/lib/file-explorer/network/CLAUDE.md).
77

8+
Background on the auth flow design: `docs/notes/smb-auth-flow-redesign.md`.
9+
810
## Module map
911

1012
- Discovery + servers: `mdns_discovery.rs`, `manual_servers.rs`, `virtual_smb_hosts.rs` (E2E, `smb-e2e` feature only).

apps/desktop/src/lib/shortcuts/CLAUDE.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
Customizable keyboard shortcuts for all Cmdr commands (edit/add/remove/reset via Settings or MCP). Defaults live in the
44
sibling `../commands/command-registry.ts`; only customizations persist to `shortcuts.json`.
55

6+
Background on default sort-order shortcuts: `docs/notes/sort-order-shortcut-research.md`.
7+
68
## Module map
79

810
- `shortcuts-store.ts` (delta-only persistence, cross-window emit, the native/fixed boundary),

docs/architecture.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ All under `apps/desktop/src/lib/`.
6464
- `onboarding/`: Soft-sheet onboarding wizard: Full Disk Access, AI provider, open-beta analytics disclosure, optional
6565
settings
6666
- `ui/`: Shared UI primitives: ModalDialog, Button, AlertDialog, Notification, dialog registry, `SectionCard`
67+
- `routes/(main)/`: The main route: app orchestrator mounting the dual-pane explorer plus top-level dialogs
6768
- `routes/dev/components/`: Dev-only catalog of every `lib/ui/` primitive (Storybook replacement), in the Debug window
6869
- `tooltip/`: Lightweight tooltip primitive
6970
- `stores/`: App-wide reactive Svelte stores: volume list, restricted-paths state
@@ -153,6 +154,7 @@ All under `apps/desktop/src-tauri/src/`.
153154
- `apps/website/`: getcmdr.com marketing site (Astro + Tailwind v4), including the dev-only `/dev/blog` Markdown editor
154155
for drafting posts
155156
- `apps/website/public/hero/`: Hero illustration assets (frame + pane cutouts, dark/light)
157+
- `apps/desktop/packaging/homebrew/`: Homebrew cask shape source-of-truth and tap-bump flow
156158
- `scripts/check/`: Go unified check runner (~40 checks, parallel with dependency graph)
157159

158160
## Search
@@ -265,7 +267,9 @@ The check runner and E2E testing docs live colocated with their code:
265267

266268
[Renovate](https://docs.renovatebot.com/) (`renovate.json` in repo root) auto-updates all dependencies (npm, Cargo, Go).
267269
Weekly grouped PRs for non-major updates (auto-merge), monthly for major (manual review). Security vulnerability patches
268-
get immediate auto-merging PRs regardless of schedule.
270+
get immediate auto-merging PRs regardless of schedule. For adding deps by hand, see
271+
[add an npm dependency](guides/add-npm-dependency.md), [add a Rust crate](guides/add-rust-dependency.md), and
272+
[update dependencies](guides/update-dependencies.md).
269273

270274
### External services
271275

docs/guides/releasing.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@ How to release a new version of Cmdr. An agent runs the whole flow via the `/rel
44
monitors the build, verifies the public surface afterwards, and handles failure recovery. The human's role is to review
55
the CHANGELOG draft, confirm the version, and click any macOS permission prompts.
66

7+
Related guides for the signing and distribution steps:
8+
[apple-signing-and-notarization.md](apple-signing-and-notarization.md) and [homebrew-cask.md](homebrew-cask.md).
9+
710
## Prerequisites
811

912
- `TAURI_SIGNING_PRIVATE_KEY` and `TAURI_SIGNING_PRIVATE_KEY_PASSWORD` in GitHub secrets
File renamed without changes.

0 commit comments

Comments
 (0)