opencode-agent-kit 1.0.3 → 1.0.6

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 (35) hide show
  1. package/README.md +9 -9
  2. package/bin/commands/init.mjs +2 -2
  3. package/package.json +1 -1
  4. package/template/.opencode/agents/nuxt-frontend-developer.md +10 -10
  5. package/template/.opencode/agents/ui-ux-designer.md +128 -2
  6. package/template/opencode.json +42 -7
  7. /package/template/.opencode/{agent-docs → docs}/backend/README.md +0 -0
  8. /package/template/.opencode/{agent-docs → docs}/backend/node/BACKEND_PATTERNS.md +0 -0
  9. /package/template/.opencode/{agent-docs → docs}/backend/node/BACKEND_QUICK_START.md +0 -0
  10. /package/template/.opencode/{agent-docs → docs}/frontend/next/README.md +0 -0
  11. /package/template/.opencode/{agent-docs → docs}/frontend/nuxt/API_PATTERNS.md +0 -0
  12. /package/template/.opencode/{agent-docs → docs}/frontend/nuxt/CHEATSHEET.md +0 -0
  13. /package/template/.opencode/{agent-docs → docs}/frontend/nuxt/COMPLETION_REPORT.md +0 -0
  14. /package/template/.opencode/{agent-docs → docs}/frontend/nuxt/EXAMPLES.md +0 -0
  15. /package/template/.opencode/{agent-docs → docs}/frontend/nuxt/INDEX.md +0 -0
  16. /package/template/.opencode/{agent-docs → docs}/frontend/nuxt/MCP_GUIDE.md +0 -0
  17. /package/template/.opencode/{agent-docs → docs}/frontend/nuxt/MENTOR_CURRICULUM_30_DAYS.md +0 -0
  18. /package/template/.opencode/{agent-docs → docs}/frontend/nuxt/MENTOR_CURRICULUM_CHECKLIST.md +0 -0
  19. /package/template/.opencode/{agent-docs → docs}/frontend/nuxt/MENTOR_WEEKLY_ASSIGNMENTS.md +0 -0
  20. /package/template/.opencode/{agent-docs → docs}/frontend/nuxt/QUICK_START.md +0 -0
  21. /package/template/.opencode/{agent-docs → docs}/frontend/nuxt/README.md +0 -0
  22. /package/template/.opencode/{agent-docs → docs}/frontend/nuxt/README_AGENTS.md +0 -0
  23. /package/template/.opencode/{agent-docs → docs}/frontend/nuxt/README_DOCS.md +0 -0
  24. /package/template/.opencode/{agent-docs → docs}/frontend/nuxt/SUMMARY.md +0 -0
  25. /package/template/.opencode/{agent-docs → docs}/frontend/nuxt/TEAM_OPERATING_GUIDE.md +0 -0
  26. /package/template/.opencode/{agent-docs → docs}/frontend/nuxt/TESTING_GUIDE.md +0 -0
  27. /package/template/.opencode/{agent-docs → docs}/frontend/nuxt/WORKFLOWS.md +0 -0
  28. /package/template/.opencode/{agent-docs → docs}/frontend/react/API_PATTERNS.md +0 -0
  29. /package/template/.opencode/{agent-docs → docs}/frontend/react/CHEATSHEET.md +0 -0
  30. /package/template/.opencode/{agent-docs → docs}/frontend/react/INDEX.md +0 -0
  31. /package/template/.opencode/{agent-docs → docs}/frontend/react/QUICK_START.md +0 -0
  32. /package/template/.opencode/{agent-docs → docs}/frontend/react/README.md +0 -0
  33. /package/template/.opencode/{agent-docs → docs}/frontend/vue/README.md +0 -0
  34. /package/template/.opencode/{agent-docs → docs}/mobile/android/README.md +0 -0
  35. /package/template/.opencode/{agent-docs → docs}/mobile/flutter/README.md +0 -0
package/README.md CHANGED
@@ -50,10 +50,10 @@ This repository contains a complete OpenCode agent configuration with **Leader
50
50
  - `android-developer.md` — Android Developer (Kotlin/Compose) — `@android`
51
51
  - `flutter-developer.md` — Flutter Developer (Dart) — `@flutter`
