opencastle 0.5.1 → 0.7.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 (231) hide show
  1. package/README.md +5 -4
  2. package/dist/cli/adapters/claude-code.d.ts +2 -2
  3. package/dist/cli/adapters/claude-code.d.ts.map +1 -1
  4. package/dist/cli/adapters/claude-code.js +31 -4
  5. package/dist/cli/adapters/claude-code.js.map +1 -1
  6. package/dist/cli/adapters/cursor.d.ts +2 -2
  7. package/dist/cli/adapters/cursor.d.ts.map +1 -1
  8. package/dist/cli/adapters/cursor.js +28 -4
  9. package/dist/cli/adapters/cursor.js.map +1 -1
  10. package/dist/cli/adapters/opencode.d.ts +20 -0
  11. package/dist/cli/adapters/opencode.d.ts.map +1 -0
  12. package/dist/cli/adapters/opencode.js +265 -0
  13. package/dist/cli/adapters/opencode.js.map +1 -0
  14. package/dist/cli/adapters/vscode.d.ts +2 -2
  15. package/dist/cli/adapters/vscode.d.ts.map +1 -1
  16. package/dist/cli/adapters/vscode.js +38 -7
  17. package/dist/cli/adapters/vscode.js.map +1 -1
  18. package/dist/cli/copy.d.ts +12 -0
  19. package/dist/cli/copy.d.ts.map +1 -1
  20. package/dist/cli/copy.js +27 -0
  21. package/dist/cli/copy.js.map +1 -1
  22. package/dist/cli/detect.d.ts +18 -0
  23. package/dist/cli/detect.d.ts.map +1 -0
  24. package/dist/cli/detect.js +434 -0
  25. package/dist/cli/detect.js.map +1 -0
  26. package/dist/cli/gitignore.d.ts.map +1 -1
  27. package/dist/cli/gitignore.js +0 -2
  28. package/dist/cli/gitignore.js.map +1 -1
  29. package/dist/cli/init.d.ts.map +1 -1
  30. package/dist/cli/init.js +154 -91
  31. package/dist/cli/init.js.map +1 -1
  32. package/dist/cli/manifest.d.ts +1 -1
  33. package/dist/cli/manifest.d.ts.map +1 -1
  34. package/dist/cli/manifest.js +2 -1
  35. package/dist/cli/manifest.js.map +1 -1
  36. package/dist/cli/mcp.d.ts +6 -6
  37. package/dist/cli/mcp.d.ts.map +1 -1
  38. package/dist/cli/mcp.js +105 -34
  39. package/dist/cli/mcp.js.map +1 -1
  40. package/dist/cli/prompt.d.ts +22 -0
  41. package/dist/cli/prompt.d.ts.map +1 -1
  42. package/dist/cli/prompt.js +239 -0
  43. package/dist/cli/prompt.js.map +1 -1
  44. package/dist/cli/stack-config.d.ts +26 -3
  45. package/dist/cli/stack-config.d.ts.map +1 -1
  46. package/dist/cli/stack-config.js +140 -125
  47. package/dist/cli/stack-config.js.map +1 -1
  48. package/dist/cli/types.d.ts +46 -10
  49. package/dist/cli/types.d.ts.map +1 -1
  50. package/dist/cli/types.js +26 -1
  51. package/dist/cli/types.js.map +1 -1
  52. package/dist/cli/update.d.ts.map +1 -1
  53. package/dist/cli/update.js +66 -19
  54. package/dist/cli/update.js.map +1 -1
  55. package/dist/orchestrator/plugins/chrome-devtools/config.d.ts +3 -0
  56. package/dist/orchestrator/plugins/chrome-devtools/config.d.ts.map +1 -0
  57. package/dist/orchestrator/plugins/chrome-devtools/config.js +28 -0
  58. package/dist/orchestrator/plugins/chrome-devtools/config.js.map +1 -0
  59. package/dist/orchestrator/plugins/contentful/config.d.ts +3 -0
  60. package/dist/orchestrator/plugins/contentful/config.d.ts.map +1 -0
  61. package/dist/orchestrator/plugins/contentful/config.js +48 -0
  62. package/dist/orchestrator/plugins/contentful/config.js.map +1 -0
  63. package/dist/orchestrator/plugins/convex/config.d.ts +3 -0
  64. package/dist/orchestrator/plugins/convex/config.d.ts.map +1 -0
  65. package/dist/orchestrator/plugins/convex/config.js +32 -0
  66. package/dist/orchestrator/plugins/convex/config.js.map +1 -0
  67. package/dist/orchestrator/plugins/index.d.ts +28 -0
  68. package/dist/orchestrator/plugins/index.d.ts.map +1 -0
  69. package/dist/orchestrator/plugins/index.js +63 -0
  70. package/dist/orchestrator/plugins/index.js.map +1 -0
  71. package/dist/orchestrator/plugins/jira/config.d.ts +3 -0
  72. package/dist/orchestrator/plugins/jira/config.d.ts.map +1 -0
  73. package/dist/orchestrator/plugins/jira/config.js +29 -0
  74. package/dist/orchestrator/plugins/jira/config.js.map +1 -0
  75. package/dist/orchestrator/plugins/linear/config.d.ts +3 -0
  76. package/dist/orchestrator/plugins/linear/config.d.ts.map +1 -0
  77. package/dist/orchestrator/plugins/linear/config.js +33 -0
  78. package/dist/orchestrator/plugins/linear/config.js.map +1 -0
  79. package/dist/orchestrator/plugins/nx/config.d.ts +3 -0
  80. package/dist/orchestrator/plugins/nx/config.d.ts.map +1 -0
  81. package/dist/orchestrator/plugins/nx/config.js +28 -0
  82. package/dist/orchestrator/plugins/nx/config.js.map +1 -0
  83. package/dist/orchestrator/plugins/sanity/config.d.ts +3 -0
  84. package/dist/orchestrator/plugins/sanity/config.d.ts.map +1 -0
  85. package/dist/orchestrator/plugins/sanity/config.js +43 -0
  86. package/dist/orchestrator/plugins/sanity/config.js.map +1 -0
  87. package/dist/orchestrator/plugins/slack/config.d.ts +3 -0
  88. package/dist/orchestrator/plugins/slack/config.d.ts.map +1 -0
  89. package/dist/orchestrator/plugins/slack/config.js +34 -0
  90. package/dist/orchestrator/plugins/slack/config.js.map +1 -0
  91. package/dist/orchestrator/plugins/strapi/config.d.ts +3 -0
  92. package/dist/orchestrator/plugins/strapi/config.d.ts.map +1 -0
  93. package/dist/orchestrator/plugins/strapi/config.js +40 -0
  94. package/dist/orchestrator/plugins/strapi/config.js.map +1 -0
  95. package/dist/orchestrator/plugins/supabase/config.d.ts +3 -0
  96. package/dist/orchestrator/plugins/supabase/config.d.ts.map +1 -0
  97. package/dist/orchestrator/plugins/supabase/config.js +33 -0
  98. package/dist/orchestrator/plugins/supabase/config.js.map +1 -0
  99. package/dist/orchestrator/plugins/teams/config.d.ts +3 -0
  100. package/dist/orchestrator/plugins/teams/config.d.ts.map +1 -0
  101. package/dist/orchestrator/plugins/teams/config.js +43 -0
  102. package/dist/orchestrator/plugins/teams/config.js.map +1 -0
  103. package/dist/orchestrator/plugins/types.d.ts +61 -0
  104. package/dist/orchestrator/plugins/types.d.ts.map +1 -0
  105. package/dist/orchestrator/plugins/types.js +2 -0
  106. package/dist/orchestrator/plugins/types.js.map +1 -0
  107. package/dist/orchestrator/plugins/vercel/config.d.ts +3 -0
  108. package/dist/orchestrator/plugins/vercel/config.d.ts.map +1 -0
  109. package/dist/orchestrator/plugins/vercel/config.js +32 -0
  110. package/dist/orchestrator/plugins/vercel/config.js.map +1 -0
  111. package/package.json +1 -1
  112. package/src/cli/adapters/claude-code.ts +40 -6
  113. package/src/cli/adapters/cursor.ts +46 -6
  114. package/src/cli/adapters/opencode.ts +320 -0
  115. package/src/cli/adapters/vscode.ts +43 -9
  116. package/src/cli/copy.ts +32 -0
  117. package/src/cli/detect.ts +483 -0
  118. package/src/cli/gitignore.ts +0 -3
  119. package/src/cli/init.ts +169 -96
  120. package/src/cli/manifest.ts +2 -1
  121. package/src/cli/mcp.ts +131 -51
  122. package/src/cli/prompt.ts +299 -0
  123. package/src/cli/stack-config.ts +187 -145
  124. package/src/cli/types.ts +60 -9
  125. package/src/cli/update.ts +78 -20
  126. package/src/dashboard/node_modules/.vite/deps/_metadata.json +6 -6
  127. package/src/orchestrator/agent-workflows/README.md +1 -1
  128. package/src/orchestrator/agent-workflows/bug-fix.md +12 -12
  129. package/src/orchestrator/agent-workflows/data-pipeline.md +21 -20
  130. package/src/orchestrator/agent-workflows/database-migration.md +11 -11
  131. package/src/orchestrator/agent-workflows/feature-implementation.md +10 -10
  132. package/src/orchestrator/agent-workflows/performance-optimization.md +6 -6
  133. package/src/orchestrator/agent-workflows/refactoring.md +10 -10
  134. package/src/orchestrator/agent-workflows/schema-changes.md +8 -8
  135. package/src/orchestrator/agent-workflows/security-audit.md +12 -12
  136. package/src/orchestrator/agent-workflows/shared-delivery-phase.md +5 -5
  137. package/src/orchestrator/agents/api-designer.agent.md +2 -2
  138. package/src/orchestrator/agents/architect.agent.md +2 -2
  139. package/src/orchestrator/agents/content-engineer.agent.md +4 -4
  140. package/src/orchestrator/agents/copywriter.agent.md +2 -2
  141. package/src/orchestrator/agents/data-expert.agent.md +6 -6
  142. package/src/orchestrator/agents/database-engineer.agent.md +4 -4
  143. package/src/orchestrator/agents/developer.agent.md +5 -5
  144. package/src/orchestrator/agents/devops-expert.agent.md +5 -5
  145. package/src/orchestrator/agents/documentation-writer.agent.md +1 -1
  146. package/src/orchestrator/agents/performance-expert.agent.md +3 -3
  147. package/src/orchestrator/agents/release-manager.agent.md +4 -4
  148. package/src/orchestrator/agents/researcher.agent.md +19 -3
  149. package/src/orchestrator/agents/reviewer.agent.md +2 -4
  150. package/src/orchestrator/agents/security-expert.agent.md +4 -4
  151. package/src/orchestrator/agents/seo-specialist.agent.md +2 -2
  152. package/src/orchestrator/agents/team-lead.agent.md +97 -101
  153. package/src/orchestrator/agents/testing-expert.agent.md +5 -5
  154. package/src/orchestrator/agents/ui-ux-expert.agent.md +7 -7
  155. package/src/orchestrator/copilot-instructions.md +1 -1
  156. package/src/orchestrator/customizations/AGENT-FAILURES.md +1 -1
  157. package/src/orchestrator/customizations/AGENT-PERFORMANCE.md +12 -12
  158. package/src/orchestrator/customizations/DISPUTES.md +5 -5
  159. package/src/orchestrator/customizations/KNOWN-ISSUES.md +30 -0
  160. package/src/orchestrator/customizations/LESSONS-LEARNED.md +7 -7
  161. package/src/orchestrator/customizations/README.md +5 -2
  162. package/src/orchestrator/customizations/agents/agent-registry.md +1 -1
  163. package/src/orchestrator/customizations/agents/skill-matrix.md +12 -7
  164. package/src/orchestrator/customizations/logs/README.md +1 -1
  165. package/src/orchestrator/customizations/project/decisions.md +31 -0
  166. package/src/orchestrator/customizations/project/docs-structure.md +16 -5
  167. package/src/orchestrator/customizations/project/roadmap.md +24 -0
  168. package/src/orchestrator/customizations/project/tracker-config.md +1 -1
  169. package/src/orchestrator/customizations/stack/cms-config.md +1 -1
  170. package/src/orchestrator/customizations/stack/notifications-config.md +1 -1
  171. package/src/orchestrator/instructions/ai-optimization.instructions.md +2 -2
  172. package/src/orchestrator/instructions/general.instructions.md +102 -40
  173. package/src/orchestrator/{skills/browser-testing → plugins/chrome-devtools}/SKILL.md +1 -1
  174. package/src/orchestrator/plugins/chrome-devtools/config.ts +29 -0
  175. package/src/orchestrator/{skills/contentful-cms → plugins/contentful}/SKILL.md +1 -1
  176. package/src/orchestrator/plugins/contentful/config.ts +49 -0
  177. package/src/orchestrator/{skills/convex-database → plugins/convex}/SKILL.md +1 -1
  178. package/src/orchestrator/plugins/convex/config.ts +33 -0
  179. package/src/orchestrator/plugins/index.ts +85 -0
  180. package/src/orchestrator/{skills/jira-management → plugins/jira}/SKILL.md +3 -3
  181. package/src/orchestrator/plugins/jira/config.ts +30 -0
  182. package/src/orchestrator/{skills/task-management → plugins/linear}/SKILL.md +3 -3
  183. package/src/orchestrator/plugins/linear/config.ts +34 -0
  184. package/src/orchestrator/{skills/nx-workspace → plugins/nx}/SKILL.md +1 -1
  185. package/src/orchestrator/plugins/nx/config.ts +29 -0
  186. package/src/orchestrator/{skills/sanity-cms → plugins/sanity}/SKILL.md +1 -1
  187. package/src/orchestrator/plugins/sanity/config.ts +44 -0
  188. package/src/orchestrator/{skills/slack-notifications → plugins/slack}/SKILL.md +2 -2
  189. package/src/orchestrator/plugins/slack/config.ts +35 -0
  190. package/src/orchestrator/{skills/strapi-cms → plugins/strapi}/SKILL.md +1 -1
  191. package/src/orchestrator/plugins/strapi/config.ts +41 -0
  192. package/src/orchestrator/{skills/supabase-database → plugins/supabase}/SKILL.md +1 -1
  193. package/src/orchestrator/plugins/supabase/config.ts +34 -0
  194. package/src/orchestrator/{skills/teams-notifications → plugins/teams}/SKILL.md +2 -2
  195. package/src/orchestrator/plugins/teams/config.ts +44 -0
  196. package/src/orchestrator/plugins/types.ts +79 -0
  197. package/src/orchestrator/plugins/vercel/config.ts +33 -0
  198. package/src/orchestrator/prompts/bootstrap-customizations.prompt.md +59 -12
  199. package/src/orchestrator/prompts/brainstorm.prompt.md +3 -3
  200. package/src/orchestrator/prompts/bug-fix.prompt.md +18 -18
  201. package/src/orchestrator/prompts/create-skill.prompt.md +50 -32
  202. package/src/orchestrator/prompts/generate-task-spec.prompt.md +3 -3
  203. package/src/orchestrator/prompts/implement-feature.prompt.md +26 -26
  204. package/src/orchestrator/prompts/metrics-report.prompt.md +11 -11
  205. package/src/orchestrator/prompts/quick-refinement.prompt.md +16 -16
  206. package/src/orchestrator/prompts/resolve-pr-comments.prompt.md +2 -2
  207. package/src/orchestrator/skills/accessibility-standards/SKILL.md +1 -1
  208. package/src/orchestrator/skills/agent-hooks/SKILL.md +27 -18
  209. package/src/orchestrator/skills/agent-memory/SKILL.md +7 -7
  210. package/src/orchestrator/skills/api-patterns/SKILL.md +6 -6
  211. package/src/orchestrator/skills/code-commenting/SKILL.md +1 -1
  212. package/src/orchestrator/skills/context-map/SKILL.md +4 -4
  213. package/src/orchestrator/skills/data-engineering/SKILL.md +7 -4
  214. package/src/orchestrator/skills/deployment-infrastructure/SKILL.md +2 -2
  215. package/src/orchestrator/skills/documentation-standards/SKILL.md +1 -1
  216. package/src/orchestrator/skills/fast-review/SKILL.md +3 -3
  217. package/src/orchestrator/skills/frontend-design/SKILL.md +1 -1
  218. package/src/orchestrator/skills/memory-merger/SKILL.md +8 -8
  219. package/src/orchestrator/skills/nextjs-patterns/SKILL.md +1 -1
  220. package/src/orchestrator/skills/panel-majority-vote/SKILL.md +2 -2
  221. package/src/orchestrator/skills/panel-majority-vote/panel-report.template.md +1 -1
  222. package/src/orchestrator/skills/performance-optimization/SKILL.md +1 -1
  223. package/src/orchestrator/skills/react-development/SKILL.md +3 -3
  224. package/src/orchestrator/skills/security-hardening/SKILL.md +27 -27
  225. package/src/orchestrator/skills/self-improvement/SKILL.md +14 -13
  226. package/src/orchestrator/skills/seo-patterns/SKILL.md +1 -1
  227. package/src/orchestrator/skills/session-checkpoints/SKILL.md +19 -19
  228. package/src/orchestrator/skills/team-lead-reference/SKILL.md +9 -9
  229. package/src/orchestrator/skills/testing-workflow/SKILL.md +13 -13
  230. package/src/orchestrator/skills/validation-gates/SKILL.md +8 -15
  231. package/src/orchestrator/mcp.json +0 -61
