From dev-setup
View and update dev-setup plugin settings in .claude/dev-setup.json: worktrees_dir, env_file, wt_port_pattern. Use interactive menu or direct key-value args.
npx claudepluginhub diegomarino/claude-toolshed --plugin dev-setupThis skill uses the workspace's default tool permissions.
View and update dev-setup plugin settings stored in `.claude/dev-setup.json`.
Generates bash scripts for dev server lifecycle (start/stop/status/ports) from detected project structure and package manager (pnpm/bun/yarn/npm/Cargo/Go).
Initializes or updates multi-repo workspaces from dev-config-template by collecting project info, filling CLAUDE.md placeholders, cloning sub-repos, configuring dev environments, and syncing template files.
Creates git worktree with symlinked/copied assets, independent per-project environments (venv/npm), and direnv .envrc. Uses .worktree.yml or infers config.
Share bugs, ideas, or general feedback.
View and update dev-setup plugin settings stored in .claude/dev-setup.json.
.claude/dev-setup.json in the project root.
If file is absent: use these defaults (do not error):
{
"worktrees_dir": ".worktrees",
"env_file": ".env",
"wt_port_pattern": "_WT_PORT"
}
| Key | Type | Default | Description |
|---|---|---|---|
worktrees_dir | string | .worktrees | Base directory for new worktrees. Relative to project root or absolute. ~ expansion supported. |
env_file | string | .env | Env file used as fallback when reading port defaults (after .wt-ports.env). For projects with .env.local, .env.development, etc. |
wt_port_pattern | string | _WT_PORT | Suffix that identifies worktree-isolated port variables in .env.example. Any var ending in this suffix will be allocated per worktree. |
Read .claude/dev-setup.json. If absent, use defaults from above.
If an argument was provided (e.g. /dev-setup-config wt_port_pattern _SVCPORT), parse it as <key> <value>:
<key> is not one of worktrees_dir, env_file, wt_port_pattern: print error "Unknown key: . Valid keys: worktrees_dir, env_file, wt_port_pattern" and stop. Do not write to the file..claude/dev-setup.json — do NOT overwrite other keysConfig saved: <key> = <value>Show current values and ask which to change:
Current config (.claude/dev-setup.json):
1. worktrees_dir -> .worktrees
2. env_file -> .env
3. wt_port_pattern -> _WT_PORT
What would you like to change? (1-3, or q to quit)
On invalid input: re-show the prompt.
On selection:
Saved: <key> = <new-value>Do NOT ask for y/N confirmation before saving. Validate → merge → confirm.
worktrees_dir: non-empty string. Warn if path contains spaces.env_file: non-empty string. Warn if the file does not currently exist in the project.wt_port_pattern: non-empty string matching [A-Z0-9_]+ (case-insensitive). No prefix requirement — SVCPORT, _SVCPORT, and MYPORT are all valid. Warn if no vars in .env.example end with the new pattern..claude/ directory if it does not exist: mkdir -p .claudeAlways merge — never overwrite the entire file.
.claude/ dir — directory may not exist yetwt_port_pattern accepts any non-empty string matching [A-Z0-9_]+ (case-insensitive). Do NOT require the value to start with _ or any other specific character. SVCPORT, _SVCPORT, and MYPORT are all valid.