@sebastienrousseau/dotfiles 0.2.481 → 0.2.500

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 (546) hide show
  1. package/CHANGELOG.md +122 -32
  2. package/LICENSE +1 -1
  3. package/README.md +211 -242
  4. package/docs/.vitepress/reports/localization-readability-audit.md +69 -0
  5. package/docs/AI.md +102 -0
  6. package/docs/COPYRIGHT +2 -2
  7. package/docs/NAMING_CONVENTIONS.md +95 -0
  8. package/docs/README.md +58 -249
  9. package/docs/adr/ADR-004-cli-architecture.md +2 -2
  10. package/docs/adr/ADR-006-shell-selection.md +2 -2
  11. package/docs/adr/ADR-007-multi-shell-parity.md +53 -0
  12. package/docs/adr/ADR-008-alias-system-architecture.md +85 -0
  13. package/docs/adr/README.md +2 -3
  14. package/docs/architecture/ARCHITECTURE.md +113 -0
  15. package/docs/architecture/INTEROP.md +36 -0
  16. package/docs/architecture/REPO_LAYOUT.md +237 -0
  17. package/docs/architecture/WALKTHROUGH.md +82 -0
  18. package/docs/architecture/fleet-deployment.md +73 -0
  19. package/docs/archive/EUXIS_2026_REVIEW.md +119 -0
  20. package/docs/archive/MILESTONE_v0.2.493.md +43 -0
  21. package/docs/{PLAN.md → archive/PLAN.md} +1 -1
  22. package/docs/guides/INSTALL.md +140 -0
  23. package/docs/{NEOVIM_IDE_GUIDE.md → guides/NEOVIM_IDE_GUIDE.md} +12 -12
  24. package/docs/guides/THEMING.md +222 -0
  25. package/docs/{TROUBLESHOOTING.md → guides/TROUBLESHOOTING.md} +36 -0
  26. package/docs/{WSL2_NIX_TROUBLESHOOTING.md → guides/WSL2_NIX_TROUBLESHOOTING.md} +8 -8
  27. package/docs/index.md +39 -0
  28. package/docs/interop/A2A.md +32 -0
  29. package/docs/manual/00-introduction.md +85 -0
  30. package/docs/manual/01-concepts/01-architecture.md +134 -0
  31. package/docs/manual/01-concepts/02-trust-model.md +178 -0
  32. package/docs/manual/01-concepts/03-theme-engine.md +182 -0
  33. package/docs/manual/01-concepts/04-fleet.md +142 -0
  34. package/docs/manual/01-concepts/05-self-healing.md +197 -0
  35. package/docs/manual/02-tutorials/01-first-install.md +192 -0
  36. package/docs/manual/02-tutorials/02-add-wallpaper.md +211 -0
  37. package/docs/manual/02-tutorials/03-create-profile.md +238 -0
  38. package/docs/manual/02-tutorials/04-encrypt-secret.md +275 -0
  39. package/docs/manual/02-tutorials/05-deploy-fleet.md +279 -0
  40. package/docs/manual/03-reference/01-dot-cli.md +413 -0
  41. package/docs/manual/03-reference/02-config-files.md +259 -0
  42. package/docs/manual/03-reference/03-environment.md +120 -0
  43. package/docs/manual/03-reference/04-templates.md +184 -0
  44. package/docs/manual/03-reference/05-feature-flags.md +118 -0
  45. package/docs/manual/04-cookbook/01-recipes.md +281 -0
  46. package/docs/manual/04-cookbook/02-troubleshooting.md +319 -0
  47. package/docs/manual/04-cookbook/03-faq.md +167 -0
  48. package/docs/manual/05-appendices/A-platform-matrix.md +97 -0
  49. package/docs/manual/05-appendices/B-security-checklist.md +78 -0
  50. package/docs/manual/05-appendices/C-glossary.md +36 -0
  51. package/docs/manual/05-appendices/D-bibliography.md +54 -0
  52. package/docs/manual/05-appendices/E-license.md +34 -0
  53. package/docs/manual/_toc.yml +58 -0
  54. package/docs/manual/command-index.md +58 -0
  55. package/docs/manual/concept-index.md +164 -0
  56. package/docs/operations/ATTESTATION.md +39 -0
  57. package/docs/operations/MAINTENANCE.md +59 -0
  58. package/docs/operations/MIGRATION.md +101 -0
  59. package/docs/operations/OPERATIONS.md +164 -0
  60. package/docs/operations/RELIABILITY.md +116 -0
  61. package/docs/{ROADMAP.md → operations/ROADMAP.md} +11 -11
  62. package/docs/operations/TESTING.md +195 -0
  63. package/docs/operations/TRACEABILITY.md +31 -0
  64. package/docs/operations/TRUSTED_AGENT_WORKSTATION.md +61 -0
  65. package/docs/operations/VERSION_SYNC.md +344 -0
  66. package/docs/{ALIASES.md → reference/ALIASES.md} +2 -6
  67. package/docs/reference/ALIASES_CHEATSHEET.md +28 -0
  68. package/docs/reference/ALIASES_DEPRECATIONS.md +9 -0
  69. package/docs/reference/FEATURES.md +62 -0
  70. package/docs/reference/FONTS.md +108 -0
  71. package/docs/reference/PROFILES.md +65 -0
  72. package/docs/{SCREENSHOTS.md → reference/SCREENSHOTS.md} +26 -25
  73. package/docs/reference/SCRIPTS.md +67 -0
  74. package/docs/reference/SUPPORT_MATRIX.md +74 -0
  75. package/docs/reference/THEMES.md +113 -0
  76. package/docs/reference/TOOLS.md +105 -0
  77. package/docs/reference/UTILS.md +151 -0
  78. package/docs/security/AI_ACT_COMPLIANCE.md +90 -0
  79. package/docs/security/AUTOMATION_SECRETS.md +22 -0
  80. package/docs/security/COMPLIANCE.md +453 -0
  81. package/docs/security/ENCRYPTION.md +52 -0
  82. package/docs/security/FMEA.md +155 -0
  83. package/docs/security/INCIDENT_RESPONSE.md +575 -0
  84. package/docs/security/KEYS.md +45 -0
  85. package/docs/security/MCP_POLICY.md +69 -0
  86. package/docs/security/POLICY_RELEASES.md +33 -0
  87. package/docs/security/README.md +24 -0
  88. package/docs/security/SECRETS.md +146 -0
  89. package/docs/security/SECURITY.md +41 -0
  90. package/docs/security/SECURITY_CHECKLIST.md +44 -0
  91. package/docs/security/SOUP_REGISTER.md +32 -0
  92. package/docs/security/THREAT_MODEL.md +120 -0
  93. package/docs/security/VERIFICATION_VALIDATION.md +224 -0
  94. package/docs/themes/README.md +3 -17
  95. package/docs/themes/VISUAL_INTEGRITY_REPORT.md +26 -0
  96. package/docs/themes/hero-shot.svg +78 -0
  97. package/dot_config/.module-manifest.json +69 -0
  98. package/dot_config/ai/identity.md +20 -0
  99. package/dot_config/ai/patterns/architect.md +14 -0
  100. package/dot_config/ai/patterns/hardener.md +13 -0
  101. package/dot_config/ai/patterns/refactor.md +13 -0
  102. package/dot_config/aider/aider.conf.yml +1 -1
  103. package/dot_config/alacritty/alacritty.toml.tmpl +41 -469
  104. package/dot_config/atuin/config.toml +18 -1
  105. package/dot_config/bat/config +16 -1
  106. package/dot_config/claude/mcp_servers.json +3 -32
  107. package/dot_config/dotfiles/agent-card.json +29 -0
  108. package/dot_config/dotfiles/agent-profiles.json +92 -0
  109. package/dot_config/dotfiles/boot/README.md +1 -1
  110. package/dot_config/dotfiles/grub/README.md +1 -1
  111. package/dot_config/dotfiles/lock/README.md +1 -1
  112. package/dot_config/dotfiles/mcp-lock.json +33 -0
  113. package/dot_config/dotfiles/mcp-policy.json +52 -0
  114. package/dot_config/dotfiles/mcp-registry.json +47 -0
  115. package/dot_config/dotfiles/model-registry.json +20 -0
  116. package/dot_config/dotfiles/policy-bundles.json +38 -0
  117. package/dot_config/dotfiles/prompt-registry.json +16 -0
  118. package/dot_config/dotfiles/versions.env +18 -0
  119. package/dot_config/environment.d/50-ssh-agent.conf +2 -0
  120. package/dot_config/environment.d/90-wayland.conf +19 -0
  121. package/dot_config/firefox/user.js.tmpl +58 -0
  122. package/dot_config/fish/completions/dot-theme-sync.fish.tmpl +9 -0
  123. package/dot_config/fish/completions/dot.fish.tmpl +115 -0
  124. package/dot_config/fish/conf.d/000-perf-cache.fish +56 -0
  125. package/dot_config/fish/conf.d/aliases.fish.tmpl +77 -0
  126. package/dot_config/fish/conf.d/env.fish.tmpl +48 -0
  127. package/dot_config/fish/conf.d/functions.fish.tmpl +22 -0
  128. package/dot_config/fish/conf.d/init.fish.tmpl +151 -0
  129. package/dot_config/fish/config.fish.tmpl +44 -0
  130. package/dot_config/fish/fish_plugins +1 -0
  131. package/dot_config/fish/functions/_.fish +3 -0
  132. package/dot_config/fish/functions/_cached_eval.fish +58 -0
  133. package/dot_config/fish/functions/als.fish +46 -0
  134. package/dot_config/fish/functions/bg-upgrade.fish +7 -0
  135. package/dot_config/fish/functions/c.fish +3 -0
  136. package/dot_config/fish/functions/cat.fish +9 -0
  137. package/dot_config/fish/functions/d.fish +7 -0
  138. package/dot_config/fish/functions/dot.fish +34 -0
  139. package/dot_config/fish/functions/h.fish +3 -0
  140. package/dot_config/fish/functions/l.fish +7 -0
  141. package/dot_config/fish/functions/la.fish +7 -0
  142. package/dot_config/fish/functions/ll.fish +7 -0
  143. package/dot_config/fish/functions/log_error.fish +13 -0
  144. package/dot_config/fish/functions/log_info.fish +13 -0
  145. package/dot_config/fish/functions/lr.fish +7 -0
  146. package/dot_config/fish/functions/lra.fish +7 -0
  147. package/dot_config/fish/functions/ls.fish +7 -0
  148. package/dot_config/fish/functions/lt.fish +7 -0
  149. package/dot_config/fish/functions/lta.fish +7 -0
  150. package/dot_config/fish/functions/notify-run.fish +11 -0
  151. package/dot_config/fish/functions/q.fish +3 -0
  152. package/dot_config/fish/functions/silent-run.fish +7 -0
  153. package/dot_config/fish/functions/yy.fish +8 -0
  154. package/dot_config/fontconfig/fonts.conf.tmpl +13 -0
  155. package/dot_config/foot/foot.ini.tmpl +33 -0
  156. package/dot_config/fuzzel/fuzzel.ini.tmpl +18 -0
  157. package/dot_config/fzf/fzf.zsh +48 -0
  158. package/dot_config/ghostty/config.tmpl +69 -565
  159. package/dot_config/git/allowed_signers.tmpl +18 -0
  160. package/dot_config/git/commit-template +10 -0
  161. package/dot_config/gnupg/{gpg-agent.conf.tmpl → gpg-agent.conf} +3 -3
  162. package/dot_config/goose/config.yaml +2 -2
  163. package/dot_config/gtk-3.0/gtk.css.tmpl +59 -180
  164. package/dot_config/gtk-3.0/settings.ini.tmpl +5 -44
  165. package/dot_config/gtk-4.0/gtk.css.tmpl +79 -136
  166. package/dot_config/gtk-4.0/settings.ini.tmpl +5 -8
  167. package/dot_config/ipython/profile_default/ipython_config.py +19 -0
  168. package/dot_config/just/justfile +18 -0
  169. package/dot_config/kanshi/config.tmpl +22 -0
  170. package/dot_config/kitty/kitty.conf.tmpl +44 -508
  171. package/dot_config/lazygit/config.yml +18 -6
  172. package/dot_config/mako/config +47 -0
  173. package/dot_config/micro/settings.json +3 -0
  174. package/dot_config/mimeapps.list +77 -0
  175. package/dot_config/mise/config.toml +63 -5
  176. package/dot_config/mongosh/mongoshrc.js +1 -0
  177. package/dot_config/mpv/input.conf +47 -0
  178. package/dot_config/mpv/mpv.conf +47 -0
  179. package/dot_config/niri/config.kdl.tmpl +327 -0
  180. package/dot_config/nushell/aliases.nu +18 -0
  181. package/dot_config/nushell/completions.nu.tmpl +52 -0
  182. package/dot_config/nushell/config.nu.tmpl +86 -0
  183. package/dot_config/nushell/env.nu.tmpl +94 -0
  184. package/dot_config/nushell/functions.nu.tmpl +17 -0
  185. package/dot_config/nvim/init.lua +14 -0
  186. package/dot_config/nvim/lazy-lock.json +45 -14
  187. package/dot_config/nvim/lua/config/autocmds.lua +45 -1
  188. package/dot_config/nvim/lua/config/keymaps.lua +13 -8
  189. package/dot_config/nvim/lua/config/lazy.lua +22 -12
  190. package/dot_config/nvim/lua/config/options.lua +1 -0
  191. package/dot_config/nvim/lua/plugins/ai.lua +75 -0
  192. package/dot_config/nvim/lua/plugins/coding.lua +11 -29
  193. package/dot_config/nvim/lua/plugins/completion.lua +60 -0
  194. package/dot_config/nvim/lua/plugins/dap.lua +215 -4
  195. package/dot_config/nvim/lua/plugins/editor.lua +6 -10
  196. package/dot_config/nvim/lua/plugins/git.lua +1 -0
  197. package/dot_config/nvim/lua/plugins/lsp.lua +16 -81
  198. package/dot_config/nvim/lua/plugins/markdown.lua +1 -0
  199. package/dot_config/nvim/lua/plugins/rust.lua +1 -0
  200. package/dot_config/nvim/lua/plugins/sessions.lua +1 -0
  201. package/dot_config/nvim/lua/plugins/ui.lua +23 -51
  202. package/dot_config/paru/paru.conf +10 -0
  203. package/dot_config/powershell/Microsoft.PowerShell_profile.ps1.tmpl +81 -0
  204. package/dot_config/pueue/pueue.yml +34 -0
  205. package/dot_config/raycast/README.md +1 -1
  206. package/dot_config/ripgrep/ripgreprc +21 -0
  207. package/dot_config/shell/00-core-paths.sh.tmpl +62 -24
  208. package/dot_config/shell/05-core-safety.sh +47 -0
  209. package/dot_config/shell/10-secrets.sh +40 -0
  210. package/dot_config/shell/40-fzf-defaults.sh.tmpl +16 -0
  211. package/dot_config/shell/40-ls-colors.sh +48 -0
  212. package/dot_config/shell/50-logic-functions-core.sh.tmpl +10 -0
  213. package/dot_config/shell/51-logic-functions-extra.sh.tmpl +64 -0
  214. package/dot_config/shell/90-ux-aliases.sh.tmpl +90 -5
  215. package/dot_config/shell/91-ux-aliases-lazy.sh.tmpl +33 -2
  216. package/dot_config/shell/Brewfile.cli +8 -0
  217. package/dot_config/shell/README.md +9 -9
  218. package/dot_config/shell/als_data.txt.tmpl +65 -0
  219. package/dot_config/shell/custom/auto_ls.zsh +20 -0
  220. package/dot_config/shell/custom/context_suggest.zsh +50 -50
  221. package/dot_config/shell/custom/error_analysis.zsh +29 -29
  222. package/dot_config/starship.toml.tmpl +85 -7
  223. package/dot_config/swaylock/config +43 -0
  224. package/dot_config/systemd/user/dotfiles-maintenance.service +8 -0
  225. package/dot_config/systemd/user/dotfiles-maintenance.timer +11 -0
  226. package/dot_config/systemd/user/pueued.service +12 -0
  227. package/dot_config/systemd/user/ssh-agent.service +12 -0
  228. package/dot_config/tmux/tmux.conf.tmpl +80 -38
  229. package/dot_config/topgrade.toml.tmpl +54 -0
  230. package/dot_config/user-dirs.dirs +9 -0
  231. package/dot_config/vscode/settings.json.tmpl +9 -50
  232. package/dot_config/waybar/config.jsonc.tmpl +90 -0
  233. package/dot_config/waybar/style.css.tmpl +211 -0
  234. package/dot_config/wezterm/wezterm.lua.tmpl +31 -203
  235. package/dot_config/xdg-desktop-portal/niri-portals.conf +5 -0
  236. package/dot_config/yazi/keymap.toml +67 -0
  237. package/dot_config/yazi/theme.toml +102 -0
  238. package/dot_config/zathura/zathurarc +52 -0
  239. package/dot_config/zellij/{config.kdl → config.kdl.tmpl} +1 -1
  240. package/dot_config/zsh/dot_zprofile +1 -7
  241. package/dot_config/zsh/dot_zshenv +2 -3
  242. package/dot_config/zsh/dot_zshrc.tmpl +368 -69
  243. package/dot_config/zsh/rc.d/00-alias-shims.zsh +77 -0
  244. package/dot_config/zsh/rc.d/05-ssh-agent.zsh +17 -4
  245. package/dot_config/zsh/rc.d/10-env.zsh.tmpl +4 -4
  246. package/dot_config/zsh/rc.d/20-zinit.zsh +65 -0
  247. package/dot_config/zsh/rc.d/30-options.zsh.tmpl +101 -30
  248. package/dot_config/zsh/rc.d/99-alias-wrapper.zsh +32 -0
  249. package/dot_local/bin/__pycache__/executable_dot-load-benchmark-ptycpython-312.pyc +0 -0
  250. package/dot_local/bin/executable_ai-update +195 -0
  251. package/dot_local/bin/executable_ai_core +113 -91
  252. package/dot_local/bin/executable_antigravity +11 -0
  253. package/dot_local/bin/executable_b64 +61 -36
  254. package/dot_local/bin/executable_bm +77 -0
  255. package/dot_local/bin/executable_cb +39 -0
  256. package/dot_local/bin/executable_dot +543 -132
  257. package/dot_local/bin/executable_dot-ai +36 -0
  258. package/dot_local/bin/executable_dot-bootstrap +77 -0
  259. package/dot_local/bin/executable_dot-launch-or-focus +52 -0
  260. package/dot_local/bin/executable_dot-load-benchmark +31 -0
  261. package/dot_local/bin/executable_dot-load-benchmark-pty +77 -0
  262. package/dot_local/bin/executable_dot-theme-sync +952 -0
  263. package/dot_local/bin/executable_dot_completion +2 -0
  264. package/dot_local/bin/executable_dtags +28 -0
  265. package/dot_local/bin/executable_epoch +43 -38
  266. package/dot_local/bin/executable_extract +32 -99
  267. package/dot_local/bin/executable_gbd +52 -0
  268. package/dot_local/bin/executable_gd +42 -0
  269. package/dot_local/bin/executable_git-ai-commit +35 -20
  270. package/dot_local/bin/executable_git-ai-diff +33 -18
  271. package/dot_local/bin/executable_gl +101 -0
  272. package/dot_local/bin/executable_hash +56 -18
  273. package/dot_local/bin/executable_hashsum +160 -0
  274. package/dot_local/bin/executable_hex +44 -8
  275. package/dot_local/bin/executable_jsonv +34 -10
  276. package/dot_local/bin/executable_jwt +22 -6
  277. package/dot_local/bin/executable_kill-port +18 -2
  278. package/dot_local/bin/executable_lorem +21 -6
  279. package/dot_local/bin/executable_mkscript +35 -0
  280. package/dot_local/bin/executable_monitor +56 -0
  281. package/dot_local/bin/{executable_ip → executable_myip} +16 -2
  282. package/dot_local/bin/executable_notify +22 -0
  283. package/dot_local/bin/executable_open +36 -0
  284. package/dot_local/bin/executable_pw +27 -0
  285. package/dot_local/bin/executable_rec-start +46 -0
  286. package/dot_local/bin/executable_rec-stop +35 -0
  287. package/dot_local/bin/executable_regex +49 -13
  288. package/dot_local/bin/executable_start-niri +8 -0
  289. package/dot_local/bin/executable_tmux-sessionizer +276 -149
  290. package/dot_local/bin/executable_tour +112 -74
  291. package/dot_local/bin/executable_up +21 -0
  292. package/dot_local/bin/executable_update +45 -11
  293. package/dot_local/bin/executable_uuid +37 -7
  294. package/dot_local/bin/executable_win +32 -0
  295. package/dot_local/bin/executable_yamlv +25 -7
  296. package/dot_local/share/bash-completion/completions/dot +62 -44
  297. package/dot_local/share/icons/hicolor/128x128/apps/rousseau.png +0 -0
  298. package/dot_local/share/icons/hicolor/16x16/apps/rousseau.png +0 -0
  299. package/dot_local/share/icons/hicolor/24x24/apps/rousseau.png +0 -0
  300. package/dot_local/share/icons/hicolor/256x256/apps/rousseau.png +0 -0
  301. package/dot_local/share/icons/hicolor/32x32/apps/rousseau.png +0 -0
  302. package/dot_local/share/icons/hicolor/48x48/apps/rousseau.png +0 -0
  303. package/dot_local/share/icons/hicolor/512x512/apps/rousseau.png +0 -0
  304. package/dot_local/share/icons/hicolor/64x64/apps/rousseau.png +0 -0
  305. package/dot_local/share/icons/hicolor/96x96/apps/rousseau.png +0 -0
  306. package/dot_local/share/icons/hicolor/scalable/apps/rousseau.png +0 -0
  307. package/dot_local/share/man/man1/dot.1 +149 -0
  308. package/dot_local/share/mise/plugins/kiro-cli/bin/executable_download +64 -0
  309. package/dot_local/share/mise/plugins/kiro-cli/bin/executable_install +18 -0
  310. package/dot_local/share/mise/plugins/kiro-cli/bin/executable_list-all +13 -0
  311. package/dot_local/share/wayland-sessions/niri.desktop.tmpl +6 -0
  312. package/dot_local/share/zsh/completions/_dot +283 -0
  313. package/install.sh +297 -210
  314. package/package.json +17 -5
  315. package/scripts/ci/check-copyright-headers.sh +96 -0
  316. package/scripts/ci/guard-gitleaks-checkout.sh +57 -0
  317. package/scripts/ci/install-chezmoi-verified.sh +64 -0
  318. package/scripts/ci/validate-ci-config.sh +41 -39
  319. package/scripts/demo/record.sh +3 -2
  320. package/scripts/diagnostics/a2a-conformance.sh +162 -0
  321. package/scripts/diagnostics/alias-governance.sh +137 -0
  322. package/scripts/diagnostics/aliases-cheatsheet.sh +73 -0
  323. package/scripts/diagnostics/aliases-manifest.sh +31 -0
  324. package/scripts/diagnostics/benchmark.sh +209 -29
  325. package/scripts/diagnostics/conflicts.sh +72 -0
  326. package/scripts/diagnostics/doctor-unified.sh +38 -0
  327. package/scripts/diagnostics/doctor.sh +491 -65
  328. package/scripts/diagnostics/drift-dashboard.sh +17 -6
  329. package/scripts/diagnostics/health.sh +351 -110
  330. package/scripts/diagnostics/history-analysis.sh +12 -4
  331. package/scripts/diagnostics/mcp-doctor.sh +575 -0
  332. package/scripts/diagnostics/perf.sh +225 -0
  333. package/scripts/diagnostics/scorecard.sh +118 -0
  334. package/scripts/diagnostics/secret-governance.sh +58 -0
  335. package/scripts/diagnostics/security-score.sh +139 -93
  336. package/scripts/diagnostics/smoke-test.sh +87 -0
  337. package/scripts/diagnostics/snapshot.sh +89 -0
  338. package/scripts/diagnostics/verify.sh +107 -0
  339. package/scripts/diagnostics/verify_state.sh +2 -2
  340. package/scripts/diagnostics/version-locks.sh +79 -0
  341. package/scripts/diagnostics/workstation-attestation.sh +181 -0
  342. package/scripts/docs/build-manual.sh +883 -0
  343. package/scripts/docs/check-manual.sh +213 -0
  344. package/scripts/dot/commands/agent.sh +465 -0
  345. package/scripts/dot/commands/ai.sh +416 -0
  346. package/scripts/dot/commands/aliases.sh +250 -0
  347. package/scripts/dot/commands/appearance.sh +21 -4
  348. package/scripts/dot/commands/core.sh +59 -4
  349. package/scripts/dot/commands/diagnostics.sh +132 -3
  350. package/scripts/dot/commands/fleet.sh +399 -0
  351. package/scripts/dot/commands/lint.sh +177 -0
  352. package/scripts/dot/commands/manual.sh +168 -0
  353. package/scripts/dot/commands/meta.sh +148 -17
  354. package/scripts/dot/commands/patterns.sh +54 -0
  355. package/scripts/dot/commands/restore.sh +57 -35
  356. package/scripts/dot/commands/secrets.sh +151 -9
  357. package/scripts/dot/commands/security.sh +3 -0
  358. package/scripts/dot/commands/tools.sh +268 -27
  359. package/scripts/dot/data/alias-deprecations.tsv +2 -0
  360. package/scripts/dot/lib/bento.sh +49 -0
  361. package/scripts/dot/lib/log.sh +194 -0
  362. package/scripts/dot/lib/platform.sh +98 -0
  363. package/scripts/dot/lib/ui.sh +507 -0
  364. package/scripts/dot/lib/utils.sh +318 -18
  365. package/scripts/fonts/install-nerd-fonts.sh +19 -10
  366. package/scripts/fonts/patch-fonts.sh +1 -0
  367. package/scripts/git-hooks/install.sh +11 -0
  368. package/scripts/git-hooks/pre-commit +12 -0
  369. package/scripts/git-hooks/pre-commit-audit.sh +145 -0
  370. package/scripts/git-hooks/pre-push +29 -0
  371. package/scripts/git-hooks/prepare-commit-msg +29 -0
  372. package/scripts/lib/secrets_provider.sh +158 -0
  373. package/scripts/maintenance/check-updates.sh +131 -0
  374. package/scripts/ops/ai-setup.sh +55 -0
  375. package/scripts/ops/bundle.sh +77 -0
  376. package/scripts/ops/chaos.sh +49 -0
  377. package/scripts/ops/chezmoi-apply.sh +245 -17
  378. package/scripts/ops/chezmoi-diff.sh +1 -0
  379. package/scripts/ops/chezmoi-remove.sh +2 -0
  380. package/scripts/ops/chezmoi-update.sh +34 -2
  381. package/scripts/ops/heal-chezmoi.sh +51 -0
  382. package/scripts/ops/heal-system.sh +128 -0
  383. package/scripts/ops/heal-tools.sh +340 -0
  384. package/scripts/ops/heal.sh +98 -342
  385. package/scripts/ops/post-apply-repair.sh +106 -0
  386. package/scripts/ops/prewarm.sh +127 -0
  387. package/scripts/ops/release.sh +252 -0
  388. package/scripts/ops/rollback.sh +86 -28
  389. package/scripts/ops/setup.sh +137 -0
  390. package/scripts/ops/teleport.sh +2 -1
  391. package/scripts/qa/coverage-baseline.sh +60 -0
  392. package/scripts/qa/docs-coverage.sh +111 -0
  393. package/scripts/qa/reliability-audit.sh +138 -0
  394. package/scripts/qa/traceability-coverage.sh +116 -0
  395. package/scripts/qa/validate-examples.sh +26 -0
  396. package/scripts/qa/wsl-contract.sh +11 -0
  397. package/scripts/release/package-policy-bundles.sh +125 -0
  398. package/scripts/secrets/age-init.sh +1 -0
  399. package/scripts/secrets/create-secrets-file.sh +1 -0
  400. package/scripts/secrets/encrypt-ssh-key.sh +1 -0
  401. package/scripts/security/backup.sh +44 -4
  402. package/scripts/security/dns-doh.sh +36 -14
  403. package/scripts/security/encryption-check.sh +27 -12
  404. package/scripts/security/enforce-policies.sh +11 -16
  405. package/scripts/security/firewall.sh +76 -20
  406. package/scripts/security/lock-configs.sh +2 -2
  407. package/scripts/security/lock-screen.sh +40 -18
  408. package/scripts/security/manage-secrets.sh +42 -29
  409. package/scripts/security/ssh-cert.sh +203 -0
  410. package/scripts/security/telemetry-kill.sh +40 -18
  411. package/scripts/security/usb-safety.sh +37 -15
  412. package/scripts/theme/apply-gnome-theme.sh +87 -56
  413. package/scripts/theme/extract-theme.py +677 -0
  414. package/scripts/theme/install-boot-logo.sh +1 -0
  415. package/scripts/theme/install-catppuccin-themes.sh +57 -33
  416. package/scripts/theme/install-cursors.sh +1 -0
  417. package/scripts/theme/install-file-icons.sh +1 -0
  418. package/scripts/theme/install-grub-theme.sh +11 -1
  419. package/scripts/theme/install-lock-icon.sh +1 -0
  420. package/scripts/theme/merge-wallpaper.sh +141 -0
  421. package/scripts/theme/rebuild-themes.sh +309 -0
  422. package/scripts/theme/switch.sh +308 -137
  423. package/scripts/theme/wallpaper-rotate.sh +66 -12
  424. package/scripts/theme/wallpaper-sync.sh +386 -31
  425. package/scripts/tools/cmatrix.sh +1 -0
  426. package/scripts/tools/detect-collisions.py +1 -1
  427. package/scripts/tools/emoji-picker.sh +4 -1
  428. package/scripts/tools/figlet-banner.sh +1 -0
  429. package/scripts/tools/log-rotate.sh +2 -1
  430. package/scripts/tools/lolcat-wrap.sh +1 -0
  431. package/scripts/tools/pipes.sh +1 -0
  432. package/scripts/tuning/linux.sh +23 -13
  433. package/scripts/tuning/macos.sh +13 -4
  434. package/scripts/uninstall.sh +85 -0
  435. package/scripts/version-sync.sh +487 -0
  436. package/templates/chezmoi-data/geekom-a9.toml.example +21 -0
  437. package/templates/chezmoi-data/mac-m1.toml.example +16 -0
  438. package/templates/chezmoi-data/mac-t2-linux.toml.example +21 -0
  439. package/templates/chezmoi-data/surface-pro-7p.toml.example +21 -0
  440. package/templates/projects/go/.github/workflows/ci.yml +31 -0
  441. package/templates/projects/go/README.md +1 -1
  442. package/templates/projects/go/cmd/__PROJECT_NAME__/main.go +1 -0
  443. package/templates/projects/go/go.sum +0 -0
  444. package/templates/projects/molecule/README.md +1 -1
  445. package/templates/projects/node/.github/workflows/ci.yml +30 -0
  446. package/templates/projects/node/README.md +1 -1
  447. package/templates/projects/node/package-lock.json +12 -0
  448. package/templates/projects/node/src/index.js +1 -0
  449. package/templates/projects/packer/README.md +1 -1
  450. package/templates/projects/python/.github/workflows/ci.yml +34 -0
  451. package/templates/projects/python/README.md +1 -1
  452. package/templates/projects/python/src/__PROJECT_NAME__/__init__.py +1 -0
  453. package/templates/projects/python/tests/test_basic.py +1 -0
  454. package/docs/ARCHITECTURE.md +0 -229
  455. package/docs/COMPLIANCE.md +0 -47
  456. package/docs/FEATURES.md +0 -166
  457. package/docs/FONTS.md +0 -147
  458. package/docs/INSTALL.md +0 -119
  459. package/docs/KEYS.md +0 -40
  460. package/docs/OPERATIONS.md +0 -130
  461. package/docs/PR_DESCRIPTION.md +0 -149
  462. package/docs/SECRETS.md +0 -76
  463. package/docs/SECURITY.md +0 -30
  464. package/docs/SECURITY_CHECKLIST.md +0 -25
  465. package/docs/TASK.md +0 -99
  466. package/docs/TESTING.md +0 -190
  467. package/docs/TOOLS.md +0 -146
  468. package/docs/UTILS.md +0 -105
  469. package/docs/WALKTHROUGH.md +0 -165
  470. package/dot_config/clippy.toml +0 -55
  471. package/dot_config/dotfiles/versions.env.tmpl +0 -19
  472. package/dot_config/firefox/user.js +0 -8
  473. package/dot_config/git/config.tmpl +0 -77
  474. package/dot_config/go/aliases.sh +0 -61
  475. package/dot_config/go/env.sh +0 -24
  476. package/dot_config/ice/README.md +0 -13
  477. package/dot_config/ipython/profile_default/ipython_config.py.tmpl +0 -5
  478. package/dot_config/lsd/config.yaml +0 -19
  479. package/dot_config/nvim/snippets/all.lua +0 -9
  480. package/dot_config/nvim/snippets/python.lua +0 -16
  481. package/dot_config/shell/00-container-detect.sh +0 -53
  482. package/dot_config/shell/05-core-safety.sh.tmpl +0 -13
  483. package/dot_config/shell/40-ls-colors.sh.tmpl +0 -31
  484. package/dot_config/shell/90-theme-switch.sh +0 -70
  485. package/dot_config/topgrade/topgrade.toml.tmpl +0 -42
  486. package/dot_config/waybar/style.css +0 -8
  487. package/dot_config/zsh/rc.d/20-zinit.zsh.tmpl +0 -22
  488. package/dot_local/bin/executable_zig-install +0 -89
  489. package/dot_local/bin/voice_ops +0 -7
  490. package/scripts/ops/health-check.sh +0 -380
  491. package/scripts/tests/README.md +0 -241
  492. package/scripts/tests/benchmark.sh +0 -91
  493. package/scripts/tests/framework/assertions.sh +0 -283
  494. package/scripts/tests/framework/mocks.sh +0 -201
  495. package/scripts/tests/framework/test_runner.sh +0 -189
  496. package/scripts/tests/integration/test_install.sh +0 -237
  497. package/scripts/tests/performance/benchmark_runner.sh +0 -156
  498. package/scripts/tests/performance/regression_check.sh +0 -73
  499. package/scripts/tests/performance/stress_test.sh +0 -65
  500. package/scripts/tests/test-aliases.sh +0 -25
  501. package/scripts/tests/test-docker.sh +0 -48
  502. package/scripts/tests/unit/test_ai_aliases.sh +0 -158
  503. package/scripts/tests/unit/test_ai_cli_checks.sh +0 -47
  504. package/scripts/tests/unit/test_backup.sh +0 -227
  505. package/scripts/tests/unit/test_case_functions.sh +0 -238
  506. package/scripts/tests/unit/test_cd_aliases.sh +0 -367
  507. package/scripts/tests/unit/test_dot_cli.sh +0 -217
  508. package/scripts/tests/unit/test_encode64.sh +0 -67
  509. package/scripts/tests/unit/test_environment.sh +0 -78
  510. package/scripts/tests/unit/test_extract.sh +0 -163
  511. package/scripts/tests/unit/test_framework_edge_cases.sh +0 -113
  512. package/scripts/tests/unit/test_genpass.sh +0 -298
  513. package/scripts/tests/unit/test_install_edge_cases.sh +0 -167
  514. package/scripts/tests/unit/test_installers.sh +0 -172
  515. package/scripts/tests/unit/test_keygen.sh +0 -68
  516. package/scripts/tests/unit/test_logging.sh +0 -96
  517. package/scripts/tests/unit/test_os_detection_comprehensive.sh +0 -388
  518. package/scripts/tests/unit/test_package_managers_comprehensive.sh +0 -321
  519. package/scripts/tests/unit/test_prependpath.sh +0 -66
  520. package/scripts/tests/unit/test_prependpath_refactored.sh +0 -89
  521. package/scripts/tests/unit/test_rd.sh +0 -230
  522. package/scripts/tests/unit/test_security_fixes.sh +0 -130
  523. package/scripts/tests/unit/test_security_scripts.sh +0 -87
  524. package/scripts/tests/unit/test_template_validation.sh +0 -238
  525. package/scripts/tests/unit/test_utility_functions.sh +0 -144
  526. package/scripts/tests/unit/test_wave1_alias_split.sh +0 -132
  527. package/scripts/tests/unit/test_wave1_ci_pinning.sh +0 -61
  528. package/scripts/tests/unit/test_wave1_gitleaks_config.sh +0 -52
  529. package/scripts/tests/unit/test_wave1_heal_fixes.sh +0 -97
  530. package/scripts/tests/unit/test_wave1_install_gpg.sh +0 -35
  531. package/scripts/tests/unit/test_wave1_zshenv_path.sh +0 -89
  532. package/scripts/tests/unit/test_wave1_zshrc_lazy_hook.sh +0 -115
  533. package/scripts/tests/unit/test_wave2_dot_new_guard.sh +0 -75
  534. package/scripts/tests/unit/test_zipf.sh +0 -76
  535. /package/docs/{LEGACY_ROADMAP.md → archive/LEGACY_ROADMAP.md} +0 -0
  536. /package/docs/{REPO_AUDIT.md → archive/REPO_AUDIT.md} +0 -0
  537. /package/docs/{KEY_ROTATION.md → security/KEY_ROTATION.md} +0 -0
  538. /package/dot_config/ansible/{ansible.cfg.tmpl → ansible.cfg} +0 -0
  539. /package/dot_config/docker/{config.json.tmpl → config.json} +0 -0
  540. /package/dot_config/k9s/{config.yaml.tmpl → config.yaml} +0 -0
  541. /package/dot_config/pypoetry/{config.toml.tmpl → config.toml} +0 -0
  542. /package/dot_config/{pyrightconfig.json.tmpl → pyrightconfig.json} +0 -0
  543. /package/dot_config/tflint/{tflint.hcl.tmpl → tflint.hcl} +0 -0
  544. /package/dot_config/yarn/{yarnrc.yml.tmpl → yarnrc.yml} +0 -0
  545. /package/dot_config/zsh/rc.d/{40-bell.zsh.tmpl → 40-bell.zsh} +0 -0
  546. /package/dot_config/zsh/rc.d/{50-login-fortune.zsh.tmpl → 50-login-fortune.zsh} +0 -0