@@ -3,26 +3,26 @@ name: security-hardening
3
3
  description: "Security architecture including authentication, authorization, RLS policies, security headers, CSP, input validation, API security, and OAuth patterns. Use when implementing auth flows, writing RLS policies, configuring security headers, validating inputs, or auditing security."
4
4
  ---
5
5
 
6
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
6
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
7
7
 
8
8
  # Security Hardening
9
9
 
10
10
  ## Security Architecture
11
11
 
12
12
  ```
13
- Vercel Edge Network (WAF, DDoS)
14
- → Security Headers (next.config.js: HSTS, CSP, X-Frame-Options)
15
- → Middleware (proxy.ts: session refresh)
16
- → Server Actions (Supabase Auth: CSRF protection)
13
+ Edge Network (WAF, DDoS)
14
+ → Security Headers (framework config: HSTS, CSP, X-Frame-Options)
15
+ → Middleware (session refresh)
16
+ → Server Actions (Auth: CSRF protection)
17
17
  → RLS Policies (row-level authorization)
18
18
  ```
19
19
 
20
- | Layer | Technology | Protection |
21
- |-------|-----------|------------|
22
- | Edge | Vercel WAF | DDoS, bot detection |
23
- | Headers | Next.js config | HSTS, CSP, XSS protection |
24
- | Middleware | proxy.ts | Session management |
25
- | Server Actions | Supabase Auth | Authentication, CSRF |
20
+ | Layer | Role | Protection |
21
+ |-------|------|------------|
22
+ | Edge | WAF / CDN | DDoS, bot detection |
23
+ | Headers | Framework config | HSTS, CSP, XSS protection |
24
+ | Middleware | Proxy / middleware layer | Session management |
25
+ | Server Actions | Auth provider | Authentication, CSRF |
26
26
  | Database | RLS Policies | Row-level authorization |
