@sebastienrousseau/dotfiles 0.2.519 → 0.2.521

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (306) hide show
  1. package/CHANGELOG.md +200 -0
  2. package/LICENSE-APACHE +190 -0
  3. package/{LICENSE → LICENSE-MIT} +1 -1
  4. package/README.md +1172 -166
  5. package/install.sh +77 -11
  6. package/package.json +8 -8
  7. package/tools/README.md +49 -0
  8. package/tools/ci/install-chezmoi-verified.sh +68 -0
  9. package/docs/.vitepress/reports/localization-readability-audit.md +0 -73
  10. package/docs/AI.md +0 -179
  11. package/docs/CNAME +0 -1
  12. package/docs/CONFIG_STRATEGY.md +0 -124
  13. package/docs/COPYRIGHT +0 -7
  14. package/docs/GOVERNANCE.md +0 -98
  15. package/docs/MAINTAINERS.md +0 -41
  16. package/docs/NAMING_CONVENTIONS.md +0 -102
  17. package/docs/OPENCODE.md +0 -127
  18. package/docs/README.md +0 -84
  19. package/docs/STRUCTURE.md +0 -102
  20. package/docs/adr/ADR-001-ci-cd-pipeline.md +0 -118
  21. package/docs/adr/ADR-002-shell-performance.md +0 -130
  22. package/docs/adr/ADR-003-security-first.md +0 -158
  23. package/docs/adr/ADR-004-cli-architecture.md +0 -171
  24. package/docs/adr/ADR-005-chezmoi-choice.md +0 -99
  25. package/docs/adr/ADR-006-shell-selection.md +0 -124
  26. package/docs/adr/ADR-007-multi-shell-parity.md +0 -62
  27. package/docs/adr/ADR-008-alias-system-architecture.md +0 -95
  28. package/docs/adr/ADR-009-wallpaper-driven-theming.md +0 -131
  29. package/docs/adr/ADR-010-starship-transient-prompt.md +0 -144
  30. package/docs/adr/ADR-011-nushell-tier3-keep.md +0 -144
  31. package/docs/adr/ADR-012-ai-fleet-local-proxy.md +0 -79
  32. package/docs/adr/README.md +0 -40
  33. package/docs/architecture/AI_COST_OPTIMIZATION.md +0 -144
  34. package/docs/architecture/ARCHITECTURE.md +0 -117
  35. package/docs/architecture/INTEROP.md +0 -44
  36. package/docs/architecture/REPO_LAYOUT.md +0 -241
  37. package/docs/architecture/WALKTHROUGH.md +0 -86
  38. package/docs/architecture/fleet-deployment.md +0 -77
  39. package/docs/archive/EUXIS_2026_REVIEW.md +0 -127
  40. package/docs/archive/LEGACY_ROADMAP.md +0 -6
  41. package/docs/archive/MILESTONE_v0.2.493.md +0 -47
  42. package/docs/archive/PLAN.md +0 -199
  43. package/docs/archive/REPO_AUDIT.md +0 -31
  44. package/docs/articles/.pages +0 -6
  45. package/docs/articles/2026-07-05-custom-mkdocs-material-dark-theme.md +0 -216
  46. package/docs/articles/2026-07-05-fish-startup-abbr.md +0 -153
  47. package/docs/articles/2026-07-05-master-to-main-rename-runbook.md +0 -128
  48. package/docs/articles/index.md +0 -36
  49. package/docs/guides/INSTALL.md +0 -144
  50. package/docs/guides/NEOVIM_IDE_GUIDE.md +0 -61
  51. package/docs/guides/THEMING.md +0 -230
  52. package/docs/guides/TROUBLESHOOTING.md +0 -176
  53. package/docs/guides/WSL2_NIX_TROUBLESHOOTING.md +0 -792
  54. package/docs/index.md +0 -132
  55. package/docs/interop/A2A.md +0 -39
  56. package/docs/interop/POWERSHELL.md +0 -102
  57. package/docs/manual/00-introduction.md +0 -89
  58. package/docs/manual/01-concepts/01-architecture.md +0 -138
  59. package/docs/manual/01-concepts/02-trust-model.md +0 -183
  60. package/docs/manual/01-concepts/03-theme-engine.md +0 -186
  61. package/docs/manual/01-concepts/04-fleet.md +0 -148
  62. package/docs/manual/01-concepts/05-self-healing.md +0 -204
  63. package/docs/manual/02-tutorials/01-first-install.md +0 -197
  64. package/docs/manual/02-tutorials/02-add-wallpaper.md +0 -216
  65. package/docs/manual/02-tutorials/03-create-profile.md +0 -244
  66. package/docs/manual/02-tutorials/04-encrypt-secret.md +0 -281
  67. package/docs/manual/02-tutorials/05-deploy-fleet.md +0 -283
  68. package/docs/manual/03-reference/01-dot-cli.md +0 -450
  69. package/docs/manual/03-reference/02-config-files.md +0 -265
  70. package/docs/manual/03-reference/03-environment.md +0 -124
  71. package/docs/manual/03-reference/04-templates.md +0 -190
  72. package/docs/manual/03-reference/05-feature-flags.md +0 -187
  73. package/docs/manual/04-cookbook/01-recipes.md +0 -285
  74. package/docs/manual/04-cookbook/02-troubleshooting.md +0 -351
  75. package/docs/manual/04-cookbook/03-faq.md +0 -175
  76. package/docs/manual/05-appendices/A-platform-matrix.md +0 -101
  77. package/docs/manual/05-appendices/B-security-checklist.md +0 -85
  78. package/docs/manual/05-appendices/C-glossary.md +0 -40
  79. package/docs/manual/05-appendices/D-bibliography.md +0 -58
  80. package/docs/manual/05-appendices/E-license.md +0 -38
  81. package/docs/manual/_toc.yml +0 -58
  82. package/docs/manual/command-index.md +0 -155
  83. package/docs/manual/concept-index.md +0 -168
  84. package/docs/manual/index.md +0 -66
  85. package/docs/operations/ARCHITECTURE_ROADMAP.md +0 -7
  86. package/docs/operations/ATTESTATION.md +0 -44
  87. package/docs/operations/CI_CADENCE.md +0 -107
  88. package/docs/operations/CI_COMPOSITES.md +0 -156
  89. package/docs/operations/COMPLETIONS.md +0 -123
  90. package/docs/operations/COVERAGE.md +0 -204
  91. package/docs/operations/DRIFT.md +0 -107
  92. package/docs/operations/HARD_AUDIT_2026.md +0 -631
  93. package/docs/operations/MAINTENANCE.md +0 -63
  94. package/docs/operations/MANIFEST.md +0 -127
  95. package/docs/operations/MIGRATION.md +0 -109
  96. package/docs/operations/OPERATIONS.md +0 -188
  97. package/docs/operations/PERFORMANCE.md +0 -133
  98. package/docs/operations/REGISTRY.md +0 -90
  99. package/docs/operations/RELEASE_PIPELINE.md +0 -128
  100. package/docs/operations/RELIABILITY.md +0 -122
  101. package/docs/operations/RFC_v0_2_503_reorganization.md +0 -280
  102. package/docs/operations/ROADMAP.md +0 -10
  103. package/docs/operations/ROADMAP_2026.md +0 -7
  104. package/docs/operations/ROADMAP_V0_2_503.md +0 -10
  105. package/docs/operations/TESTING.md +0 -216
  106. package/docs/operations/TRACEABILITY.md +0 -43
  107. package/docs/operations/TRUSTED_AGENT_WORKSTATION.md +0 -65
  108. package/docs/operations/VERSION_SYNC.md +0 -393
  109. package/docs/reference/ALIASES.md +0 -131
  110. package/docs/reference/ALIASES_CHEATSHEET.md +0 -32
  111. package/docs/reference/ALIASES_DEPRECATIONS.md +0 -13
  112. package/docs/reference/FEATURES.md +0 -66
  113. package/docs/reference/FONTS.md +0 -112
  114. package/docs/reference/POWERSHELL_PARITY.md +0 -82
  115. package/docs/reference/PROFILES.md +0 -69
  116. package/docs/reference/SCREENSHOTS.md +0 -121
  117. package/docs/reference/SCRIPTS.md +0 -71
  118. package/docs/reference/SUPPORT_MATRIX.md +0 -80
  119. package/docs/reference/THEMES.md +0 -117
  120. package/docs/reference/TOOLS.md +0 -110
  121. package/docs/reference/UTILS.md +0 -242
  122. package/docs/registry.json +0 -6
  123. package/docs/schema/dot-env-v1.json +0 -110
  124. package/docs/schema/dot-registry-v1.json +0 -33
  125. package/docs/security/AI_ACT_COMPLIANCE.md +0 -94
  126. package/docs/security/AUDIT_BYPASS.md +0 -103
  127. package/docs/security/AUTOMATION_SECRETS.md +0 -26
  128. package/docs/security/CI_EGRESS_ALLOWLIST.md +0 -127
  129. package/docs/security/CI_PINNING.md +0 -129
  130. package/docs/security/COMMIT_SIGNING.md +0 -138
  131. package/docs/security/COMPLIANCE.md +0 -458
  132. package/docs/security/DEPS_DEV_EXCEPTIONS.md +0 -86
  133. package/docs/security/DISCLOSURE.md +0 -130
  134. package/docs/security/ENCRYPTION.md +0 -57
  135. package/docs/security/FMEA.md +0 -159
  136. package/docs/security/FUZZING.md +0 -114
  137. package/docs/security/HISTORY_FILTERING.md +0 -132
  138. package/docs/security/INCIDENT_RESPONSE.md +0 -579
  139. package/docs/security/INSTALL_VERIFICATION.md +0 -122
  140. package/docs/security/KEYS.md +0 -49
  141. package/docs/security/KEY_ROTATION.md +0 -303
  142. package/docs/security/MCP_POLICY.md +0 -78
  143. package/docs/security/POLICY_RELEASES.md +0 -37
  144. package/docs/security/README.md +0 -28
  145. package/docs/security/SCORECARD.md +0 -195
  146. package/docs/security/SECRETS.md +0 -158
  147. package/docs/security/SECURITY.md +0 -45
  148. package/docs/security/SECURITY_CHECKLIST.md +0 -55
  149. package/docs/security/SHELL_EXEMPTIONS.md +0 -145
  150. package/docs/security/SOUP_REGISTER.md +0 -36
  151. package/docs/security/THREAT_MODEL.md +0 -130
  152. package/docs/security/VERIFICATION_VALIDATION.md +0 -228
  153. package/docs/security/VERIFY_RELEASE.md +0 -201
  154. package/docs/security/security-pubkey.asc +0 -15
  155. package/docs/stylesheets/extra.css +0 -444
  156. package/docs/themes/README.md +0 -10
  157. package/docs/themes/VISUAL_INTEGRITY_REPORT.md +0 -30
  158. package/docs/themes/hero-shot.svg +0 -78
  159. package/scripts/README.md +0 -123
  160. package/scripts/ci/check-copyright-headers.sh +0 -8
  161. package/scripts/ci/check-shell-preamble.sh +0 -8
  162. package/scripts/ci/guard-gitleaks-checkout.sh +0 -8
  163. package/scripts/demo/record.sh +0 -43
  164. package/scripts/diagnostics/a2a-conformance.sh +0 -163
  165. package/scripts/diagnostics/alias-governance.sh +0 -138
  166. package/scripts/diagnostics/aliases-cheatsheet.sh +0 -74
  167. package/scripts/diagnostics/aliases-manifest.sh +0 -77
  168. package/scripts/diagnostics/benchmark.sh +0 -408
  169. package/scripts/diagnostics/conflicts.sh +0 -73
  170. package/scripts/diagnostics/doctor-unified.sh +0 -39
  171. package/scripts/diagnostics/doctor.sh +0 -751
  172. package/scripts/diagnostics/drift-dashboard.sh +0 -202
  173. package/scripts/diagnostics/health.sh +0 -623
  174. package/scripts/diagnostics/history-analysis.sh +0 -86
  175. package/scripts/diagnostics/mcp-doctor.sh +0 -582
  176. package/scripts/diagnostics/perf.sh +0 -453
  177. package/scripts/diagnostics/scorecard.sh +0 -119
  178. package/scripts/diagnostics/secret-governance.sh +0 -65
  179. package/scripts/diagnostics/security-score.sh +0 -467
  180. package/scripts/diagnostics/smoke-test.sh +0 -88
  181. package/scripts/diagnostics/snapshot.sh +0 -90
  182. package/scripts/diagnostics/verify.sh +0 -108
  183. package/scripts/diagnostics/verify_state.sh +0 -73
  184. package/scripts/diagnostics/version-locks.sh +0 -94
  185. package/scripts/diagnostics/workstation-attestation.sh +0 -187
  186. package/scripts/dot/commands/agent.sh +0 -485
  187. package/scripts/dot/commands/agents.sh +0 -336
  188. package/scripts/dot/commands/ai.sh +0 -587
  189. package/scripts/dot/commands/aliases.sh +0 -277
  190. package/scripts/dot/commands/appearance.sh +0 -110
  191. package/scripts/dot/commands/completion.sh +0 -134
  192. package/scripts/dot/commands/core.sh +0 -217
  193. package/scripts/dot/commands/diagnostics.sh +0 -265
  194. package/scripts/dot/commands/env-emit.sh +0 -203
  195. package/scripts/dot/commands/fleet.sh +0 -688
  196. package/scripts/dot/commands/init.sh +0 -185
  197. package/scripts/dot/commands/lint.sh +0 -208
  198. package/scripts/dot/commands/manual.sh +0 -169
  199. package/scripts/dot/commands/meta.sh +0 -333
  200. package/scripts/dot/commands/patterns.sh +0 -55
  201. package/scripts/dot/commands/registry.sh +0 -419
  202. package/scripts/dot/commands/restore.sh +0 -232
  203. package/scripts/dot/commands/secrets.sh +0 -296
  204. package/scripts/dot/commands/security.sh +0 -102
  205. package/scripts/dot/commands/tools.sh +0 -556
  206. package/scripts/dot/data/alias-deprecations.tsv +0 -2
  207. package/scripts/dot/powershell/Dot.psm1 +0 -319
  208. package/scripts/fonts/install-nerd-fonts.sh +0 -75
  209. package/scripts/fonts/patch-fonts.sh +0 -36
  210. package/scripts/git-hooks/install.sh +0 -12
  211. package/scripts/git-hooks/pre-commit +0 -12
  212. package/scripts/git-hooks/pre-commit-audit.sh +0 -146
  213. package/scripts/git-hooks/pre-push +0 -105
  214. package/scripts/git-hooks/prepare-commit-msg +0 -29
  215. package/scripts/lib/secrets_provider.sh +0 -185
  216. package/scripts/ops/ai-setup.sh +0 -71
  217. package/scripts/ops/bundle.sh +0 -104
  218. package/scripts/ops/chaos.sh +0 -50
  219. package/scripts/ops/chezmoi-apply.sh +0 -333
  220. package/scripts/ops/chezmoi-diff.sh +0 -16
  221. package/scripts/ops/chezmoi-remove.sh +0 -46
  222. package/scripts/ops/chezmoi-update.sh +0 -63
  223. package/scripts/ops/heal-chezmoi.sh +0 -87
  224. package/scripts/ops/heal-system.sh +0 -129
  225. package/scripts/ops/heal-tools.sh +0 -297
  226. package/scripts/ops/heal.sh +0 -223
  227. package/scripts/ops/post-apply-repair.sh +0 -107
  228. package/scripts/ops/prewarm.sh +0 -128
  229. package/scripts/ops/release.sh +0 -262
  230. package/scripts/ops/rollback.sh +0 -604
  231. package/scripts/ops/setup.sh +0 -138
  232. package/scripts/ops/teleport.sh +0 -34
  233. package/scripts/qa/check-version-consistency.sh +0 -124
  234. package/scripts/qa/coverage-baseline.sh +0 -61
  235. package/scripts/qa/docs-coverage.sh +0 -112
  236. package/scripts/qa/examples-coverage.sh +0 -94
  237. package/scripts/qa/powershell-contract.ps1 +0 -95
  238. package/scripts/qa/reliability-audit.sh +0 -139
  239. package/scripts/qa/scorecard-snapshot.sh +0 -128
  240. package/scripts/qa/traceability-coverage.sh +0 -117
  241. package/scripts/qa/validate-examples.sh +0 -27
  242. package/scripts/qa/wsl-contract.sh +0 -12
  243. package/scripts/secrets/age-init.sh +0 -82
  244. package/scripts/secrets/create-secrets-file.sh +0 -46
  245. package/scripts/secrets/encrypt-ssh-key.sh +0 -44
  246. package/scripts/security/backup.sh +0 -58
  247. package/scripts/security/check-disclosure-key-expiry.sh +0 -111
  248. package/scripts/security/dns-doh.sh +0 -52
  249. package/scripts/security/encryption-check.sh +0 -55
  250. package/scripts/security/enforce-policies.sh +0 -335
  251. package/scripts/security/firewall.sh +0 -91
  252. package/scripts/security/lock-configs.sh +0 -67
  253. package/scripts/security/lock-screen.sh +0 -56
  254. package/scripts/security/manage-secrets.sh +0 -429
  255. package/scripts/security/ssh-cert.sh +0 -204
  256. package/scripts/security/telemetry-kill.sh +0 -51
  257. package/scripts/security/usb-safety.sh +0 -52
  258. package/scripts/theme/apply-gnome-theme.sh +0 -333
  259. package/scripts/theme/extract-heic-frames.sh +0 -115
  260. package/scripts/theme/extract-theme.py +0 -742
  261. package/scripts/theme/install-boot-logo.sh +0 -63
  262. package/scripts/theme/install-catppuccin-themes.sh +0 -371
  263. package/scripts/theme/install-cursors.sh +0 -26
  264. package/scripts/theme/install-file-icons.sh +0 -27
  265. package/scripts/theme/install-grub-theme.sh +0 -62
  266. package/scripts/theme/install-lock-icon.sh +0 -31
  267. package/scripts/theme/merge-wallpaper.sh +0 -146
  268. package/scripts/theme/rebuild-themes.sh +0 -544
  269. package/scripts/theme/switch.sh +0 -449
  270. package/scripts/theme/wallpaper-rotate.sh +0 -137
  271. package/scripts/theme/wallpaper-sync.sh +0 -690
  272. package/scripts/tools/cmatrix.sh +0 -22
  273. package/scripts/tools/detect-collisions.py +0 -103
  274. package/scripts/tools/emoji-picker.sh +0 -49
  275. package/scripts/tools/figlet-banner.sh +0 -19
  276. package/scripts/tools/log-rotate.sh +0 -31
  277. package/scripts/tools/lolcat-wrap.sh +0 -20
  278. package/scripts/tools/pipes.sh +0 -49
  279. package/scripts/tuning/linux.sh +0 -186
  280. package/scripts/tuning/macos.sh +0 -56
  281. package/scripts/uninstall.sh +0 -86
  282. package/scripts/version-sync.sh +0 -654
  283. package/templates/chezmoi-data/geekom-a9.toml.example +0 -21
  284. package/templates/chezmoi-data/mac-m1.toml.example +0 -16
  285. package/templates/chezmoi-data/mac-t2-linux.toml.example +0 -21
  286. package/templates/chezmoi-data/surface-pro-7p.toml.example +0 -21
  287. package/templates/projects/go/.github/workflows/ci.yml +0 -31
  288. package/templates/projects/go/README.md +0 -7
  289. package/templates/projects/go/cmd/__PROJECT_NAME__/main.go +0 -8
  290. package/templates/projects/go/go.mod +0 -3
  291. package/templates/projects/go/go.sum +0 -0
  292. package/templates/projects/molecule/README.md +0 -7
  293. package/templates/projects/molecule/converge.yml +0 -7
  294. package/templates/projects/molecule/molecule.yml +0 -16
  295. package/templates/projects/node/.github/workflows/ci.yml +0 -30
  296. package/templates/projects/node/README.md +0 -7
  297. package/templates/projects/node/package-lock.json +0 -12
  298. package/templates/projects/node/package.json +0 -10
  299. package/templates/projects/node/src/index.js +0 -3
  300. package/templates/projects/packer/README.md +0 -15
  301. package/templates/projects/packer/main.pkr.hcl +0 -15
  302. package/templates/projects/python/.github/workflows/ci.yml +0 -34
  303. package/templates/projects/python/README.md +0 -7
  304. package/templates/projects/python/pyproject.toml +0 -25
  305. package/templates/projects/python/src/__PROJECT_NAME__/__init__.py +0 -2
  306. package/templates/projects/python/tests/test_basic.py +0 -3
