@iamnishankhan/opencode-kit-grok 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/cli.js +46 -0
- package/kit/.opencode/AGENTS.md +392 -0
- package/kit/.opencode/README.md +71 -0
- package/kit/.opencode/USAGE.md +405 -0
- package/kit/.opencode/agents/backend-specialist.md +278 -0
- package/kit/.opencode/agents/code-archaeologist.md +114 -0
- package/kit/.opencode/agents/database-architect.md +233 -0
- package/kit/.opencode/agents/debugger.md +234 -0
- package/kit/.opencode/agents/devops-engineer.md +252 -0
- package/kit/.opencode/agents/documentation-writer.md +111 -0
- package/kit/.opencode/agents/explorer-agent.md +83 -0
- package/kit/.opencode/agents/frontend-specialist.md +606 -0
- package/kit/.opencode/agents/game-developer.md +169 -0
- package/kit/.opencode/agents/mobile-developer.md +385 -0
- package/kit/.opencode/agents/orchestrator.md +213 -0
- package/kit/.opencode/agents/penetration-tester.md +197 -0
- package/kit/.opencode/agents/performance-optimizer.md +194 -0
- package/kit/.opencode/agents/product-manager.md +120 -0
- package/kit/.opencode/agents/product-owner.md +103 -0
- package/kit/.opencode/agents/project-planner.md +418 -0
- package/kit/.opencode/agents/qa-automation-engineer.md +113 -0
- package/kit/.opencode/agents/security-auditor.md +179 -0
- package/kit/.opencode/agents/seo-specialist.md +119 -0
- package/kit/.opencode/agents/test-engineer.md +169 -0
- package/kit/.opencode/commands/brainstorm.md +113 -0
- package/kit/.opencode/commands/coordinate.md +72 -0
- package/kit/.opencode/commands/create.md +63 -0
- package/kit/.opencode/commands/debug.md +102 -0
- package/kit/.opencode/commands/deploy.md +175 -0
- package/kit/.opencode/commands/enhance.md +62 -0
- package/kit/.opencode/commands/orchestrate.md +241 -0
- package/kit/.opencode/commands/plan.md +89 -0
- package/kit/.opencode/commands/preview.md +80 -0
- package/kit/.opencode/commands/remember.md +67 -0
- package/kit/.opencode/commands/status.md +86 -0
- package/kit/.opencode/commands/test.md +143 -0
- package/kit/.opencode/commands/verify.md +71 -0
- package/kit/.opencode/memory/MEMORY.md +6 -0
- package/kit/.opencode/memory/feedback-history.md +9 -0
- package/kit/.opencode/memory/project-conventions.md +16 -0
- package/kit/.opencode/memory/tech-decisions.md +10 -0
- package/kit/.opencode/memory/user-preferences.md +9 -0
- package/kit/.opencode/opencode.json +15 -0
- package/kit/.opencode/scripts/README.md +95 -0
- package/kit/.opencode/scripts/auto_preview.py +149 -0
- package/kit/.opencode/scripts/checklist.py +75 -0
- package/kit/.opencode/scripts/component_registry.py +238 -0
- package/kit/.opencode/scripts/dependency_graph.py +73 -0
- package/kit/.opencode/scripts/generate_manifest.py +44 -0
- package/kit/.opencode/scripts/session_manager.py +120 -0
- package/kit/.opencode/scripts/tests/test_toolkit.py +238 -0
- package/kit/.opencode/scripts/validate_kit.py +397 -0
- package/kit/.opencode/scripts/validation_runner.py +216 -0
- package/kit/.opencode/scripts/verify_all.py +85 -0
- package/kit/.opencode/skills/api-patterns/SKILL.md +83 -0
- package/kit/.opencode/skills/api-patterns/api-style.md +42 -0
- package/kit/.opencode/skills/api-patterns/auth.md +24 -0
- package/kit/.opencode/skills/api-patterns/documentation.md +26 -0
- package/kit/.opencode/skills/api-patterns/graphql.md +41 -0
- package/kit/.opencode/skills/api-patterns/rate-limiting.md +31 -0
- package/kit/.opencode/skills/api-patterns/response.md +37 -0
- package/kit/.opencode/skills/api-patterns/rest.md +40 -0
- package/kit/.opencode/skills/api-patterns/scripts/api_validator.py +211 -0
- package/kit/.opencode/skills/api-patterns/security-testing.md +122 -0
- package/kit/.opencode/skills/api-patterns/trpc.md +41 -0
- package/kit/.opencode/skills/api-patterns/versioning.md +22 -0
- package/kit/.opencode/skills/app-builder/SKILL.md +78 -0
- package/kit/.opencode/skills/app-builder/agent-coordination.md +71 -0
- package/kit/.opencode/skills/app-builder/feature-building.md +53 -0
- package/kit/.opencode/skills/app-builder/project-detection.md +45 -0
- package/kit/.opencode/skills/app-builder/scaffolding.md +110 -0
- package/kit/.opencode/skills/app-builder/tech-stack.md +41 -0
- package/kit/.opencode/skills/app-builder/templates/SKILL.md +39 -0
- package/kit/.opencode/skills/app-builder/templates/astro-static/TEMPLATE.md +78 -0
- package/kit/.opencode/skills/app-builder/templates/chrome-extension/TEMPLATE.md +96 -0
- package/kit/.opencode/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -0
- package/kit/.opencode/skills/app-builder/templates/electron-desktop/TEMPLATE.md +97 -0
- package/kit/.opencode/skills/app-builder/templates/express-api/TEMPLATE.md +89 -0
- package/kit/.opencode/skills/app-builder/templates/flutter-app/TEMPLATE.md +93 -0
- package/kit/.opencode/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +97 -0
- package/kit/.opencode/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +126 -0
- package/kit/.opencode/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +125 -0
- package/kit/.opencode/skills/app-builder/templates/nextjs-static/TEMPLATE.md +174 -0
- package/kit/.opencode/skills/app-builder/templates/nuxt-app/TEMPLATE.md +127 -0
- package/kit/.opencode/skills/app-builder/templates/python-fastapi/TEMPLATE.md +94 -0
- package/kit/.opencode/skills/app-builder/templates/react-native-app/TEMPLATE.md +121 -0
- package/kit/.opencode/skills/architecture/SKILL.md +57 -0
- package/kit/.opencode/skills/architecture/context-discovery.md +43 -0
- package/kit/.opencode/skills/architecture/examples.md +94 -0
- package/kit/.opencode/skills/architecture/pattern-selection.md +68 -0
- package/kit/.opencode/skills/architecture/patterns-reference.md +50 -0
- package/kit/.opencode/skills/architecture/trade-off-analysis.md +77 -0
- package/kit/.opencode/skills/bash-linux/SKILL.md +201 -0
- package/kit/.opencode/skills/batch-operations/SKILL.md +105 -0
- package/kit/.opencode/skills/behavioral-modes/SKILL.md +253 -0
- package/kit/.opencode/skills/brainstorming/SKILL.md +178 -0
- package/kit/.opencode/skills/brainstorming/dynamic-questioning.md +350 -0
- package/kit/.opencode/skills/clean-code/SKILL.md +201 -0
- package/kit/.opencode/skills/code-review-checklist/SKILL.md +111 -0
- package/kit/.opencode/skills/code-review-graph/SKILL.md +305 -0
- package/kit/.opencode/skills/context-compression/SKILL.md +145 -0
- package/kit/.opencode/skills/coordinator-mode/SKILL.md +208 -0
- package/kit/.opencode/skills/database-design/SKILL.md +54 -0
- package/kit/.opencode/skills/database-design/database-selection.md +43 -0
- package/kit/.opencode/skills/database-design/indexing.md +39 -0
- package/kit/.opencode/skills/database-design/migrations.md +48 -0
- package/kit/.opencode/skills/database-design/optimization.md +36 -0
- package/kit/.opencode/skills/database-design/orm-selection.md +30 -0
- package/kit/.opencode/skills/database-design/schema-design.md +56 -0
- package/kit/.opencode/skills/database-design/scripts/schema_validator.py +172 -0
- package/kit/.opencode/skills/deployment-procedures/SKILL.md +243 -0
- package/kit/.opencode/skills/design-spec/SKILL.md +185 -0
- package/kit/.opencode/skills/design-spec/collection.md +106 -0
- package/kit/.opencode/skills/documentation-templates/SKILL.md +196 -0
- package/kit/.opencode/skills/frontend-architecture/SKILL.md +245 -0
- package/kit/.opencode/skills/frontend-design/SKILL.md +1222 -0
- package/kit/.opencode/skills/frontend-design/redesign.md +178 -0
- package/kit/.opencode/skills/frontend-design/scripts/accessibility_checker.py +145 -0
- package/kit/.opencode/skills/frontend-design/scripts/ux_audit.py +722 -0
- package/kit/.opencode/skills/frontend-design/style-brutalist.md +92 -0
- package/kit/.opencode/skills/frontend-design/style-minimalist.md +85 -0
- package/kit/.opencode/skills/game-development/2d-games/SKILL.md +118 -0
- package/kit/.opencode/skills/game-development/3d-games/SKILL.md +134 -0
- package/kit/.opencode/skills/game-development/SKILL.md +169 -0
- package/kit/.opencode/skills/game-development/game-art/SKILL.md +184 -0
- package/kit/.opencode/skills/game-development/game-audio/SKILL.md +189 -0
- package/kit/.opencode/skills/game-development/game-design/SKILL.md +128 -0
- package/kit/.opencode/skills/game-development/mobile-games/SKILL.md +107 -0
- package/kit/.opencode/skills/game-development/multiplayer/SKILL.md +131 -0
- package/kit/.opencode/skills/game-development/pc-games/SKILL.md +143 -0
- package/kit/.opencode/skills/game-development/vr-ar/SKILL.md +122 -0
- package/kit/.opencode/skills/game-development/web-games/SKILL.md +149 -0
- package/kit/.opencode/skills/geo-fundamentals/SKILL.md +158 -0
- package/kit/.opencode/skills/geo-fundamentals/scripts/geo_checker.py +273 -0
- package/kit/.opencode/skills/i18n-localization/SKILL.md +156 -0
- package/kit/.opencode/skills/i18n-localization/scripts/i18n_checker.py +223 -0
- package/kit/.opencode/skills/intelligent-routing/SKILL.md +337 -0
- package/kit/.opencode/skills/lint-and-validate/SKILL.md +47 -0
- package/kit/.opencode/skills/lint-and-validate/scripts/lint_runner.py +184 -0
- package/kit/.opencode/skills/lint-and-validate/scripts/type_coverage.py +245 -0
- package/kit/.opencode/skills/mcp-builder/SKILL.md +205 -0
- package/kit/.opencode/skills/memory-system/SKILL.md +181 -0
- package/kit/.opencode/skills/mobile-design/SKILL.md +396 -0
- package/kit/.opencode/skills/mobile-design/decision-trees.md +516 -0
- package/kit/.opencode/skills/mobile-design/mobile-backend.md +491 -0
- package/kit/.opencode/skills/mobile-design/mobile-color-system.md +420 -0
- package/kit/.opencode/skills/mobile-design/mobile-debugging.md +122 -0
- package/kit/.opencode/skills/mobile-design/mobile-design-thinking.md +357 -0
- package/kit/.opencode/skills/mobile-design/mobile-navigation.md +458 -0
- package/kit/.opencode/skills/mobile-design/mobile-performance.md +767 -0
- package/kit/.opencode/skills/mobile-design/mobile-testing.md +356 -0
- package/kit/.opencode/skills/mobile-design/mobile-typography.md +433 -0
- package/kit/.opencode/skills/mobile-design/platform-android.md +666 -0
- package/kit/.opencode/skills/mobile-design/platform-ios.md +561 -0
- package/kit/.opencode/skills/mobile-design/scripts/mobile_audit.py +670 -0
- package/kit/.opencode/skills/mobile-design/touch-psychology.md +537 -0
- package/kit/.opencode/skills/nextjs-react-expert/1-async-eliminating-waterfalls.md +351 -0
- package/kit/.opencode/skills/nextjs-react-expert/2-bundle-bundle-size-optimization.md +240 -0
- package/kit/.opencode/skills/nextjs-react-expert/3-server-server-side-performance.md +490 -0
- package/kit/.opencode/skills/nextjs-react-expert/4-client-client-side-data-fetching.md +264 -0
- package/kit/.opencode/skills/nextjs-react-expert/5-rerender-re-render-optimization.md +581 -0
- package/kit/.opencode/skills/nextjs-react-expert/6-rendering-rendering-performance.md +432 -0
- package/kit/.opencode/skills/nextjs-react-expert/7-js-javascript-performance.md +684 -0
- package/kit/.opencode/skills/nextjs-react-expert/8-advanced-advanced-patterns.md +150 -0
- package/kit/.opencode/skills/nextjs-react-expert/9-cache-components.md +103 -0
- package/kit/.opencode/skills/nextjs-react-expert/SKILL.md +293 -0
- package/kit/.opencode/skills/nextjs-react-expert/scripts/convert_rules.py +222 -0
- package/kit/.opencode/skills/nextjs-react-expert/scripts/react_performance_checker.py +281 -0
- package/kit/.opencode/skills/nodejs-best-practices/SKILL.md +336 -0
- package/kit/.opencode/skills/parallel-agents/SKILL.md +192 -0
- package/kit/.opencode/skills/performance-profiling/SKILL.md +145 -0
- package/kit/.opencode/skills/performance-profiling/scripts/bundle_analyzer.py +120 -0
- package/kit/.opencode/skills/performance-profiling/scripts/lighthouse_audit.py +108 -0
- package/kit/.opencode/skills/plan-writing/SKILL.md +153 -0
- package/kit/.opencode/skills/powershell-windows/SKILL.md +169 -0
- package/kit/.opencode/skills/python-patterns/SKILL.md +443 -0
- package/kit/.opencode/skills/red-team-tactics/SKILL.md +201 -0
- package/kit/.opencode/skills/rust-pro/SKILL.md +177 -0
- package/kit/.opencode/skills/seo-fundamentals/SKILL.md +131 -0
- package/kit/.opencode/skills/seo-fundamentals/scripts/seo_checker.py +219 -0
- package/kit/.opencode/skills/server-management/SKILL.md +163 -0
- package/kit/.opencode/skills/simplify-code/SKILL.md +131 -0
- package/kit/.opencode/skills/skillify/SKILL.md +115 -0
- package/kit/.opencode/skills/systematic-debugging/SKILL.md +111 -0
- package/kit/.opencode/skills/tailwind-patterns/SKILL.md +271 -0
- package/kit/.opencode/skills/tdd-workflow/SKILL.md +151 -0
- package/kit/.opencode/skills/testing-patterns/SKILL.md +180 -0
- package/kit/.opencode/skills/testing-patterns/scripts/test_runner.py +219 -0
- package/kit/.opencode/skills/verify-changes/SKILL.md +127 -0
- package/kit/.opencode/skills/vulnerability-scanner/SKILL.md +278 -0
- package/kit/.opencode/skills/vulnerability-scanner/checklists.md +124 -0
- package/kit/.opencode/skills/vulnerability-scanner/scripts/dependency_analyzer.py +144 -0
- package/kit/.opencode/skills/vulnerability-scanner/scripts/security_scan.py +410 -0
- package/kit/.opencode/skills/web-design-guidelines/SKILL.md +56 -0
- package/kit/.opencode/skills/webapp-testing/SKILL.md +189 -0
- package/kit/.opencode/skills/webapp-testing/scripts/playwright_runner.py +123 -0
- package/lib/init.js +61 -0
- package/package.json +21 -0
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Create project plan using project-planner agent. No code writing - only plan file generation.
|
|
3
|
+
agent: project-planner
|
|
4
|
+
---
|
|
5
|
+
# /plan - Project Planning Mode
|
|
6
|
+
|
|
7
|
+
$ARGUMENTS
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## 🔴 CRITICAL RULES
|
|
12
|
+
|
|
13
|
+
1. **NO CODE WRITING** - This command creates plan file only
|
|
14
|
+
2. **Use project-planner agent** - NOT OpenCode kit Agent's native Plan mode
|
|
15
|
+
3. **Socratic Gate** - Ask clarifying questions before planning
|
|
16
|
+
4. **Dynamic Naming** - Plan file named based on task
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Task
|
|
21
|
+
|
|
22
|
+
Delegate to the `@project-planner` subagent (or switch agent) with this context:
|
|
23
|
+
|
|
24
|
+
```
|
|
25
|
+
CONTEXT:
|
|
26
|
+
- User Request: $ARGUMENTS
|
|
27
|
+
- Mode: PLANNING ONLY (no code)
|
|
28
|
+
- Output: {task-slug}.md in project root (dynamic naming)
|
|
29
|
+
|
|
30
|
+
NAMING RULES:
|
|
31
|
+
1. Extract 2-3 key words from request
|
|
32
|
+
2. Lowercase, hyphen-separated
|
|
33
|
+
3. Max 30 characters
|
|
34
|
+
4. Example: "e-commerce cart" → ecommerce-cart.md
|
|
35
|
+
|
|
36
|
+
RULES:
|
|
37
|
+
1. Follow project-planner.md Phase -1 (Context Check)
|
|
38
|
+
2. Follow project-planner.md Phase 0 (Socratic Gate)
|
|
39
|
+
3. Create {slug}.md with task breakdown
|
|
40
|
+
4. DO NOT write any code files
|
|
41
|
+
5. REPORT the exact file name created
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## Expected Output
|
|
47
|
+
|
|
48
|
+
| Deliverable | Location |
|
|
49
|
+
|-------------|----------|
|
|
50
|
+
| Project Plan | `{task-slug}.md` in project root |
|
|
51
|
+
| Task Breakdown | Inside plan file |
|
|
52
|
+
| Agent Assignments | Inside plan file |
|
|
53
|
+
| Verification Checklist | Phase X in plan file |
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## After Planning
|
|
58
|
+
|
|
59
|
+
Tell user:
|
|
60
|
+
```
|
|
61
|
+
[OK] Plan created: {slug}.md in project root
|
|
62
|
+
|
|
63
|
+
Next steps:
|
|
64
|
+
- Review the plan
|
|
65
|
+
- Run `/create` to start implementation
|
|
66
|
+
- Or modify plan manually
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## Naming Examples
|
|
72
|
+
|
|
73
|
+
| Request | Plan File |
|
|
74
|
+
|---------|-----------|
|
|
75
|
+
| `/plan e-commerce site with cart` | `ecommerce-cart.md` |
|
|
76
|
+
| `/plan mobile app for fitness` | `fitness-app.md` |
|
|
77
|
+
| `/plan add dark mode feature` | `dark-mode.md` |
|
|
78
|
+
| `/plan fix authentication bug` | `auth-fix.md` |
|
|
79
|
+
| `/plan SaaS dashboard` | `saas-dashboard.md` |
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## Usage
|
|
84
|
+
|
|
85
|
+
```
|
|
86
|
+
/plan e-commerce site with cart
|
|
87
|
+
/plan mobile app for fitness tracking
|
|
88
|
+
/plan SaaS dashboard with analytics
|
|
89
|
+
```
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Preview server start, stop, and status check. Local development server management.
|
|
3
|
+
---
|
|
4
|
+
# /preview - Preview Management
|
|
5
|
+
|
|
6
|
+
$ARGUMENTS
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Task
|
|
11
|
+
|
|
12
|
+
Manage preview server: start, stop, status check.
|
|
13
|
+
|
|
14
|
+
### Commands
|
|
15
|
+
|
|
16
|
+
```
|
|
17
|
+
/preview - Show current status
|
|
18
|
+
/preview start - Start server
|
|
19
|
+
/preview stop - Stop server
|
|
20
|
+
/preview restart - Restart
|
|
21
|
+
/preview check - Health check
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## Usage Examples
|
|
27
|
+
|
|
28
|
+
### Start Server
|
|
29
|
+
```
|
|
30
|
+
/preview start
|
|
31
|
+
|
|
32
|
+
Response:
|
|
33
|
+
🚀 Starting preview...
|
|
34
|
+
Port: 3000
|
|
35
|
+
Type: Next.js
|
|
36
|
+
|
|
37
|
+
✅ Preview ready!
|
|
38
|
+
URL: http://localhost:3000
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### Status Check
|
|
42
|
+
```
|
|
43
|
+
/preview
|
|
44
|
+
|
|
45
|
+
Response:
|
|
46
|
+
=== Preview Status ===
|
|
47
|
+
|
|
48
|
+
🌐 URL: http://localhost:3000
|
|
49
|
+
📁 Project: C:/projects/my-app
|
|
50
|
+
🏷️ Type: nextjs
|
|
51
|
+
💚 Health: OK
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
### Port Conflict
|
|
55
|
+
```
|
|
56
|
+
/preview start
|
|
57
|
+
|
|
58
|
+
Response:
|
|
59
|
+
⚠️ Port 3000 is in use.
|
|
60
|
+
|
|
61
|
+
Options:
|
|
62
|
+
1. Start on port 3001
|
|
63
|
+
2. Close app on 3000
|
|
64
|
+
3. Specify different port
|
|
65
|
+
|
|
66
|
+
Which one? (default: 1)
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## Technical
|
|
72
|
+
|
|
73
|
+
Auto preview uses `auto_preview.py` script:
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
python .opencode/scripts/auto_preview.py start [port]
|
|
77
|
+
python .opencode/scripts/auto_preview.py stop
|
|
78
|
+
python .opencode/scripts/auto_preview.py status
|
|
79
|
+
```
|
|
80
|
+
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Save information to persistent memory for cross-session recall. Stores preferences, conventions, decisions, and context.
|
|
3
|
+
agent: orchestrator
|
|
4
|
+
---
|
|
5
|
+
# /remember — Persistent Memory Management
|
|
6
|
+
|
|
7
|
+
$ARGUMENTS
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## 🔴 CRITICAL RULES
|
|
12
|
+
|
|
13
|
+
1. **Load memory-system skill** — Read `.opencode/skills/memory-system/SKILL.md` first
|
|
14
|
+
2. **Never auto-delete memories** — Always ask user before pruning
|
|
15
|
+
3. **Keep index under 200 lines** — Warn if approaching limit
|
|
16
|
+
4. **Distill, don't copy** — Save insights, not full conversations
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Task
|
|
21
|
+
|
|
22
|
+
Use the `memory-system` skill to save information:
|
|
23
|
+
|
|
24
|
+
```
|
|
25
|
+
CONTEXT:
|
|
26
|
+
- User wants to remember: $ARGUMENTS
|
|
27
|
+
- Memory location: .opencode/memory/
|
|
28
|
+
|
|
29
|
+
WORKFLOW:
|
|
30
|
+
1. CLASSIFY the information type: user | feedback | project | reference
|
|
31
|
+
2. CHECK if relevant topic file exists in .opencode/memory/
|
|
32
|
+
3. SAVE to appropriate topic file (create if needed)
|
|
33
|
+
4. UPDATE .opencode/memory/MEMORY.md index with one-line pointer
|
|
34
|
+
5. CONFIRM to user what was saved
|
|
35
|
+
|
|
36
|
+
RULES:
|
|
37
|
+
1. Follow memory-system/SKILL.md taxonomy
|
|
38
|
+
2. Keep index entries under 150 characters
|
|
39
|
+
3. Topic files must have frontmatter (type, created, updated)
|
|
40
|
+
4. Don't save information derivable from code
|
|
41
|
+
5. Don't save temporary debug context
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## Expected Output
|
|
47
|
+
|
|
48
|
+
```
|
|
49
|
+
[OK] Saved to memory
|
|
50
|
+
|
|
51
|
+
Type: [user/feedback/project/reference]
|
|
52
|
+
File: .opencode/memory/[topic-file].md
|
|
53
|
+
Entry: [one-line summary of what was saved]
|
|
54
|
+
|
|
55
|
+
This will be available in future sessions.
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## Usage Examples
|
|
61
|
+
|
|
62
|
+
```
|
|
63
|
+
/remember I prefer using bun instead of npm
|
|
64
|
+
/remember Our API uses JWT with httpOnly cookies
|
|
65
|
+
/remember The production server is at api.example.com:8080
|
|
66
|
+
/remember I like concise responses with tables
|
|
67
|
+
```
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Display agent and project status. Progress tracking and status board.
|
|
3
|
+
agent: orchestrator
|
|
4
|
+
---
|
|
5
|
+
# /status - Show Status
|
|
6
|
+
|
|
7
|
+
$ARGUMENTS
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Task
|
|
12
|
+
|
|
13
|
+
Show current project and agent status.
|
|
14
|
+
|
|
15
|
+
### What It Shows
|
|
16
|
+
|
|
17
|
+
1. **Project Info**
|
|
18
|
+
- Project name and path
|
|
19
|
+
- Tech stack
|
|
20
|
+
- Current features
|
|
21
|
+
|
|
22
|
+
2. **Agent Status Board**
|
|
23
|
+
- Which agents are running
|
|
24
|
+
- Which tasks are completed
|
|
25
|
+
- Pending work
|
|
26
|
+
|
|
27
|
+
3. **File Statistics**
|
|
28
|
+
- Files created count
|
|
29
|
+
- Files modified count
|
|
30
|
+
|
|
31
|
+
4. **Preview Status**
|
|
32
|
+
- Is server running
|
|
33
|
+
- URL
|
|
34
|
+
- Health check
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## Example Output
|
|
39
|
+
|
|
40
|
+
```
|
|
41
|
+
=== Project Status ===
|
|
42
|
+
|
|
43
|
+
📁 Project: my-ecommerce
|
|
44
|
+
📂 Path: C:/projects/my-ecommerce
|
|
45
|
+
🏷️ Type: nextjs-ecommerce
|
|
46
|
+
📊 Status: active
|
|
47
|
+
|
|
48
|
+
🔧 Tech Stack:
|
|
49
|
+
Framework: next.js
|
|
50
|
+
Database: postgresql
|
|
51
|
+
Auth: clerk
|
|
52
|
+
Payment: stripe
|
|
53
|
+
|
|
54
|
+
✅ Features (5):
|
|
55
|
+
• product-listing
|
|
56
|
+
• cart
|
|
57
|
+
• checkout
|
|
58
|
+
• user-auth
|
|
59
|
+
• order-history
|
|
60
|
+
|
|
61
|
+
⏳ Pending (2):
|
|
62
|
+
• admin-panel
|
|
63
|
+
• email-notifications
|
|
64
|
+
|
|
65
|
+
📄 Files: 73 created, 12 modified
|
|
66
|
+
|
|
67
|
+
=== Agent Status ===
|
|
68
|
+
|
|
69
|
+
✅ database-architect → Completed
|
|
70
|
+
✅ backend-specialist → Completed
|
|
71
|
+
🔄 frontend-specialist → Dashboard components (60%)
|
|
72
|
+
⏳ test-engineer → Waiting
|
|
73
|
+
|
|
74
|
+
=== Preview ===
|
|
75
|
+
|
|
76
|
+
🌐 URL: http://localhost:3000
|
|
77
|
+
💚 Health: OK
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## Technical
|
|
83
|
+
|
|
84
|
+
Status uses these scripts:
|
|
85
|
+
- `python .opencode/scripts/session_manager.py status`
|
|
86
|
+
- `python .opencode/scripts/auto_preview.py status`
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Test generation and test running command. Creates and executes tests for code.
|
|
3
|
+
---
|
|
4
|
+
# /test - Test Generation and Execution
|
|
5
|
+
|
|
6
|
+
$ARGUMENTS
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Purpose
|
|
11
|
+
|
|
12
|
+
This command generates tests, runs existing tests, or checks test coverage.
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## Sub-commands
|
|
17
|
+
|
|
18
|
+
```
|
|
19
|
+
/test - Run all tests
|
|
20
|
+
/test [file/feature] - Generate tests for specific target
|
|
21
|
+
/test coverage - Show test coverage report
|
|
22
|
+
/test watch - Run tests in watch mode
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## Behavior
|
|
28
|
+
|
|
29
|
+
### Generate Tests
|
|
30
|
+
|
|
31
|
+
When asked to test a file or feature:
|
|
32
|
+
|
|
33
|
+
1. **Analyze the code**
|
|
34
|
+
- Identify functions and methods
|
|
35
|
+
- Find edge cases
|
|
36
|
+
- Detect dependencies to mock
|
|
37
|
+
|
|
38
|
+
2. **Generate test cases**
|
|
39
|
+
- Happy path tests
|
|
40
|
+
- Error cases
|
|
41
|
+
- Edge cases
|
|
42
|
+
- Integration tests (if needed)
|
|
43
|
+
|
|
44
|
+
3. **Write tests**
|
|
45
|
+
- Use project's test framework (Jest, Vitest, etc.)
|
|
46
|
+
- Follow existing test patterns
|
|
47
|
+
- Mock external dependencies
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Output Format
|
|
52
|
+
|
|
53
|
+
### For Test Generation
|
|
54
|
+
|
|
55
|
+
```markdown
|
|
56
|
+
## 🧪 Tests: [Target]
|
|
57
|
+
|
|
58
|
+
### Test Plan
|
|
59
|
+
| Test Case | Type | Coverage |
|
|
60
|
+
|-----------|------|----------|
|
|
61
|
+
| Should create user | Unit | Happy path |
|
|
62
|
+
| Should reject invalid email | Unit | Validation |
|
|
63
|
+
| Should handle db error | Unit | Error case |
|
|
64
|
+
|
|
65
|
+
### Generated Tests
|
|
66
|
+
|
|
67
|
+
`tests/[file].test.ts`
|
|
68
|
+
|
|
69
|
+
[Code block with tests]
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
Run with: `npm test`
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
### For Test Execution
|
|
77
|
+
|
|
78
|
+
```
|
|
79
|
+
🧪 Running tests...
|
|
80
|
+
|
|
81
|
+
✅ auth.test.ts (5 passed)
|
|
82
|
+
✅ user.test.ts (8 passed)
|
|
83
|
+
❌ order.test.ts (2 passed, 1 failed)
|
|
84
|
+
|
|
85
|
+
Failed:
|
|
86
|
+
✗ should calculate total with discount
|
|
87
|
+
Expected: 90
|
|
88
|
+
Received: 100
|
|
89
|
+
|
|
90
|
+
Total: 15 tests (14 passed, 1 failed)
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## Examples
|
|
96
|
+
|
|
97
|
+
```
|
|
98
|
+
/test src/services/auth.service.ts
|
|
99
|
+
/test user registration flow
|
|
100
|
+
/test coverage
|
|
101
|
+
/test fix failed tests
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## Test Patterns
|
|
107
|
+
|
|
108
|
+
### Unit Test Structure
|
|
109
|
+
|
|
110
|
+
```typescript
|
|
111
|
+
describe('AuthService', () => {
|
|
112
|
+
describe('login', () => {
|
|
113
|
+
it('should return token for valid credentials', async () => {
|
|
114
|
+
// Arrange
|
|
115
|
+
const credentials = { email: 'test@test.com', password: 'pass123' };
|
|
116
|
+
|
|
117
|
+
// Act
|
|
118
|
+
const result = await authService.login(credentials);
|
|
119
|
+
|
|
120
|
+
// Assert
|
|
121
|
+
expect(result.token).toBeDefined();
|
|
122
|
+
});
|
|
123
|
+
|
|
124
|
+
it('should throw for invalid password', async () => {
|
|
125
|
+
// Arrange
|
|
126
|
+
const credentials = { email: 'test@test.com', password: 'wrong' };
|
|
127
|
+
|
|
128
|
+
// Act & Assert
|
|
129
|
+
await expect(authService.login(credentials)).rejects.toThrow('Invalid credentials');
|
|
130
|
+
});
|
|
131
|
+
});
|
|
132
|
+
});
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
---
|
|
136
|
+
|
|
137
|
+
## Key Principles
|
|
138
|
+
|
|
139
|
+
- **Test behavior not implementation**
|
|
140
|
+
- **One assertion per test** (when practical)
|
|
141
|
+
- **Descriptive test names**
|
|
142
|
+
- **Arrange-Act-Assert pattern**
|
|
143
|
+
- **Mock external dependencies**
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Verify code changes work by running them. Proves through execution, not just inspection.
|
|
3
|
+
---
|
|
4
|
+
# /verify — Prove Code Works
|
|
5
|
+
|
|
6
|
+
$ARGUMENTS
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## 🔴 CRITICAL RULES
|
|
11
|
+
|
|
12
|
+
1. **Load verify-changes skill** — Read `.opencode/skills/verify-changes/SKILL.md` first
|
|
13
|
+
2. **Execute, don't inspect** — Run the code, don't just read it
|
|
14
|
+
3. **Report evidence** — Show actual output, not assumptions
|
|
15
|
+
4. **Cover edge cases** — Test error paths, not just happy path
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Task
|
|
20
|
+
|
|
21
|
+
Use the `verify-changes` skill to prove code works:
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
CONTEXT:
|
|
25
|
+
- What to verify: $ARGUMENTS
|
|
26
|
+
- If empty: verify the most recent code changes in this session
|
|
27
|
+
|
|
28
|
+
WORKFLOW:
|
|
29
|
+
1. IDENTIFY what changed (files, functions, behavior)
|
|
30
|
+
2. DETERMINE verification method (build, test, run, curl)
|
|
31
|
+
3. EXECUTE verification commands
|
|
32
|
+
4. REPORT evidence of success or failure
|
|
33
|
+
5. FLAG anything that couldn't be verified automatically
|
|
34
|
+
|
|
35
|
+
RULES:
|
|
36
|
+
1. Follow verify-changes/SKILL.md protocol
|
|
37
|
+
2. "It should work" is NOT verification — run it
|
|
38
|
+
3. Test error paths, not just success paths
|
|
39
|
+
4. Report with actual command output as evidence
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
## Expected Output
|
|
45
|
+
|
|
46
|
+
```
|
|
47
|
+
## Verification Report
|
|
48
|
+
|
|
49
|
+
### Changes Verified
|
|
50
|
+
- [file/change 1]: ✅ Pass
|
|
51
|
+
- [file/change 2]: ✅ Pass
|
|
52
|
+
|
|
53
|
+
### Evidence
|
|
54
|
+
- Build: ✅ Compiled without errors
|
|
55
|
+
- Tests: ✅ [N]/[N] passing
|
|
56
|
+
- Runtime: ✅ [specific verification result]
|
|
57
|
+
|
|
58
|
+
### Not Verified
|
|
59
|
+
- [anything that needs manual testing]
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## Usage Examples
|
|
65
|
+
|
|
66
|
+
```
|
|
67
|
+
/verify
|
|
68
|
+
/verify the login endpoint handles expired tokens
|
|
69
|
+
/verify build passes after refactoring
|
|
70
|
+
/verify the new component renders correctly
|
|
71
|
+
```
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
# Memory Index
|
|
2
|
+
|
|
3
|
+
## Project
|
|
4
|
+
- [project] Always create a new dedicated branch for major code changes → project-conventions.md
|
|
5
|
+
- [project] OpenCode kit only supports Gemini CLI and OpenCode (not other AI coding tools) → project-conventions.md
|
|
6
|
+
- [project] Component metadata uses SemVer while toolkit releases use CalVer → tech-decisions.md
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: project
|
|
3
|
+
created: 2026-05-25
|
|
4
|
+
updated: 2026-07-12
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Project Conventions
|
|
8
|
+
|
|
9
|
+
## Git Workflow
|
|
10
|
+
- Always create a new dedicated branch for major code changes.
|
|
11
|
+
- Branch name format should follow: `feature/[task-slug]` or `fix/[bug-slug]`.
|
|
12
|
+
|
|
13
|
+
## Supported AI platforms (OpenCode kit)
|
|
14
|
+
- OpenCode kit **only supports Gemini CLI and OpenCode**.
|
|
15
|
+
- Do not claim compatibility with Claude Code, Cursor, Copilot, Windsurf, or other assistants unless the user explicitly expands scope.
|
|
16
|
+
- Copy on the website, docs, FAQ, README, and marketing should describe OpenCode kit as a toolkit for Gemini CLI / OpenCode-style agent setups.
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: project
|
|
3
|
+
created: 2026-07-18
|
|
4
|
+
updated: 2026-07-18
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Technical Decisions
|
|
8
|
+
|
|
9
|
+
- Component metadata uses SemVer while the toolkit release keeps CalVer.
|
|
10
|
+
- `manifest.json` and `manifest.lock.json` must remain synchronized with component frontmatter.
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
# AG Kit Runtime Scripts
|
|
2
|
+
|
|
3
|
+
## Entry points
|
|
4
|
+
|
|
5
|
+
### `validate_kit.py`
|
|
6
|
+
|
|
7
|
+
Self-validates the `.opencode/` package. It checks JSON, strict SemVer frontmatter, workflow/agent/skill references, manifest and lock synchronization, generated dependency docs, memory contracts, local Markdown links, Python syntax, referenced script paths, and documented inventory counts.
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
python .opencode/scripts/validate_kit.py
|
|
11
|
+
python .opencode/scripts/validate_kit.py --json
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### `generate_manifest.py`
|
|
16
|
+
|
|
17
|
+
Builds deterministic `manifest.json` and `manifest.lock.json` files from component frontmatter. Use `--check` in CI to fail on registry drift.
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
python .opencode/scripts/generate_manifest.py
|
|
21
|
+
python .opencode/scripts/generate_manifest.py --check
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
### `dependency_graph.py`
|
|
25
|
+
|
|
26
|
+
Builds `DEPENDENCY_GRAPH.md` from workflow and agent dependencies. Use `--check` to verify that the generated graph is current.
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
python .opencode/scripts/dependency_graph.py
|
|
30
|
+
python .opencode/scripts/dependency_graph.py --check
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
### `checklist.py`
|
|
34
|
+
|
|
35
|
+
Runs the fast project validation path. URL checks are automatically skipped when `--url` is not supplied.
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
python .opencode/scripts/checklist.py .
|
|
39
|
+
python .opencode/scripts/checklist.py . --url http://localhost:3000
|
|
40
|
+
python .opencode/scripts/checklist.py . --report .opencode/reports/checklist.json
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
### `verify_all.py`
|
|
44
|
+
|
|
45
|
+
Runs the broad release suite. `--no-runtime` excludes Lighthouse and Playwright; `--no-e2e` excludes Playwright only.
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
python .opencode/scripts/verify_all.py . --no-runtime
|
|
49
|
+
python .opencode/scripts/verify_all.py . --url http://localhost:3000 --report verification.json
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### `session_manager.py`
|
|
53
|
+
|
|
54
|
+
Prints project type, package metadata, feature hints, and file counts.
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
python .opencode/scripts/session_manager.py status .
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### `auto_preview.py`
|
|
61
|
+
|
|
62
|
+
Starts, stops, or inspects a detected local preview server.
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
python .opencode/scripts/auto_preview.py start 3000
|
|
66
|
+
python .opencode/scripts/auto_preview.py status
|
|
67
|
+
python .opencode/scripts/auto_preview.py stop
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## Runtime prerequisites
|
|
71
|
+
|
|
72
|
+
Most scripts use only the Python standard library. Optional checks require the corresponding project tools:
|
|
73
|
+
|
|
74
|
+
- Lighthouse: `npm install -g lighthouse`
|
|
75
|
+
- Playwright: `pip install playwright && playwright install chromium`
|
|
76
|
+
- Node lint/test commands: project package manager and configured scripts
|
|
77
|
+
- Python lint/test commands: project-configured tools such as Ruff, MyPy, or pytest
|
|
78
|
+
|
|
79
|
+
Missing URL-based tools produce a failed runtime check rather than a false pass. Missing non-applicable build outputs are reported as skipped/pass with an explanatory message.
|
|
80
|
+
|
|
81
|
+
## Exit-code contract
|
|
82
|
+
|
|
83
|
+
- `0`: check passed or was not applicable
|
|
84
|
+
- `1`: findings met the configured failure threshold
|
|
85
|
+
- `2`: invalid command usage or missing input path
|
|
86
|
+
|
|
87
|
+
The master runners use subprocess exit codes as the source of truth and can emit a full JSON report with commands, durations, stdout, stderr, and status.
|
|
88
|
+
|
|
89
|
+
## Regression tests
|
|
90
|
+
|
|
91
|
+
Toolkit scripts include regression tests for self-validation, component SemVer, manifest/lock integrity, dependency graph synchronization, memory contracts, security scanning, dependency and bundle analysis, and toolkit-root discovery.
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
python -m unittest discover -s .opencode/scripts/tests -v
|
|
95
|
+
```
|