27
27
  | API Routes | CRON_SECRET | Cron job authorization |
28
28
  | Input | Zod | Schema validation |
@@ -30,38 +30,38 @@ Vercel Edge Network (WAF, DDoS)
30
30
 
31
31
  ## Authentication
32
32
 
33
- **Platform:** Supabase Auth with Server Actions pattern.
33
+ **Platform:** Auth provider with Server Actions pattern. Resolve specific auth library and configuration via the **database** capability slot in the skill matrix.
34
34
 
35
35
  - **Server Actions** for sign in/up/out, session management.
36
36
  - **Middleware** for session refresh, protected routes.
37
- - **RLS Policies** in Postgres.
38
- - **OAuth providers:** Google, Facebook (configured in Supabase dashboard)
39
- - **User roles:** `user`, `moderator`, `admin` (stored in `profiles.roles TEXT[]`)
40
- - **Key auth files:** `libs/supabase-auth/src/actions/auth.ts`, `apps/*/proxy.ts`
37
+ - **RLS Policies** in the database.
38
+ - **OAuth providers:** Configured in the auth provider's dashboard.
39
+ - **User roles:** Stored in the user profiles table (e.g., `profiles.roles TEXT[]`).
40
+ - **Key auth files:** Resolve via project-specific customization files.
41
41
  - **Cron authorization:** `CRON_SECRET` env var, `Bearer` token in `authorization` header
