configs-all 1.0.0

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 (227) hide show
  1. package/.claude/settings.local.json +3 -0
  2. package/CLAUDE.md +94 -0
  3. package/README.md +424 -0
  4. package/TERMINAL_SHORTCUTS.md +96 -0
  5. package/WINDOWS_COMPATIBILITY.md +85 -0
  6. package/WINDOWS_MCP_SETUP.md +133 -0
  7. package/apps/RectangleConfig.plist +0 -0
  8. package/apps/Synergy +84 -0
  9. package/apps/iStat Menus Settings.ismp7 +0 -0
  10. package/claude/CLAUDE.md +228 -0
  11. package/claude/commands/changelog.md +36 -0
  12. package/claude/commands/commit.md +29 -0
  13. package/claude/commands/context.md +112 -0
  14. package/claude/commands/dash.md +37 -0
  15. package/claude/commands/deploy-check.md +37 -0
  16. package/claude/commands/deps.md +26 -0
  17. package/claude/commands/duplo.md +56 -0
  18. package/claude/commands/explain.md +43 -0
  19. package/claude/commands/fix-and-test.md +46 -0
  20. package/claude/commands/game-debug.md +66 -0
  21. package/claude/commands/games.md +53 -0
  22. package/claude/commands/go.md +147 -0
  23. package/claude/commands/guard.md +102 -0
  24. package/claude/commands/handoff.md +66 -0
  25. package/claude/commands/incident.md +144 -0
  26. package/claude/commands/init.md +78 -0
  27. package/claude/commands/k8s-debug.md +31 -0
  28. package/claude/commands/lint.md +27 -0
  29. package/claude/commands/merge-all.md +115 -0
  30. package/claude/commands/merge.md +129 -0
  31. package/claude/commands/mikpc.md +54 -0
  32. package/claude/commands/morning.md +72 -0
  33. package/claude/commands/partymode.md +105 -0
  34. package/claude/commands/plans.md +88 -0
  35. package/claude/commands/pr.md +41 -0
  36. package/claude/commands/prep.md +132 -0
  37. package/claude/commands/push-sync.md +82 -0
  38. package/claude/commands/push.md +34 -0
  39. package/claude/commands/research.md +73 -0
  40. package/claude/commands/retro.md +95 -0
  41. package/claude/commands/review-pr.md +96 -0
  42. package/claude/commands/review.md +41 -0
  43. package/claude/commands/scaffold-agent.md +45 -0
  44. package/claude/commands/setup.md +92 -0
  45. package/claude/commands/ship-prod.md +97 -0
  46. package/claude/commands/ship.md +82 -0
  47. package/claude/commands/simplify.md +42 -0
  48. package/claude/commands/spike.md +110 -0
  49. package/claude/commands/status.md +37 -0
  50. package/claude/commands/sync.md +72 -0
  51. package/claude/commands/test.md +29 -0
  52. package/claude/commands/triage.md +72 -0
  53. package/claude/desktop/claude_desktop_config.json +9 -0
  54. package/claude/hooks.json +15 -0
  55. package/claude/mcp-servers.duplo.json +8 -0
  56. package/claude/mcp-servers.json +62 -0
  57. package/claude/scripts/psdebug.ps1 +7 -0
  58. package/claude/settings.json +38 -0
  59. package/claude/settings.local.json +4 -0
  60. package/claude/statusline-command.sh +94 -0
  61. package/claude/templates/CLAUDE-k8s-devops.md +58 -0
  62. package/claude/templates/CLAUDE-python-agent.md +47 -0
  63. package/claude/templates/CLAUDE-typescript-frontend.md +50 -0
  64. package/docker/ai-stack/docker-compose.yml +76 -0
  65. package/docker/ai-stack/searxng/limiter.toml +3 -0
  66. package/docker/ai-stack/searxng/settings.yml +39 -0
  67. package/docker/cli/config.json.template +15 -0
  68. package/docker/cli/daemon.json +9 -0
  69. package/docker/cli/features.json +3 -0
  70. package/docker/mcp/catalog.json +9 -0
  71. package/docker/mcp/catalogs/docker-mcp.yaml +15107 -0
  72. package/docker/mcp/config.yaml +0 -0
  73. package/docker/mcp/registry.yaml +37 -0
  74. package/docker/mcp/tools.yaml +0 -0
  75. package/docs/context/.gitkeep +0 -0
  76. package/docs/context/2026-03-02-configs.md +142 -0
  77. package/docs/handoff/.gitkeep +0 -0
  78. package/docs/incidents/.gitkeep +0 -0
  79. package/docs/plans/2026-02-28-autonomous-command-suite-design.md +250 -0
  80. package/docs/plans/2026-02-28-autonomous-command-suite.md +682 -0
  81. package/docs/plans/2026-03-01-ai-stack-split-architecture.md +72 -0
  82. package/docs/plans/2026-03-02-ai-stack-expansion.md +33 -0
  83. package/docs/plans/2026-03-02-merge-commands-design.md +58 -0
  84. package/docs/plans/2026-03-02-merge-commands.md +354 -0
  85. package/docs/research/.gitkeep +0 -0
  86. package/docs/research/2026-03-02-configs-repo-architecture.md +152 -0
  87. package/docs/retros/.gitkeep +0 -0
  88. package/docs/retros/2026-03-01-ai-stack-split-architecture.md +38 -0
  89. package/docs/spikes/.gitkeep +0 -0
  90. package/gh/config.yml +16 -0
  91. package/gh/hosts.yml +5 -0
  92. package/gh/main.json +103 -0
  93. package/ghostty/config +90 -0
  94. package/git/config/base.gitconfig +46 -0
  95. package/git/config/chiefmikey.gitconfig +11 -0
  96. package/git/config/personal.gitconfig +10 -0
  97. package/git/config/work.gitconfig +14 -0
  98. package/ide/cursor/extensions.txt +111 -0
  99. package/ide/cursor/keybindings.json +307 -0
  100. package/ide/cursor/mcp.json +92 -0
  101. package/ide/cursor/settings.json +544 -0
  102. package/ide/vscode/extensions.txt +120 -0
  103. package/ide/vscode/insiders/extensions.txt +119 -0
  104. package/ide/vscode/insiders/keybindings.json +294 -0
  105. package/ide/vscode/insiders/settings.json +518 -0
  106. package/ide/vscode/keybindings.json +294 -0
  107. package/ide/vscode/settings.json +526 -0
  108. package/ide/vscode/vscode/extensions.txt +43 -0
  109. package/iterm/Mikey Pro.json +951 -0
  110. package/iterm/com.googlecode.iterm2.plist +5549 -0
  111. package/iterm/font/MesloLGS NF Bold Italic.ttf +0 -0
  112. package/iterm/font/MesloLGS NF Bold.ttf +0 -0
  113. package/iterm/font/MesloLGS NF Italic.ttf +0 -0
  114. package/iterm/font/MesloLGS NF Regular.ttf +0 -0
  115. package/package.json +15 -0
  116. package/scripts/ai/deploy-ai-stack.sh +119 -0
  117. package/scripts/ai/fix-ai-proxy.service +12 -0
  118. package/scripts/ai/fix-ai-proxy.sh +25 -0
  119. package/scripts/brew/search/brew-search-results.sh +19 -0
  120. package/scripts/brew/search/brew-search.sh +34 -0
  121. package/scripts/brew/upgrade/brew-upgrade-autoupdate.sh +5 -0
  122. package/scripts/brew/upgrade/brew-upgrade-full-auto.sh +89 -0
  123. package/scripts/brew/upgrade/brew-upgrade-full.sh +159 -0
  124. package/scripts/docker/cleanup/docker-cleanup-manage.sh +163 -0
  125. package/scripts/docker/cleanup/docker-cleanup.cron +12 -0
  126. package/scripts/docker/cleanup/docker-cleanup.sh +280 -0
  127. package/scripts/docker/install/README.md +23 -0
  128. package/scripts/docker/install/docker-al2.sh +7 -0
  129. package/scripts/docker/install/docker-compose-al2.sh +15 -0
  130. package/scripts/gh/auth/auth.sh +12 -0
  131. package/scripts/gh/config/gh-config.sh +3 -0
  132. package/scripts/gh/gist/gh-gist-create.sh +29 -0
  133. package/scripts/gh/gist/gh-gist-delete.sh +1 -0
  134. package/scripts/gh/gist/gh-gist-edit.sh +8 -0
  135. package/scripts/gh/gpg-key/gh-gpg-key-add.sh +3 -0
  136. package/scripts/gh/install/install.sh +7 -0
  137. package/scripts/gh/label/gh-label-clone.sh +0 -0
  138. package/scripts/gh/label/gh-label-create.sh +0 -0
  139. package/scripts/gh/label/gh-label-delete.sh +0 -0
  140. package/scripts/gh/label/gh-label-edit.sh +0 -0
  141. package/scripts/gh/label/gh-label-list.sh +0 -0
  142. package/scripts/gh/secret/gh-secret-delete.sh +24 -0
  143. package/scripts/gh/secret/gh-secret-set.sh +70 -0
  144. package/scripts/gh/ssh-key/gh-ssh-key-add.sh +8 -0
  145. package/scripts/git/add/git-add.sh +3 -0
  146. package/scripts/git/auth/README.md +11 -0
  147. package/scripts/git/auth/https.sh +20 -0
  148. package/scripts/git/auth/ssh-mac.sh +41 -0
  149. package/scripts/git/branch-delete/git-branch-delete.sh +16 -0
  150. package/scripts/git/checkout/git-checkout-stash.sh +32 -0
  151. package/scripts/git/temp/git-temp-pull.sh +6 -0
  152. package/scripts/git/temp/git-temp-push.sh +5 -0
  153. package/scripts/install/fresh.zsh +34 -0
  154. package/scripts/install/full-install.zsh +193 -0
  155. package/scripts/linux/codedeploy/README.md +19 -0
  156. package/scripts/linux/codedeploy/linux-codedeploy-al2.sh +13 -0
  157. package/scripts/linux/codedeploy/linux-codedeploy-index.sh +16 -0
  158. package/scripts/linux/codedeploy/linux-codedeploy-ubuntu.sh +14 -0
  159. package/scripts/linux/coredns/README.md +17 -0
  160. package/scripts/linux/coredns/linux-coredns-al2.sh +29 -0
  161. package/scripts/linux/wifi/01-netconf.yaml +21 -0
  162. package/scripts/linux/wifi/wifi-ubuntu.sh +17 -0
  163. package/scripts/mac/dock-sort/mac-dock-sort.sh +87 -0
  164. package/scripts/mac/dropbox-ignore/mac-dropbox-ignore.sh +12 -0
  165. package/scripts/mac/sudo-askpass/mac-sudo-askpass.sh +50 -0
  166. package/scripts/mac/sudo-askpass/setup-sudo-password.sh +49 -0
  167. package/scripts/mac/upgrade/mac-upgrade.sh +21 -0
  168. package/scripts/mac/vpn/mac-vpn.sh +4 -0
  169. package/scripts/mcp/aws-mcp-wrapper.ps1 +97 -0
  170. package/scripts/mcp/aws-mcp-wrapper.sh +53 -0
  171. package/scripts/mcp/duplo-mcp-wrapper.sh +31 -0
  172. package/scripts/mcp/filesystem-mcp-wrapper.ps1 +43 -0
  173. package/scripts/mcp/filesystem-mcp-wrapper.sh +34 -0
  174. package/scripts/mcp/git-mcp-wrapper.ps1 +42 -0
  175. package/scripts/mcp/git-mcp-wrapper.sh +33 -0
  176. package/scripts/mcp/github-mcp-wrapper.ps1 +43 -0
  177. package/scripts/mcp/github-mcp-wrapper.sh +19 -0
  178. package/scripts/mcp/kubernetes-mcp-wrapper.ps1 +22 -0
  179. package/scripts/mcp/kubernetes-mcp-wrapper.sh +16 -0
  180. package/scripts/mcp/mcp-launcher.ps1 +56 -0
  181. package/scripts/mcp/mcp-launcher.sh +71 -0
  182. package/scripts/mcp/mongodb-mcp-wrapper.ps1 +26 -0
  183. package/scripts/mcp/mongodb-mcp-wrapper.sh +17 -0
  184. package/scripts/mcp/notion-mcp-wrapper.ps1 +23 -0
  185. package/scripts/mcp/notion-mcp-wrapper.sh +14 -0
  186. package/scripts/mcp/postgres-mcp-wrapper.ps1 +23 -0
  187. package/scripts/mcp/postgres-mcp-wrapper.sh +16 -0
  188. package/scripts/npm/ncu/npm-ncu.sh +24 -0
  189. package/scripts/npm/upgrade/npm-upgrade.sh +51 -0
  190. package/scripts/qmk/build_reviung41.sh +28 -0
  191. package/scripts/qmk/sync_unicorne.sh +44 -0
  192. package/scripts/sync/README.md +64 -0
  193. package/scripts/sync/config-common.zsh +882 -0
  194. package/scripts/sync/pull-configs.ps1 +33 -0
  195. package/scripts/sync/pull-configs.zsh +278 -0
  196. package/scripts/sync/push-configs.ps1 +91 -0
  197. package/scripts/sync/push-configs.zsh +384 -0
  198. package/shell/alias/alias-d.zsh +333 -0
  199. package/shell/alias/alias.zsh +36 -0
  200. package/shell/alias/categories/development.zsh +157 -0
  201. package/shell/alias/categories/environment.zsh +13 -0
  202. package/shell/alias/categories/git.zsh +40 -0
  203. package/shell/alias/categories/github-functions.zsh +459 -0
  204. package/shell/alias/categories/network.zsh +46 -0
  205. package/shell/alias/categories/path.zsh +46 -0
  206. package/shell/alias/categories/system.zsh +78 -0
  207. package/shell/alias/categories/wolfe-server.zsh +11 -0
  208. package/shell/powershell/Microsoft.PowerShell_profile.ps1 +208 -0
  209. package/shell/zsh/.p10k.zsh +1832 -0
  210. package/shell/zsh/.zshrc +87 -0
  211. package/shell/zsh/config/completion.zsh +31 -0
  212. package/shell/zsh/config/functions.zsh +31 -0
  213. package/shell/zsh/config/keybindings.zsh +13 -0
  214. package/shell/zsh/config/options.zsh +56 -0
  215. package/shell/zsh/config/plugins.zsh +83 -0
  216. package/shell/zsh/config/variables.zsh +191 -0
  217. package/shell/zsh/powerlevel10k.zsh-theme +83 -0
  218. package/shell/zsh/zsh-autosuggestions.zsh +871 -0
  219. package/ssh/config +46 -0
  220. package/ssh/config.duplo +21 -0
  221. package/ssh/config.mikpc +35 -0
  222. package/ssh/personal_signing.pub +1 -0
  223. package/templates/.envrc.example +34 -0
  224. package/templates/.envrc.quickstart +17 -0
  225. package/wezterm/wezterm.lua +249 -0
  226. package/wsl/.wslconfig +3 -0
  227. package/wsl/wsl.conf +18 -0