@@ -0,0 +1,413 @@
1
+ # Reference: The `dot` CLI
2
+
3
+ Complete command reference. Every subcommand, every flag, every exit code.
4
+
5
+ ## Invocation
6
+
7
+ ```
8
+ dot [<command>] [<subcommand>] [<flags>] [<args>]
9
+ ```
10
+
11
+ With no arguments, `dot` prints the overview (same as `dot help`).
12
+
13
+ ## Global Flags
14
+
15
+ | Flag | Purpose |
16
+ |:---|:---|
17
+ | `-h`, `--help` | Show help for the command (or overview if no command given) |
18
+ | `-v`, `--verbose` | Verbose output |
19
+ | `--version` | Print the dotfiles version and exit |
20
+ | `--json` | Machine-readable JSON output (where supported) |
21
+
22
+ ## Start Here
23
+
24
+ ### `dot sync` / `dot apply`
25
+
26
+ Apply the tracked configuration to the machine. Aliases: `dot sync == dot apply`.
27
+
28
+ ```
29
+ dot sync [--dry-run|-n] [--force|-f] [--verbose|-v]
30
+ ```
31
+
32
+ | Flag | Effect |
33
+ |:---|:---|
34
+ | `--dry-run`, `-n` | Preview changes without applying |
35
+ | `--force`, `-f` | Skip confirmation prompts |
36
+ | `--verbose`, `-v` | Show per-file actions |
37
+
38
+ Exit codes: 0 (clean apply), 1 (drift reconciled), 2 (apply failed).
39
+
40
+ ### `dot doctor`
41
+
42
+ Check the environment and surface issues.
43
+
44
+ ```
45
+ dot doctor [--score|-s] [--heal|-H] [--json|-j] [--verbose|-v]
46
+ ```
47
+
48
+ | Flag | Effect |
49
+ |:---|:---|
50
+ | `--score`, `-s` | Print numeric score (0-100) only |
51
+ | `--heal`, `-H` | Auto-fix detected issues |
52
+ | `--json`, `-j` | Machine-readable output |
53
+ | `--verbose`, `-v` | Show every check (default: failures only) |
54
+
55
+ Exit codes: 0 (healthy), 1 (warnings), 2 (critical failures).
56
+
57
+ ### `dot learn`
58
+
59
+ Interactive guided tour of the environment. Takes ~5-10 minutes, covers shells, secrets, themes, performance, security. Press `q` to exit at any time.
60
+
61
+ ### `dot help [<command>]`
62
+
63
+ Show the overview (no arg) or detailed help for a specific command.
64
+
65
+ ## Daily Use
66
+
67
+ ### `dot status` / `dot diff`
68
+
69
+ Show local drift or preview pending changes.
70
+
71
+ ```
72
+ dot status # list changed managed files
73
+ dot diff [<path>] # show unified diff (all or one path)
74
+ ```
75
+
76
+ ### `dot edit`
77
+
78
+ Open the source directory in `$EDITOR`. Shorthand for `cd ~/.dotfiles && $EDITOR`.
79
+
80
+ ### `dot upgrade`
81
+
82
+ Update tools, plugins, and dotfiles.
83
+
84
+ ```
85
+ dot upgrade [--tools-only] [--dotfiles-only]
86
+ ```
87
+
88
+ Runs `topgrade`-style upgrade of Mise tools, Nix flakes, homebrew (macOS), and pulls the latest `.dotfiles`.
89
+
90
+ ### `dot commit`
91
+
92
+ Create an AI-assisted conventional commit from staged changes.
93
+
94
+ ```
95
+ dot commit
96
+ ```
97
+
98
+ Uses the configured AI provider (via `dot mode`) to generate a commit message matching the Conventional Commits spec.
99
+
100
+ ### `dot search <term>`
101
+
102
+ Find commands by keyword.
103
+
104
+ ```
105
+ dot search theme # lists all theme-related commands
106
+ dot search secret # lists all secret-related commands
107
+ ```
108
+
109
+ ## Inspect & Repair
110
+
111
+ ### `dot heal`
112
+
113
+ Auto-repair missing tools, chezmoi drift, broken symlinks, and critical files.
114
+
115
+ ```
116
+ dot heal [--dry-run|-n] [--force|-f] [--tool <name>]
117
+ ```
118
+
119
+ See [Self-Healing concept](../01-concepts/05-self-healing.md).
120
+
121
+ ### `dot rollback`
122
+
123
+ Return to a previous snapshot.
124
+
125
+ ```
126
+ dot rollback # restore most recent snapshot
127
+ dot rollback status # list snapshots
128
+ dot rollback restore <n> # restore snapshot #n
129
+ dot rollback clean # delete snapshots older than 30 days
130
+ ```
131
+
132
+ ### `dot chaos`
133
+
134
+ Simulate corruption to test self-healing. **Destructive.** Use only in ephemeral environments.
135
+
136
+ ```
137
+ dot chaos [symlink|config|tool|permission|all]
138
+ ```
139
+
140
+ ### `dot attest`
141
+
142
+ Export signed workstation evidence (see [Trust Model](../01-concepts/02-trust-model.md)).
143
+
144
+ ```
145
+ dot attest [--output|-o <file>] [--sign|-s]
146
+ ```
147
+
148
+ Default output: `~/.local/state/dotfiles/attestation/YYYY-MM-DD-HHMMSS.json`. With `--sign`, the JSON is signed with the user's SSH ED25519 key.
149
+
150
+ ### `dot verify`
151
+
152
+ Verify integrity of the installation.
153
+
154
+ ```
155
+ dot verify [--security|-s] [--attestation <path>]
156
+ ```
157
+
158
+ | Flag | Effect |
159
+ |:---|:---|
160
+ | `--security`, `-s` | Run gitleaks + signature checks + policy hash |
161
+ | `--attestation <path>` | Verify an external attestation file |
162
+
163
+ ### `dot lint`
164
+
165
+ Lint shell scripts (shellcheck, shfmt).
166
+
167
+ ```
168
+ dot lint [--path <glob>] [--strict]
169
+ ```
170
+
171
+ ## Performance
172
+
173
+ ### `dot benchmark`
174
+
175
+ Measure shell startup time.
176
+
177
+ ```
178
+ dot benchmark [--detailed|-d] [--profile|-p] [--compare|-c] [--waterfall|-w] [--runs|-r <n>]
179
+ ```
180
+
181
+ | Flag | Effect |
182
+ |:---|:---|
183
+ | `--detailed`, `-d` | Per-module timing breakdown |
184
+ | `--profile`, `-p` | Profile with `$SHELL -ixc ""` |
185
+ | `--compare`, `-c` | Compare against baseline |
186
+ | `--waterfall`, `-w` | Waterfall visualization |
187
+ | `--runs`, `-r <n>` | Number of hyperfine runs (default 10) |
188
+
189
+ Exit codes: 0 (<500ms target), 1 (regression).
190
+
191
+ ### `dot perf`
192
+
193
+ Quick performance snapshot.
194
+
195
+ ```
196
+ dot perf [--json|-j] [--profile|-p] [--runs|-r <n>] [--target|-t <ms>]
197
+ ```
198
+
199
+ ### `dot prewarm`
200
+
201
+ Regenerate shell init caches for fast startup.
202
+
203
+ ### `dot cache-refresh`
204
+
205
+ Rebuild generated shell state (cold-start alternative to prewarm).
206
+
207
+ ### `dot clean-cache`
208
+
209
+ Clear generated shell initialization caches. Next shell startup will be slow; use `dot prewarm` afterward.
210
+
211
+ ### `dot score`
212
+
213
+ Show system health + security score.
214
+
215
+ ### `dot metrics`
216
+
217
+ Show recent observability metrics (startup times, heal events, score history).
218
+
219
+ ### `dot load-bench`
220
+
221
+ Measure heavy-layer (nvm, rbenv, direnv) readiness time.
222
+
223
+ ## AI & Agents
224
+
225
+ ### `dot ai`
226
+
227
+ Show installed AI tools with versions and status.
228
+
229
+ ```
230
+ dot ai
231
+ ```
232
+
233
+ ### `dot mcp`
234
+
235
+ Inspect MCP policy and registry.
236
+
237
+ ```
238
+ dot mcp [--strict|-s] [--json|-j]
239
+ ```
240
+
241
+ With `--strict`, validates the active MCP registry matches the policy hash. Exit code 1 on mismatch.
242
+
243
+ ### `dot mode [<profile>]`
244
+
245
+ Show or set the agent profile.
246
+
247
+ ```
248
+ dot mode # show current profile
249
+ dot mode architect # switch to architect profile
250
+ dot mode list # list all profiles
251
+ ```
252
+
253
+ Available profiles (see `dot_config/ai/patterns/`): `architect`, `hardener`, `refactor`. Custom profiles can be added by dropping `<name>.md` in the patterns directory.
254
+
255
+ ### `dot agent`
256
+
257
+ Agent metadata, logs, checkpoints, and conformance reports.
258
+
259
+ ```
260
+ dot agent status # current agent state
261
+ dot agent logs [--since <t>] # recent agent invocations
262
+ dot agent conformance # MCP policy conformance report
263
+ ```
264
+
265
+ ## Configuration
266
+
267
+ ### `dot theme`
268
+
269
+ Switch terminal and desktop themes. See [Theme Engine](../01-concepts/03-theme-engine.md) and [Theming Guide](../../guides/THEMING.md).
270
+
271
+ ```
272
+ dot theme # interactive picker
273
+ dot theme <name> # switch directly (e.g. dot theme tahoe-dark)
274
+ dot theme toggle # swap dark↔light within family
275
+ dot theme list # show paired themes with System/Custom source
276
+ dot theme rebuild [--force|--list] # regenerate from wallpapers
277
+ ```
278
+
279
+ ### `dot env`
280
+
281
+ Show managed tool versions.
282
+
283
+ ```
284
+ dot env # all managed tools
285
+ dot env <tool> # single tool
286
+ ```
287
+
288
+ ### `dot profile [<name>]`
289
+
290
+ Show or switch the active profile.
291
+
292
+ ```
293
+ dot profile # show active profile
294
+ dot profile list # all profiles
295
+ dot profile laptop # switch to 'laptop' profile
296
+ ```
297
+
298
+ Profiles live in `.chezmoidata.toml` under `[profiles.<name>]`.
299
+
300
+ ### `dot secrets`
301
+
302
+ Edit or manage encrypted secrets.
303
+
304
+ ```
305
+ dot secrets list # all encrypted files
306
+ dot secrets edit <path> # open in $EDITOR (decrypted)
307
+ dot secrets rotate # re-encrypt with current recipients
308
+ dot secrets verify # integrity check (no decryption)
309
+ ```
310
+
311
+ ## Fleet
312
+
313
+ ### `dot fleet`
314
+
315
+ Multi-node status, drift, and namespace.
316
+
317
+ ```
318
+ dot fleet # show all known hosts
319
+ dot fleet attest # collect signed attestations
320
+ dot fleet diff # compare rendered config across hosts
321
+ dot fleet sync # run `dot update` on every host
322
+ ```
323
+
324
+ Fleet hosts are configured in `~/.config/dotfiles/fleet.toml`.
325
+
326
+ ## Reference
327
+
328
+ ### `dot version`
329
+
330
+ Show the installed version.
331
+
332
+ ```
333
+ dot version [--json]
334
+ ```
335
+
336
+ ### `dot manual`
337
+
338
+ Open or download the manual in multiple formats.
339
+
340
+ ```
341
+ dot manual # open latest HTML manual in browser
342
+ dot manual pdf # download + open PDF
343
+ dot manual text # pipe ASCII text to pager
344
+ dot manual download <format> # save to current directory
345
+ dot manual --offline # use bundled offline copy (from `dot bundle`)
346
+ ```
347
+
348
+ Formats: `html`, `html-multi`, `pdf`, `epub`, `text`, `markdown`.
349
+
350
+ ### `dot add <path>`
351
+
352
+ Import a file into chezmoi's source directory.
353
+
354
+ ```
355
+ dot add ~/.somefile # plaintext
356
+ dot add --encrypt ~/.somefile # encrypted with Age
357
+ dot add --template ~/.somefile # templatize
358
+ ```
359
+
360
+ ### `dot remove <path>`
361
+
362
+ Safely remove a managed file (removes from source and unmanages).
363
+
364
+ ### `dot cd`
365
+
366
+ Print the source directory path. Useful for `cd $(dot cd)`.
367
+
368
+ ### `dot bundle`
369
+
370
+ Create an offline portable archive.
371
+
372
+ ```
373
+ dot bundle # default output ~/Downloads/
374
+ dot bundle --to <dir|file> # custom location
375
+ dot bundle --manual # include offline manual
376
+ dot bundle restore <bundle.tar.zst> # restore from bundle
377
+ ```
378
+
379
+ ### `dot packages`
380
+
381
+ Show installed packages and package managers.
382
+
383
+ ```
384
+ dot packages
385
+ dot packages --manager mise|nix|brew|apt
386
+ ```
387
+
388
+ ## Environment Variables
389
+
390
+ | Variable | Purpose |
391
+ |:---|:---|
392
+ | `DOTFILES_VERBOSE=1` | Verbose output for all `dot` commands |
393
+ | `DOTFILES_NONINTERACTIVE=1` | Skip interactive prompts |
394
+ | `DOTFILES_SILENT=1` | Suppress non-error output |
395
+ | `DOTFILES_SOURCE_DIR` | Override the source directory |
396
+ | `DOTFILES_WALLPAPER_DIR` | Override `~/Pictures/Wallpapers/` |
397
+ | `DOTFILES_DEBUG=1` | Print timing info during shell init |
398
+
399
+ ## Exit Codes
400
+
401
+ | Code | Meaning |
402
+ |:---|:---|
403
+ | 0 | Success |
404
+ | 1 | Warnings or recoverable errors |
405
+ | 2 | Critical failure — manual intervention required |
406
+ | 127 | Command not found |
407
+
408
+ ## See Also
409
+
410
+ - [Configuration Files Reference](02-config-files.md)
411
+ - [Environment Reference](03-environment.md)
412
+ - [Template Variables](04-templates.md)
413
+ - [Feature Flags](05-feature-flags.md)
@@ -0,0 +1,259 @@
1
+ # Reference: Configuration Files
2
+
3
+ Every config file read or written by `.dotfiles`, with its schema and purpose.
4
+
5
+ ## Source Repository
6
+
7
+ | File | Purpose |
8
+ |:---|:---|
9
+ | `~/.dotfiles/.chezmoidata.toml` | Global defaults: theme, profile, version, features |
10
+ | `~/.dotfiles/.chezmoidata/hardware.toml` | Machine presets (MacBook T2, Surface Pro, etc.) |
11
+ | `~/.dotfiles/.chezmoidata/themes.toml` | **Generated** theme palettes — do not edit |
12
+ | `~/.dotfiles/.chezmoidata/keybinds.toml` | Modifier hierarchy matrix |
13
+ | `~/.dotfiles/mise.toml` | Pinned runtime versions for the dotfiles repo |
14
+ | `~/.dotfiles/.chezmoiignore` | Paths excluded from `chezmoi apply` |
15
+ | `~/.dotfiles/.chezmoitemplates/` | Reusable template partials |
16
+
17
+ ## User-Owned Configuration
18
+
19
+ | File | Purpose | Git-tracked? |
20
+ |:---|:---|:---:|
21
+ | `~/.config/chezmoi/chezmoi.toml` | Per-host overrides (machine, theme, shell) | No |
22
+ | `~/.config/age/keys.txt` | Age private key for decryption | No |
23
+ | `~/.config/mise/config.toml` | User runtime preferences (managed by this repo) | Via chezmoi |
24
+ | `~/.config/dotfiles/fleet.toml` | Fleet host list (optional) | No |
25
+ | `~/.ssh/allowed_signers` | SSH public keys trusted for commit verification | Via chezmoi (template) |
26
+
27
+ ## `.chezmoidata.toml` Schema
28
+
29
+ ```toml
30
+ # Version — bumped by version-sync.sh at release time
31
+ dotfiles_version = "0.2.500"
32
+
33
+ # Machine preset — override in ~/.config/chezmoi/chezmoi.toml per host
34
+ machine = ""
35
+
36
+ # Active theme — see `dot theme list`
37
+ theme = "tahoe-dark"
38
+
39
+ # Terminal defaults
40
+ terminal_font_family = "JetBrainsMono Nerd Font"
41
+ terminal_font_size = 12
42
+ default_shell = "fish" # fish | zsh | nu
43
+
44
+ # Git identity (prompt-provided via chezmoi init)
45
+ name = ""
46
+ email = ""
47
+
48
+ # Active profile
49
+ profile = "laptop" # desktop | laptop | server | codespace
50
+
51
+ # Feature flags (see 05-feature-flags.md)
52
+ [features]
53
+ dms = false
54
+ linux_desktop = false
55
+ niri = false
56
+ waybar = false
57
+
58
+ # Profiles (named collections of overrides)
59
+ [profiles.desktop]
60
+ # ...
61
+
62
+ [profiles.laptop]
63
+ # ...
64
+ ```
65
+
66
+ ## `.chezmoidata/hardware.toml` Schema
67
+
68
+ ```toml
69
+ [hardware.<preset-name>]
70
+ display_scale = 1.0 | 1.25 | 1.5 | 1.75 | 2.0
71
+ kbd_layout = "qwerty" | "colemak-dh" | "dvorak"
72
+ modifier_mode = "standard" | "left-cmd-control" | "fn-swap"
73
+ perf_profile = "desktop" | "laptop" | "low-power"
74
+ wm = "aerospace" | "niri" | "gnome" | "kde" | "none"
75
+
76
+ [hardware.<preset-name>.features]
77
+ # Per-preset feature overrides (merged on top of .chezmoidata.toml features)
78
+ <flag> = <bool>
79
+ ```
80
+
81
+ ## `.chezmoidata/themes.toml` Schema
82
+
83
+ **Generated by `dot theme rebuild` — do not edit manually.**
84
+
85
+ ```toml
86
+ [themes.<name>]
87
+ mode = "dark" | "light"
88
+ family = "<family-name>"
89
+ macos_accent = -1 .. 6 # -1=Graphite, 0=Red, 1=Orange, 2=Yellow, 3=Green, 4=Blue, 5=Purple, 6=Pink
90
+ wallpaper = "/absolute/path/to/wallpaper.heic"
91
+ source = "custom" | "system"
92
+
93
+ [themes.<name>.term]
94
+ bg, fg, cursor, cursor_text, sel_bg, sel_fg # hex RGB
95
+ c0 .. c15 # 16 ANSI colors
96
+
97
+ [themes.<name>.ui]
98
+ accent, accent_text # WCAG AAA enforced (7:1)
99
+ error, warning, success, info
100
+ panel # 1.03-2.0 contrast vs bg
101
+ border # 1.08-3.5 contrast vs bg
102
+
103
+ [themes.<name>.app]
104
+ nvim, nvim_style, lualine
105
+ gtk_theme, gtk_icon, gnome_shell, gnome_gtk
106
+ vscode, vscode_dark, vscode_light
107
+ cat_wallpaper
108
+ starship_palette
109
+ ```
110
+
111
+ See [Theme Engine concept](../01-concepts/03-theme-engine.md) for how values are derived.
112
+
113
+ ## `~/.config/chezmoi/chezmoi.toml` (Per-Host)
114
+
115
+ ```toml
116
+ sourceDir = "/Users/you/.dotfiles"
117
+
118
+ [data]
119
+ machine = "surface-pro" # selects preset from hardware.toml
120
+ theme = "dome-dark" # overrides .chezmoidata.toml default
121
+ default_shell = "fish"
122
+ terminal_font_size = 11
123
+ email = "you@example.com"
124
+ name = "Your Name"
125
+ ```
126
+
127
+ Fields here override same-named fields in `.chezmoidata.toml` at render time.
128
+
129
+ ## `~/.dotfiles/mise.toml` (Pinned Versions)
130
+
131
+ Strict versions for testing the repo itself (separate from the user's own mise config):
132
+
133
+ ```toml
134
+ [tools]
135
+ chezmoi = "2.47.1"
136
+ pandoc = "3.1.8"
137
+ shellcheck = "0.10.0"
138
+ shfmt = "3.8.0"
139
+ # ...
140
+
141
+ [env]
142
+ # Repo-level env vars
143
+ ```
144
+
145
+ ## `~/.config/mise/config.toml` (User)
146
+
147
+ Managed by this repo via chezmoi. Lists all CLI tools + language runtimes:
148
+
149
+ ```toml
150
+ [settings]
151
+ auto_install = true
152
+ activate_aggressive = true
153
+
154
+ [tools]
155
+ node = ["lts", "24", "25"]
156
+ python = ["3.12", "3.11"]
157
+ go = "latest"
158
+ rust = "latest"
159
+ # ... 60+ tools
160
+
161
+ [env]
162
+ MISE_EXPERIMENTAL = "1"
163
+ GITHUB_TOKEN = "{{exec(command='gh auth token')}}"
164
+ GOCACHE = "/tmp/builds/go-cache"
165
+ PIP_CACHE_DIR = "/tmp/builds/pip-cache"
166
+ UV_CACHE_DIR = "/tmp/builds/uv-cache"
167
+ ZIG_LOCAL_CACHE_DIR = "/tmp/builds/zig-cache"
168
+ ZIG_GLOBAL_CACHE_DIR = "/tmp/builds/zig-global-cache"
169
+ ```
170
+
171
+ ## `~/.cargo/config.toml` (Managed)
172
+
173
+ ```toml
174
+ [build]
175
+ jobs = -1
176
+ incremental = true
177
+ target-dir = "/tmp/builds/cargo"
178
+ ```
179
+
180
+ ## `~/.ssh/allowed_signers`
181
+
182
+ Template: `dot_ssh/allowed_signers.tmpl`
183
+
184
+ Lists SSH public keys authorized to sign commits in the repository:
185
+
186
+ ```
187
+ you@example.com ssh-ed25519 AAAAC3N...
188
+ teammate@example.com ssh-ed25519 AAAAC3N...
189
+ ```
190
+
191
+ ## `dot_config/dotfiles/mcp.json`
192
+
193
+ MCP policy and registry. See [MCP Policy reference](../../security/MCP_POLICY.md).
194
+
195
+ ```json
196
+ {
197
+ "policy_version": "2026-01",
198
+ "allowed_servers": ["fs", "shell", "github"],
199
+ "denied_tools": ["network.raw"],
200
+ "attestation_required": true,
201
+ "registry": {
202
+ "servers": [
203
+ {"name": "fs", "command": "...", "hash": "..."},
204
+ ...
205
+ ]
206
+ }
207
+ }
208
+ ```
209
+
210
+ ## `dot_config/dotfiles/agent-card.json`
211
+
212
+ Agent Card (MCP A2A spec):
213
+
214
+ ```json
215
+ {
216
+ "name": "dotfiles-agent",
217
+ "version": "0.2.500",
218
+ "capabilities": ["chezmoi.apply", "theme.switch", "secrets.decrypt"],
219
+ "policy_hash": "0x7f2a..."
220
+ }
221
+ ```
222
+
223
+ ## Log Files
224
+
225
+ | Path | Content | Rotation |
226
+ |:---|:---|:---|
227
+ | `~/.local/state/dotfiles/install.log` | Installer output | Never rotated |
228
+ | `~/.local/state/dotfiles/heal.log` | Heal attempts | Append-only |
229
+ | `~/.local/state/dotfiles/metrics.jsonl` | Observability events | Rotated at 10MB |
230
+ | `~/.local/state/dotfiles/mcp-violations.log` | MCP policy violations | Rotated at 10MB |
231
+ | `~/.local/state/dotfiles/attestation/*.json` | Attestation snapshots | 90-day retention |
232
+ | `~/.local/state/dotfiles/snapshots/*` | Rollback snapshots | 30-day retention |
233
+
234
+ ## Cache Files
235
+
236
+ | Path | Content | Invalidation |
237
+ |:---|:---|:---|
238
+ | `~/.cache/shell/*-init.sh` | Pre-generated shell init output | Binary mtime |
239
+ | `~/.cache/dotfiles/themes/*.toml` | Per-wallpaper theme cache | Wallpaper mtime |
240
+ | `~/.cache/dotfiles/manual/*` | Downloaded manual files | Version change |
241
+ | `~/.cache/gitstatus/*` | Starship gitstatus | Auto |
242
+
243
+ ## Verified Files
244
+
245
+ Every commit on `master` modifies tracked files only. Untracked files in the source directory (e.g. editor swap files) are ignored via `.chezmoiignore`:
246
+
247
+ ```
248
+ .DS_Store
249
+ .vscode/
250
+ *.swp
251
+ _build/
252
+ ```
253
+
254
+ ## See Also
255
+
256
+ - [Environment Reference](03-environment.md)
257
+ - [Template Variables](04-templates.md)
258
+ - [Feature Flags](05-feature-flags.md)
259
+ - [First Install Tutorial](../02-tutorials/01-first-install.md)