42
42
 
43
43
  ### Server Actions Pattern Benefits
44
44
 
45
- - Automatic CSRF protection (Next.js POST-only Server Actions).
45
+ - Automatic CSRF protection (POST-only Server Actions).
46
46
  - No exposed API endpoints for auth.
47
47
  - Server-side session management.
48
48
 
49
49
  ### Session Management
50
50
 
51
- - HTTP-only cookies (Supabase client managed).
51
+ - HTTP-only cookies (auth client managed).
52
52
  - Automatic refresh via middleware (`updateSession()`).
53
53
  - Sign out clears cookie and invalidates session.
54
54
 
55
55
  ## Content Security Policy
56
56
 
57
- ### Allowed External Domains (`next.config.js`)
57
+ ### Allowed External Domains (framework config)
58
58
 
59
59
  | Purpose | Domains |
60
60
  |---------|--------|
61
- | Scripts | `challenges.cloudflare.com`, `cdn.jsdelivr.net`, `cdn.sanity.io`, `maps.googleapis.com` |
62
- | Styles | `cdn.jsdelivr.net`, `fonts.googleapis.com` |
63
- | Fonts | `fonts.gstatic.com` |
64
- | Frames | `challenges.cloudflare.com` |
61
+ | Scripts | Project-specific see deployment customization |
62
+ | Styles | Project-specific see deployment customization |
63
+ | Fonts | Project-specific — see deployment customization |
64
+ | Frames | Project-specific — see deployment customization |
65
65
 
66
66
  ### Directives
67
67
 
@@ -72,11 +72,11 @@ General CSP directives follow the principle of least privilege:
72
72
  - `frame-ancestors 'self'` — prevent clickjacking.
73
73
  - `upgrade-insecure-requests` — enforce HTTPS.
74
74
 
75
- **Known weaknesses:** `'unsafe-inline'` and `'unsafe-eval'` in script-src (required for Next.js dev mode). Consider nonces/hashes for production inline scripts.
75
+ **Known weaknesses:** `'unsafe-inline'` and `'unsafe-eval'` in script-src (may be required for framework dev mode). Consider nonces/hashes for production inline scripts.
76
76
 
77
77
  ## RLS Policy Patterns
78
78
 
79
- > **Detailed RLS patterns and SQL examples:** See the **supabase-database** skill, which is the authoritative source for RLS policies, role systems, and migration rules.
79
+ > **Detailed RLS patterns and SQL examples:** See the **database** skill (resolved via skill matrix), which is the authoritative source for RLS policies, role systems, and migration rules.
80
80
 
81
81
  ### Best Practices
82
82
 
