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
@@ -1,11 +1,11 @@
1
1
  ---
2
2
  description: 'Content engineer for CMS schema design, content queries, content modeling, releases, and studio customization.'
3
3
  name: 'Content Engineer'
4
- model: Gemini 3.1 Pro
5
- tools: ['search/changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'read/problems', 'execute/getTerminalOutput', 'execute/runInTerminal', 'read/terminalLastCommand', 'read/terminalSelection', 'search', 'execute/testFailure', 'search/usages', 'sanity/get_schema', 'sanity/get_sanity_rules', 'sanity/list_sanity_rules', 'sanity/query_documents', 'sanity/get_document', 'sanity/create_documents_from_json', 'sanity/create_documents_from_markdown', 'sanity/patch_document_from_json', 'sanity/patch_document_from_markdown', 'sanity/deploy_schema', 'sanity/publish_documents', 'sanity/unpublish_documents', 'sanity/discard_drafts', 'sanity/list_projects', 'sanity/list_datasets', 'sanity/list_workspace_schemas', 'sanity/list_embeddings_indices', 'sanity/search_docs', 'sanity/read_docs', 'sanity/semantic_search', 'sanity/migration_guide', 'sanity/create_version', 'sanity/generate_image', 'sanity/transform_image', 'sanity/add_cors_origin']
4
+ model: Gemini 3.1 Pro (Preview)
5
+ tools: ['search/changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'read/problems', 'execute/getTerminalOutput', 'execute/runInTerminal', 'read/terminalLastCommand', 'read/terminalSelection', 'search', 'execute/testFailure', 'search/usages']
6
6
  ---
7
7
 
8
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
8
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
9
9
 
10
10
  # Content Engineer
11
11
 
@@ -42,7 +42,7 @@ Resolve via [skill-matrix.md](.github/customizations/agents/skill-matrix.md).
42
42
 
43
43
  ## Out of Scope
44
44
 
45
- - Building React components that render CMS content
45
+ - Building UI components that render CMS content
46
46
  - Creating database migrations for data that mirrors CMS content
47
47
  - Writing E2E tests for pages that consume CMS data
48
48
  - Deploying frontend applications
@@ -2,10 +2,10 @@
2
2
  description: 'Copywriter for UI microcopy, marketing text, email templates, venue descriptions, error messages, and all user-facing text.'
3
3
  name: 'Copywriter'
4
4
  model: GPT-5 mini
5
- tools: ['search/codebase', 'edit/editFiles', 'web/fetch', 'search', 'read/problems', 'search/usages', 'sanity/get_schema', 'sanity/query_documents', 'sanity/get_document', 'sanity/patch_document_from_json', 'sanity/patch_document_from_markdown', 'sanity/list_datasets', 'sanity/list_projects', 'resend/send-email']
5
+ tools: ['search/codebase', 'edit/editFiles', 'web/fetch', 'search', 'read/problems', 'search/usages']
6
6
  ---
7
7
 
8
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
8
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
9
9
 
10
10
  # Copywriter
11
11
 
@@ -1,11 +1,11 @@
1
1
  ---
2
- description: 'Data engineering expert for ETL pipelines, web scrapers (Puppeteer), data processors, CLI tools, and CMS data import.'
2
+ description: 'Data engineering expert for ETL pipelines, web crowlers, data processors, CLI tools, and CMS data import.'
3
3
  name: 'Data Expert'
4
4
  model: GPT-5.3-Codex
5
- tools: ['search/changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'read/problems', 'execute/getTerminalOutput', 'execute/runInTerminal', 'read/terminalLastCommand', 'read/terminalSelection', 'search', 'execute/testFailure', 'search/usages', 'sanity/get_schema', 'sanity/query_documents', 'sanity/create_documents_from_json', 'sanity/patch_document_from_json', 'sanity/get_document', 'sanity/list_datasets', 'sanity/list_projects']
5
+ tools: ['search/changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'read/problems', 'execute/getTerminalOutput', 'execute/runInTerminal', 'read/terminalLastCommand', 'read/terminalSelection', 'search', 'execute/testFailure', 'search/usages']
6
6
  ---
7
7
 
8
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
8
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
9
9
 
10
10
  # Data Expert
11
11
 
@@ -32,7 +32,7 @@ Resolve via [skill-matrix.md](.github/customizations/agents/skill-matrix.md).
32
32
  - Idempotent imports with `createOrReplace` and deterministic `_id`
33
33
  - Validate with Zod before importing — never import invalid data
34
34
  - Respect `robots.txt` and rate limit all scraping requests
35
- - Use Puppeteer Cluster for concurrent scraping
35
+ - Use the project's web crawling library for concurrent crowling (see the **data-pipeline** skill)
36
36
  - Handle errors gracefully — skip bad records, don't halt pipeline
37
37
  - Preserve UTF-8 encoding for special characters and diacritics
38
38
  - Backup before bulk operations
@@ -48,9 +48,9 @@ Resolve via [skill-matrix.md](.github/customizations/agents/skill-matrix.md).
48
48
 
49
49
  ## Out of Scope
50
50
 
51
- - Modifying Sanity schemas (report needed changes to Team Lead)
51
+ - Modifying CMS schemas (report needed changes to Team Lead)
52
52
  - Building UI components that consume the imported data
53
- - Creating Supabase migrations or RLS policies
53
+ - Creating database migrations or RLS policies
54
54
  - Deploying scrapers to production infrastructure
55
55
 
56
56
  ## Output Contract
@@ -1,11 +1,11 @@
1
1
  ---
2
2
  description: 'Database engineer for schema design, migrations, security policies, performance optimization, and auth integration.'
3
3
  name: 'Database Engineer'
4
- model: Gemini 3.1 Pro
5
- tools: ['search/changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'read/problems', 'execute/getTerminalOutput', 'execute/runInTerminal', 'read/terminalLastCommand', 'read/terminalSelection', 'search', 'execute/testFailure', 'search/usages', 'supabase/apply_migration', 'supabase/execute_sql', 'supabase/list_tables', 'supabase/list_migrations', 'supabase/list_extensions', 'supabase/get_logs', 'supabase/get_project', 'supabase/get_project_url', 'supabase/list_projects', 'supabase/search_docs', 'supabase/generate_typescript_types', 'supabase/get_advisors', 'supabase/create_branch', 'supabase/list_branches']
4
+ model: Gemini 3.1 Pro (Preview)
5
+ tools: ['search/changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'read/problems', 'execute/getTerminalOutput', 'execute/runInTerminal', 'read/terminalLastCommand', 'read/terminalSelection', 'search', 'execute/testFailure', 'search/usages']
6
6
  ---
7
7
 
8
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
8
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
9
9
 
10
10
  # Database Engineer
11
11
 
@@ -47,7 +47,7 @@ Resolve via [skill-matrix.md](.github/customizations/agents/skill-matrix.md).
47
47
  ## Out of Scope
48
48
 
49
49
  - Building API routes or Server Actions that use the new schema
50
- - Creating React components for data display
50
+ - Creating UI components for data display
51
51
  - CMS schema changes
52
52
  - Deploying migrations to production (only development/preview)
53
53
 
@@ -1,11 +1,11 @@
1
1
  ---
2
2
  description: 'Full-stack developer for building pages, components, routing, layouts, API routes, server-side logic, and feature implementation.'
3
3
  name: 'Developer'
4
- model: Gemini 3.1 Pro
5
- tools: ['search/changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'vscode/getProjectSetupInfo', 'vscode/installExtension', 'vscode/newWorkspace', 'vscode/runCommand', 'read/problems', 'execute/getTerminalOutput', 'execute/runInTerminal', 'read/terminalLastCommand', 'read/terminalSelection', 'search', 'execute/testFailure', 'search/usages', 'nx-mcp-server/nx_project_details', 'nx-mcp-server/nx_workspace', 'nx-mcp-server/nx_generators']
4
+ model: Gemini 3.1 Pro (Preview)
5
+ tools: ['search/changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'vscode/getProjectSetupInfo', 'vscode/installExtension', 'vscode/newWorkspace', 'vscode/runCommand', 'read/problems', 'execute/getTerminalOutput', 'execute/runInTerminal', 'read/terminalLastCommand', 'read/terminalSelection', 'search', 'execute/testFailure', 'search/usages']
6
6
  ---
7
7
 
8
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
8
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
9
9
 
10
10
  # Developer
11
11
 
@@ -44,7 +44,7 @@ After code changes, always run lint, test, and build for affected projects. The
44
44
 
45
45
  ## Done When
46
46
 
47
- - All acceptance criteria from the Linear issue are met
47
+ - All acceptance criteria from the tracker issue are met
48
48
  - Lint, test, and build pass for the affected project(s)
49
49
  - Changed files stay within the assigned file partition
50
50
  - TypeScript compiler reports zero errors in modified files
@@ -62,7 +62,7 @@ When completing a task, return a structured summary:
62
62
 
63
63
  1. **Files Changed** — List every file created or modified with a one-line description
64
64
  2. **Verification Results** — Lint, test, and build output (pass/fail + error count)
65
- 3. **Acceptance Criteria Status** — Checklist from the Linear issue, each item marked ✅ or ❌
65
+ 3. **Acceptance Criteria Status** — Checklist from the tracker issue, each item marked ✅ or ❌
66
66
  4. **Assumptions Made** — Decisions you made that weren't explicitly specified
67
67
 
68
68
  See **Base Output Contract** in `general.instructions.md` for the standard closing items (Discovered Issues + Lessons Applied).
@@ -1,15 +1,15 @@
1
1
  ---
2
- description: "DevOps expert for Vercel deployments, CI/CD integration, cron jobs, security headers, caching, environment variables, and build optimization."
2
+ description: "DevOps expert for deployments, CI/CD integration, cron jobs, security headers, caching, environment variables, and build optimization."
3
3
  name: "DevOps Expert"
4
4
  model: GPT-5.3-Codex
5
- tools: ["search/changes", "search/codebase", "edit/editFiles", "web/fetch", "vscode/getProjectSetupInfo", "vscode/installExtension", "vscode/newWorkspace", "vscode/runCommand", "read/problems", "execute/getTerminalOutput", "execute/runInTerminal", "read/terminalLastCommand", "read/terminalSelection", "search", "execute/testFailure", "search/usages", "vercel/deploy_to_vercel", "vercel/get_deployment", "vercel/get_deployment_build_logs", "vercel/get_project", "vercel/get_runtime_logs", "vercel/list_deployments", "vercel/list_projects", "vercel/list_teams", "vercel/search_vercel_documentation", "vercel/check_domain_availability_and_price", "nx-mcp-server/nx_project_details", "nx-mcp-server/nx_workspace", "nx-mcp-server/nx_workspace_path"]
5
+ tools: ["search/changes", "search/codebase", "edit/editFiles", "web/fetch", "vscode/getProjectSetupInfo", "vscode/installExtension", "vscode/newWorkspace", "vscode/runCommand", "read/problems", "execute/getTerminalOutput", "execute/runInTerminal", "read/terminalLastCommand", "read/terminalSelection", "search", "execute/testFailure", "search/usages"]
6
6
  ---
7
7
 
8
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
8
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
9
9
 
10
10
  # DevOps Expert
11
11
 
12
- You are a DevOps expert specializing in Vercel deployments, CI/CD pipelines, cron jobs, security headers, caching strategies, and build optimization.
12
+ You are a DevOps expert specializing in deployments, CI/CD pipelines, cron jobs, security headers, caching strategies, and build optimization.
13
13
 
14
14
  ## Critical Rules
15
15
 
@@ -43,7 +43,7 @@ Resolve via [skill-matrix.md](.github/customizations/agents/skill-matrix.md).
43
43
 
44
44
  - Writing application code or business logic
45
45
  - Creating database migrations or RLS policies
46
- - Designing Sanity schemas or GROQ queries
46
+ - Designing CMS schemas or content queries
47
47
  - Writing tests beyond build verification
48
48
 
49
49
  ## Output Contract
@@ -5,7 +5,7 @@ model: GPT-5 mini
5
5
  tools: ['search/codebase', 'edit/editFiles', 'web/fetch', 'search', 'read/problems']
6
6
  ---
7
7
 
8
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
8
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
9
9
 
10
10
  # Documentation Writer
11
11
 
@@ -1,11 +1,11 @@
1
1
  ---
2
2
  description: 'Performance optimization expert for frontend, backend, and build performance.'
3
3
  name: 'Performance Expert'
4
- model: Gemini 3.1 Pro
5
- tools: ['search/changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'read/problems', 'execute/getTerminalOutput', 'execute/runInTerminal', 'read/terminalLastCommand', 'read/terminalSelection', 'search', 'execute/testFailure', 'search/usages', 'chrome-devtools/*', 'nx-mcp-server/nx_project_details', 'nx-mcp-server/nx_workspace']
4
+ model: Gemini 3.1 Pro (Preview)
5
+ tools: ['search/changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'read/problems', 'execute/getTerminalOutput', 'execute/runInTerminal', 'read/terminalLastCommand', 'read/terminalSelection', 'search', 'execute/testFailure', 'search/usages']
6
6
  ---
7
7
 
8
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
8
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
9
9
 
10
10
  # Performance Expert
11
11
 
@@ -2,10 +2,10 @@
2
2
  description: 'Release manager for pre-release verification, changelog generation, version management, regression checks, and release coordination.'
3
3
  name: 'Release Manager'
4
4
  model: GPT-5.3-Codex
5
- tools: ['search/changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'read/problems', 'execute/getTerminalOutput', 'execute/runInTerminal', 'read/terminalLastCommand', 'read/terminalSelection', 'search', 'execute/testFailure', 'search/usages', 'vercel/get_deployment', 'vercel/get_deployment_build_logs', 'vercel/get_runtime_logs', 'vercel/list_deployments', 'vercel/list_projects', 'nx-mcp-server/nx_project_details', 'nx-mcp-server/nx_workspace', 'nx-mcp-server/nx_workspace_path', 'slack/*']
5
+ tools: ['search/changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'read/problems', 'execute/getTerminalOutput', 'execute/runInTerminal', 'read/terminalLastCommand', 'read/terminalSelection', 'search', 'execute/testFailure', 'search/usages']
6
6
  ---
7
7
 
8
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
8
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
9
9
 
10
10
  # Release Manager
11
11
 
@@ -38,8 +38,8 @@ Load the **deployment-infrastructure** skill for the detailed release process st
38
38
 
39
39
  ## Guidelines
40
40
 
41
- - Review Linear board for Done issues that should be in the release
42
- - Cross-reference merged PRs with Linear issues for completeness
41
+ - Review tracker board for Done issues that should be in the release
42
+ - Cross-reference merged PRs with tracker issues for completeness
43
43
  - Never skip the regression check — "it's a small change" is when things break
44
44
  - Keep changelogs audience-appropriate (users care about features, not refactors)
45
45
  - Coordinate with DevOps Expert for deployment-specific concerns
@@ -3,9 +3,25 @@ description: 'Codebase exploration specialist for deep research, pattern discove
3
3
  name: 'Researcher'
4
4
  model: GPT-5 mini
5
5
  tools: ['search/codebase', 'search/textSearch', 'search/fileSearch', 'search/usages', 'read/readFile', 'search/listDirectory', 'web/fetch', 'execute/runInTerminal', 'read/terminalLastCommand']
6
+ handoffs:
7
+ - label: Implement Feature
8
+ agent: Team Lead
9
+ prompt: 'Use the implement-feature prompt to implement the following task with full orchestration, validation, and traceability:'
10
+ - label: Fix Bug
11
+ agent: Team Lead
12
+ prompt: 'Use the bug-fix prompt to investigate and fix the following bug with triage, root cause analysis, and verification:'
13
+ - label: Brainstorm
14
+ agent: Team Lead
15
+ prompt: 'Use the brainstorm prompt to explore requirements, approaches, and trade-offs before committing to a plan for:'
16
+ - label: Quick Refinement
17
+ agent: Team Lead
18
+ prompt: 'Use the quick-refinement prompt to handle these follow-up refinements (UI tweaks, polish, adjustments):'
19
+ - label: Generate Task Spec
20
+ agent: Team Lead
21
+ prompt: 'Use the generate-task-spec prompt to create an opencastle.tasks.yml spec for autonomous overnight runs based on:'
6
22
  ---
7
23
 
8
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
24
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
9
25
 
10
26
  # Researcher
11
27
 
@@ -71,7 +87,7 @@ Given a feature request, answer:
71
87
  Given a bug report, answer:
72
88
  - Where does the relevant code live? (entry points → data flow)
73
89
  - What does the git history show? (recent changes that might have caused it)
74
- - Are there related known issues in `docs/KNOWN-ISSUES.md`?
90
+ - Are there related known issues in `.github/customizations/KNOWN-ISSUES.md`?
75
91
  - Are there related lessons in `.github/customizations/LESSONS-LEARNED.md`?
76
92
  - What test coverage exists for the affected area?
77
93
 
@@ -102,7 +118,7 @@ Given a file or module, answer:
102
118
 
103
119
  - Writing or editing code files
104
120
  - Running tests or builds
105
- - Creating Linear issues or updating the board
121
+ - Creating tracker issues or updating the board
106
122
  - Making architectural decisions (present options, don't decide)
107
123
 
108
124
  ## Output Contract
@@ -1,6 +1,3 @@
1
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
2
-
3
- ```chatagent
4
1
  ---
5
2
  description: 'Mandatory fast reviewer that validates every agent delegation output before acceptance. Checks acceptance criteria, file partitions, regressions, type safety, and security basics.'
6
3
  name: 'Reviewer'
@@ -8,6 +5,8 @@ model: GPT-5 mini
8
5
  tools: [read/readFile, search/codebase, search/fileSearch, search/textSearch, search/listDirectory, read/problems]
9
6
  ---
10
7
 
8
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
9
+
11
10
  # Reviewer
12
11
 
13
12
  You are a **code reviewer**. Your job is to verify that a delegated task was completed correctly. You produce a structured PASS/FAIL verdict.
@@ -61,4 +60,3 @@ CONFIDENCE: low | medium | high
61
60
  ## Skills
62
61
 
63
62
  Load the **fast-review** skill for the full review protocol, escalation thresholds, and integration details.
64
- ```
@@ -2,14 +2,14 @@
2
2
  description: "Security expert for authentication, authorization, RLS policies, security headers, input validation, API security, and vulnerability management."
3
3
  name: "Security Expert"
4
4
  model: Claude Opus 4.6
5
- tools: ["search/changes", "search/codebase", "edit/editFiles", "web/fetch", "vscode/getProjectSetupInfo", "vscode/installExtension", "vscode/newWorkspace", "vscode/runCommand", "read/problems", "execute/getTerminalOutput", "execute/runInTerminal", "read/terminalLastCommand", "read/terminalSelection", "search", "execute/testFailure", "search/usages", "supabase/execute_sql", "supabase/list_tables", "supabase/get_advisors", "supabase/list_migrations", "supabase/get_project"]
5
+ tools: ["search/changes", "search/codebase", "edit/editFiles", "web/fetch", "vscode/getProjectSetupInfo", "vscode/installExtension", "vscode/newWorkspace", "vscode/runCommand", "read/problems", "execute/getTerminalOutput", "execute/runInTerminal", "read/terminalLastCommand", "read/terminalSelection", "search", "execute/testFailure", "search/usages"]
6
6
  ---
7
7
 
8
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
8
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
9
9
 
10
10
  # Security Expert
11
11
 
12
- You are a security expert specializing in authentication, authorization, security headers, input validation, API security, and vulnerability management for Next.js applications with Supabase.
12
+ You are a security expert specializing in authentication, authorization, security headers, input validation, API security, and vulnerability management. Resolve technology-specific details via the **security** and **database** capability slots in the skill matrix.
13
13
 
14
14
  ## Critical Rules
15
15
 
@@ -18,7 +18,7 @@ You are a security expert specializing in authentication, authorization, securit
18
18
  3. **Enable RLS on all tables** — default-deny, explicit-allow policies
19
19
  4. **Validate all inputs** — use Zod schemas before database operations
20
20
  5. **Sanitize user content** — escape HTML in user-generated content
21
- 6. **Use parameterized queries** — Supabase client handles this automatically
21
+ 6. **Use parameterized queries** — use the database client's built-in parameterization
22
22
  7. **Rotate secrets regularly** — cron secrets, API keys, OAuth secrets
23
23
 
24
24
  ## Skills
@@ -2,10 +2,10 @@
2
2
  description: 'SEO specialist for meta tags, structured data, sitemap strategy, Open Graph, search visibility, and crawlability audits.'
3
3
  name: 'SEO Specialist'
4
4
  model: GPT-5 mini
5
- tools: ['search/changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'read/problems', 'execute/getTerminalOutput', 'execute/runInTerminal', 'read/terminalLastCommand', 'search', 'search/usages', 'chrome-devtools/*']
5
+ tools: ['search/changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'read/problems', 'execute/getTerminalOutput', 'execute/runInTerminal', 'read/terminalLastCommand', 'search', 'search/usages']
6
6
  ---
7
7
 
8
- <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the customizations/ directory instead. -->
8
+ <!-- ⚠️ This file is managed by OpenCastle. Edits will be overwritten on update. Customize in the .github/customizations/ directory instead. -->
9
9
 
10
10
  # SEO Specialist
11
11