coder-config 0.40.1
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.
- package/LICENSE +21 -0
- package/README.md +553 -0
- package/cli.js +431 -0
- package/config-loader.js +294 -0
- package/hooks/activity-track.sh +56 -0
- package/hooks/codex-workstream.sh +44 -0
- package/hooks/gemini-workstream.sh +44 -0
- package/hooks/workstream-inject.sh +20 -0
- package/lib/activity.js +283 -0
- package/lib/apply.js +344 -0
- package/lib/cli.js +267 -0
- package/lib/config.js +171 -0
- package/lib/constants.js +55 -0
- package/lib/env.js +114 -0
- package/lib/index.js +47 -0
- package/lib/init.js +122 -0
- package/lib/mcps.js +139 -0
- package/lib/memory.js +201 -0
- package/lib/projects.js +138 -0
- package/lib/registry.js +83 -0
- package/lib/utils.js +129 -0
- package/lib/workstreams.js +652 -0
- package/package.json +80 -0
- package/scripts/capture-screenshots.js +142 -0
- package/scripts/postinstall.js +122 -0
- package/scripts/release.sh +71 -0
- package/scripts/sync-version.js +77 -0
- package/scripts/tauri-prepare.js +328 -0
- package/shared/mcp-registry.json +76 -0
- package/ui/dist/assets/index-DbZ3_HBD.js +3204 -0
- package/ui/dist/assets/index-DjLdm3Mr.css +32 -0
- package/ui/dist/icons/icon-192.svg +16 -0
- package/ui/dist/icons/icon-512.svg +16 -0
- package/ui/dist/index.html +39 -0
- package/ui/dist/manifest.json +25 -0
- package/ui/dist/sw.js +24 -0
- package/ui/dist/tutorial/claude-settings.png +0 -0
- package/ui/dist/tutorial/header.png +0 -0
- package/ui/dist/tutorial/mcp-registry.png +0 -0
- package/ui/dist/tutorial/memory-view.png +0 -0
- package/ui/dist/tutorial/permissions.png +0 -0
- package/ui/dist/tutorial/plugins-view.png +0 -0
- package/ui/dist/tutorial/project-explorer.png +0 -0
- package/ui/dist/tutorial/projects-view.png +0 -0
- package/ui/dist/tutorial/sidebar.png +0 -0
- package/ui/dist/tutorial/tutorial-view.png +0 -0
- package/ui/dist/tutorial/workstreams-view.png +0 -0
- package/ui/routes/activity.js +58 -0
- package/ui/routes/commands.js +74 -0
- package/ui/routes/configs.js +329 -0
- package/ui/routes/env.js +40 -0
- package/ui/routes/file-explorer.js +668 -0
- package/ui/routes/index.js +41 -0
- package/ui/routes/mcp-discovery.js +235 -0
- package/ui/routes/memory.js +385 -0
- package/ui/routes/package.json +3 -0
- package/ui/routes/plugins.js +466 -0
- package/ui/routes/projects.js +198 -0
- package/ui/routes/registry.js +30 -0
- package/ui/routes/rules.js +74 -0
- package/ui/routes/search.js +125 -0
- package/ui/routes/settings.js +381 -0
- package/ui/routes/subprojects.js +208 -0
- package/ui/routes/tool-sync.js +127 -0
- package/ui/routes/updates.js +339 -0
- package/ui/routes/workstreams.js +224 -0
- package/ui/server.cjs +773 -0
- package/ui/terminal-server.cjs +160 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 regression.io
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,553 @@
|
|
|
1
|
+
# Coder Config
|
|
2
|
+
|
|
3
|
+
Configuration manager for AI coding tools — **Claude Code**, **Gemini CLI**, **Codex CLI**, and **Antigravity**. Manage MCPs, rules, permissions, memory, and workstreams through a visual UI or CLI.
|
|
4
|
+
|
|
5
|
+
> **Migration note:** This package was renamed from `@regression-io/claude-config` to `coder-config`. The `claude-config` command still works as an alias.
|
|
6
|
+
|
|
7
|
+
## Why?
|
|
8
|
+
|
|
9
|
+
One tool to configure all your AI coding assistants:
|
|
10
|
+
|
|
11
|
+
| | |
|
|
12
|
+
|---|---|
|
|
13
|
+
| **MCP Servers** | Configure without editing JSON/TOML files |
|
|
14
|
+
| **Permissions** | Visual editor for allow/deny rules |
|
|
15
|
+
| **Multi-Tool** | Claude Code, Gemini CLI, Codex CLI, Antigravity |
|
|
16
|
+
| **Rules & Commands** | Manage project-specific guidelines |
|
|
17
|
+
| **Memory** | Persistent context across sessions |
|
|
18
|
+
| **Workstreams** | Group projects with shared context |
|
|
19
|
+
|
|
20
|
+
## Installation
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
npm install -g coder-config
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Requires Node.js 18+.
|
|
27
|
+
|
|
28
|
+
> **Migrating from @regression-io/claude-config?**
|
|
29
|
+
> ```bash
|
|
30
|
+
> npm uninstall -g @regression-io/claude-config
|
|
31
|
+
> npm install -g coder-config
|
|
32
|
+
> ```
|
|
33
|
+
> Your settings in `~/.claude-config/` are preserved automatically.
|
|
34
|
+
|
|
35
|
+
## Quick Start
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
# 1. Install
|
|
39
|
+
npm install -g coder-config
|
|
40
|
+
|
|
41
|
+
# 2. Set up auto-start (recommended)
|
|
42
|
+
coder-config ui install
|
|
43
|
+
|
|
44
|
+
# 3. Open the UI
|
|
45
|
+
open http://localhost:3333
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
The server starts automatically on login. Install as a PWA from your browser for app-like access.
|
|
49
|
+
|
|
50
|
+
### Updating
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
coder-config update
|
|
54
|
+
# Then restart: coder-config ui stop && coder-config ui
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
### CLI Alternative
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
# Initialize a project
|
|
61
|
+
coder-config init
|
|
62
|
+
|
|
63
|
+
# Add MCPs to your project
|
|
64
|
+
coder-config add postgres github
|
|
65
|
+
|
|
66
|
+
# Generate .mcp.json for Claude Code
|
|
67
|
+
coder-config apply
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## CLI Commands
|
|
71
|
+
|
|
72
|
+
Both `coder-config` and `claude-config` work identically.
|
|
73
|
+
|
|
74
|
+
### Project Commands
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
coder-config init # Initialize project
|
|
78
|
+
coder-config apply # Generate .mcp.json from config
|
|
79
|
+
coder-config show # Show current project config
|
|
80
|
+
coder-config list # List available MCPs (✓ = active)
|
|
81
|
+
coder-config add <mcp> [mcp...] # Add MCP(s) to project
|
|
82
|
+
coder-config remove <mcp> [mcp...] # Remove MCP(s) from project
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
### Memory Commands
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
coder-config memory # Show memory status
|
|
89
|
+
coder-config memory init # Initialize project memory
|
|
90
|
+
coder-config memory add <type> "<content>" # Add entry
|
|
91
|
+
coder-config memory search <query> # Search all memory
|
|
92
|
+
|
|
93
|
+
# Types: preference, correction, fact (global)
|
|
94
|
+
# context, pattern, decision, issue, history (project)
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
### Environment Commands
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
coder-config env # List environment variables
|
|
101
|
+
coder-config env set <KEY> <value> # Set variable in .claude/.env
|
|
102
|
+
coder-config env unset <KEY> # Remove variable
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### Project Commands
|
|
106
|
+
|
|
107
|
+
```bash
|
|
108
|
+
coder-config project # List registered projects
|
|
109
|
+
coder-config project add [path] # Add project (defaults to cwd)
|
|
110
|
+
coder-config project add [path] --name X # Add with custom display name
|
|
111
|
+
coder-config project remove <name|path> # Remove from registry
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### Workstream Commands
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
coder-config workstream # List all workstreams
|
|
118
|
+
coder-config workstream create "Name" # Create new workstream
|
|
119
|
+
coder-config workstream delete <name> # Delete workstream
|
|
120
|
+
coder-config workstream use <name> # Activate workstream (this terminal)
|
|
121
|
+
coder-config workstream active # Show current active workstream
|
|
122
|
+
coder-config workstream deactivate # Deactivate workstream (this terminal)
|
|
123
|
+
coder-config workstream add <ws> <path> # Add project to workstream
|
|
124
|
+
coder-config workstream remove <ws> <path> # Remove project from workstream
|
|
125
|
+
coder-config workstream inject [--silent] # Output restriction + context (for hooks)
|
|
126
|
+
coder-config workstream detect [path] # Detect workstream for directory
|
|
127
|
+
coder-config workstream check-path <path> # Check if path is within workstream (exit 0/1)
|
|
128
|
+
coder-config workstream install-hook # Install hook for Claude Code
|
|
129
|
+
coder-config workstream install-hook --gemini # Install hook for Gemini CLI
|
|
130
|
+
coder-config workstream install-hook --codex # Install hook for Codex CLI
|
|
131
|
+
coder-config workstream install-hook --all # Install hooks for all supported tools
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
**Per-terminal isolation**: With [shell integration](#shell-integration), each terminal can have its own active workstream:
|
|
135
|
+
```bash
|
|
136
|
+
# Terminal 1
|
|
137
|
+
coder-config workstream use project-a
|
|
138
|
+
|
|
139
|
+
# Terminal 2
|
|
140
|
+
coder-config workstream use project-b
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
When active, the AI receives a restriction telling it to only work within the workstream's directories.
|
|
144
|
+
|
|
145
|
+
**Multi-tool support**: Workstreams work with Claude Code, Gemini CLI, and Codex CLI. Install hooks for your preferred tool(s):
|
|
146
|
+
```bash
|
|
147
|
+
# For Claude Code only
|
|
148
|
+
coder-config workstream install-hook
|
|
149
|
+
|
|
150
|
+
# For Gemini CLI only
|
|
151
|
+
coder-config workstream install-hook --gemini
|
|
152
|
+
|
|
153
|
+
# For Codex CLI only
|
|
154
|
+
coder-config workstream install-hook --codex
|
|
155
|
+
|
|
156
|
+
# For all supported tools
|
|
157
|
+
coder-config workstream install-hook --all
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
### Registry Commands
|
|
161
|
+
|
|
162
|
+
```bash
|
|
163
|
+
coder-config registry # List MCPs in global registry
|
|
164
|
+
coder-config registry add <name> '<json>' # Add MCP to global registry
|
|
165
|
+
coder-config registry remove <name> # Remove MCP from registry
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
### Updates
|
|
169
|
+
|
|
170
|
+
```bash
|
|
171
|
+
coder-config update # Check npm and install updates if available
|
|
172
|
+
coder-config update --check # Check for updates without installing
|
|
173
|
+
coder-config update /path/src # Update from local development source
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
The UI also checks for updates automatically and shows a notification when a new version is available.
|
|
177
|
+
|
|
178
|
+
### Web UI
|
|
179
|
+
|
|
180
|
+
```bash
|
|
181
|
+
coder-config ui # Start UI on port 3333
|
|
182
|
+
coder-config ui --port 8080 # Custom port
|
|
183
|
+
coder-config ui /path/to/project # Specific project directory
|
|
184
|
+
coder-config ui --foreground # Run in foreground (blocking)
|
|
185
|
+
coder-config ui status # Check if daemon is running
|
|
186
|
+
coder-config ui stop # Stop the daemon
|
|
187
|
+
|
|
188
|
+
# Auto-start on login (macOS)
|
|
189
|
+
coder-config ui install # Install LaunchAgent for auto-start
|
|
190
|
+
coder-config ui uninstall # Remove auto-start
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
**Daemon Mode**: By default, `coder-config ui` runs as a background daemon.
|
|
194
|
+
The UI runs from your home directory and persists across terminal sessions.
|
|
195
|
+
Switch between registered projects using the dropdown in the header.
|
|
196
|
+
|
|
197
|
+
**PWA / Auto-Start**: Install the UI as a PWA in your browser, then run `coder-config ui install`
|
|
198
|
+
to have the server start automatically on login. Your PWA will always connect instantly.
|
|
199
|
+
|
|
200
|
+
## Shell Integration
|
|
201
|
+
|
|
202
|
+
For full functionality, add to `~/.zshrc`:
|
|
203
|
+
|
|
204
|
+
```bash
|
|
205
|
+
source /path/to/coder-config/shell/claude-config.zsh
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
This enables:
|
|
209
|
+
- **Per-terminal workstreams** - `workstream use` activates for current terminal only
|
|
210
|
+
- Auto-generates `.mcp.json` when entering a project with `.claude/mcps.json`
|
|
211
|
+
- Tab completion for all commands
|
|
212
|
+
|
|
213
|
+
## Configuration Hierarchy
|
|
214
|
+
|
|
215
|
+
Settings merge from global to project to sub-project:
|
|
216
|
+
|
|
217
|
+
```
|
|
218
|
+
~/.claude/mcps.json # Global - applies everywhere
|
|
219
|
+
~/projects/.claude/mcps.json # Workspace - applies to projects here
|
|
220
|
+
~/projects/my-app/.claude/ # Project - specific to this project
|
|
221
|
+
~/projects/my-app/server/.claude/ # Sub-project - inherits from parent
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
Sub-projects are automatically detected (folders with `.git`), or you can manually link any folder using "Add Sub-project" in the Web UI.
|
|
225
|
+
|
|
226
|
+
## Project Structure
|
|
227
|
+
|
|
228
|
+
After `coder-config init`:
|
|
229
|
+
|
|
230
|
+
```
|
|
231
|
+
your-project/
|
|
232
|
+
├── .claude/
|
|
233
|
+
│ ├── mcps.json # MCP configuration
|
|
234
|
+
│ ├── settings.json # Claude Code settings
|
|
235
|
+
│ ├── rules/ # Project rules (*.md)
|
|
236
|
+
│ └── commands/ # Custom commands (*.md)
|
|
237
|
+
└── .mcp.json # Generated - Claude Code reads this
|
|
238
|
+
```
|
|
239
|
+
|
|
240
|
+
## MCP Configuration
|
|
241
|
+
|
|
242
|
+
`.claude/mcps.json`:
|
|
243
|
+
|
|
244
|
+
```json
|
|
245
|
+
{
|
|
246
|
+
"mcpServers": {
|
|
247
|
+
"filesystem": {
|
|
248
|
+
"command": "npx",
|
|
249
|
+
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path"]
|
|
250
|
+
},
|
|
251
|
+
"github": {
|
|
252
|
+
"command": "npx",
|
|
253
|
+
"args": ["-y", "@modelcontextprotocol/server-github"],
|
|
254
|
+
"env": {
|
|
255
|
+
"GITHUB_TOKEN": "${GITHUB_TOKEN}"
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
Environment variables use `${VAR}` syntax and load from `.claude/.env`.
|
|
263
|
+
|
|
264
|
+
## Memory System
|
|
265
|
+
|
|
266
|
+
Persistent memory for Claude Code sessions.
|
|
267
|
+
|
|
268
|
+
**Global** (`~/.claude/memory/`)
|
|
269
|
+
|
|
270
|
+
| File | Purpose |
|
|
271
|
+
|------|---------|
|
|
272
|
+
| `preferences.md` | User preferences and style |
|
|
273
|
+
| `corrections.md` | Mistakes to avoid |
|
|
274
|
+
| `facts.md` | Environment facts |
|
|
275
|
+
|
|
276
|
+
**Project** (`<project>/.claude/memory/`)
|
|
277
|
+
|
|
278
|
+
| File | Purpose |
|
|
279
|
+
|------|---------|
|
|
280
|
+
| `context.md` | Project overview |
|
|
281
|
+
| `patterns.md` | Code patterns |
|
|
282
|
+
| `decisions.md` | Architecture decisions |
|
|
283
|
+
| `issues.md` | Known issues |
|
|
284
|
+
| `history.md` | Session history |
|
|
285
|
+
|
|
286
|
+
Manage via Web UI or edit files directly.
|
|
287
|
+
|
|
288
|
+
## Workstreams
|
|
289
|
+
|
|
290
|
+
Workstreams are **context sets** for multi-project workflows. They group related projects and inject context rules into every Claude session.
|
|
291
|
+
|
|
292
|
+
### Why Workstreams?
|
|
293
|
+
|
|
294
|
+
When working on complex features that span multiple repos (e.g., REST API + UI + shared library), you need Claude to understand the broader context. Workstreams solve this by:
|
|
295
|
+
|
|
296
|
+
1. Grouping related projects together
|
|
297
|
+
2. Defining rules specific to that workflow
|
|
298
|
+
3. Automatically injecting those rules into every Claude session
|
|
299
|
+
|
|
300
|
+
### Example
|
|
301
|
+
|
|
302
|
+
```bash
|
|
303
|
+
# Create a workstream for user authentication feature
|
|
304
|
+
coder-config workstream create "User Auth"
|
|
305
|
+
|
|
306
|
+
# Add related projects
|
|
307
|
+
coder-config workstream add "User Auth" ~/projects/api
|
|
308
|
+
coder-config workstream add "User Auth" ~/projects/ui
|
|
309
|
+
coder-config workstream add "User Auth" ~/projects/shared
|
|
310
|
+
|
|
311
|
+
# Activate it
|
|
312
|
+
coder-config workstream use "User Auth"
|
|
313
|
+
```
|
|
314
|
+
|
|
315
|
+
Then in the Web UI, edit the workstream to add rules like:
|
|
316
|
+
> Focus on user authentication flow. Use JWT tokens. React Query for state management. PostgreSQL for persistence.
|
|
317
|
+
|
|
318
|
+
### Hook Integration
|
|
319
|
+
|
|
320
|
+
For rules to be injected automatically, install the pre-prompt hook:
|
|
321
|
+
|
|
322
|
+
**Option 1: One-click install (recommended)**
|
|
323
|
+
- Open Web UI → Workstreams → Click "Install Hook Automatically"
|
|
324
|
+
|
|
325
|
+
**Option 2: Manual**
|
|
326
|
+
```bash
|
|
327
|
+
# Add to ~/.claude/hooks/pre-prompt.sh
|
|
328
|
+
coder-config workstream inject --silent
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
Once installed, your active workstream's rules are prepended to every Claude session.
|
|
332
|
+
|
|
333
|
+
### Activity Tracking & Suggestions
|
|
334
|
+
|
|
335
|
+
Coder-config can track which files you work on and suggest workstreams based on patterns:
|
|
336
|
+
|
|
337
|
+
**How it works:**
|
|
338
|
+
1. A post-response hook logs file paths accessed during Claude sessions
|
|
339
|
+
2. Co-activity patterns are detected (projects frequently worked on together)
|
|
340
|
+
3. Workstream suggestions appear in the UI based on these patterns
|
|
341
|
+
|
|
342
|
+
**Setup (optional):**
|
|
343
|
+
```bash
|
|
344
|
+
# Install the activity tracking hook
|
|
345
|
+
# Add to ~/.claude/hooks/post-response.sh:
|
|
346
|
+
source /path/to/coder-config/hooks/activity-track.sh
|
|
347
|
+
```
|
|
348
|
+
|
|
349
|
+
**In the Web UI:**
|
|
350
|
+
- Activity Insights panel shows sessions, files tracked, and active projects
|
|
351
|
+
- Suggested Workstreams appear when patterns are detected
|
|
352
|
+
- Click "Create" to open pre-filled dialog (tweak projects as needed)
|
|
353
|
+
- Click "X" to dismiss suggestions you don't want
|
|
354
|
+
|
|
355
|
+
## Web UI Features
|
|
356
|
+
|
|
357
|
+
| Feature | Description |
|
|
358
|
+
|---------|-------------|
|
|
359
|
+
| **Project Explorer** | Browse and edit `.claude/` folders across your project hierarchy |
|
|
360
|
+
| **Claude Code Settings** | Visual editor for permissions, model, hooks, and behavior |
|
|
361
|
+
| **Gemini CLI Settings** | Configure model, display options, and sandbox mode |
|
|
362
|
+
| **Codex CLI Settings** | Configure model, security, MCP servers, and features |
|
|
363
|
+
| **Antigravity Settings** | Configure security policies, browser allowlist, and agent mode |
|
|
364
|
+
| **MCP Registry** | Search GitHub/npm, add and configure MCP servers |
|
|
365
|
+
| **Plugins** | Browse marketplaces, install plugins with scope control |
|
|
366
|
+
| **Memory** | Manage preferences, corrections, patterns, and decisions |
|
|
367
|
+
| **Workstreams** | Group related projects with shared context rules |
|
|
368
|
+
|
|
369
|
+
Additional features: project/workstream switchers in header, sub-project detection, dark mode, auto-updates.
|
|
370
|
+
|
|
371
|
+
## Plugins
|
|
372
|
+
|
|
373
|
+
Claude Code plugins extend functionality with LSP servers, MCP servers, commands, and always-on guidance. **Plugins replace templates** - instead of static files that can become stale, plugins are always active and update automatically.
|
|
374
|
+
|
|
375
|
+
### Why Plugins Over Templates?
|
|
376
|
+
|
|
377
|
+
| Aspect | Plugins |
|
|
378
|
+
|--------|---------|
|
|
379
|
+
| Delivery | Enable plugin once |
|
|
380
|
+
| Updates | Auto-refresh from marketplace |
|
|
381
|
+
| Freshness | Always current |
|
|
382
|
+
| Scope | Global, project, or local |
|
|
383
|
+
| Discovery | Browse marketplaces |
|
|
384
|
+
|
|
385
|
+
### Installing Plugins
|
|
386
|
+
|
|
387
|
+
**From CLI:**
|
|
388
|
+
```bash
|
|
389
|
+
# Add the coder-config plugins marketplace
|
|
390
|
+
claude plugin marketplace add regression-io/claude-config-plugins
|
|
391
|
+
|
|
392
|
+
# Install framework-specific plugins
|
|
393
|
+
claude plugin install fastapi-support@claude-config-plugins
|
|
394
|
+
claude plugin install react-typescript@claude-config-plugins
|
|
395
|
+
claude plugin install python-support@claude-config-plugins
|
|
396
|
+
```
|
|
397
|
+
|
|
398
|
+
**From Web UI:**
|
|
399
|
+
1. Open Project Explorer
|
|
400
|
+
2. Click the **+** menu on any project folder
|
|
401
|
+
3. Select **Install Plugins**
|
|
402
|
+
4. Toggle plugins on/off with scope selection (Project/Global/Local)
|
|
403
|
+
|
|
404
|
+
### Plugin Directory
|
|
405
|
+
|
|
406
|
+
The **Plugins** page shows all available plugins:
|
|
407
|
+
- Filter by marketplace, category, source type (Anthropic/Community), installed status
|
|
408
|
+
- Search by name or description
|
|
409
|
+
- View plugin details (LSP/MCP/Commands included)
|
|
410
|
+
|
|
411
|
+
### Marketplaces
|
|
412
|
+
|
|
413
|
+
Plugins come from marketplaces (Git repositories):
|
|
414
|
+
- **claude-plugins-official** - Anthropic's official plugins
|
|
415
|
+
- **regression-io/claude-config-plugins** - Framework and language plugins
|
|
416
|
+
- Add community marketplaces via "Manage Marketplaces" in the filter dropdown
|
|
417
|
+
|
|
418
|
+
Supported marketplace formats:
|
|
419
|
+
- `owner/repo` — GitHub shorthand
|
|
420
|
+
- `https://github.com/owner/repo` — Full URL
|
|
421
|
+
- `/local/path` — Local directory
|
|
422
|
+
|
|
423
|
+
## Claude Code Settings
|
|
424
|
+
|
|
425
|
+
The Web UI provides a visual editor for `~/.claude/settings.json`:
|
|
426
|
+
|
|
427
|
+
### Permissions
|
|
428
|
+
Configure what Claude Code can do automatically:
|
|
429
|
+
- **Allow** - Tools that run without asking
|
|
430
|
+
- **Ask** - Tools that require confirmation
|
|
431
|
+
- **Deny** - Tools that are blocked
|
|
432
|
+
|
|
433
|
+
Pattern examples:
|
|
434
|
+
```
|
|
435
|
+
Bash(npm run build) # Specific command
|
|
436
|
+
Bash(npm:*) # Prefix match (npm anything)
|
|
437
|
+
Read(**) # All file reads
|
|
438
|
+
Edit(src/**) # Edit files in src/
|
|
439
|
+
mcp__github__* # All GitHub MCP tools
|
|
440
|
+
```
|
|
441
|
+
|
|
442
|
+
### Model Selection
|
|
443
|
+
Choose your preferred Claude model (Sonnet 4, Opus 4.5, etc.)
|
|
444
|
+
|
|
445
|
+
### Behavior
|
|
446
|
+
- Auto-accept edits
|
|
447
|
+
- Verbose mode
|
|
448
|
+
- Enable/disable MCP servers
|
|
449
|
+
|
|
450
|
+
## Gemini CLI Settings
|
|
451
|
+
|
|
452
|
+
The Web UI provides a visual editor for `~/.gemini/settings.json`:
|
|
453
|
+
|
|
454
|
+
### Model Selection
|
|
455
|
+
Choose Gemini model (2.5 Pro, 2.5 Flash, etc.) and enable preview features.
|
|
456
|
+
|
|
457
|
+
### Display Options
|
|
458
|
+
Configure theme, token count display, diff view, and streaming.
|
|
459
|
+
|
|
460
|
+
### General Settings
|
|
461
|
+
- Vim keybindings
|
|
462
|
+
- Auto-save
|
|
463
|
+
- Check for updates
|
|
464
|
+
|
|
465
|
+
### Sandbox Mode
|
|
466
|
+
Control command execution safety (enabled/disabled).
|
|
467
|
+
|
|
468
|
+
## Codex CLI Settings
|
|
469
|
+
|
|
470
|
+
The Web UI provides a visual editor for `~/.codex/config.toml`:
|
|
471
|
+
|
|
472
|
+
### Model Settings
|
|
473
|
+
- **Model** - Select GPT-5.2 Codex, GPT-5, o3-mini, etc.
|
|
474
|
+
- **Reasoning Effort** - Control thoroughness (minimal to xhigh)
|
|
475
|
+
|
|
476
|
+
### Security
|
|
477
|
+
- **Approval Policy** - When to ask for command approval (on-request, untrusted, on-failure, never)
|
|
478
|
+
- **Sandbox Mode** - Filesystem access level (read-only, workspace-write, full-access)
|
|
479
|
+
|
|
480
|
+
### MCP Servers
|
|
481
|
+
Configure MCP servers for Codex CLI with the same format as other tools.
|
|
482
|
+
|
|
483
|
+
### Features
|
|
484
|
+
Toggle feature flags like shell snapshots and web search.
|
|
485
|
+
|
|
486
|
+
### Display & History
|
|
487
|
+
Configure TUI animations, notifications, and session history persistence.
|
|
488
|
+
|
|
489
|
+
For full configuration options, see [Codex CLI docs](https://developers.openai.com/codex/config-reference/).
|
|
490
|
+
|
|
491
|
+
## Antigravity Settings
|
|
492
|
+
|
|
493
|
+
The Web UI provides a visual editor for `~/.gemini/antigravity/settings.json`:
|
|
494
|
+
|
|
495
|
+
### Security Policies
|
|
496
|
+
| Policy | Options |
|
|
497
|
+
|--------|---------|
|
|
498
|
+
| **Terminal Execution** | Off, Auto, Turbo |
|
|
499
|
+
| **Code Review** | Enabled, Disabled |
|
|
500
|
+
| **JS Execution** | Sandboxed, Direct |
|
|
501
|
+
|
|
502
|
+
### MCP Servers
|
|
503
|
+
Configure MCP servers for Antigravity. Note: Antigravity does NOT support `${VAR}` interpolation - variables are resolved to actual values.
|
|
504
|
+
|
|
505
|
+
### Browser Allowlist
|
|
506
|
+
Control which URLs Antigravity can access during sessions.
|
|
507
|
+
|
|
508
|
+
### Agent Mode
|
|
509
|
+
Configure autonomous multi-step operations, iteration limits, and confirmation requirements.
|
|
510
|
+
|
|
511
|
+
## Preferences
|
|
512
|
+
|
|
513
|
+
User settings stored in `~/.claude-config/config.json`:
|
|
514
|
+
|
|
515
|
+
```json
|
|
516
|
+
{
|
|
517
|
+
"toolsDir": "~/mcp-tools",
|
|
518
|
+
"registryPath": "~/.claude/registry.json",
|
|
519
|
+
"ui": {
|
|
520
|
+
"port": 3333,
|
|
521
|
+
"openBrowser": true
|
|
522
|
+
}
|
|
523
|
+
}
|
|
524
|
+
```
|
|
525
|
+
|
|
526
|
+
| Key | Description |
|
|
527
|
+
|-----|-------------|
|
|
528
|
+
| `toolsDir` | Directory for local MCP tools |
|
|
529
|
+
| `registryPath` | Path to custom MCP registry |
|
|
530
|
+
| `ui.port` | Default port for web UI |
|
|
531
|
+
| `ui.openBrowser` | Auto-open browser on `coder-config ui` |
|
|
532
|
+
|
|
533
|
+
## Requirements
|
|
534
|
+
|
|
535
|
+
- Node.js 18+
|
|
536
|
+
- Build tools (for newer Node.js versions without prebuilt binaries):
|
|
537
|
+
- **macOS**: Xcode Command Line Tools (`xcode-select --install`)
|
|
538
|
+
- **Linux**: `build-essential` package
|
|
539
|
+
- **Windows**: Visual Studio Build Tools
|
|
540
|
+
|
|
541
|
+
## Development
|
|
542
|
+
|
|
543
|
+
```bash
|
|
544
|
+
git clone https://github.com/regression-io/claude-config.git
|
|
545
|
+
cd claude-config
|
|
546
|
+
npm install
|
|
547
|
+
npm run build
|
|
548
|
+
npm start
|
|
549
|
+
```
|
|
550
|
+
|
|
551
|
+
## License
|
|
552
|
+
|
|
553
|
+
MIT
|