@@ -111,10 +111,10 @@ export async function GET(request: NextRequest) {
111
111
 
112
112
  ## Critical Rules
113
113
 
114
- 1. Never commit secrets — use Vercel environment variables.
114
+ 1. Never commit secrets — use deployment platform environment variables.
115
115
  2. Always use Server Actions for auth operations.
116
116
  3. Enable RLS on all tables — default-deny, explicit-allow.
117
117
  4. Validate all inputs with Zod before database operations.
118
118
  5. Sanitize user content — escape HTML in reviews/descriptions.
119
- 6. Parameterized queries (Supabase client handles automatically).
119
+ 6. Parameterized queries (database client handles automatically).
120
120
  7. Rotate secrets regularly (quarterly).
@@ -3,7 +3,7 @@ name: self-improvement
3
3
  description: "Protocol for reading and updating the lessons-learned knowledge base. MUST be followed by ALL agents — read lessons before work, write lessons after retries. This makes the agent team self-improving across sessions."
4
4
  ---
5
5
 
6
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
6
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
7
7
 
8
8
  # Self-Improvement Protocol
9
9
 
@@ -44,7 +44,7 @@ A lesson MUST be written when **any** of these triggers occur:
44
44
 
45
45
  1. If you wrote any new lessons during execution, **update the Index by Category table** at the bottom of `.github/customizations/LESSONS-LEARNED.md` to include the new lesson IDs.
46
46
 
47
- 2. **Log the session** — append one JSON line to `.github/customizations/logs/sessions.ndjson` with: `timestamp`, `agent`, `model`, `task`, `linear_issue`, `outcome` (success/partial/failed), `files_changed`, `retries`, `lessons_added`, `discoveries`. See `.github/customizations/logs/README.md` for the full schema.
47
+ 2. **Log the session** — append one JSON line to `.github/customizations/logs/sessions.ndjson` with: `timestamp`, `agent`, `model`, `task`, `tracker_issue`, `outcome` (success/partial/failed), `files_changed`, `retries`, `lessons_added`, `discoveries`. See `.github/customizations/logs/README.md` for the full schema.
48
48
 
49
49
  ```bash
50
50
  echo '{"timestamp":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","agent":"Agent Name","model":"model-id","task":"Short description","outcome":"success","files_changed":N,"retries":0}' >> .github/customizations/logs/sessions.ndjson
@@ -89,24 +89,25 @@ Add the lesson ID to the appropriate category row in the `## Index by Category`
89
89
  If the lesson reveals a gap in existing instruction/skill files, **also update those files** to include the correct approach. This prevents the pitfall at the source level, not just as a retroactive note.
90
90
 
91
91
  Examples:
92
- - Lesson about Linear tool → update `task-management/SKILL.md`
93
- - Lesson about NX commands → update `nx-workspace/SKILL.md`
94
- - Lesson about Sanity queries → update `sanity-cms/SKILL.md`
95
- - Lesson about browser testing → update `browser-testing/SKILL.md`
92
+ - Lesson about task tracker tools → update the skill mapped by the `task-management` slot in the skill matrix
93
+ - Lesson about codebase-tool commands → update the skill mapped by the `codebase-tool` slot in the skill matrix
94
+ - Lesson about CMS queries → update the skill mapped by the `cms` slot in the skill matrix
95
+ - Lesson about browser testing → update the skill mapped by the `e2e-testing` slot in the skill matrix
96
96
 
97
97
  ## Categories
98
98
 
99
99
  | Category | Covers |
100
100
  |----------|--------|
101
- | `linear` | Linear MCP tools, issue management, workflow states |
101
+ | `task-management` | Task tracker tools, issue management, workflow states |
102
+ | `jira` | Jira MCP tools (Atlassian Rovo), issue management, workflows |
102
103
  | `mcp-tools` | Any MCP server tool quirks (deferred loading, parameters) |
103
- | `nx-commands` | NX CLI commands, task runner, caching |
104
+ | `codebase-tool` | Task runner CLI commands, caching, build tools |
104
105
  | `terminal` | Shell commands, port management, process management |
105
- | `next-js` | Next.js App Router, build, dev server, SSR |
106
- | `sanity` | Sanity CMS, GROQ queries, schema deployment |
107
- | `supabase` | Supabase auth, migrations, RLS, SQL |
106
+ | `framework` | App framework, build, dev server, SSR |
107
+ | `cms` | CMS content queries, schema deployment |
108
+ | `database` | Database auth, migrations, RLS, SQL |
108
109
  | `git` | Git operations, branching, merge conflicts |
109
- | `vercel` | Deployment, environment variables, edge config |
110
+ | `deployment` | Deployment, environment variables, edge config |
110
111
  | `browser-testing` | E2E testing, screenshots, browser automation |
111
112
  | `general` | Anything that doesn't fit above |
112
113
 
@@ -130,7 +131,7 @@ Examples:
130
131
 
131
132
  - **Never skip reading lessons** before starting work — this is the #1 cause of repeated mistakes
132
133
  - **Never "fix it and move on"** without documenting — your fix dies with your session
133
- - **Never write vague lessons** like "Linear is tricky" — be specific about what fails and what works
134
+ - **Never write vague lessons** like "the tracker is tricky" — be specific about what fails and what works
134
135
  - **Never duplicate existing lessons** — check the index first
135
136
  - **Never wait until the end of a session** to write lessons — write them immediately when the retry succeeds
136
137
 
@@ -3,7 +3,7 @@ name: seo-patterns
3
3
  description: "Technical SEO patterns for meta tags, structured data, sitemaps, URL strategy, and rendering. Use when optimizing pages for search engines or implementing SEO features."
4
4
  ---
5
5
 
6
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
6
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
7
7
 
8
8
  # SEO Patterns
9
9
 
@@ -3,7 +3,7 @@ name: session-checkpoints
3
3
  description: "Protocol for saving and restoring session state across agent sessions. Enables replay, fork, and resume of interrupted work — inspired by Sandcastle Run Time Machine."
4
4
  ---
5
5
 
6
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
6
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
7
7
 
8
8
  # Skill: Session Checkpoints
9
9
 
@@ -21,7 +21,7 @@ Create a checkpoint:
21
21
 
22
22
  ## Checkpoint Format
23
23
 
24
- Create or update the file `docs/SESSION-CHECKPOINT.md` with this structure:
24
+ Create or update the file `.github/customizations/SESSION-CHECKPOINT.md` with this structure:
25
25
 
26
26
  ```markdown
27
27
  # Session Checkpoint
@@ -29,7 +29,7 @@ Create or update the file `docs/SESSION-CHECKPOINT.md` with this structure:
29
29
  **Last Updated:** YYYY-MM-DD HH:MM
30
30
  **Feature:** Short feature name
31
31
  **Branch:** git branch name
32
- **Linear Issues:** TAS-XX, TAS-YY, TAS-ZZ
32
+ **Tracker Issues:** TAS-XX, TAS-YY, TAS-ZZ
33
33
 
34
34
  ## Current Phase
35
35
 
@@ -37,21 +37,21 @@ Phase N of M — Brief description of what this phase does
37
37
 
38
38
  ## Completed Work
39
39
 
40
- | Task | Linear | Agent | Status | Files |
41
- |------|--------|-------|--------|-------|
40
+ | Task | Tracker | Agent | Status | Files |
41
+ |------|---------|-------|--------|-------|
42
42
  | Description | TAS-XX | Agent Name | ✅ Done | file1.ts, file2.ts |
43
43
  | Description | TAS-YY | Agent Name | ✅ Done | file3.ts |
44
44
 
45
45
  ## In Progress
46
46
 
47
- | Task | Linear | Agent | Status | Notes |
48
- |------|--------|-------|--------|-------|
47
+ | Task | Tracker | Agent | Status | Notes |
48
+ |------|---------|-------|--------|-------|
49
49
  | Description | TAS-ZZ | Agent Name | 🔄 In Progress | What's been done so far |
50
50
 
51
51
  ## Remaining Work
52
52
 
53
- | Task | Linear | Agent | Dependencies | Files |
54
- |------|--------|-------|-------------|-------|
53
+ | Task | Tracker | Agent | Dependencies | Files |
54
+ |------|---------|-------|-------------|-------|
55
55
  | Description | TAS-AA | Agent Name | TAS-ZZ | file4.ts, file5.ts |
56
56
 
57
57
  ## Pending Approvals
@@ -80,7 +80,7 @@ the row from this table — the approval was already resolved.
80
80
 
81
81
  Track each delegation to monitor budget and optimize future model assignments:
82
82
 
83
- | # | Agent | Linear | Model Tier | Est. Tokens | Duration | Status |
83
+ | # | Agent | Tracker | Model Tier | Est. Tokens | Duration | Status |
84
84
  |---|-------|--------|------------|-------------|----------|--------|
85
85
  | 1 | Content Engineer | TAS-XX | Standard | ~20K | 8 min | ✅ Done |
86
86
  | 2 | DB Engineer | TAS-YY | Standard | ~25K | 12 min | ✅ Done |
@@ -93,7 +93,7 @@ Track each delegation to monitor budget and optimize future model assignments:
93
93
  ```
94
94
  Agent A: dir1/, dir2/
95
95
  Agent B: dir3/, dir4/
96
- Agent C: docs/
96
+ Agent C: .github/customizations/
97
97
  ```
98
98
 
99
99
  ## Resume Instructions
@@ -101,7 +101,7 @@ Agent C: docs/
101
101
  Step-by-step instructions for a new session to pick up where this one left off:
102
102
 
103
103
  1. Check out branch `feat/xxx`
104
- 2. Read Linear issues TAS-XX, TAS-YY for context
104
+ 2. Read tracker issues TAS-XX, TAS-YY for context
105
105
  3. Start Phase N+1: [specific instructions]
106
106
  ```
107
107
 
@@ -109,9 +109,9 @@ Step-by-step instructions for a new session to pick up where this one left off:
109
109
 
110
110
  When starting a new session:
111
111
 
112
- 1. **Check for checkpoint** — Read `docs/SESSION-CHECKPOINT.md` if it exists
112
+ 1. **Check for checkpoint** — Read `.github/customizations/SESSION-CHECKPOINT.md` if it exists
113
113
  2. **Verify state** — Run `git status`, check branch, verify files match checkpoint
114
- 3. **Check Linear** — List in-progress and todo issues for current feature
114
+ 3. **Check tracker** — List in-progress and todo issues for current feature
115
115
  4. **Follow resume instructions** — Execute the specific steps listed in the checkpoint
116
116
  5. **Update checkpoint** — After resuming, update the checkpoint with current progress
117
117
 
@@ -137,10 +137,10 @@ When a checkpoint reveals multiple possible paths forward, document them as fork
137
137
 
138
138
  ## Cleanup
139
139
 
140
- After a feature is fully complete (all Linear issues Done):
140
+ After a feature is fully complete (all tracker issues Done):
141
141
 
142
- 1. Archive the checkpoint content to the relevant Linear issue comments
143
- 2. Delete `docs/SESSION-CHECKPOINT.md` to keep the workspace clean
142
+ 1. Archive the checkpoint content to the relevant tracker issue comments
143
+ 2. Delete `.github/customizations/SESSION-CHECKPOINT.md` to keep the workspace clean
144
144
  3. The next feature starts with a fresh checkpoint
145
145
 
146
146
  ## Integration with Team Lead
@@ -169,7 +169,7 @@ Add a `## Step Output Log` section to the checkpoint file:
169
169
 
170
170
  ### Step 1: [Short description]
171
171
  - **Agent:** [Agent Name]
172
- - **Linear:** TAS-XX
172
+ - **Tracker:** TAS-XX
173
173
  - **Status:** ✅ Completed
174
174
  - **Duration:** ~X minutes
175
175
  - **Key Outputs:**
@@ -180,7 +180,7 @@ Add a `## Step Output Log` section to the checkpoint file:
180
180
 
181
181
  ### Step 2: [Short description]
182
182
  - **Agent:** [Agent Name]
183
- - **Linear:** TAS-YY
183
+ - **Tracker:** TAS-YY
184
184
  - **Status:** ❌ Failed (attempt 1)
185
185
  - **Error:** [Specific error message or failure reason]
186
186
  - **Cached Context from Step 1:** [Reference what Step 1 produced]
@@ -3,7 +3,7 @@ name: team-lead-reference
3
3
  description: "Reference data for Team Lead orchestration — model routing, pre-delegation checks, cost tracking template, and DLQ format. Load when starting a delegation session."
4
4
  ---
5
5
 
6
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
6
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
7
7
 
8
8
  # Team Lead Reference
9
9
 
@@ -49,7 +49,7 @@ During decomposition, assign a **complexity score** (Fibonacci: 1, 2, 3, 5, 8, 1
49
49
  | Score | Tier | Examples |
50
50
  |-------|------|----------|
51
51
  | **1-2** | Economy/Utility | Docs update, config tweak, rename, simple test |
52
- | **3-5** | Standard | Component build, GROQ query, API route, migration |
52
+ | **3-5** | Standard | Component build, CMS query, API route, migration |
53
53
  | **8** | Premium | Architecture decision, security audit, complex refactor |
54
54
  | **13** | Premium + Panel | DB migration with data transform, auth flow redesign |
55
55
 
@@ -117,7 +117,7 @@ Run these validation checks **before** delegating any subtask. Non-negotiable ga
117
117
 
118
118
  ### Mandatory Checks (before every delegation)
119
119
 
120
- 1. **Linear issue exists** — The subtask has a tracked issue with acceptance criteria
120
+ 1. **Tracker issue exists** — The subtask has a tracked issue with acceptance criteria
121
121
  2. **File partition is clean** — No overlap with other active/parallel agents
122
122
  3. **Dependencies are met** — All prerequisite tasks are verified Done (not just claimed done)
123
123
  4. **Prompt is specific** — Contains: objective, file paths, acceptance criteria, patterns to follow
@@ -140,7 +140,7 @@ Before calling `runSubagent` or handing off to a background agent, mentally walk
140
140
 
141
141
  ## Cost Tracking Convention
142
142
 
143
- After completing a feature (all Linear issues Done), add a cost summary to the roadmap update:
143
+ After completing a feature (all tracker issues Done), add a cost summary to the roadmap update:
144
144
 
145
145
  ```markdown
146
146
  **Cost Summary:**
@@ -165,11 +165,11 @@ When collecting results from multiple sub-agents or background agents, **tag eac
165
165
  ```markdown
166
166
  ### [Content Engineer] TAS-42 Schema
167
167
  - Created `schemas/review.ts` with star rating field
168
- - Deployed to Sanity Studio
168
+ - Deployed to CMS studio
169
169
  - Verification: lint ✅, type-check ✅
170
170
 
171
171
  ### [DB Engineer] TAS-43 Migration
172
- - Created `supabase/migrations/20260227_add_reviews.sql`
172
+ - Created migration file for reviews table
173
173
  - RLS policies for authenticated users
174
174
  - Verification: migration applied ✅, tests ✅
175
175
  ```
@@ -200,7 +200,7 @@ Log to `.github/customizations/AGENT-FAILURES.md` when:
200
200
  |-------|-------|
201
201
  | **Date** | YYYY-MM-DD |
202
202
  | **Agent** | Agent name |
203
- | **Linear Issue** | TAS-XX (if applicable) |
203
+ | **Tracker Issue** | TAS-XX (if applicable) |
204
204
  | **Failure Type** | `verification-fail` / `tool-error` / `panel-block` / `timeout` / `scope-creep` |
205
205
  | **Attempts** | Number of attempts before logging |
206
206
  | **Est. Tokens Spent** | ~XXK across all attempts |
@@ -289,7 +289,7 @@ When automated resolution is exhausted (panel 3x BLOCK, approach conflicts, or c
289
289
  6. **Recommend an action** — Which option the Team Lead thinks is best, with specific next steps
290
290
  7. **Link artifacts** — Panel reports, review logs, changed files, DLQ entries
291
291
  8. **Log to disputes.ndjson** — Append a machine-readable record (see logs README)
292
- 9. **Update the Linear issue** — Add the dispute ID and link to the dispute record
292
+ 9. **Update the tracker issue** — Add the dispute ID and link to the dispute record
293
293
  10. **Update the Index table** — Add the new dispute to the bottom of the Index
294
294
 
295
295
  ### After Human Resolution
@@ -298,7 +298,7 @@ When a human resolves a dispute:
298
298
  1. Update the dispute `Status` → `resolved` or `deferred`
299
299
  2. Record which option was chosen and any additional instructions
300
300
  3. If `resolved` → re-delegate the task with the human's decision as an explicit constraint
301
- 4. If `deferred` → create a follow-up Linear issue and continue with other work
301
+ 4. If `deferred` → create a follow-up tracker issue and continue with other work
302
302
  5. Log the resolution in `disputes.ndjson` (update the existing record or append a resolution event)
303
303
 
304
304
  ### Session Start: Check Disputes
@@ -3,7 +3,7 @@ name: testing-workflow
3
3
  description: "Comprehensive testing workflow including test planning, unit/integration/E2E testing patterns, coverage requirements, and common testing mistakes. Use when writing tests, planning test strategies, or validating feature completeness."
4
4
  ---
5
5
 
6
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
6
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
7
7
 
8
8
  # Testing Workflow
9
9
 
@@ -11,7 +11,7 @@ description: "Comprehensive testing workflow including test planning, unit/integ
11
11
 
12
12
  - Test implementations thoroughly before claiming completion.
13
13
  - Every feature must be validated through comprehensive testing covering happy paths, edge cases, error conditions, and user interactions.
14
- - **Mandatory**: Every feature implementation must be tested in the browser using Chrome DevTools MCP automation before marking as complete.
14
+ - **Mandatory**: Every feature implementation must be tested in the browser using the project's E2E testing tool (resolved via the **e2e-testing** capability slot) before marking as complete.
15
15
 
16
16
  ## E2E Testing Context Management
17
17
 
@@ -22,11 +22,11 @@ description: "Comprehensive testing workflow including test planning, unit/integ
22
22
  2. **MAX 3 screenshots** per session.
23
23
  3. **Use `evaluate_script()` over `take_snapshot()`** — returns less data.
24
24
  4. **Reload between major test flows** to clear state.
25
- 5. **Log results separately** — append to `docs/testing/E2E-RESULTS.md`.
25
+ 5. **Log results separately** — append to `.github/customizations/logs/e2e-results.md`.
26
26
 
27
27
  ### Suite Files
28
28
 
29
- See `project.instructions.md` for the full list of E2E test suite files.
29
+ See `.github/customizations/project.instructions.md` for the full list of E2E test suite files.
30
30
 
31
31
  ## Pre-Implementation Test Plan
32
32
 
@@ -66,11 +66,11 @@ Before implementing any feature, create a plan covering:
66
66
 
67
67
  > **Detailed breakpoint definitions, resize commands, and per-breakpoint checklists:** See the **browser-testing** skill. The **validation-gates** skill (Gate 3) defines the mandatory testing protocol.
68
68
 
69
- **Anti-pattern:** Testing only at desktop (or only at the default browser width) and assuming responsive classes work. Tailwind classes can be incorrect — always verify visually at every breakpoint.
69
+ **Anti-pattern:** Testing only at desktop (or only at the default browser width) and assuming responsive classes work. CSS utility classes can be incorrect — always verify visually at every breakpoint.
70
70
 
71
71
  ## Coverage Requirements
72
72
 
73
- ### Unit Tests (Jest)
73
+ ### Unit Tests
74
74
  - **Minimum 95% coverage** for all new code.
75
75
  - All exported functions, React components, custom hooks.
76
76
  - Edge cases and error conditions. Input validation.
@@ -110,7 +110,7 @@ After completing any feature:
110
110
 
111
111
  1. Start dev server (see `project.instructions.md` for app/port details).
112
112
  2. Open browser to the dev URL.
113
- 3. Test all critical user flows with Chrome DevTools MCP.
113
+ 3. Test all critical user flows with the project's E2E testing tool (see the **e2e-testing** skill).
114
114
  4. Test edge cases (empty results, max/min values, errors).
115
115
  5. Document results with screenshots.
116
116
 
@@ -128,9 +128,9 @@ After completing any feature:
128
128
 
129
129
  ## Commands
130
130
 
131
- ```bash
132
- yarn nx run <project>:test # Run tests
133
- yarn nx run <project>:test --coverage # With coverage
134
- yarn nx run <project>:test -u # Update snapshots
135
- yarn nx affected -t test # Affected tests
136
- ```
131
+ Resolve exact test commands via the **codebase-tool** skill. Common tasks:
132
+
133
+ - Run project tests
134
+ - Run with coverage
135
+ - Update snapshots
136
+ - Run affected tests only
@@ -3,7 +3,7 @@ name: validation-gates
3
3
  description: "Shared validation gates for all orchestration workflows — deterministic checks, browser testing, cache management, regression checks. Referenced by prompt templates to maintain single source of truth."
4
4
  ---
5
5
 
6
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
6
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
7
7
 
8
8
  # Validation Gates
9
9
 
@@ -11,13 +11,11 @@ Canonical reference for validation gates shared across all orchestration workflo
11
11
 
12
12
  ## Gate 1: Deterministic Checks
13
13
 
14
- Run for every affected NX project:
14
+ Run for every affected project (resolve exact commands via the **codebase-tool** skill):
15
15
 
16
- ```bash
17
- yarn nx run <project>:lint --fix
18
- yarn nx run <project>:test
19
- yarn nx run <project>:build
20
- ```
16
+ - **Lint** (with auto-fix)
17
+ - **Test**
18
+ - **Build**
21
19
 
22
20
  All must pass with zero errors. Run for **every** project that consumed modified files, not just the primary project.
23
21
 
@@ -43,18 +41,13 @@ The reviewer validates: acceptance criteria met, file partition respected, no re
43
41
 
44
42
  **Always clear before testing.** Testing stale code wastes time and produces false results.
45
43
 
46
- ```bash
47
- rm -rf apps/<app>/.next
48
- yarn nx reset
49
- ```
50
-
51
- Run these commands before starting the dev server for browser testing.
44
+ Clear framework caches and task runner caches before starting the dev server for browser testing. See the **codebase-tool** skill for cache-clearing commands.
52
45
 
53
46
  ## Gate 3: Browser Testing (MANDATORY for UI Changes)
54
47
 
55
48
  > **HARD GATE:** A task with UI changes is NOT done until you have screenshots in Chrome proving the feature works. "The code looks correct" is not proof. "Tests pass" is not proof. Only a screenshot of the working UI in Chrome is proof.
56
49
 
57
- 1. **Start the dev server** — `yarn nx run <app>:serve` — wait for it to be ready
50
+ 1. **Start the dev server** — use the project's serve command (see the **codebase-tool** skill) — wait for it to be ready
58
51
  2. **Navigate to affected pages** — Verify the new feature renders correctly
59
52
  3. **Verify SPECIFIC features** — Check every feature listed in the acceptance criteria. If the criteria say "icons, groups, and AND/OR toggle", you must see all three in the browser
60
53
  4. **Test interactions** — Click buttons, fill forms, toggle filters, submit data
@@ -92,7 +85,7 @@ Use this checklist for any orchestration workflow:
92
85
 
93
86
  - [ ] Lint, test, and build pass for all affected projects
94
87
  - [ ] **Fast review passed** (mandatory — load **fast-review** skill)
95
- - [ ] Dev server started with **clean cache** (`rm -rf .next && yarn nx reset`)
88
+ - [ ] Dev server started with **clean cache** (clear framework + task runner caches — see the **codebase-tool** skill)
96
89
  - [ ] UI changes verified in Chrome with screenshots at all breakpoints
97
90
  - [ ] Every acceptance criteria item visually confirmed — not just "page loads"
98
91
  - [ ] No regressions in adjacent functionality
@@ -1,61 +0,0 @@
1
- {
2
- "servers": {
3
- "Sanity": {
4
- "url": "https://mcp.sanity.io",
5
- "type": "http"
6
- },
7
- "Contentful": {
8
- "url": "https://mcp.contentful.com/sse",
9
- "type": "http"
10
- },
11
- "Strapi": {
12
- "command": "npx",
13
- "args": ["-y", "@strapi/mcp-server"],
14
- "type": "stdio"
15
- },
16
- "Vercel": {
17
- "url": "https://mcp.vercel.com",
18
- "type": "http"
19
- },
20
- "Supabase": {
21
- "type": "http",
22
- "url": "https://mcp.supabase.com/mcp"
23
- },
24
- "Convex": {
25
- "command": "npx",
26
- "args": ["-y", "@anthropic-ai/convex-mcp-server"],
27
- "type": "stdio"
28
- },
29
- "chrome-devtools": {
30
- "command": "npx",
31
- "args": ["-y", "chrome-devtools-mcp@latest"],
32
- "type": "stdio"
33
- },
34
- "Linear": {
35
- "type": "stdio",
36
- "command": "npx",
37
- "args": [
38
- "-y",
39
- "@mseep/linear-mcp"
40
- ],
41
- "envFile": "${workspaceFolder}/.env"
42
- },
43
- "Jira": {
44
- "url": "https://mcp.atlassian.com/v2/sse",
45
- "type": "http"
46
- },
47
- "Slack": {
48
- "type": "stdio",
49
- "command": "npx",
50
- "args": ["-y", "@kazuph/mcp-slack"],
51
- "envFile": "${workspaceFolder}/.env",
52
- "env": {
53
- "SLACK_MCP_ADD_MESSAGE_TOOL": "true"
54
- }
55
- },
56
- "Teams": {
57
- "url": "https://mcp.microsoft365.com/mcp",
58
- "type": "http"
59
- }
60
- }
61
- }