sinapse-ai 7.1.0 → 7.2.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.
- package/.sinapse-ai/data/entity-registry.yaml +749 -757
- package/.sinapse-ai/install-manifest.yaml +4 -4
- package/bin/cli.js +116 -75
- package/package.json +2 -1
- package/squads/claude-code-mastery/CHANGELOG.md +22 -0
- package/squads/claude-code-mastery/README.md +146 -0
- package/squads/claude-code-mastery/agents/claude-mastery-chief.md +554 -0
- package/squads/claude-code-mastery/agents/config-engineer.md +865 -0
- package/squads/claude-code-mastery/agents/hooks-architect.md +1013 -0
- package/squads/claude-code-mastery/agents/mcp-integrator.md +791 -0
- package/squads/claude-code-mastery/agents/project-integrator.md +1196 -0
- package/squads/claude-code-mastery/agents/roadmap-sentinel.md +931 -0
- package/squads/claude-code-mastery/agents/skill-craftsman.md +1250 -0
- package/squads/claude-code-mastery/agents/swarm-orqx.md +1008 -0
- package/squads/claude-code-mastery/checklists/agent-team-readiness-checklist.md +88 -0
- package/squads/claude-code-mastery/checklists/brownfield-readiness-checklist.md +91 -0
- package/squads/claude-code-mastery/checklists/change-checklist.md +75 -0
- package/squads/claude-code-mastery/checklists/context-rot-checklist.md +114 -0
- package/squads/claude-code-mastery/checklists/integration-audit-checklist.md +104 -0
- package/squads/claude-code-mastery/checklists/multi-agent-review-checklist.md +77 -0
- package/squads/claude-code-mastery/checklists/pre-push-checklist.md +79 -0
- package/squads/claude-code-mastery/data/ci-cd-patterns.yaml +412 -0
- package/squads/claude-code-mastery/data/claude-code-quick-ref.yaml +314 -0
- package/squads/claude-code-mastery/data/hook-patterns.yaml +512 -0
- package/squads/claude-code-mastery/data/mcp-integration-catalog.yaml +323 -0
- package/squads/claude-code-mastery/data/project-type-signatures.yaml +335 -0
- package/squads/claude-code-mastery/scripts/validate-setup.js +163 -0
- package/squads/claude-code-mastery/squad.yaml +205 -0
- package/squads/claude-code-mastery/tasks/audit-integration.md +219 -0
- package/squads/claude-code-mastery/tasks/audit-settings.md +206 -0
- package/squads/claude-code-mastery/tasks/audit-setup.md +225 -0
- package/squads/claude-code-mastery/tasks/brownfield-setup.md +322 -0
- package/squads/claude-code-mastery/tasks/ci-cd-setup.md +335 -0
- package/squads/claude-code-mastery/tasks/claude-md-engineer.md +334 -0
- package/squads/claude-code-mastery/tasks/configure-claude-code.md +215 -0
- package/squads/claude-code-mastery/tasks/context-rot-audit.md +329 -0
- package/squads/claude-code-mastery/tasks/create-agent-definition.md +278 -0
- package/squads/claude-code-mastery/tasks/create-rules.md +206 -0
- package/squads/claude-code-mastery/tasks/create-team-topology.md +258 -0
- package/squads/claude-code-mastery/tasks/diagnose.md +166 -0
- package/squads/claude-code-mastery/tasks/enterprise-config.md +346 -0
- package/squads/claude-code-mastery/tasks/hook-designer.md +272 -0
- package/squads/claude-code-mastery/tasks/integrate-project.md +304 -0
- package/squads/claude-code-mastery/tasks/mcp-integration-plan.md +229 -0
- package/squads/claude-code-mastery/tasks/mcp-workflow.md +285 -0
- package/squads/claude-code-mastery/tasks/multi-project-setup.md +228 -0
- package/squads/claude-code-mastery/tasks/optimize-context.md +217 -0
- package/squads/claude-code-mastery/tasks/optimize-workflow.md +226 -0
- package/squads/claude-code-mastery/tasks/parallel-decomposition.md +293 -0
- package/squads/claude-code-mastery/tasks/permission-strategy.md +266 -0
- package/squads/claude-code-mastery/tasks/sandbox-setup.md +279 -0
- package/squads/claude-code-mastery/tasks/setup-repository.md +230 -0
- package/squads/claude-code-mastery/tasks/setup-wizard.md +236 -0
- package/squads/claude-code-mastery/tasks/worktree-strategy.md +320 -0
- package/squads/claude-code-mastery/templates/claude-md-fullstack.md +147 -0
- package/squads/claude-code-mastery/templates/claude-md-library.md +175 -0
- package/squads/claude-code-mastery/templates/claude-md-microservices.md +186 -0
- package/squads/claude-code-mastery/templates/claude-md-mobile.md +198 -0
- package/squads/claude-code-mastery/templates/claude-md-monorepo.md +139 -0
- package/squads/claude-code-mastery/templates/github-actions-claude-ci.yml +348 -0
- package/squads/claude-code-mastery/templates/github-actions-claude-review.yml +179 -0
- package/squads/claude-code-mastery/workflows/wf-audit-complete.yaml +140 -0
- package/squads/claude-code-mastery/workflows/wf-knowledge-update.yaml +165 -0
- package/squads/claude-code-mastery/workflows/wf-project-setup.yaml +192 -0
|
@@ -0,0 +1,285 @@
|
|
|
1
|
+
# Task: MCP Server Management Workflow
|
|
2
|
+
|
|
3
|
+
**Task ID:** mcp-workflow
|
|
4
|
+
**Version:** 1.0
|
|
5
|
+
**Purpose:** Discover, evaluate, configure, and validate MCP servers for a project's tech stack
|
|
6
|
+
**Orchestrator:** @mcp-integrator (Piper)
|
|
7
|
+
**Mode:** Interactive (elicit: true)
|
|
8
|
+
**Quality Standard:** Fully tested MCP integration with documented context budget
|
|
9
|
+
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## Overview
|
|
13
|
+
|
|
14
|
+
This task guides the complete lifecycle of MCP server management: from discovering which servers benefit the project, through evaluating their context budget impact, to configuring and testing them in Claude Code.
|
|
15
|
+
|
|
16
|
+
```
|
|
17
|
+
INPUT (project_tech_stack + current_mcps)
|
|
18
|
+
|
|
|
19
|
+
[PHASE 1: DISCOVERY]
|
|
20
|
+
-> Scan project for frameworks, languages, services
|
|
21
|
+
-> Match against known MCP server catalog
|
|
22
|
+
-> Identify gaps in current tooling
|
|
23
|
+
|
|
|
24
|
+
[PHASE 2: CONTEXT BUDGET EVALUATION]
|
|
25
|
+
-> Calculate token cost per MCP server
|
|
26
|
+
-> Compare total budget against model limits
|
|
27
|
+
-> Recommend add/remove decisions
|
|
28
|
+
|
|
|
29
|
+
[PHASE 3: CONFIGURATION]
|
|
30
|
+
-> Choose config location (project vs global)
|
|
31
|
+
-> Select transport (stdio vs HTTP Streamable)
|
|
32
|
+
-> Write MCP entries to settings
|
|
33
|
+
|
|
|
34
|
+
[PHASE 4: TRANSPORT SELECTION]
|
|
35
|
+
-> Evaluate local vs remote requirements
|
|
36
|
+
-> Configure transport parameters
|
|
37
|
+
-> Set environment variables and secrets
|
|
38
|
+
|
|
|
39
|
+
[PHASE 5: TOOL VALIDATION]
|
|
40
|
+
-> Test each MCP server's tool availability
|
|
41
|
+
-> Verify tool responses with sample calls
|
|
42
|
+
-> Document available tools per server
|
|
43
|
+
|
|
|
44
|
+
[PHASE 6: DOCUMENTATION]
|
|
45
|
+
-> Update CLAUDE.md with MCP usage rules
|
|
46
|
+
-> Create tool selection priority table
|
|
47
|
+
-> Document CLI-first vs MCP decision tree
|
|
48
|
+
|
|
|
49
|
+
OUTPUT: Configured MCP servers + context budget report + CLAUDE.md updates
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## Inputs
|
|
55
|
+
|
|
56
|
+
| Field | Type | Source | Required | Validation |
|
|
57
|
+
|-------|------|--------|----------|------------|
|
|
58
|
+
| project_root | string | Auto-detect | yes | Valid directory with package.json or equivalent |
|
|
59
|
+
| tech_stack | array | Scan or user | yes | List of frameworks/languages in use |
|
|
60
|
+
| current_mcps | object | .claude/settings.json | no | Existing MCP configuration |
|
|
61
|
+
| context_budget_limit | number | User or default | no | Max tokens for MCP overhead (default: 10000) |
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Preconditions
|
|
66
|
+
|
|
67
|
+
1. Claude Code is installed and operational in the project
|
|
68
|
+
2. `.claude/settings.json` or `~/.claude.json` exists (or will be created)
|
|
69
|
+
3. User has access to install MCP server binaries (npm, pip, docker)
|
|
70
|
+
4. Network access for remote MCP servers (if applicable)
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## Phase 1: Discovery
|
|
75
|
+
|
|
76
|
+
**Goal:** Identify which MCP servers would benefit this project.
|
|
77
|
+
|
|
78
|
+
### Steps
|
|
79
|
+
|
|
80
|
+
1.1. Scan the project root for tech stack indicators:
|
|
81
|
+
- `package.json` -> Node.js ecosystem (look for React, Next.js, Express, etc.)
|
|
82
|
+
- `requirements.txt` / `pyproject.toml` -> Python ecosystem
|
|
83
|
+
- `docker-compose.yml` -> Container-based services
|
|
84
|
+
- `.env` / `supabase/` -> Supabase/database usage
|
|
85
|
+
- `playwright.config.*` -> Browser testing
|
|
86
|
+
|
|
87
|
+
1.2. Cross-reference detected stack against MCP server catalog:
|
|
88
|
+
|
|
89
|
+
| Tech Stack Signal | Recommended MCP | Purpose |
|
|
90
|
+
|-------------------|----------------|---------|
|
|
91
|
+
| Supabase project | supabase | Database operations, migrations |
|
|
92
|
+
| Any web project | playwright/browser | UI testing, screenshots |
|
|
93
|
+
| Research-heavy | exa | Web search, company research |
|
|
94
|
+
| Any framework | context7 | Library documentation lookup |
|
|
95
|
+
| Docker services | desktop-commander | Container management |
|
|
96
|
+
| GitHub repo | github-cli (native) | PR/issue management |
|
|
97
|
+
|
|
98
|
+
1.3. List current MCP servers from config and identify gaps.
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
## Phase 2: Context Budget Evaluation
|
|
103
|
+
|
|
104
|
+
**Goal:** Quantify the token cost of each MCP server.
|
|
105
|
+
|
|
106
|
+
### Context Budget Math
|
|
107
|
+
|
|
108
|
+
Each MCP server adds to the system prompt:
|
|
109
|
+
- **Server registration:** ~200 tokens (name, description, connection info)
|
|
110
|
+
- **Tool definitions:** ~100-400 tokens per tool (name, description, parameters, schema)
|
|
111
|
+
- **Typical server:** 600-2000 tokens total
|
|
112
|
+
|
|
113
|
+
### Budget Calculation
|
|
114
|
+
|
|
115
|
+
```
|
|
116
|
+
Total MCP Cost = SUM(server_tool_count * avg_tokens_per_tool + 200)
|
|
117
|
+
|
|
118
|
+
Example:
|
|
119
|
+
playwright (15 tools) = 15 * 150 + 200 = 2,450 tokens
|
|
120
|
+
context7 (2 tools) = 2 * 150 + 200 = 500 tokens
|
|
121
|
+
exa (1 tool) = 1 * 150 + 200 = 350 tokens
|
|
122
|
+
supabase (5 tools) = 5 * 150 + 200 = 950 tokens
|
|
123
|
+
---
|
|
124
|
+
TOTAL = 4,250 tokens (~2% of 200K context)
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### Decision Framework
|
|
128
|
+
|
|
129
|
+
| Total MCP Budget | Recommendation |
|
|
130
|
+
|-----------------|---------------|
|
|
131
|
+
| < 5,000 tokens | Green -- add freely |
|
|
132
|
+
| 5,000-10,000 tokens | Yellow -- evaluate each addition |
|
|
133
|
+
| > 10,000 tokens | Red -- remove low-value servers |
|
|
134
|
+
|
|
135
|
+
2.1. Calculate token cost for each proposed MCP server.
|
|
136
|
+
2.2. Sum total and compare against budget limit.
|
|
137
|
+
2.3. If over budget, rank servers by value-per-token and recommend removals.
|
|
138
|
+
|
|
139
|
+
---
|
|
140
|
+
|
|
141
|
+
## Phase 3: Configuration
|
|
142
|
+
|
|
143
|
+
**Goal:** Write MCP server configuration to the appropriate location.
|
|
144
|
+
|
|
145
|
+
### Config Location Decision
|
|
146
|
+
|
|
147
|
+
| Scope | File | When to Use |
|
|
148
|
+
|-------|------|-------------|
|
|
149
|
+
| Project-only | `.claude/settings.json` | MCP is project-specific (e.g., supabase for this DB) |
|
|
150
|
+
| Global (all projects) | `~/.claude.json` | MCP is universally useful (e.g., context7, exa) |
|
|
151
|
+
|
|
152
|
+
### Steps
|
|
153
|
+
|
|
154
|
+
3.1. Determine scope for each MCP server.
|
|
155
|
+
3.2. Read existing configuration file.
|
|
156
|
+
3.3. Add MCP server entries with proper structure:
|
|
157
|
+
|
|
158
|
+
```json
|
|
159
|
+
{
|
|
160
|
+
"mcpServers": {
|
|
161
|
+
"server-name": {
|
|
162
|
+
"command": "npx",
|
|
163
|
+
"args": ["-y", "@package/mcp-server"],
|
|
164
|
+
"env": {
|
|
165
|
+
"API_KEY": "..."
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
3.4. Validate JSON structure after writing.
|
|
173
|
+
|
|
174
|
+
---
|
|
175
|
+
|
|
176
|
+
## Phase 4: Transport Selection
|
|
177
|
+
|
|
178
|
+
**Goal:** Choose the right transport protocol for each MCP server.
|
|
179
|
+
|
|
180
|
+
### Transport Comparison
|
|
181
|
+
|
|
182
|
+
| Transport | Protocol | Use Case | Latency | Setup |
|
|
183
|
+
|-----------|----------|----------|---------|-------|
|
|
184
|
+
| **stdio** (default) | stdin/stdout | Local CLI tools, most servers | Low | Simple |
|
|
185
|
+
| **HTTP Streamable** | HTTP + SSE | Remote servers, shared infra | Medium | URL + auth |
|
|
186
|
+
|
|
187
|
+
### Decision Tree
|
|
188
|
+
|
|
189
|
+
```
|
|
190
|
+
Is the MCP server running locally?
|
|
191
|
+
YES -> Use stdio (default)
|
|
192
|
+
Is it a CLI binary? -> command + args
|
|
193
|
+
Is it a Docker container? -> docker run command
|
|
194
|
+
NO -> Use HTTP Streamable
|
|
195
|
+
Does it need auth? -> Add Authorization header
|
|
196
|
+
Is it behind a proxy? -> Configure proxy URL
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
4.1. For each MCP server, determine if local or remote.
|
|
200
|
+
4.2. Configure transport accordingly.
|
|
201
|
+
4.3. Set environment variables for API keys (never hardcode in config).
|
|
202
|
+
|
|
203
|
+
---
|
|
204
|
+
|
|
205
|
+
## Phase 5: Tool Validation
|
|
206
|
+
|
|
207
|
+
**Goal:** Verify each MCP server is working and its tools are accessible.
|
|
208
|
+
|
|
209
|
+
### Steps
|
|
210
|
+
|
|
211
|
+
5.1. Start Claude Code with the new configuration.
|
|
212
|
+
5.2. For each configured MCP server, verify tool availability:
|
|
213
|
+
- Check that tools appear in tool list
|
|
214
|
+
- Run a minimal test call (e.g., context7 resolve-library-id with "react")
|
|
215
|
+
5.3. Document any servers that fail to connect.
|
|
216
|
+
5.4. If a server fails, check:
|
|
217
|
+
- Binary installed? (command exists)
|
|
218
|
+
- API key valid? (env vars set)
|
|
219
|
+
- Port available? (for HTTP transport)
|
|
220
|
+
- Network accessible? (for remote servers)
|
|
221
|
+
|
|
222
|
+
---
|
|
223
|
+
|
|
224
|
+
## Phase 6: Documentation
|
|
225
|
+
|
|
226
|
+
**Goal:** Update project documentation with MCP usage rules.
|
|
227
|
+
|
|
228
|
+
### CLI-First vs MCP Decision Tree
|
|
229
|
+
|
|
230
|
+
```
|
|
231
|
+
Need to accomplish a task?
|
|
232
|
+
|
|
|
233
|
+
Can a native Claude Code tool do it?
|
|
234
|
+
(Read, Write, Edit, Bash, Grep, Glob)
|
|
235
|
+
YES -> Use native tool (ALWAYS prefer)
|
|
236
|
+
NO -> Is there an MCP tool for it?
|
|
237
|
+
YES -> Use MCP tool
|
|
238
|
+
NO -> Use Bash to install/run external tool
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
### Steps
|
|
242
|
+
|
|
243
|
+
6.1. Add or update MCP section in CLAUDE.md with:
|
|
244
|
+
- List of configured servers and their purposes
|
|
245
|
+
- Tool selection priority (native > MCP > Bash)
|
|
246
|
+
- Server-specific usage rules
|
|
247
|
+
6.2. Create `.claude/rules/mcp-usage.md` if it does not exist, with path-based activation.
|
|
248
|
+
6.3. Document any server-specific gotchas (auth, rate limits, etc.).
|
|
249
|
+
|
|
250
|
+
---
|
|
251
|
+
|
|
252
|
+
## Output Format
|
|
253
|
+
|
|
254
|
+
```yaml
|
|
255
|
+
mcp_workflow_result:
|
|
256
|
+
servers_configured:
|
|
257
|
+
- name: "context7"
|
|
258
|
+
transport: "stdio"
|
|
259
|
+
tools: 2
|
|
260
|
+
token_cost: 500
|
|
261
|
+
status: "verified"
|
|
262
|
+
- name: "playwright"
|
|
263
|
+
transport: "stdio"
|
|
264
|
+
tools: 15
|
|
265
|
+
token_cost: 2450
|
|
266
|
+
status: "verified"
|
|
267
|
+
total_token_cost: 2950
|
|
268
|
+
budget_status: "green"
|
|
269
|
+
files_modified:
|
|
270
|
+
- ".claude/settings.json"
|
|
271
|
+
- "CLAUDE.md"
|
|
272
|
+
documentation_updated: true
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
---
|
|
276
|
+
|
|
277
|
+
## Veto Conditions
|
|
278
|
+
|
|
279
|
+
| Condition | Action |
|
|
280
|
+
|-----------|--------|
|
|
281
|
+
| MCP token budget exceeds 15,000 tokens | HALT -- must remove servers before proceeding |
|
|
282
|
+
| API key required but not provided | SKIP server -- document as pending |
|
|
283
|
+
| MCP server binary not installable | SKIP server -- suggest alternative |
|
|
284
|
+
| Config file write fails | HALT -- check file permissions |
|
|
285
|
+
| All MCP servers fail validation | HALT -- likely environment issue, debug first |
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
# Task: Multi-Project Claude Code Setup
|
|
2
|
+
|
|
3
|
+
**Task ID:** CCM-PI-004
|
|
4
|
+
**Version:** 1.0.0
|
|
5
|
+
**Command:** `*multi-project-setup`
|
|
6
|
+
**Agent:** Conduit (project-integrator)
|
|
7
|
+
**Purpose:** Set up Claude Code for multiple related projects, configuring shared user settings, project-specific overrides, shared MCP servers, and cross-project rules.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Overview
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
Multiple Projects
|
|
15
|
+
|
|
|
16
|
+
v
|
|
17
|
+
+-----------------------+
|
|
18
|
+
| 1. Analyze Project |
|
|
19
|
+
| Relationships |
|
|
20
|
+
+-----------------------+
|
|
21
|
+
|
|
|
22
|
+
v
|
|
23
|
+
+-----------------------+
|
|
24
|
+
| 2. Configure Shared |
|
|
25
|
+
| User Settings |
|
|
26
|
+
+-----------------------+
|
|
27
|
+
|
|
|
28
|
+
v
|
|
29
|
+
+-----------------------+
|
|
30
|
+
| 3. Create Per-Project |
|
|
31
|
+
| Settings |
|
|
32
|
+
+-----------------------+
|
|
33
|
+
|
|
|
34
|
+
v
|
|
35
|
+
+-----------------------+
|
|
36
|
+
| 4. Set Up Shared |
|
|
37
|
+
| MCP Servers |
|
|
38
|
+
+-----------------------+
|
|
39
|
+
|
|
|
40
|
+
v
|
|
41
|
+
+-----------------------+
|
|
42
|
+
| 5. Configure Shared |
|
|
43
|
+
| Rules |
|
|
44
|
+
+-----------------------+
|
|
45
|
+
|
|
|
46
|
+
v
|
|
47
|
+
+-----------------------+
|
|
48
|
+
| 6. Verify Cross- |
|
|
49
|
+
| Project Coherence |
|
|
50
|
+
+-----------------------+
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## Inputs
|
|
56
|
+
|
|
57
|
+
| Field | Type | Source | Required | Validation |
|
|
58
|
+
|-------|------|--------|----------|------------|
|
|
59
|
+
| projects | object[] | User | Yes | Array of {path, name, type} for each project |
|
|
60
|
+
| relationship | enum | User | Yes | `monorepo`, `polyrepo-shared-stack`, `polyrepo-independent`, `workspace` |
|
|
61
|
+
| shared_tools | string[] | User | No | Tools used across all projects (e.g., "eslint", "jest", "docker") |
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Preconditions
|
|
66
|
+
|
|
67
|
+
- All listed project directories exist and are accessible
|
|
68
|
+
- User has write access to `~/.claude/` (user-level config)
|
|
69
|
+
- Each project has been initialized with git
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## Execution Phases
|
|
74
|
+
|
|
75
|
+
### Phase 1: Analyze Project Relationships
|
|
76
|
+
|
|
77
|
+
For each project, determine:
|
|
78
|
+
|
|
79
|
+
1. **Language and framework**: detect from package.json, Cargo.toml, pyproject.toml, etc.
|
|
80
|
+
2. **Shared dependencies**: which packages appear across projects
|
|
81
|
+
3. **Shared patterns**: naming conventions, directory structure similarities
|
|
82
|
+
4. **Communication patterns**: do projects import from each other (monorepo), share APIs (microservices), or operate independently
|
|
83
|
+
5. **Git topology**: single repo with multiple packages vs separate repositories
|
|
84
|
+
|
|
85
|
+
Build a relationship map:
|
|
86
|
+
```
|
|
87
|
+
Project A (Next.js frontend) --imports--> shared-lib
|
|
88
|
+
Project B (Node.js API) --imports--> shared-lib
|
|
89
|
+
Project C (Python ML) --independent--
|
|
90
|
+
shared-lib (TypeScript) --consumed-by--> A, B
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### Phase 2: Configure Shared User Settings
|
|
94
|
+
|
|
95
|
+
Create or update `~/.claude/settings.json`:
|
|
96
|
+
|
|
97
|
+
1. **Global permissions**: commands safe across all projects
|
|
98
|
+
- `git status`, `git diff`, `git log`
|
|
99
|
+
- Language-agnostic linters and formatters
|
|
100
|
+
2. **Global denies**: dangerous commands regardless of project
|
|
101
|
+
- `rm -rf /`, `sudo`, `DROP DATABASE`, `git push --force`
|
|
102
|
+
3. **Global preferences**: settings that apply everywhere
|
|
103
|
+
- Output format preferences
|
|
104
|
+
- Default model configuration
|
|
105
|
+
|
|
106
|
+
Create or update `~/.claude/CLAUDE.md` (user-level):
|
|
107
|
+
- Developer identity and preferences
|
|
108
|
+
- Cross-project conventions (commit style, PR format)
|
|
109
|
+
- Keep under 50 lines -- project-specific content goes in project CLAUDE.md
|
|
110
|
+
|
|
111
|
+
### Phase 3: Create Per-Project Settings
|
|
112
|
+
|
|
113
|
+
For each project, generate `.claude/settings.json`:
|
|
114
|
+
|
|
115
|
+
1. **Project-specific allows**: build/test/lint commands for that stack
|
|
116
|
+
- Frontend: `npm run dev`, `npm run build`, `npx next`
|
|
117
|
+
- Backend: `npm run start:dev`, `npm run migrate`
|
|
118
|
+
- Python: `python -m pytest`, `pip install`
|
|
119
|
+
2. **Project-specific denies**: protect that project's critical paths
|
|
120
|
+
3. **additionalDirectories**: if projects reference each other
|
|
121
|
+
```json
|
|
122
|
+
{
|
|
123
|
+
"additionalDirectories": ["../shared-lib"]
|
|
124
|
+
}
|
|
125
|
+
```
|
|
126
|
+
4. **Project CLAUDE.md**: project-specific context, build commands, structure
|
|
127
|
+
|
|
128
|
+
Ensure no conflicts between user-level and project-level settings.
|
|
129
|
+
|
|
130
|
+
### Phase 4: Set Up Shared MCP Servers
|
|
131
|
+
|
|
132
|
+
Configure MCP servers that serve multiple projects:
|
|
133
|
+
|
|
134
|
+
1. **Identify shared needs**: which MCPs benefit all projects
|
|
135
|
+
- Context7: documentation lookup (universal)
|
|
136
|
+
- EXA: web search (universal)
|
|
137
|
+
- Database: shared if projects use same DB
|
|
138
|
+
2. **Configure at user level**: add shared MCPs to `~/.claude/settings.json`
|
|
139
|
+
3. **Configure project-specific MCPs**: in each project's settings
|
|
140
|
+
4. **Avoid duplication**: same MCP should not be configured at both levels
|
|
141
|
+
|
|
142
|
+
### Phase 5: Configure Shared Rules
|
|
143
|
+
|
|
144
|
+
Create rules that apply across projects:
|
|
145
|
+
|
|
146
|
+
1. **User-level rules** (`~/.claude/rules/`): team conventions
|
|
147
|
+
- Commit message format
|
|
148
|
+
- Code review checklist
|
|
149
|
+
- Documentation standards
|
|
150
|
+
2. **Project-level rules** (`.claude/rules/`): project-specific
|
|
151
|
+
- Coding standards for that language/framework
|
|
152
|
+
- Testing requirements for that project
|
|
153
|
+
- Architecture constraints
|
|
154
|
+
3. **Shared rule templates**: for consistency across new projects
|
|
155
|
+
|
|
156
|
+
### Phase 6: Verify Cross-Project Coherence
|
|
157
|
+
|
|
158
|
+
Run verification across all projects:
|
|
159
|
+
|
|
160
|
+
1. **No conflicts**: user-level and project-level settings do not contradict
|
|
161
|
+
2. **Complete coverage**: every project has CLAUDE.md + settings.json
|
|
162
|
+
3. **MCP consistency**: shared MCPs accessible from all projects
|
|
163
|
+
4. **Rule consistency**: no contradictory rules across projects
|
|
164
|
+
5. **Path accuracy**: additionalDirectories point to valid paths
|
|
165
|
+
|
|
166
|
+
---
|
|
167
|
+
|
|
168
|
+
## Output Format
|
|
169
|
+
|
|
170
|
+
```markdown
|
|
171
|
+
## Multi-Project Setup Report
|
|
172
|
+
|
|
173
|
+
**Projects:** {N} projects configured
|
|
174
|
+
**Relationship:** {relationship}
|
|
175
|
+
**Date:** {YYYY-MM-DD}
|
|
176
|
+
|
|
177
|
+
### Project Map
|
|
178
|
+
|
|
179
|
+
| Project | Type | Stack | MCP Servers | Rules |
|
|
180
|
+
|---------|------|-------|-------------|-------|
|
|
181
|
+
| {name} | {type} | {stack} | {N} | {N} |
|
|
182
|
+
|
|
183
|
+
### Shared Configuration
|
|
184
|
+
|
|
185
|
+
- User settings: ~/.claude/settings.json ({N} allows, {N} denies)
|
|
186
|
+
- User CLAUDE.md: ~/.claude/CLAUDE.md ({N} lines)
|
|
187
|
+
- Shared MCPs: {list}
|
|
188
|
+
- Shared rules: {list}
|
|
189
|
+
|
|
190
|
+
### Per-Project Configuration
|
|
191
|
+
|
|
192
|
+
**{project_name}:**
|
|
193
|
+
- .claude/CLAUDE.md: {N} lines
|
|
194
|
+
- .claude/settings.json: {N} allows, {N} denies
|
|
195
|
+
- .claude/rules/: {N} files
|
|
196
|
+
- additionalDirectories: {list or "none"}
|
|
197
|
+
|
|
198
|
+
### Cross-Project Verification
|
|
199
|
+
|
|
200
|
+
| Check | Status |
|
|
201
|
+
|-------|--------|
|
|
202
|
+
| No setting conflicts | PASS/FAIL |
|
|
203
|
+
| All projects configured | PASS/FAIL |
|
|
204
|
+
| MCP consistency | PASS/FAIL |
|
|
205
|
+
| Rule consistency | PASS/FAIL |
|
|
206
|
+
| Path accuracy | PASS/FAIL |
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
---
|
|
210
|
+
|
|
211
|
+
## Veto Conditions
|
|
212
|
+
|
|
213
|
+
- **NEVER** overwrite existing user-level settings without confirmation
|
|
214
|
+
- **NEVER** add project paths to additionalDirectories without verifying they exist
|
|
215
|
+
- **NEVER** configure MCP servers that require credentials without user providing them
|
|
216
|
+
- **NEVER** modify settings of projects not listed in the input
|
|
217
|
+
|
|
218
|
+
---
|
|
219
|
+
|
|
220
|
+
## Completion Criteria
|
|
221
|
+
|
|
222
|
+
- [ ] Project relationships analyzed and mapped
|
|
223
|
+
- [ ] Shared user settings configured at ~/.claude/
|
|
224
|
+
- [ ] Per-project settings created for each project
|
|
225
|
+
- [ ] Shared MCP servers configured without duplication
|
|
226
|
+
- [ ] Cross-project rules established
|
|
227
|
+
- [ ] Coherence verification passed
|
|
228
|
+
- [ ] Setup report delivered
|