@@ -1,450 +0,0 @@
1
- ---
2
- render_with_liquid: false
3
- ---
4
-
5
- # Reference: The `dot` CLI
6
-
7
- Complete command reference. Every subcommand, every flag, every exit code.
8
-
9
- ## Invocation
10
-
11
- ```
12
- dot [<command>] [<subcommand>] [<flags>] [<args>]
13
- ```
14
-
15
- With no arguments, `dot` prints the overview (same as `dot help`).
16
-
17
- ## Global Flags
18
-
19
- | Flag | Purpose |
20
- |:---|:---|
21
- | `-h`, `--help` | Show help for the command (or overview if no command given) |
22
- | `-v`, `--verbose` | Verbose output |
23
- | `--version` | Print the dotfiles version and exit |
24
- | `--json` | Machine-readable JSON output (where supported) |
25
-
26
- ## Start Here
27
-
28
- ### `dot sync` / `dot apply`
29
-
30
- Apply the tracked configuration to the machine. Aliases: `dot sync == dot apply`.
31
-
32
- ```
33
- dot sync [--dry-run|-n] [--force|-f] [--verbose|-v]
34
- ```
35
-
36
- | Flag | Effect |
37
- |:---|:---|
38
- | `--dry-run`, `-n` | Preview changes without applying |
39
- | `--force`, `-f` | Skip confirmation prompts |
40
- | `--verbose`, `-v` | Show per-file actions |
41
-
42
- Exit codes: 0 (clean apply), 1 (drift reconciled), 2 (apply failed).
43
-
44
- ### `dot doctor`
45
-
46
- Check the environment and surface issues.
47
-
48
- ```
49
- dot doctor [--score|-s] [--heal|-H] [--json|-j] [--verbose|-v]
50
- ```
51
-
52
- | Flag | Effect |
53
- |:---|:---|
54
- | `--score`, `-s` | Print numeric score (0-100) only |
55
- | `--heal`, `-H` | Auto-fix detected issues |
56
- | `--json`, `-j` | Machine-readable output |
57
- | `--verbose`, `-v` | Show every check (default: failures only) |
58
-
59
- Exit codes: 0 (healthy), 1 (warnings), 2 (critical failures).
60
-
61
- ### `dot learn`
62
-
63
- Interactive guided tour of the environment. Takes ~5-10 minutes, covers shells, secrets, themes, performance, security. Press `q` to exit at any time.
64
-
65
- ### `dot help [<command>]`
66
-
67
- Show the overview (no arg) or detailed help for a specific command.
68
-
69
- ## Daily Use
70
-
71
- ### `dot status` / `dot diff`
72
-
73
- Show local drift or preview pending changes.
74
-
75
- ```
76
- dot status # list changed managed files
77
- dot diff [<path>] # show unified diff (all or one path)
78
- ```
79
-
80
- ### `dot edit`
81
-
82
- Open the source directory in `$EDITOR`. Shorthand for `cd ~/.dotfiles && $EDITOR`.
83
-
84
- ### `dot upgrade`
85
-
86
- Update tools, plugins, and dotfiles.
87
-
88
- ```
89
- dot upgrade [--tools-only] [--dotfiles-only]
90
- ```
91
-
92
- Runs `topgrade`-style upgrade of Mise tools, Nix flakes, homebrew (macOS), and pulls the latest `.dotfiles`.
93
-
94
- ### `dot commit`
95
-
96
- Create an AI-assisted conventional commit from staged changes.
97
-
98
- ```
99
- dot commit
100
- ```
101
-
102
- Uses the configured AI provider (via `dot mode`) to generate a commit message matching the Conventional Commits spec.
103
-
104
- ### `dot search <term>`
105
-
106
- Find commands by keyword.
107
-
108
- ```
109
- dot search theme # lists all theme-related commands
110
- dot search secret # lists all secret-related commands
111
- ```
112
-
113
- ## Inspect & Repair
114
-
115
- ### `dot heal`
116
-
117
- Auto-repair missing tools, chezmoi drift, broken symlinks, and critical files.
118
-
119
- ```
120
- dot heal [--dry-run|-n] [--force|-f] [--tool <name>]
121
- ```
122
-
123
- See [Self-Healing concept](../01-concepts/05-self-healing.md).
124
-
125
- ### `dot rollback`
126
-
127
- Return to a previous snapshot.
128
-
129
- ```
130
- dot rollback # restore most recent snapshot
131
- dot rollback status # list snapshots
132
- dot rollback restore <n> # restore snapshot #n
133
- dot rollback clean # delete snapshots older than 30 days
134
- ```
135
-
136
- ### `dot chaos`
137
-
138
- Simulate corruption to test self-healing. **Destructive.** Use only in ephemeral environments.
139
-
140
- ```
141
- dot chaos [symlink|config|tool|permission|all]
142
- ```
143
-
144
- ### `dot attest`
145
-
146
- Export signed workstation evidence (see [Trust Model](../01-concepts/02-trust-model.md)).
147
-
148
- ```
149
- dot attest [--output|-o <file>] [--sign|-s]
150
- ```
151
-
152
- Default output: `~/.local/state/dotfiles/attestation/YYYY-MM-DD-HHMMSS.json`. With `--sign`, the JSON is signed with the user's SSH ED25519 key.
153
-
154
- ### `dot lint`
155
-
156
- Lint shell scripts (shellcheck, shfmt).
157
-
158
- ```
159
- dot lint [--path <glob>] [--strict]
160
- ```
161
-
162
- ## Performance
163
-
164
- ### `dot perf`
165
-
166
- Quick performance snapshot.
167
-
168
- ```
169
- dot perf [--json|-j] [--profile|-p] [--runs|-r <n>] [--target|-t <ms>]
170
- ```
171
-
172
- ### `dot cache-refresh`
173
-
174
- Regenerate shell caches for ultra-fast startup.
175
-
176
- ### `dot score`
177
-
178
- Show system health + security score.
179
-
180
- ### `dot metrics`
181
-
182
- Show recent observability metrics (startup times, heal events, score history).
183
-
184
- ### `dot load-bench`
185
-
186
- Measure heavy-layer (nvm, rbenv, direnv) readiness time.
187
-
188
- ## AI & Agents
189
-
190
- ### `dot ai`
191
-
192
- The cockpit for your AI-CLI fleet. Bare `dot ai` opens a Bubble Tea TUI;
193
- a prompt runs a one-shot; `dot ai serve` serves your Claude subscription
194
- locally to any Anthropic/OpenAI-protocol tool.
195
-
196
- ```
197
- dot ai # open the cockpit (TUI)
198
- dot ai "fix the auth bug" # one-shot on Claude
199
- dot ai codex "add tests" # one-shot on a named tool
200
- dot ai chat [tool] # interactive session
201
- dot ai tools # install / manage the fleet
202
- dot ai install [all|<tool>] # install fleet tools
203
- dot ai serve [stop|status] # local Claude gateway (start also routes the fleet)
204
- dot ai cost # spend report
205
- dot ai login [tool] # authenticate
206
- dot ai doctor # health-check fleet + gateway
207
- ```
208
-
209
- Add `--style <name>` (architect, hardener, refactor) to steer a prompt.
210
- Old forms (`dot cl`, `dot ai dashboard`, `dot ai proxy`, `dot ai-setup`, …)
211
- still work as deprecated aliases. See [AI.md](../../AI.md) for the full guide.
212
-
213
- ### `dot mcp`
214
-
215
- Inspect MCP policy and registry.
216
-
217
- ```
218
- dot mcp [--strict|-s] [--json|-j]
219
- ```
220
-
221
- With `--strict`, validates the active MCP registry matches the policy hash. Exit code 1 on mismatch.
222
-
223
- ### `dot mode [<profile>]`
224
-
225
- Show or set the agent profile.
226
-
227
- ```
228
- dot mode # show current profile
229
- dot mode architect # switch to architect profile
230
- dot mode list # list all profiles
231
- ```
232
-
233
- Available profiles (see `dot_config/ai/patterns/`): `architect`, `hardener`, `refactor`. Custom profiles can be added by dropping `<name>.md` in the patterns directory.
234
-
235
- ### `dot agent`
236
-
237
- Agent metadata, logs, checkpoints, and conformance reports.
238
-
239
- ```
240
- dot agent status # current agent state
241
- dot agent logs [--since <t>] # recent agent invocations
242
- dot agent conformance # MCP policy conformance report
243
- ```
244
-
245
- ## Configuration
246
-
247
- ### `dot theme`
248
-
249
- Switch terminal and desktop themes. See [Theme Engine](../01-concepts/03-theme-engine.md) and [Theming Guide](../../guides/THEMING.md).
250
-
251
- ```
252
- dot theme # interactive picker
253
- dot theme <name> # switch directly (e.g. dot theme tahoe-dark)
254
- dot theme toggle # swap dark↔light within family
255
- dot theme list # show paired themes with System/Custom source
256
- dot theme rebuild [--force|--list] # regenerate from wallpapers
257
- ```
258
-
259
- ### `dot env`
260
-
261
- Show managed tool versions.
262
-
263
- ```
264
- dot env # all managed tools
265
- dot env <tool> # single tool
266
- ```
267
-
268
- ### `dot profile [<name>]`
269
-
270
- Show or switch the active profile.
271
-
272
- ```
273
- dot profile # show active profile
274
- dot profile list # all profiles
275
- dot profile laptop # switch to 'laptop' profile
276
- ```
277
-
278
- Profiles live in `.chezmoidata.toml` under `[profiles.<name>]`.
279
-
280
- ### `dot secrets`
281
-
282
- Edit or manage encrypted secrets.
283
-
284
- ```
285
- dot secrets list # all encrypted files
286
- dot secrets edit <path> # open in $EDITOR (decrypted)
287
- dot secrets rotate # re-encrypt with current recipients
288
- dot secrets verify # integrity check (no decryption)
289
- ```
290
-
291
- ## Fleet
292
-
293
- ### `dot fleet`
294
-
295
- Multi-node status, drift, and namespace.
296
-
297
- ```
298
- dot fleet # show all known hosts
299
- dot fleet attest # collect signed attestations
300
- dot fleet diff # compare rendered config across hosts
301
- dot fleet sync # run `dot upgrade` on every host
302
- dot fleet apply # SSH out to every host in fleet.toml and run 'dot sync'
303
- ```
304
-
305
- Fleet hosts are configured in `~/.config/dotfiles/fleet.toml`.
306
-
307
- ### `dot fleet apply`
308
-
309
- Push dotfiles state to every host registered in `~/.config/dotfiles/fleet.toml`.
310
-
311
- ```
312
- dot fleet apply [--host <name>] [--cmd <shell>] [--dry-run] [--jobs <n>]
313
- ```
314
-
315
- | Flag | Effect |
316
- |:---|:---|
317
- | `--host <name>` | Apply to a single host only (matches the `[hosts.<name>]` stanza key). |
318
- | `--cmd <shell>` | Run a custom command on every host instead of the default `dot sync && dot doctor --quiet`. **Warning:** this is arbitrary shell on remote hosts; the value is your trust boundary. |
319
- | `--dry-run`, `-n` | Print the resolved hosts + planned command without opening SSH. |
320
- | `--jobs <n>` | Parallelism (default 4). |
321
-
322
- Hostnames in `fleet.toml` are validated against `[A-Za-z0-9._@:+/-]+` before fan-out; entries containing other characters abort the apply. First-time SSH connections use `StrictHostKeyChecking=accept-new` (TOFU); pre-populate `~/.ssh/known_hosts` if your threat model requires no TOFU window.
323
-
324
- Example `fleet.toml`:
325
-
326
- ```toml
327
- [hosts.laptop]
328
- ssh = "user@laptop.local"
329
- profile = "workstation"
330
- ```
331
-
332
- ## Agents
333
-
334
- ### `dot agents`
335
-
336
- Multi-harness AI agent configuration manager. `CLAUDE.md` is canonical; `dot agents render` keeps `AGENTS.md` (the cross-harness standard read by Codex / Copilot / Cursor / Windsurf / Amp / Devin) plus `.cursor/rules/dotfiles.mdc` and `.codex/config.toml` in sync.
337
-
338
- ```
339
- dot agents list # show which harnesses are recognised + their target paths
340
- dot agents check # exit 0 if AGENTS.md tracks CLAUDE.md; 1 if drifted
341
- dot agents render # regenerate AGENTS.md + 10 harness-specific files
342
- ```
343
-
344
- Harnesses covered: `AGENTS.md` (canonical cross-harness), Cursor (`.cursor/rules/dotfiles.mdc`), Codex (`.codex/config.toml`), Windsurf (`.windsurf/rules.md`), Zed (`.zed/agent-config.toml`), Roo (`.roo/rules.md`), Cline (`.clinerules`), Aider (`.aider.conf.yml`), Continue (`.continuerc.json`), Jules (`.jules/system.md`), Antigravity (`.agy/AGY.md`).
345
-
346
- Edit `CLAUDE.md` first, then run `dot agents render`; do not hand-edit `AGENTS.md` or any of the per-harness files. The check subcommand is suitable for pre-commit hooks.
347
-
348
- ## Registry
349
-
350
- ### `dot registry`
351
-
352
- JSON-indexed module registry. Discover and install reusable dotfile modules from a registry hosted via GitHub Pages (or any HTTPS URL via `set-url`).
353
-
354
- ```
355
- dot registry list # list modules in the configured registry
356
- dot registry search <query> # filter modules by keyword
357
- dot registry info <name> # full metadata for one module
358
- dot registry install <name> # apply a module (scaffold today)
359
- dot registry url # show the active registry URL
360
- dot registry set-url <url> # override the registry URL (HTTPS-only)
361
- ```
362
-
363
- Default registry: `https://sebastienrousseau.github.io/dotfiles/registry.json`. Cache lives at `${XDG_CACHE_HOME:-~/.cache}/dotfiles/registry/index.json` with a 6h TTL. One-off override: `DOTFILES_REGISTRY_URL=<url> dot registry list`.
364
-
365
- The JSON contract + module-contribution flow live in [`docs/operations/REGISTRY.md`](../../operations/REGISTRY.md).
366
-
367
- ## Reference
368
-
369
- ### `dot version`
370
-
371
- Show the installed version.
372
-
373
- ```
374
- dot version [--json]
375
- ```
376
-
377
- ### `dot manual`
378
-
379
- Open or download the manual in multiple formats.
380
-
381
- ```
382
- dot manual # open latest HTML manual in browser
383
- dot manual pdf # download + open PDF
384
- dot manual text # pipe ASCII text to pager
385
- dot manual download <format> # save to current directory
386
- dot manual --offline # use bundled offline copy (from `dot bundle`)
387
- ```
388
-
389
- Formats: `html`, `html-multi`, `pdf`, `epub`, `text`, `markdown`.
390
-
391
- ### `dot add <path>`
392
-
393
- Import a file into chezmoi's source directory.
394
-
395
- ```
396
- dot add ~/.somefile # plaintext
397
- dot add --encrypt ~/.somefile # encrypted with Age
398
- dot add --template ~/.somefile # templatize
399
- ```
400
-
401
- ### `dot cd`
402
-
403
- Print the source directory path. Useful for `cd $(dot cd)`.
404
-
405
- ### `dot bundle`
406
-
407
- Create an offline portable archive.
408
-
409
- ```
410
- dot bundle # default output ~/Downloads/
411
- dot bundle --to <dir|file> # custom location
412
- dot bundle --manual # include offline manual
413
- dot bundle restore <bundle.tar.zst> # restore from bundle
414
- ```
415
-
416
- ### `dot packages`
417
-
418
- Show installed packages and package managers.
419
-
420
- ```
421
- dot packages
422
- dot packages --manager mise|nix|brew|apt
423
- ```
424
-
425
- ## Environment Variables
426
-
427
- | Variable | Purpose |
428
- |:---|:---|
429
- | `DOTFILES_VERBOSE=1` | Verbose output for all `dot` commands |
430
- | `DOTFILES_NONINTERACTIVE=1` | Skip interactive prompts |
431
- | `DOTFILES_SILENT=1` | Suppress non-error output |
432
- | `DOTFILES_SOURCE_DIR` | Override the source directory |
433
- | `DOTFILES_WALLPAPER_DIR` | Override `~/Pictures/Wallpapers/` |
434
- | `DOTFILES_DEBUG=1` | Print timing info during shell init |
435
-
436
- ## Exit Codes
437
-
438
- | Code | Meaning |
439
- |:---|:---|
440
- | 0 | Success |
441
- | 1 | Warnings or recoverable errors |
442
- | 2 | Critical failure — manual intervention required |
443
- | 127 | Command not found |
444
-
445
- ## See Also
446
-
447
- - [Configuration Files Reference](02-config-files.md)
448
- - [Environment Reference](03-environment.md)
449
- - [Template Variables](04-templates.md)
450
- - [Feature Flags](05-feature-flags.md)
@@ -1,265 +0,0 @@
1
- ---
2
- render_with_liquid: false
3
- ---
4
- {% raw %}
5
-
6
- # Reference: Configuration Files
7
-
8
- Every config file read or written by `.dotfiles`, with its schema and purpose.
9
-
10
- ## Source Repository
11
-
12
- | File | Purpose |
13
- |:---|:---|
14
- | `~/.dotfiles/.chezmoidata.toml` | Global defaults: theme, profile, version, features |
15
- | `~/.dotfiles/.chezmoidata/hardware.toml` | Machine presets (MacBook T2, Surface Pro, etc.) |
16
- | `~/.dotfiles/.chezmoidata/themes.toml` | **Generated** theme palettes — do not edit |
17
- | `~/.dotfiles/.chezmoidata/keybinds.toml` | Modifier hierarchy matrix |
18
- | `~/.dotfiles/mise.toml` | Pinned runtime versions for the dotfiles repo |
19
- | `~/.dotfiles/.chezmoiignore` | Paths excluded from `chezmoi apply` |
20
- | `~/.dotfiles/.chezmoitemplates/` | Reusable template partials |
21
-
22
- ## User-Owned Configuration
23
-
24
- | File | Purpose | Git-tracked? |
25
- |:---|:---|:---:|
26
- | `~/.config/chezmoi/chezmoi.toml` | Per-host overrides (machine, theme, shell) | No |
27
- | `~/.config/age/keys.txt` | Age private key for decryption | No |
28
- | `~/.config/mise/config.toml` | User runtime preferences (managed by this repo) | Via chezmoi |
29
- | `~/.config/dotfiles/fleet.toml` | Fleet host list (optional) | No |
30
- | `~/.ssh/allowed_signers` | SSH public keys trusted for commit verification | Via chezmoi (template) |
31
-
32
- ## `.chezmoidata.toml` Schema
33
-
34
- ```toml
35
- # Version — bumped by version-sync.sh at release time
36
- dotfiles_version = "0.2.503"
37
-
38
- # Machine preset — override in ~/.config/chezmoi/chezmoi.toml per host
39
- machine = ""
40
-
41
- # Active theme — see `dot theme list`
42
- theme = "tahoe-dark"
43
-
44
- # Terminal defaults
45
- terminal_font_family = "JetBrainsMono Nerd Font"
46
- terminal_font_size = 12
47
- default_shell = "fish" # fish | zsh | nu
48
-
49
- # Git identity (prompt-provided via chezmoi init)
50
- name = ""
51
- email = ""
52
-
53
- # Active profile
54
- profile = "laptop" # desktop | laptop | server | codespace
55
-
56
- # Feature flags (see 05-feature-flags.md)
57
- [features]
58
- dms = false
59
- linux_desktop = false
60
- niri = false
61
- waybar = false
62
-
63
- # Profiles (named collections of overrides)
64
- [profiles.desktop]
65
- # ...
66
-
67
- [profiles.laptop]
68
- # ...
69
- ```
70
-
71
- ## `.chezmoidata/hardware.toml` Schema
72
-
73
- ```toml
74
- [hardware.<preset-name>]
75
- display_scale = 1.0 | 1.25 | 1.5 | 1.75 | 2.0
76
- kbd_layout = "qwerty" | "colemak-dh" | "dvorak"
77
- modifier_mode = "standard" | "left-cmd-control" | "fn-swap"
78
- perf_profile = "desktop" | "laptop" | "low-power"
79
- wm = "aerospace" | "niri" | "gnome" | "kde" | "none"
80
-
81
- [hardware.<preset-name>.features]
82
- # Per-preset feature overrides (merged on top of .chezmoidata.toml features)
83
- <flag> = <bool>
84
- ```
85
-
86
- ## `.chezmoidata/themes.toml` Schema
87
-
88
- **Generated by `dot theme rebuild` — do not edit manually.**
89
-
90
- ```toml
91
- [themes.<name>]
92
- mode = "dark" | "light"
93
- family = "<family-name>"
94
- macos_accent = -1 .. 6 # -1=Graphite, 0=Red, 1=Orange, 2=Yellow, 3=Green, 4=Blue, 5=Purple, 6=Pink
95
- wallpaper = "/absolute/path/to/wallpaper.heic"
96
- source = "custom" | "system"
97
-
98
- [themes.<name>.term]
99
- bg, fg, cursor, cursor_text, sel_bg, sel_fg # hex RGB
100
- c0 .. c15 # 16 ANSI colors
101
-
102
- [themes.<name>.ui]
103
- accent, accent_text # WCAG AAA enforced (7:1)
104
- error, warning, success, info
105
- panel # 1.03-2.0 contrast vs bg
106
- border # 1.08-3.5 contrast vs bg
107
-
108
- [themes.<name>.app]
109
- nvim, nvim_style, lualine
110
- gtk_theme, gtk_icon, gnome_shell, gnome_gtk
111
- vscode, vscode_dark, vscode_light
112
- cat_wallpaper
113
- starship_palette
114
- ```
115
-
116
- See [Theme Engine concept](../01-concepts/03-theme-engine.md) for how values are derived.
117
-
118
- ## `~/.config/chezmoi/chezmoi.toml` (Per-Host)
119
-
120
- ```toml
121
- sourceDir = "/Users/you/.dotfiles"
122
-
123
- [data]
124
- machine = "surface-pro" # selects preset from hardware.toml
125
- theme = "monterey-dark" # overrides .chezmoidata.toml default
126
- default_shell = "fish"
127
- terminal_font_size = 11
128
- email = "you@example.com"
129
- name = "Your Name"
130
- ```
131
-
132
- Fields here override same-named fields in `.chezmoidata.toml` at render time.
133
-
134
- ## `~/.dotfiles/mise.toml` (Pinned Versions)
135
-
136
- Strict versions for testing the repo itself (separate from the user's own mise config):
137
-
138
- ```toml
139
- [tools]
140
- chezmoi = "2.47.1"
141
- pandoc = "3.1.8"
142
- shellcheck = "0.10.0"
143
- shfmt = "3.8.0"
144
- # ...
145
-
146
- [env]
147
- # Repo-level env vars
148
- ```
149
-
150
- ## `~/.config/mise/config.toml` (User)
151
-
152
- Managed by this repo via chezmoi. Lists all CLI tools + language runtimes:
153
-
154
- ```toml
155
- [settings]
156
- auto_install = true
157
- activate_aggressive = true
158
-
159
- [tools]
160
- node = ["lts", "24", "25"]
161
- python = ["3.12", "3.11"]
162
- go = "latest"
163
- rust = "latest"
164
- # ... 60+ tools
165
-
166
- [env]
167
- MISE_EXPERIMENTAL = "1"
168
- GITHUB_TOKEN = "{{exec(command='gh auth token')}}"
169
- GOCACHE = "/tmp/builds/go-cache"
170
- PIP_CACHE_DIR = "/tmp/builds/pip-cache"
171
- UV_CACHE_DIR = "/tmp/builds/uv-cache"
172
- ZIG_LOCAL_CACHE_DIR = "/tmp/builds/zig-cache"
173
- ZIG_GLOBAL_CACHE_DIR = "/tmp/builds/zig-global-cache"
174
- ```
175
-
176
- ## `~/.cargo/config.toml` (Managed)
177
-
178
- ```toml
179
- [build]
180
- jobs = -1
181
- incremental = true
182
- target-dir = "/tmp/builds/cargo"
183
- ```
184
-
185
- ## `~/.ssh/allowed_signers`
186
-
187
- Template: `dot_ssh/allowed_signers.tmpl`
188
-
189
- Lists SSH public keys authorized to sign commits in the repository:
190
-
191
- ```
192
- you@example.com ssh-ed25519 AAAAC3N...
193
- teammate@example.com ssh-ed25519 AAAAC3N...
194
- ```
195
-
196
- ## `dot_config/dotfiles/mcp.json`
197
-
198
- MCP policy and registry. See [MCP Policy reference](../../security/MCP_POLICY.md).
199
-
200
- ```json
201
- {
202
- "policy_version": "2026-01",
203
- "allowed_servers": ["fs", "shell", "github"],
204
- "denied_tools": ["network.raw"],
205
- "attestation_required": true,
206
- "registry": {
207
- "servers": [
208
- {"name": "fs", "command": "...", "hash": "..."},
209
- ...
210
- ]
211
- }
212
- }
213
- ```
214
-
215
- ## `dot_config/dotfiles/agent-card.json`
216
-
217
- Agent Card (MCP A2A spec):
218
-
219
- ```json
220
- {
221
- "name": "dotfiles-agent",
222
- "version": "0.2.503",
223
- "capabilities": ["chezmoi.apply", "theme.switch", "secrets.decrypt"],
224
- "policy_hash": "0x7f2a..."
225
- }
226
- ```
227
-
228
- ## Log Files
229
-
230
- | Path | Content | Rotation |
231
- |:---|:---|:---|
232
- | `~/.local/state/dotfiles/install.log` | Installer output | Never rotated |
233
- | `~/.local/state/dotfiles/heal.log` | Heal attempts | Append-only |
234
- | `~/.local/state/dotfiles/metrics.jsonl` | Observability events | Rotated at 10MB |
235
- | `~/.local/state/dotfiles/mcp-violations.log` | MCP policy violations | Rotated at 10MB |
236
- | `~/.local/state/dotfiles/attestation/*.json` | Attestation snapshots | 90-day retention |
237
- | `~/.local/state/dotfiles/snapshots/*` | Rollback snapshots | 30-day retention |
238
-
239
- ## Cache Files
240
-
241
- | Path | Content | Invalidation |
242
- |:---|:---|:---|
243
- | `~/.cache/shell/*-init.sh` | Pre-generated shell init output | Binary mtime |
244
- | `~/.cache/dotfiles/themes/*.toml` | Per-wallpaper theme cache | Wallpaper mtime |
245
- | `~/.cache/dotfiles/manual/*` | Downloaded manual files | Version change |
246
- | `~/.cache/gitstatus/*` | Starship gitstatus | Auto |
247
-
248
- ## Verified Files
249
-
250
- Every commit on `main` modifies tracked files only. Untracked files in the source directory (e.g. editor swap files) are ignored via `.chezmoiignore`:
251
-
252
- ```
253
- .DS_Store
254
- .vscode/
255
- *.swp
256
- _build/
257
- ```
258
-
259
- ## See Also
260
-
261
- - [Environment Reference](03-environment.md)
262
- - [Template Variables](04-templates.md)
263
- - [Feature Flags](05-feature-flags.md)
264
- - [First Install Tutorial](../02-tutorials/01-first-install.md)
265
- {% endraw %}