@@ -0,0 +1,85 @@
1
+ # Windows Compatibility Handling
2
+
3
+ ## Overview
4
+
5
+ The configuration sync scripts properly handle Windows compatibility by:
6
+ 1. **Detecting platform** (Mac vs Windows/WSL)
7
+ 2. **Including only compatible configs** in the file list
8
+ 3. **Using correct paths** for Windows applications
9
+ 4. **Skipping Mac-only configs** entirely
10
+
11
+ ## Platform Detection
12
+
13
+ The scripts detect the platform using:
14
+ - `IS_MAC=true` on macOS
15
+ - `IS_WINDOWS=true` on Windows/WSL
16
+ - Detected via `OSTYPE` and `/proc/version` checks
17
+
18
+ ## Mac-Only Configs (Skipped on Windows)
19
+
20
+ These configurations are **only included** when `IS_MAC == true`:
21
+
22
+ 1. **iTerm2** (`iterm/com.googlecode.iterm2.plist`)
23
+ - Mac-only terminal application
24
+ - Not included in `get_all_configs()` on Windows
25
+
26
+ 2. **Rectangle** (`apps/RectangleConfig.plist`)
27
+ - Mac-only window manager
28
+ - Not included in `get_all_configs()` on Windows
29
+
30
+ 3. **iStat Menus** (`apps/iStat Menus Settings.ismp7`)
31
+ - Mac-only system monitor
32
+ - Not included in `get_all_configs()` on Windows
33
+
34
+ ## Cross-Platform Configs (Work on Both)
35
+
36
+ These configurations work on both Mac and Windows:
37
+
38
+ ### Shell Configuration
39
+ - **Zsh** (`.zshrc`) - Works in WSL on Windows
40
+ - **Powerlevel10k theme** - Works in WSL
41
+
42
+ ### Git Configuration
43
+ - **Base gitconfig** - Cross-platform
44
+ - **Host-specific gitconfig** - Cross-platform (personal.gitconfig for mikpc)
45
+
46
+ ### IDE Configuration
47
+ - **VS Code** - Windows paths: `/mnt/c/Users/${WINDOWS_USER}/AppData/Roaming/Code/User/`
48
+ - **VS Code Insiders** - Windows paths: `/mnt/c/Users/${WINDOWS_USER}/AppData/Roaming/Code - Insiders/User/`
49
+ - **Cursor** - Windows paths: `/mnt/c/Users/${WINDOWS_USER}/AppData/Roaming/Cursor/User/`
50
+
51
+ ### Development Tools
52
+ - **GitHub CLI** (`gh/config.yml`, `gh/hosts.yml`) - Cross-platform
53
+ - **SSH config** (`ssh/config`) - Cross-platform
54
+ - **Docker configs** - Cross-platform (all Docker MCP and CLI configs)
55
+
56
+ ### Applications
57
+ - **Synergy** - Works on both platforms with different paths:
58
+ - Mac: `${HOME}/Library/Preferences/Synergy/synergy.conf`
59
+ - Windows: `/mnt/c/Users/${WINDOWS_USER}/AppData/Roaming/Synergy/synergy.conf`
60
+
61
+ ## Windows Path Mappings
62
+
63
+ When `IS_WINDOWS == true`, the scripts use Windows-specific paths:
64
+
65
+ | Config | Mac Path | Windows Path |
66
+ |--------|----------|--------------|
67
+ | VS Code settings | `~/Library/Application Support/Code/User/` | `/mnt/c/Users/${WINDOWS_USER}/AppData/Roaming/Code/User/` |
68
+ | Cursor settings | `~/Library/Application Support/Cursor/User/` | `/mnt/c/Users/${WINDOWS_USER}/AppData/Roaming/Cursor/User/` |
69
+ | Cursor MCP | `~/.cursor/mcp.json` | `/mnt/c/Users/${WINDOWS_USER}/.cursor/mcp.json` |
70
+ | Synergy | `~/Library/Preferences/Synergy/` | `/mnt/c/Users/${WINDOWS_USER}/AppData/Roaming/Synergy/` |
71
+
72
+ ## Safety Mechanisms
73
+
74
+ 1. **Double Protection**: Mac-only configs are excluded from `get_all_configs()` AND return empty string from `get_config_dest()`
75
+ 2. **Empty Path Check**: Scripts check for empty `dest_path` and skip processing
76
+ 3. **Platform Detection**: Automatic detection ensures correct behavior
77
+
78
+ ## Verification
79
+
80
+ On Windows/WSL, running `get_all_configs()` will return:
81
+ - ✅ All cross-platform configs
82
+ - ✅ Windows-specific paths for VS Code/Cursor
83
+ - ❌ NO Mac-only configs (iTerm, Rectangle, iStat Menus)
84
+
85
+ This ensures only compatible configurations are synced on each platform.
@@ -0,0 +1,133 @@
1
+ # Windows MCP Setup Guide
2
+
3
+ This guide explains how to set up MCP servers on Windows and configure secrets.
4
+
5
+ ## Quick Start
6
+
7
+ 1. **Copy the Windows MCP config:**
8
+ ```powershell
9
+ Copy-Item "$env:USERPROFILE\Dropbox\mikpc\dev\configs\ide\cursor\mcp.json.windows" "$env:APPDATA\Cursor\User\mcp.json"
10
+ ```
11
+
12
+ 2. **Update paths in mcp.json** (REQUIRED):
13
+ - Open `%APPDATA%\Cursor\User\mcp.json`
14
+ - Replace `YOUR_USERNAME` with your actual Windows username in all paths
15
+ - Example: `C:\Users\YOUR_USERNAME\Dropbox\...` → `C:\Users\wolfe\Dropbox\...`
16
+
17
+ 3. **Create your secrets file:**
18
+ ```powershell
19
+ New-Item -Path "$env:USERPROFILE\.secrets" -ItemType File -Force
20
+ ```
21
+
22
+ 4. **Add your secrets** (see below)
23
+
24
+ ## Setting Up Secrets
25
+
26
+ ### Location
27
+ Create a file at: `C:\Users\YOUR_USERNAME\.secrets`
28
+
29
+ ### Format
30
+ The `.secrets` file uses a simple key-value format:
31
+ ```
32
+ # Comments start with #
33
+ GITHUB_PAT=ghp_your_github_token_here
34
+ POSTMAN_API_KEY=your_postman_api_key
35
+ INTERNAL_INTEGRATION_TOKEN=your_notion_token
36
+ POSTGRES_CONNECTION_STRING=postgresql://user:password@host:5432/database
37
+ MONGODB_CONNECTION_STRING=mongodb://localhost:27017
38
+ MONGODB_DATABASE=devopsmgr
39
+ AWS_PROFILE=default
40
+ AWS_REGION=us-east-2
41
+ ```
42
+
43
+ ### Getting Your Secrets
44
+
45
+ #### GitHub Personal Access Token (GITHUB_PAT)
46
+ 1. Go to https://github.com/settings/tokens
47
+ 2. Click "Generate new token" → "Generate new token (classic)"
48
+ 3. Give it a name (e.g., "Cursor MCP")
49
+ 4. Select scopes: `repo`, `read:org`, `read:user`
50
+ 5. Copy the token and add to `.secrets`:
51
+ ```
52
+ GITHUB_PAT=ghp_your_token_here
53
+ ```
54
+
55
+ #### Postman API Key (POSTMAN_API_KEY)
56
+ 1. Go to https://web.postman.com/settings/me/api-keys
57
+ 2. Click "Generate API Key"
58
+ 3. Copy the key and add to `.secrets`:
59
+ ```
60
+ POSTMAN_API_KEY=your_api_key_here
61
+ ```
62
+
63
+ #### Notion Integration Token (INTERNAL_INTEGRATION_TOKEN)
64
+ 1. Go to https://www.notion.so/my-integrations
65
+ 2. Click "New integration"
66
+ 3. Give it a name and select your workspace
67
+ 4. Copy the "Internal Integration Token" and add to `.secrets`:
68
+ ```
69
+ INTERNAL_INTEGRATION_TOKEN=secret_your_token_here
70
+ ```
71
+
72
+ #### PostgreSQL Connection String (POSTGRES_CONNECTION_STRING)
73
+ Format: `postgresql://username:password@host:port/database`
74
+ ```
75
+ POSTGRES_CONNECTION_STRING=postgresql://postgres:mypassword@localhost:5432/mydb
76
+ ```
77
+
78
+ #### MongoDB Connection (MONGODB_CONNECTION_STRING, MONGODB_DATABASE)
79
+ ```
80
+ MONGODB_CONNECTION_STRING=mongodb://localhost:27017
81
+ MONGODB_DATABASE=devopsmgr
82
+ ```
83
+
84
+ #### AWS Credentials
85
+ AWS credentials are typically stored in `C:\Users\YOUR_USERNAME\.aws\credentials` and `C:\Users\YOUR_USERNAME\.aws\config`. The MCP server will automatically use these.
86
+
87
+ You can optionally set in `.secrets`:
88
+ ```
89
+ AWS_PROFILE=default
90
+ AWS_REGION=us-east-2
91
+ ```
92
+
93
+ ## Windows-Specific Notes
94
+
95
+ ### Paths in mcp.json
96
+ The Windows config uses `YOUR_USERNAME` as a placeholder. You MUST replace it:
97
+ 1. Open `%APPDATA%\Cursor\User\mcp.json`
98
+ 2. Find and replace `YOUR_USERNAME` with your actual Windows username (e.g., `wolfe`)
99
+ 3. All paths use Windows backslashes: `C:\\Users\\YourUsername\\...`
100
+
101
+ ### PowerShell Execution Policy
102
+ The wrapper scripts use PowerShell. If you get execution policy errors:
103
+ ```powershell
104
+ Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
105
+ ```
106
+
107
+ ### Using WSL Instead
108
+ If you're using WSL (Windows Subsystem for Linux), you can:
109
+ 1. Use the Linux/Mac config (`mcp.json`) directly
110
+ 2. Store secrets in `~/.secrets` (WSL home directory)
111
+ 3. Use the `.sh` wrapper scripts instead of `.ps1`
112
+
113
+ The WSL path would be: `~/.cursor/mcp.json` or `/mnt/c/Users/YOUR_USERNAME/AppData/Roaming/Cursor/User/mcp.json`
114
+
115
+ ## Troubleshooting
116
+
117
+ ### Secrets not loading
118
+ - Check that `.secrets` file exists at `C:\Users\YOUR_USERNAME\.secrets`
119
+ - Verify the format is correct (no spaces around `=`)
120
+ - Check PowerShell execution policy
121
+
122
+ ### Path issues
123
+ - Verify all paths in `mcp.json` use correct Windows paths
124
+ - Replace `%USERNAME%` with your actual username
125
+ - Use forward slashes or escaped backslashes in JSON
126
+
127
+ ### Docker not found
128
+ - Ensure Docker Desktop is installed and running
129
+ - Verify `docker` is in your PATH
130
+
131
+ ### AWS credentials not found
132
+ - Check `C:\Users\YOUR_USERNAME\.aws\credentials` exists
133
+ - Verify your AWS profile name matches `AWS_PROFILE` in `.secrets`
Binary file
package/apps/Synergy ADDED
@@ -0,0 +1,84 @@
1
+ section: screens
2
+ mikmac-3adf471e:
3
+ alt = alt
4
+ meta = meta
5
+ shift = shift
6
+ super = super
7
+ ctrl = ctrl
8
+ halfDuplexNumLock = false
9
+ xtestIsXineramaUnaware = false
10
+ halfDuplexCapsLock = false
11
+ halfDuplexScrollLock = false
12
+ switchCorners = none
13
+ altgr = alt
14
+ mikbook-e6845987:
15
+ alt = alt
16
+ meta = meta
17
+ shift = shift
18
+ super = super
19
+ ctrl = ctrl
20
+ halfDuplexNumLock = false
21
+ xtestIsXineramaUnaware = false
22
+ halfDuplexCapsLock = false
23
+ halfDuplexScrollLock = false
24
+ switchCorners = none
25
+ altgr = alt
26
+ games-0d642819:
27
+ alt = alt
28
+ meta = meta
29
+ shift = shift
30
+ super = super
31
+ ctrl = ctrl
32
+ halfDuplexNumLock = false
33
+ xtestIsXineramaUnaware = false
34
+ halfDuplexCapsLock = false
35
+ halfDuplexScrollLock = false
36
+ switchCorners = none
37
+ altgr = alt
38
+ duplo-a2e2d950:
39
+ alt = alt
40
+ meta = meta
41
+ shift = shift
42
+ super = super
43
+ ctrl = ctrl
44
+ halfDuplexNumLock = false
45
+ xtestIsXineramaUnaware = false
46
+ halfDuplexCapsLock = false
47
+ halfDuplexScrollLock = false
48
+ switchCorners = none
49
+ altgr = alt
50
+ mikpc-8363820f:
51
+ alt = alt
52
+ meta = meta
53
+ shift = shift
54
+ super = super
55
+ ctrl = ctrl
56
+ halfDuplexNumLock = false
57
+ xtestIsXineramaUnaware = false
58
+ halfDuplexCapsLock = false
59
+ halfDuplexScrollLock = false
60
+ switchCorners = none
61
+ altgr = alt
62
+ end
63
+
64
+ section: links
65
+ mikmac-3adf471e:
66
+ mikbook-e6845987:
67
+ games-0d642819:
68
+ duplo-a2e2d950:
69
+ mikpc-8363820f:
70
+ end
71
+
72
+ section: options
73
+ heartbeat = 5000
74
+ relativeMouseMoves = true
75
+ clipboardSharing = true
76
+ clipboardSharingSize = 4000
77
+ win32KeepForeground = true
78
+ disableLockToScreen = false
79
+ keystroke(Shift+F1) = switchToScreen(mikpc-8363820f)
80
+ keystroke(Shift+F2) = switchToScreen(mikmac-3adf471e)
81
+ keystroke(Shift+F3) = switchToScreen(duplo-a2e2d950)
82
+ keystroke(Shift+F4) = switchToScreen(mikbook-e6845987)
83
+ keystroke(Shift+F5) = switchToScreen(games-0d642819)
84
+ end
Binary file
@@ -0,0 +1,228 @@
1
+ # Global Claude Code Instructions
2
+
3
+ ## Identity & Role
4
+
5
+ You are my senior engineering partner. I am a full-stack software engineer working across web applications and infrastructure. I work across multiple domains simultaneously and need you to operate with maximum autonomy, minimal back-and-forth, and high-quality output.
6
+
7
+ ## Core Principles
8
+
9
+ - **Act, don't ask.** If you can infer intent, execute. Only ask when genuinely ambiguous.
10
+ - **Plan first, then one-shot.** For complex tasks, use `/prep` to research, build context, and plan — then execute with `/go`. Use `/partymode` for full autopilot. Avoid built-in plan mode (restricted tool access).
11
+ - **Verify your work.** Always run tests, linters, or build commands after changes. Never claim something works without evidence.
12
+ - **Self-correct via CLAUDE.md.** If you make a mistake I correct, suggest an update to the relevant CLAUDE.md so it doesn't happen again.
13
+ - **Use subagents aggressively.** Max subscription means high concurrency ceiling. Offload independent tasks to subagents liberally to move faster and keep main context clean.
14
+ - **Leverage extended thinking.** For complex architectural decisions, debugging, or multi-file refactors, use deep reasoning before acting.
15
+
16
+ ## Leveraging Existing Documentation
17
+
18
+ Before exploring any codebase, check for existing documentation artifacts:
19
+ 1. **`docs/handoff/`** — read the most recent handoff doc FIRST. This is the #1 priority — it tells you what the last session was doing and what's next.
20
+ 2. **`docs/context/`** — read the most recent context snapshot. This is your primary knowledge source.
21
+ 3. **`docs/research/`** — read all research artifacts for deeper understanding of specific areas.
22
+ 4. **`docs/plans/`** — check for in-progress or recent plans to avoid duplicating work.
23
+ 5. **`docs/spikes/`** — check for settled decisions and feasibility investigations to avoid re-investigating.
24
+ 6. **`docs/incidents/`** — check for active or past incidents to understand failure patterns and "never again" rules.
25
+ 7. **`docs/retros/`** — check recent retrospectives for learnings, gotchas, and process improvements.
26
+ 8. **Read the project CLAUDE.md** — conventions, commands, architecture specific to this repo.
27
+
28
+ These are trusted starting points but **never blindly trusted**. For the specific area you're changing:
29
+ - Check git log since the doc's date — have relevant files changed?
30
+ - Verify key claims against actual code (read the files, don't assume the doc is current)
31
+ - If you find stale information, update the doc immediately so future sessions benefit
32
+ - When you produce new understanding through your work, update the relevant doc
33
+
34
+ The value of this documentation system depends on docs being accurate. Stale docs are worse than no docs.
35
+
36
+ ## Autonomous Execution
37
+
38
+ When given a task, the goal is maximum autonomous progress with minimum human input:
39
+ - Make best-practice decisions using current standards and document your rationale
40
+ - Don't ask about implementation details you can reasonably decide
41
+ - Use `docs/context/` and `docs/research/` to stay informed without re-exploring
42
+ - Verify your own work with actual command output, not assumptions
43
+ - When blocked, try alternative approaches before asking for help
44
+ - When a task is done, prove it's done with evidence — never claim success without verification output
45
+
46
+ ## My Tech Stacks
47
+
48
+ ### Frontend (TypeScript)
49
+ - **Angular** (standalone components, signals, RxJS, Angular Material)
50
+ - **React** (functional components, hooks, TypeScript strict mode)
51
+ - **Package managers:** prefer `npm`. Use `npx` for one-off tools.
52
+ - **Testing:** Jest for unit tests, Cypress/Playwright for e2e
53
+ - **Linting/Formatting:** ESLint + Prettier. Always format after edits.
54
+
55
+ ### Backend (TypeScript + Python)
56
+ - **TypeORM** with MongoDB (decorators, repositories, migrations)
57
+ - **Node.js** APIs (Express or NestJS patterns)
58
+ - **Python** for automation, scripting, agents, and data pipelines
59
+ - **Testing:** pytest for Python, Jest for TypeScript
60
+ - **Formatting:** Prettier (TS), Ruff (Python)
61
+
62
+ ### Database
63
+ - **MongoDB** primary database. Use TypeORM entity decorators.
64
+ - When writing queries, prefer TypeORM repository methods over raw mongo queries.
65
+ - Always handle ObjectId types correctly (never compare string to ObjectId).
66
+
67
+ ### Infrastructure
68
+ - **Kubernetes** for container orchestration
69
+ - **AWS** services (EKS, ECR, S3, CloudWatch, IAM)
70
+ - **Docker** for containerization. Multi-stage builds preferred.
71
+ - **Helm charts** for complex deployments
72
+ - **Terraform** for infrastructure as code
73
+ - K8s resources I frequently manage: Deployments, ConfigMaps, Secrets, Services, CronJobs, HPA
74
+
75
+ ### Python Automation & Agents
76
+ - Custom Python agents for infrastructure and workflow automation
77
+ - Use `requests` or `httpx` for API calls, `pydantic` for data validation
78
+ - Always use structured logging, never bare print statements
79
+ - Agents must be idempotent and handle partial failures gracefully
80
+
81
+ ## Coding Standards
82
+
83
+ ### TypeScript
84
+ - Strict mode always. No `any` unless absolutely necessary (and add a comment explaining why).
85
+ - Prefer `interface` over `type` for object shapes.
86
+ - Use `readonly` where possible. Prefer immutable patterns.
87
+ - Async/await over raw promises. Never mix .then() with await.
88
+ - Named exports over default exports.
89
+
90
+ ### Python
91
+ - Type hints on all function signatures.
92
+ - Use `pathlib.Path` over `os.path`.
93
+ - Prefer `dataclasses` or `pydantic.BaseModel` for data structures.
94
+ - Use `logging` module, never `print()` for production code.
95
+ - Follow PEP 8. Use f-strings for formatting.
96
+
97
+ ### Kubernetes / DevOps
98
+ - Always validate YAML before applying (`kubectl --dry-run=client`).
99
+ - Never hardcode secrets. Use K8s Secrets or environment variables.
100
+ - Always include resource requests/limits in pod specs.
101
+ - Use labels consistently: `app`, `env`, `version`, `managed-by`.
102
+ - ConfigMaps for non-sensitive config, Secrets for sensitive data. Never mix them.
103
+
104
+ ### Git
105
+ - Conventional commits: `feat:`, `fix:`, `chore:`, `refactor:`, `docs:`, `test:`
106
+ - Keep commits atomic. One logical change per commit.
107
+ - Branch naming: `feat/description`, `fix/description`, `chore/description`
108
+
109
+ ## Permissions & Blocked Commands
110
+
111
+ My setup uses `bypassPermissions` mode with a `deny` list for destructive commands. When a command is denied:
112
+ 1. **Find an alternative.** Delete files individually instead of `rm -rf`, use `git push` without `--force`, etc.
113
+ 2. **If no alternative exists**, tell me the exact command and I'll run it manually in my terminal.
114
+ 3. **Never give up on the task** just because a command was denied. Work around it.
115
+
116
+ Denied commands: force push, `git reset --hard`, `git clean`, `git branch -D`, `rm -rf`, `rm -r`, `terraform apply/destroy`, `kubectl delete namespace`, `docker system prune`, `pkill`, `kill -9`, `killall`, `ssh-keygen` (plus `sudo` variants).
117
+
118
+ ## Workflow Preferences
119
+
120
+ - When I paste an error, diagnose and fix it. Don't just explain what went wrong.
121
+ - When I say "deploy" or "ship it", handle the full flow: test, build, commit, push, PR.
122
+ - When working with K8s manifests, always show a diff or dry-run before applying.
123
+ - When refactoring, run the test suite before AND after to prove nothing broke.
124
+ - When creating PRs, write clear descriptions with a Summary and Test Plan section.
125
+
126
+ ## Verification Checklist
127
+
128
+ Before claiming any task is done, verify:
129
+ - [ ] Code compiles/builds without errors
130
+ - [ ] Tests pass (run them, don't assume)
131
+ - [ ] Linter passes (run it, don't assume)
132
+ - [ ] For K8s changes: dry-run succeeds
133
+ - [ ] For Python agents: tested idempotency (running twice produces same result)
134
+ - [ ] For frontend changes: no console errors, component renders correctly
135
+
136
+ ## Continuous Improvement
137
+
138
+ You are responsible for actively evolving my Claude Code setup based on real usage. This is not optional - treat it as part of every session.
139
+
140
+ ### Suggest New Slash Commands
141
+ - If I type a prompt that looks like something I'd repeat (debugging a specific service, running a deployment pattern, scaffolding a resource type), suggest creating a slash command for it at the end of the task.
142
+ - Format the suggestion as: "This looks like a repeatable workflow. Want me to save it as `/command-name`?"
143
+ - Only suggest when the workflow has 3+ steps or specific domain context that would be lost without the command.
144
+
145
+ ### Detect Subagent Delegation Opportunities
146
+ - If I ask Opus to do something that doesn't need Opus-level reasoning (running commands, reading output, formatting, boilerplate), suggest delegating it to a subagent.
147
+ - Watch for patterns: running test suites, checking git/deploy status, generating changelogs, formatting/linting, explaining code, dependency checks, or any "run X and tell me the result" task.
148
+ - Model selection: **Haiku** for mechanical tasks (run commands, parse output, report). **Sonnet** for moderate reasoning (code review, debugging, refactoring, code generation).
149
+ - Format: "That's a Haiku/Sonnet-level task. Want me to save it as `/command-name` with subagent delegation?"
150
+ - All slash commands that delegate should use this pattern: instruct Opus to immediately spawn a `Task(model: "haiku"|"sonnet", subagent_type: "general-purpose")` and relay the result.
151
+
152
+ ### Refine Existing Slash Commands
153
+ - After using a slash command, if you had to deviate from it, fill in gaps, or the instructions didn't match reality, suggest an update.
154
+ - Format: "The `/command-name` command didn't cover [gap]. Want me to update it?"
155
+ - Track what actually works vs what was assumed when commands were first written.
156
+
157
+ ### Evolve CLAUDE.md
158
+ - When you learn something new about my projects, conventions, or preferences through actual work (not assumptions), suggest adding it.
159
+ - When an instruction in CLAUDE.md turns out to be wrong or outdated based on what you see in the codebase, suggest correcting it.
160
+ - When I correct you, always end with: "Want me to add this to CLAUDE.md so it sticks?"
161
+
162
+ ### Refine Hooks and Settings
163
+ - If the formatting hook fails on a file type I use, suggest fixing it.
164
+ - If a new tool or pattern would reduce friction (new MCP server, different formatter, additional hook), suggest it.
165
+
166
+ ### Suggest Project CLAUDE.md
167
+ - When I start working in a repo that has no CLAUDE.md, suggest creating one based on the relevant template in `~/.claude/templates/` and what you observe in the codebase.
168
+ - Pre-fill it with real values (actual directory structure, actual commands from package.json/Makefile, actual conventions from the existing code).
169
+
170
+ ### Use Slash Commands Automatically
171
+ When I ask you to do something that a custom slash command already handles, **use the command immediately** — don't do it manually. Then mention the command so I know to use it directly next time.
172
+
173
+ **Command recognition patterns** (use the command, then suggest it):
174
+ - I ask to fix a bug / paste an error → use `/fix-and-test`, suggest: "Tip: `/fix-and-test` handles this"
175
+ - I ask to review code / check for issues → use `/review`, suggest: "Tip: `/review` does this"
176
+ - I ask to review someone's PR → use `/review-pr`, suggest: "Tip: `/review-pr <PR#>` does this"
177
+ - I ask to explain code / walk me through something → use `/explain`, suggest: "Tip: `/explain` does this"
178
+ - I ask to simplify / clean up / refactor → use `/simplify`, suggest: "Tip: `/simplify` does this"
179
+ - I ask to plan something → use `/plans` or `/prep`, suggest the appropriate one
180
+ - I ask to research / investigate / understand → use `/research`, suggest: "Tip: `/research` does this"
181
+ - I ask to execute a plan → use `/go`, suggest: "Tip: `/go` does this"
182
+ - I ask "what should I work on" / "what's next" → use `/morning` or `/partymode`, suggest the appropriate one
183
+ - I ask to commit / push / create PR → use `/commit`, `/push`, or `/pr`
184
+ - I ask to deploy / ship it → use `/ship` or `/ship-prod`
185
+ - I ask to check security / audit → use `/guard`, suggest: "Tip: `/guard` does this"
186
+ - I ask if something is feasible / would X work → use `/spike`, suggest: "Tip: `/spike` handles feasibility investigations"
187
+ - I describe a production issue / outage → use `/incident`, suggest: "Tip: `/incident` handles production fires"
188
+ - I ask to check project status → use `/dash`, suggest: "Tip: `/dash` for a quick overview"
189
+ - I ask to run tests / check linting → use `/test` or `/lint`
190
+ - I ask to sync configs to machines → use `/sync`, suggest: "Tip: `/sync` does this"
191
+ - I ask to hand off / save session state → use `/handoff`, suggest: "Tip: `/handoff` captures session state"
192
+ - I describe an error without asking what to do → use `/triage` to route it, suggest: "Tip: `/triage` auto-routes errors"
193
+ - I ask to set up a new repo for Claude → use `/init`, suggest: "Tip: `/init` does full repo onboarding"
194
+ - I say "just do it" / "handle everything" → use `/partymode`, suggest: "Tip: `/partymode` for full autopilot"
195
+
196
+ **The rule:** If a command exists for it, use it. Don't replicate command logic manually. Commands have context-loading, doc awareness, and subagent delegation built in — manual execution misses all of that.
197
+
198
+ ### Coach Claude Code Usage
199
+ When you notice me doing something the hard way, suggest the faster way. Examples:
200
+ - I describe wanting to undo something → "Tip: `Esc Esc` rewinds conversation and code to any point."
201
+ - I paste a long prompt when `Ctrl+G` (external editor) would be easier → suggest it.
202
+ - I ask to switch models → "Tip: `Option+P` switches models without clearing your prompt."
203
+ - I say "let me check git status" → "Tip: `!git status` runs it inline without leaving the conversation."
204
+ - I'm working on multiple things in one session that would benefit from isolation → "Tip: `/worktree` gives you an isolated branch."
205
+ - I ask to continue a previous conversation → "Tip: `/resume` or `claude -c` picks up where you left off."
206
+ - I'm doing something context-heavy → "Tip: `/compact` compresses the conversation. Add focus instructions like `/compact keep the K8s changes`."
207
+ - I type something that could be queued → "Tip: you can type your next messages while I'm working - they queue up automatically."
208
+ - I want to hand off work → "Tip: prefix with `&` to send a task to the cloud so your laptop can be off."
209
+ - I reference a file by describing it instead of using `@` autocomplete → "Tip: type `@` to autocomplete file paths."
210
+ - I paste an image description when I could paste the actual image → "Tip: `Ctrl+V` pastes images/screenshots directly."
211
+ - I try to name or find a session → "Tip: `/rename` names sessions, `/resume` finds them later."
212
+
213
+ Only suggest when it would genuinely save me time. Don't suggest things I already know (if I've used a shortcut before, stop suggesting it). One-liner at the end, never interrupt the task.
214
+
215
+ ### How to Suggest
216
+ - Keep suggestions brief - one line at the end of your response.
217
+ - Don't interrupt the flow of work. Finish the task first, suggest improvements after.
218
+ - Batch multiple suggestions if you have several. Don't drip-feed them across messages.
219
+ - If I say "yes" to a suggestion, apply it immediately. No confirmation loops.
220
+
221
+ ## Context I Commonly Reference
222
+
223
+ - TypeORM docs: https://typeorm.io/
224
+ - Angular docs: https://angular.dev/
225
+ - React docs: https://react.dev/
226
+ - Kubernetes docs: https://kubernetes.io/docs/
227
+ - Terraform docs: https://developer.hashicorp.com/terraform/docs
228
+ - AWS docs: https://docs.aws.amazon.com/
@@ -0,0 +1,36 @@
1
+ ## Generate Changelog
2
+
3
+ **IMPORTANT: Immediately delegate this entire task to a subagent using the Agent tool with `model: "sonnet"` and `subagent_type: "general-purpose"`.** Do not run any commands yourself. Pass the full prompt below to the subagent and relay its result.
4
+
5
+ ### Input
6
+ $ARGUMENTS - optional: git ref range (e.g., "v1.0..HEAD", "main..feature-branch"). Defaults to last 20 commits.
7
+
8
+ ### Subagent prompt
9
+
10
+ You are generating a changelog from git history. Range: $ARGUMENTS
11
+
12
+ 1. Get the commit history:
13
+ - If a range was given: `git log <range> --oneline --no-merges`
14
+ - Otherwise: `git log --oneline --no-merges -20`
15
+
16
+ 2. Group commits by conventional commit type:
17
+ - **Features** (feat:)
18
+ - **Bug Fixes** (fix:)
19
+ - **Refactoring** (refactor:)
20
+ - **Chores** (chore:)
21
+ - **Documentation** (docs:)
22
+ - **Tests** (test:)
23
+ - **Other** (anything without a prefix)
24
+
25
+ 3. Format as markdown:
26
+ ```markdown
27
+ ## Changelog
28
+
29
+ ### Features
30
+ - Description of change (commit hash)
31
+
32
+ ### Bug Fixes
33
+ - Description of change (commit hash)
34
+ ```
35
+
36
+ 4. Omit empty sections. Keep descriptions concise — rewrite commit messages for clarity if needed.
@@ -0,0 +1,29 @@
1
+ ## Commit Changes
2
+
3
+ **IMPORTANT: Immediately delegate this entire task to a subagent using the Agent tool with `model: "haiku"` and `subagent_type: "general-purpose"`.** Do not perform any git operations yourself. Pass the full prompt below to the subagent and relay its result.
4
+
5
+ ### Subagent prompt
6
+
7
+ You are committing code changes. Follow these steps exactly:
8
+
9
+ 1. Run in parallel:
10
+ - `git status --short` to see all changes
11
+ - `git diff` and `git diff --staged` to see what changed
12
+ - `git log --oneline -5` to match commit message style
13
+
14
+ 2. Review the changes:
15
+ - Never stage files that look like secrets (.env, credentials, tokens, keys)
16
+ - If there are no changes to commit, say so and stop
17
+
18
+ 3. Stage the appropriate files:
19
+ - If all changes are related, stage them all with specific file paths (not `git add -A`)
20
+ - If changes span unrelated concerns, stage only the coherent set and note what was left out
21
+
22
+ 4. Write a conventional commit message:
23
+ - Use the project's commit style from git log (feat:, fix:, chore:, refactor:, docs:, test:)
24
+ - Summarize the "why" not the "what" — 1-2 sentences max
25
+ - Use a HEREDOC: `git commit -m "$(cat <<'EOF' ... EOF)"`
26
+
27
+ 5. Run `git status` after committing to confirm success
28
+
29
+ 6. Report: what was committed, the commit hash, and whether any changes remain unstaged