52
52
  - `nuxt-frontend-developer-mentor.md` — Nuxt mentor (standalone)
53
- - Internal documentation: `.opencode/agent-docs/`
54
- - Frontend Nuxt: `.opencode/agent-docs/frontend/nuxt/`
55
- - Frontend React: `.opencode/agent-docs/frontend/react/`
56
- - Backend Node: `.opencode/agent-docs/backend/node/`
53
+ - Internal documentation: `.opencode/docs/`
54
+ - Frontend Nuxt: `.opencode/docs/frontend/nuxt/`
55
+ - Frontend React: `.opencode/docs/frontend/react/`
56
+ - Backend Node: `.opencode/docs/backend/node/`
57
57
  - Local skills: `.opencode/skills/` (62 skill playbooks)
58
58
  - Contexts: `.opencode/contexts/` (dev, research, review)
59
59
 
@@ -627,11 +627,11 @@ Agents are configured to always report:
627
627
  - No pushes unless requested by the user
628
628
  - No touching files outside the request scope
629
629
 
630
- Detailed SOP: `.opencode/agent-docs/frontend/nuxt/TEAM_OPERATING_GUIDE.md`
630
+ Detailed SOP: `.opencode/docs/frontend/nuxt/TEAM_OPERATING_GUIDE.md`
631
631
 
632
632
  ## Documentation
633
633
 
634
- Agent documentation is available at `.opencode/agent-docs/frontend/nuxt/`:
634
+ Agent documentation is available at `.opencode/docs/frontend/nuxt/`:
635
635
 
636
636
  | Document | Content |
637
637
  | ------------------------- | ----------------------------- |
@@ -685,9 +685,9 @@ Agent documentation is available at `.opencode/agent-docs/frontend/nuxt/`:
685
685
  - Flutter prompt: `.opencode/agents/flutter-developer.md`
686
686
  - Mobile commands: `.opencode/commands/android-build/`, `android-test/`, `flutter-build/`, `flutter-test/`, `gpc-release/`
687
687
  - Mobile rules: `.opencode/rules/android/`, `flutter/`, `mobile/`
688
- - Main docs: `.opencode/agent-docs/frontend/nuxt/README.md`
689
- - Quick start: `.opencode/agent-docs/frontend/nuxt/QUICK_START.md`
690
- - Docs index: `.opencode/agent-docs/frontend/nuxt/INDEX.md`
688
+ - Main docs: `.opencode/docs/frontend/nuxt/README.md`
689
+ - Quick start: `.opencode/docs/frontend/nuxt/QUICK_START.md`
690
+ - Docs index: `.opencode/docs/frontend/nuxt/INDEX.md`
691
691
 
692
692
  ## Troubleshooting
693
693
 
@@ -220,12 +220,12 @@ export async function init(options) {
220
220
  console.log(
221
221
  ` • opencode.json — 13 agents config with MCP servers`,
222
222
  );
223
- console.log(` • .opencode/agents/ — 14 agent prompt files`);
223
+ console.log(` • .opencode/agents — 14 agent prompt files`);
224
224
  console.log(` • .opencode/skills/ — 60+ skill playbooks`);
225
225
  console.log(` • .opencode/commands/ — 35+ slash commands`);
226
226
  console.log(` • .opencode/rules/ — Scoped coding rules`);
227
227
  console.log(` • .opencode/contexts/ — Dev/review/research contexts`);
228
- console.log(` • .opencode/agent-docs/— Agent documentation`);
228
+ console.log(` • .opencode/docs/— Agent documentation`);
229
229
  console.log(`\n Next steps:`);
230
230
  console.log(` cd ${targetDir}`);
231
231
  console.log(` opencode\n`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "opencode-agent-kit",
3
- "version": "1.0.3",
3
+ "version": "1.0.6",
4
4
  "description": "Multi-stack OpenCode agent toolkit — 13 specialized AI agents (Nuxt, React, Node.js, Laravel, CI3, Android, Flutter, DevOps, SEO) with 62 skills, 36 commands, and 6 MCP servers",
5
5
  "type": "module",
6
6
  "bin": {
@@ -13,16 +13,16 @@ You are a **senior frontend developer** with deep expertise in modern web techno
13
13
 
14
14
  ## 📚 Documentation
15
15
 
16
- Complete documentation available in `.opencode/agent-docs/frontend/nuxt/`:
17
-
18
- - **Quick Start**: `.opencode/agent-docs/frontend/nuxt/QUICK_START.md` - Get started in 5 minutes
19
- - **Examples**: `.opencode/agent-docs/frontend/nuxt/EXAMPLES.md` - 50+ practical examples
20
- - **API Patterns**: `.opencode/agent-docs/frontend/nuxt/API_PATTERNS.md` - useApi composable guide
21
- - **Workflows**: `.opencode/agent-docs/frontend/nuxt/WORKFLOWS.md` - 8 detailed workflows
22
- - **Cheatsheet**: `.opencode/agent-docs/frontend/nuxt/CHEATSHEET.md` - Quick reference
23
- - **MCP Guide**: `.opencode/agent-docs/frontend/nuxt/MCP_GUIDE.md` - MCP integration
24
- - **Testing**: `.opencode/agent-docs/frontend/nuxt/TESTING_GUIDE.md` - Testing & validation
25
- - **Navigation**: `.opencode/agent-docs/frontend/nuxt/INDEX.md` - Full documentation index
16
+ Complete documentation available in `.opencode/docs/frontend/nuxt/`:
17
+
18
+ - **Quick Start**: `.opencode/docs/frontend/nuxt/QUICK_START.md` - Get started in 5 minutes
19
+ - **Examples**: `.opencode/docs/frontend/nuxt/EXAMPLES.md` - 50+ practical examples
20
+ - **API Patterns**: `.opencode/docs/frontend/nuxt/API_PATTERNS.md` - useApi composable guide
21
+ - **Workflows**: `.opencode/docs/frontend/nuxt/WORKFLOWS.md` - 8 detailed workflows
22
+ - **Cheatsheet**: `.opencode/docs/frontend/nuxt/CHEATSHEET.md` - Quick reference
23
+ - **MCP Guide**: `.opencode/docs/frontend/nuxt/MCP_GUIDE.md` - MCP integration
24
+ - **Testing**: `.opencode/docs/frontend/nuxt/TESTING_GUIDE.md` - Testing & validation
25
+ - **Navigation**: `.opencode/docs/frontend/nuxt/INDEX.md` - Full documentation index
26
26
 
27
27
  When users ask for documentation, reference these files.
28
28
 
@@ -22,8 +22,8 @@ You are a **senior UI/UX Designer** specializing in modern web applications, des
22
22
 
23
23
  1. **Design Direction** — Define visual language, layout patterns, and interaction models for features
24
24
  2. **Design System Creation** — Build and maintain design tokens, component libraries, and style guides
25
- 3. **AI-Assisted Design** — Use Impeccable (23 commands) for design critique, audit, polish, shaping, and visual iteration
26
- 4. **Impeccable Context** — Create PRODUCT.md (strategy) and DESIGN.md (visual system) automatically via discovery interview when they don't exist
25
+ 3. **AI-Assisted Design with Stitch** — Immediately attempt to use Stitch MCP tools (`stitch_generate_screen_from_text`, `stitch_edit_screens`, `stitch_create_project`, etc.) to generate UI screens and variations. If Stitch MCP is unavailable, fall back to manual design specs without asking.
26
+ 4. **Impeccable Context** — Use Impeccable (23 commands) for design critique, audit, polish, shaping, and visual iteration
27
27
  5. **UX Flow Mapping** — Map user journeys, wireframe screens, define interaction states
28
28
  6. **Accessibility Guidelines** — Define WCAG 2.1 compliance requirements, contrast ratios, keyboard navigation, screen reader support
29
29
  7. **Component Design Specs** — Provide detailed specifications for each component (layout, states, variants, spacing, typography, color)
@@ -154,6 +154,132 @@ Designer (internal, automatic):
154
154
  6. Provide spec to @frontend-nuxt or @frontend-react for implementation
155
155
  ```
156
156
 
157
+ ## Google Stitch Integration
158
+
159
+ **Google Stitch** is an AI-powered UI design tool accessible via MCP. Use Stitch to accelerate design exploration and generate design variations.
160
+
161
+ ### Stitch MCP Availability
162
+
163
+ Stitch tools are available when Stitch MCP is enabled in your OpenCode config (`opencode.json` or `~/.config/opencode/opencode.json`). The Stitch MCP must be configured with your API key and set to `"enabled": true`.
164
+
165
+ **Check Stitch availability**: When you receive a design request, immediately attempt to use Stitch tools. If Stitch MCP is not available (disabled, no API key, or connection error), proceed with manual design specs without Stitch.
166
+
167
+ ### Stitch MCP Tool Reference
168
+
169
+ | Tool | Purpose |
170
+ |------|---------|
171
+ | `stitch_create_project` | Create a new Stitch project for design work |
172
+ | `stitch_generate_screen_from_text` | Generate UI screens from natural language descriptions |
173
+ | `stitch_get_screen` | Retrieve a generated screen's details |
174
+ | `stitch_list_screens` | List all screens in a Stitch project |
175
+ | `stitch_edit_screens` | Refine existing screens with new prompts |
176
+ | `stitch_list_design_systems` | List available design systems in a project |
177
+ | `stitch_update_design_system` | Update design system tokens (colors, fonts, roundness) |
178
+ | `stitch_create_design_system` | Create a new design system for a project |
179
+ | `stitch_upload_design_md` | Upload DESIGN.md to a Stitch project |
180
+ | `stitch_create_design_system_from_design_md` | Create design system from uploaded DESIGN.md |
181
+
182
+ ### Stitch Workflow
183
+
184
+ ```markdown
185
+ 1. Define Design Requirements
186
+ - User need, target audience, brand context
187
+ - Key features and interactions
188
+ - Accessibility requirements
189
+
190
+ 2. Generate with Stitch
191
+ - Use `stitch_generate_screen_from_text` with natural language descriptions
192
+ - Example: "A marketplace listing page with filter sidebar, product cards with images, prices, and pagination at the bottom"
193
+ - Specify deviceType: "MOBILE" or "DESKTOP"
194
+ - Optionally attach a designSystem for consistency
195
+
196
+ 3. Review and Iterate
197
+ - Use `stitch_get_screen` to examine generated screens
198
+ - Use `stitch_edit_screens` to refine specific screens
199
+ - Iterate until design direction is solid
200
+
201
+ 4. Extract Design Specs
202
+ - Examine Stitch output for color tokens, typography, spacing patterns
203
+ - Identify component structures and interaction patterns
204
+ - Note accessibility considerations
205
+
206
+ 5. Create Formal Specs
207
+ - Convert Stitch output to structured component specs
208
+ - Define exact token values in OKLCH
209
+ - Document states and variants
210
+ - Prepare handoff for @frontend-nuxt (Vue) or @frontend-react (React)
211
+ ```
212
+
213
+ ### When to Use Stitch
214
+
215
+ | Use Stitch | Don't Use Stitch |
216
+ |------------|-----------------|
217
+ | Rapid design exploration | Final design system decisions |
218
+ | Generating layout variations | Detailed component specs (manual is better) |
219
+ | Visual direction brainstorming | Accessibility-critical components (verify manually) |
220
+ | Style/pattern ideation | Brand-critical designs (requires manual refinement) |
221
+ | Multiple screen mockups | Single micro-component specs |
222
+
223
+ ### Stitch Best Practices
224
+
225
+ - Use Stitch output as starting point, not final deliverable
226
+ - Always verify accessibility in generated designs
227
+ - Extract and document tokens explicitly
228
+ - Refine Stitch output before handoff to @frontend-nuxt or @frontend-react
229
+ - Keep Stitch as a creative tool, not a replacement for design thinking
230
+ - Use `stitch_edit_screens` to iterate rather than regenerating entire projects
231
+ - Apply design system updates (`stitch_update_design_system`) for brand consistency across screens
232
+
233
+ ### Stitch Integration Example
234
+
235
+ ```markdown
236
+ User: Design a marketplace card component for product listings
237
+
238
+ Designer (using Stitch):
239
+
240
+ 1. Generate screens with Stitch:
241
+ - Call `stitch_generate_screen_from_text` with prompt:
242
+ "Create a responsive marketplace product listing page.
243
+ Left sidebar with category filters and price range slider.
244
+ Grid of product cards showing: product image, title, price,
245
+ seller name, rating stars. Each card has a save/wishlist button.
246
+ Bottom pagination with 12 items per page.
247
+ Modern, clean design with good whitespace."
248
+ - Set deviceType: "DESKTOP"
249
+
250
+ 2. Review generated designs:
251
+ - Call `stitch_get_screen` to examine output
252
+ - Identify best layout direction
253
+ - Extract color tokens, typography patterns, spacing values
254
+
255
+ 3. Refine with iteration:
256
+ - Call `stitch_edit_screens` to adjust specific elements
257
+ - Example: "Make the product cards more compact, increase image size,
258
+ add a quick-view button overlay on hover"
259
+
260
+ 4. Create formal component spec:
261
+ - Layout: [ Stitch-derived structure ]
262
+ - Tokens: [ Extracted from Stitch output + refined ]
263
+ - States: hover, loading, empty, error
264
+ - Accessibility: [ Manual verification ]
265
+
266
+ 5. Handoff to @frontend-nuxt or @frontend-react with complete spec
267
+ ```
268
+
269
+ ### Stitch Fallback
270
+
271
+ If Stitch MCP is unavailable (check by attempting a Stitch tool call):
272
+
273
+ ```markdown
274
+ Stitch MCP not available. Proceeding with manual design specs:
275
+
276
+ 1. Define design direction based on requirements
277
+ 2. Create wireframe descriptions
278
+ 3. Define design tokens manually
279
+ 4. Write component specifications
280
+ 5. Prepare handoff for @frontend-nuxt or @frontend-react
281
+ ```
282
+
157
283
  ## Design Process
158
284
 
159
285
  When receiving a design request, follow this process:
@@ -8,13 +8,6 @@
8
8
  "*.env.example": "allow"
9
9
  },
10
10
  "edit": "allow",
11
- "bash": {
12
- "*": "ask",
13
- "git status": "allow",
14
- "git diff": "allow",
15
- "git log*": "allow",
16
- "grep *": "allow"
17
- },
18
11
  "webfetch": "allow",
19
12
  "skill": {
20
13
  "*": "allow"
@@ -30,6 +23,48 @@
30
23
  ".opencode/skills/security-review/SKILL.md",
31
24
  ".opencode/skills/frontend-design/SKILL.md"
32
25
  ],
26
+ "mcp": {
27
+ "nuxt": {
28
+ "type": "remote",
29
+ "url": "https://nuxt.com/mcp",
30
+ "enabled": true,
31
+ "description": "Nuxt documentation, blog posts, and deployment guides"
32
+ },
33
+ "nuxt-ui": {
34
+ "type": "remote",
35
+ "url": "https://ui.nuxt.com/mcp",
36
+ "enabled": true,
37
+ "description": "Nuxt UI component documentation and examples"
38
+ },
39
+ "figma": {
40
+ "type": "remote",
41
+ "url": "https://mcp.figma.com/mcp"
42
+ },
43
+ "playwright": {
44
+ "type": "stdio",
45
+ "command": "npx",
46
+ "args": ["-y", "@modelcontextprotocol/server-playwright"],
47
+ "enabled": true,
48
+ "description": "Browser automation and E2E testing with Playwright"
49
+ },
50
+ "stitch": {
51
+ "type": "remote",
52
+ "url": "https://stitch.googleapis.com/mcp",
53
+ "headers": {
54
+ "X-Goog-Api-Key": "${STITCH_API_KEY}"
55
+ },
56
+ "description": "Google Stitch AI design generation (requires STITCH_API_KEY)"
57
+ },
58
+ "postman": {
59
+ "type": "remote",
60
+ "url": "https://mcp.postman.com/mcp",
61
+ "headers": {
62
+ "Authorization": "Bearer ${POSTMAN_API_KEY}"
63
+ },
64
+ "enabled": true,
65
+ "description": "Postman API management for collections, requests, and documentation"
66
+ }
67
+ },
33
68
  "agent": {
34
69
  "leader": {
35
70
  "description": "IT Leader & Technical Project Manager — analyzes requirements, designs architecture, decomposes tasks, delegates to subagents, and unifies outputs",