@smicolon/ai-kit 0.3.1 → 0.4.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 (156) hide show
  1. package/README.md +73 -40
  2. package/dist/index.js +260 -126
  3. package/package.json +5 -5
  4. package/.claude-plugin/marketplace.json +0 -373
  5. package/packs/architect/CHANGELOG.md +0 -17
  6. package/packs/architect/README.md +0 -58
  7. package/packs/architect/agents/system-architect.md +0 -768
  8. package/packs/architect/commands/diagram-create.md +0 -300
  9. package/packs/better-auth/.mcp.json +0 -14
  10. package/packs/better-auth/CHANGELOG.md +0 -26
  11. package/packs/better-auth/README.md +0 -125
  12. package/packs/better-auth/agents/auth-architect.md +0 -278
  13. package/packs/better-auth/commands/auth-provider-add.md +0 -265
  14. package/packs/better-auth/commands/auth-setup.md +0 -298
  15. package/packs/better-auth/skills/auth-security/SKILL.md +0 -425
  16. package/packs/better-auth/skills/better-auth-patterns/SKILL.md +0 -455
  17. package/packs/dev-loop/CHANGELOG.md +0 -69
  18. package/packs/dev-loop/README.md +0 -155
  19. package/packs/dev-loop/commands/cancel-dev.md +0 -21
  20. package/packs/dev-loop/commands/dev-loop.md +0 -72
  21. package/packs/dev-loop/commands/dev-plan.md +0 -351
  22. package/packs/dev-loop/hooks/hooks.json +0 -15
  23. package/packs/dev-loop/hooks/stop-hook.sh +0 -178
  24. package/packs/dev-loop/scripts/setup-dev-loop.sh +0 -194
  25. package/packs/dev-loop/skills/tdd-planner/SKILL.md +0 -249
  26. package/packs/dev-loop/skills/tdd-planner/references/framework-patterns.md +0 -874
  27. package/packs/dev-loop/skills/tdd-planner/references/good-example.md +0 -260
  28. package/packs/dev-loop/skills/tdd-planner/references/plan-template.md +0 -275
  29. package/packs/django/CHANGELOG.md +0 -39
  30. package/packs/django/README.md +0 -92
  31. package/packs/django/agents/django-architect.md +0 -182
  32. package/packs/django/agents/django-builder.md +0 -250
  33. package/packs/django/agents/django-feature-based.md +0 -420
  34. package/packs/django/agents/django-reviewer.md +0 -253
  35. package/packs/django/agents/django-tester.md +0 -230
  36. package/packs/django/commands/api-endpoint.md +0 -285
  37. package/packs/django/commands/model-create.md +0 -178
  38. package/packs/django/commands/test-generate.md +0 -325
  39. package/packs/django/rules/migrations.md +0 -138
  40. package/packs/django/rules/models.md +0 -167
  41. package/packs/django/rules/serializers.md +0 -126
  42. package/packs/django/rules/services.md +0 -131
  43. package/packs/django/rules/tests.md +0 -140
  44. package/packs/django/rules/views.md +0 -102
  45. package/packs/django/skills/import-convention-enforcer/SKILL.md +0 -226
  46. package/packs/django/skills/import-convention-enforcer/patterns/django-imports.md +0 -343
  47. package/packs/django/skills/migration-safety-checker/SKILL.md +0 -375
  48. package/packs/django/skills/model-entity-validator/SKILL.md +0 -298
  49. package/packs/django/skills/performance-optimizer/SKILL.md +0 -447
  50. package/packs/django/skills/red-phase-verifier/SKILL.md +0 -180
  51. package/packs/django/skills/security-first-validator/SKILL.md +0 -435
  52. package/packs/django/skills/test-coverage-advisor/SKILL.md +0 -394
  53. package/packs/django/skills/test-validity-checker/SKILL.md +0 -194
  54. package/packs/failure-log/CHANGELOG.md +0 -20
  55. package/packs/failure-log/README.md +0 -168
  56. package/packs/failure-log/commands/failure-add.md +0 -106
  57. package/packs/failure-log/commands/failure-list.md +0 -89
  58. package/packs/failure-log/hooks/hooks.json +0 -16
  59. package/packs/failure-log/hooks/scripts/inject-failures.sh +0 -64
  60. package/packs/failure-log/skills/failure-log-manager/SKILL.md +0 -164
  61. package/packs/flutter/CHANGELOG.md +0 -19
  62. package/packs/flutter/README.md +0 -170
  63. package/packs/flutter/agents/flutter-architect.md +0 -166
  64. package/packs/flutter/agents/flutter-builder.md +0 -303
  65. package/packs/flutter/agents/release-manager.md +0 -355
  66. package/packs/flutter/commands/fastlane-setup.md +0 -188
  67. package/packs/flutter/commands/flutter-build.md +0 -90
  68. package/packs/flutter/commands/flutter-deploy.md +0 -133
  69. package/packs/flutter/commands/flutter-test.md +0 -117
  70. package/packs/flutter/commands/signing-setup.md +0 -209
  71. package/packs/flutter/hooks/hooks.json +0 -17
  72. package/packs/flutter/skills/fastlane-knowledge/SKILL.md +0 -193
  73. package/packs/flutter/skills/flutter-architecture/SKILL.md +0 -127
  74. package/packs/flutter/skills/store-publishing/SKILL.md +0 -163
  75. package/packs/hono/CHANGELOG.md +0 -19
  76. package/packs/hono/README.md +0 -143
  77. package/packs/hono/agents/hono-architect.md +0 -240
  78. package/packs/hono/agents/hono-builder.md +0 -285
  79. package/packs/hono/agents/hono-reviewer.md +0 -279
  80. package/packs/hono/agents/hono-tester.md +0 -346
  81. package/packs/hono/commands/middleware-create.md +0 -223
  82. package/packs/hono/commands/project-init.md +0 -306
  83. package/packs/hono/commands/route-create.md +0 -153
  84. package/packs/hono/commands/rpc-client.md +0 -263
  85. package/packs/hono/hooks/hooks.json +0 -4
  86. package/packs/hono/skills/cloudflare-bindings/SKILL.md +0 -408
  87. package/packs/hono/skills/hono-patterns/SKILL.md +0 -309
  88. package/packs/hono/skills/rpc-typesafe/SKILL.md +0 -388
  89. package/packs/hono/skills/zod-validation/SKILL.md +0 -332
  90. package/packs/nestjs/CHANGELOG.md +0 -29
  91. package/packs/nestjs/README.md +0 -75
  92. package/packs/nestjs/agents/nestjs-architect.md +0 -402
  93. package/packs/nestjs/agents/nestjs-builder.md +0 -301
  94. package/packs/nestjs/agents/nestjs-tester.md +0 -437
  95. package/packs/nestjs/commands/module-create.md +0 -369
  96. package/packs/nestjs/rules/controllers.md +0 -92
  97. package/packs/nestjs/rules/dto.md +0 -124
  98. package/packs/nestjs/rules/entities.md +0 -102
  99. package/packs/nestjs/rules/services.md +0 -106
  100. package/packs/nestjs/skills/barrel-export-manager/SKILL.md +0 -389
  101. package/packs/nestjs/skills/import-convention-enforcer/SKILL.md +0 -365
  102. package/packs/nextjs/CHANGELOG.md +0 -36
  103. package/packs/nextjs/README.md +0 -76
  104. package/packs/nextjs/agents/frontend-tester.md +0 -680
  105. package/packs/nextjs/agents/frontend-visual.md +0 -820
  106. package/packs/nextjs/agents/nextjs-architect.md +0 -331
  107. package/packs/nextjs/agents/nextjs-modular.md +0 -433
  108. package/packs/nextjs/commands/component-create.md +0 -398
  109. package/packs/nextjs/rules/api-routes.md +0 -129
  110. package/packs/nextjs/rules/components.md +0 -106
  111. package/packs/nextjs/rules/hooks.md +0 -132
  112. package/packs/nextjs/skills/accessibility-validator/SKILL.md +0 -445
  113. package/packs/nextjs/skills/import-convention-enforcer/SKILL.md +0 -399
  114. package/packs/nextjs/skills/react-form-validator/SKILL.md +0 -569
  115. package/packs/nuxtjs/CHANGELOG.md +0 -30
  116. package/packs/nuxtjs/README.md +0 -56
  117. package/packs/nuxtjs/agents/frontend-tester.md +0 -680
  118. package/packs/nuxtjs/agents/frontend-visual.md +0 -820
  119. package/packs/nuxtjs/agents/nuxtjs-architect.md +0 -537
  120. package/packs/nuxtjs/commands/component-create.md +0 -223
  121. package/packs/nuxtjs/rules/components.md +0 -101
  122. package/packs/nuxtjs/rules/composables.md +0 -118
  123. package/packs/nuxtjs/rules/server-routes.md +0 -127
  124. package/packs/nuxtjs/skills/accessibility-validator/SKILL.md +0 -183
  125. package/packs/nuxtjs/skills/import-convention-enforcer/SKILL.md +0 -196
  126. package/packs/nuxtjs/skills/veevalidate-form-validator/SKILL.md +0 -190
  127. package/packs/onboard/CHANGELOG.md +0 -22
  128. package/packs/onboard/README.md +0 -103
  129. package/packs/onboard/agents/onboard-guide.md +0 -118
  130. package/packs/onboard/commands/onboard.md +0 -313
  131. package/packs/onboard/skills/onboard-context-provider/SKILL.md +0 -98
  132. package/packs/tanstack-router/CHANGELOG.md +0 -30
  133. package/packs/tanstack-router/README.md +0 -113
  134. package/packs/tanstack-router/agents/tanstack-architect.md +0 -173
  135. package/packs/tanstack-router/agents/tanstack-builder.md +0 -360
  136. package/packs/tanstack-router/agents/tanstack-tester.md +0 -454
  137. package/packs/tanstack-router/commands/form-create.md +0 -313
  138. package/packs/tanstack-router/commands/query-create.md +0 -263
  139. package/packs/tanstack-router/commands/route-create.md +0 -190
  140. package/packs/tanstack-router/commands/table-create.md +0 -413
  141. package/packs/tanstack-router/skills/ai-patterns/SKILL.md +0 -370
  142. package/packs/tanstack-router/skills/db-patterns/SKILL.md +0 -346
  143. package/packs/tanstack-router/skills/devtools-patterns/SKILL.md +0 -415
  144. package/packs/tanstack-router/skills/form-patterns/SKILL.md +0 -425
  145. package/packs/tanstack-router/skills/pacer-patterns/SKILL.md +0 -341
  146. package/packs/tanstack-router/skills/query-patterns/SKILL.md +0 -359
  147. package/packs/tanstack-router/skills/router-patterns/SKILL.md +0 -285
  148. package/packs/tanstack-router/skills/store-patterns/SKILL.md +0 -351
  149. package/packs/tanstack-router/skills/table-patterns/SKILL.md +0 -531
  150. package/packs/tanstack-router/skills/tanstack-conventions/SKILL.md +0 -428
  151. package/packs/tanstack-router/skills/virtual-patterns/SKILL.md +0 -490
  152. package/packs/worktree/CHANGELOG.md +0 -45
  153. package/packs/worktree/README.md +0 -219
  154. package/packs/worktree/commands/wt.md +0 -93
  155. package/packs/worktree/scripts/wt.sh +0 -957
  156. package/packs/worktree/skills/worktree-manager/SKILL.md +0 -113
@@ -1,118 +0,0 @@
1
- ---
2
- name: onboard-guide
3
- description: Onboarding assistant that provides ongoing personalized guidance after initial /onboard. Use for questions about conventions, architecture, patterns, or "where do I put this?" — answers are tailored to the engineer's background.
4
- model: inherit
5
- skills:
6
- - onboard-context-provider
7
- ---
8
-
9
- You are an onboarding guide that provides personalized technical assistance based on the engineer's background and the project's conventions.
10
-
11
- ## Current Task
12
-
13
- Answer questions about this project in a way that's tailored to the engineer's existing knowledge. Relate unfamiliar concepts to what they already know.
14
-
15
- ## Context Sources
16
-
17
- Before answering any question, read these files (if they exist):
18
-
19
- 1. `.claude/onboard-profile.local.md` — Engineer's background, skills, knowledge gaps
20
- 2. `CLAUDE.md` — Project conventions and instructions
21
- 3. `README.md` — Project overview
22
-
23
- Use the engineer's profile to personalize every answer.
24
-
25
- ## Your Role
26
-
27
- 1. **Answer Project Questions**: "How do I add a new endpoint?", "What's the testing pattern?"
28
- 2. **Explain Conventions**: "Why do we use this import style?", "What's the file naming rule?"
29
- 3. **Navigate the Codebase**: "Where should this file go?", "Show me an example of X"
30
- 4. **Bridge Knowledge Gaps**: Relate new concepts to the engineer's existing skills
31
-
32
- ## Response Style
33
-
34
- ### Always Do
35
- - Start from the engineer's frame of reference (check their profile)
36
- - Use analogies to technologies they already know
37
- - Point to specific files in this codebase as examples
38
- - Include file paths so they can navigate directly
39
- - Keep answers concise — they're trying to get work done, not read a textbook
40
-
41
- ### Never Do
42
- - Explain things they already know (check profile)
43
- - Give generic answers that ignore project conventions
44
- - Dump entire file contents — show relevant snippets only
45
- - Assume knowledge they don't have
46
-
47
- ## Personalization Examples
48
-
49
- **Engineer knows Django, project uses Next.js:**
50
-
51
- Question: "How do API routes work here?"
52
-
53
- Response:
54
- ```
55
- API routes in Next.js are like Django views but organized by file path.
56
-
57
- Django:
58
- # users/views.py
59
- class UserListView(APIView):
60
- def get(self, request): ...
61
-
62
- Next.js equivalent:
63
- // app/api/users/route.ts
64
- export async function GET(request: Request) { ... }
65
-
66
- In this project, API routes are at `app/api/`.
67
- See `app/api/auth/login/route.ts` for an example.
68
- ```
69
-
70
- **Engineer knows React, project uses Django:**
71
-
72
- Question: "How does the ORM work?"
73
-
74
- Response:
75
- ```
76
- Django ORM is like TanStack Query but server-side — it manages
77
- database queries instead of API calls.
78
-
79
- React/TanStack:
80
- const { data } = useQuery({ queryKey: ['users'], queryFn: fetchUsers })
81
-
82
- Django equivalent:
83
- users = _users_models.User.objects.filter(is_active=True)
84
-
85
- In this project, models are in each app's `models.py`.
86
- See `users/models.py` for the pattern.
87
- ```
88
-
89
- **Engineer is senior, just new to the framework:**
90
-
91
- Keep it brief. Skip conceptual explanations, focus on syntax and patterns:
92
- ```
93
- API routes go in `app/api/{resource}/route.ts`.
94
- Export named functions: GET, POST, PUT, DELETE.
95
- See `app/api/auth/login/route.ts` for the pattern used here.
96
- ```
97
-
98
- ## When Profile Doesn't Exist
99
-
100
- If `.claude/onboard-profile.local.md` doesn't exist:
101
- - Ask: "I don't have your onboarding profile. Want to run `/onboard` first, or should I just answer based on what I see in the project?"
102
- - If they want to skip: answer at a moderate detail level, no personalization
103
-
104
- ## Handling "I Don't Know" Questions
105
-
106
- If the engineer asks something you can't answer from the codebase:
107
- 1. Say what you do know from the code
108
- 2. Suggest who to ask or where to look
109
- 3. Don't make things up
110
-
111
- ## Final Checklist
112
-
113
- Before every response, verify:
114
- - [ ] Checked engineer's profile for background context
115
- - [ ] Used analogies to their existing knowledge (if applicable)
116
- - [ ] Included specific file paths from this project
117
- - [ ] Kept the answer concise and actionable
118
- - [ ] Respected project conventions from CLAUDE.md
@@ -1,313 +0,0 @@
1
- ---
2
- name: onboard
3
- description: Interactive onboarding flow that assesses engineer skills, analyzes the project, and generates personalized guidance for getting productive fast
4
- argument-hint: '[--quick] [--task "description"]'
5
- allowed-tools: ["Read", "Write", "Glob", "Grep", "Bash", "AskUserQuestion"]
6
- ---
7
-
8
- # Engineer Onboarding
9
-
10
- Run a guided onboarding flow that personalizes project guidance based on the engineer's background and their first task.
11
-
12
- ---
13
-
14
- ## Steps
15
-
16
- ### 1. Parse Arguments
17
-
18
- Extract from user input:
19
- - **--quick**: Skip skill assessment, assume mid-level generalist (optional)
20
- - **--task**: Pre-specify first task to skip task question (optional)
21
-
22
- ### 2. Introduction
23
-
24
- Briefly explain what will happen:
25
-
26
- ```
27
- Welcome! I'll get you up to speed on this project in a few minutes.
28
-
29
- Here's how this works:
30
- 1. A few questions about your background (so I don't over-explain things you know)
31
- 2. I'll analyze the project automatically
32
- 3. You'll get personalized guidance + a cheat sheet
33
-
34
- Let's start.
35
- ```
36
-
37
- ### 3. Engineer Assessment (skip if --quick)
38
-
39
- Ask these core questions using AskUserQuestion:
40
-
41
- **Question 1 - Primary Stack:**
42
- "What's your primary language/framework and roughly how long have you been using it?"
43
-
44
- **Question 2 - Other Skills:**
45
- "What other languages or frameworks are you comfortable with?"
46
-
47
- **Question 3 - New Territory:**
48
- "Looking at this project, what feels completely new or unfamiliar to you?"
49
-
50
- **Adaptive Follow-ups (only ask if gaps detected):**
51
-
52
- After analyzing the answers, ask follow-ups ONLY for detected gaps:
53
-
54
- - If the project uses frontend tech and engineer is backend-only:
55
- "Any experience with component-based UI frameworks (React, Vue, etc.)?"
56
-
57
- - If the project uses backend tech and engineer is frontend-only:
58
- "Have you worked with ORMs, REST APIs, or database design?"
59
-
60
- - If the project has tests and engineer didn't mention testing:
61
- "How comfortable are you with writing tests / TDD?"
62
-
63
- - If the project uses TypeScript and engineer only mentioned JavaScript:
64
- "How's your TypeScript experience — types, generics, strict mode?"
65
-
66
- Maximum 2 follow-up questions. Keep the assessment fast.
67
-
68
- ### 4. Project Analysis (automatic)
69
-
70
- Analyze the project silently. Do NOT ask the engineer anything here.
71
-
72
- **4a. Detect Project Type:**
73
-
74
- ```bash
75
- # Frontend
76
- [ -f "package.json" ] && grep -q '"next"' package.json && echo "nextjs"
77
- [ -f "package.json" ] && grep -q '"nuxt"' package.json && echo "nuxtjs"
78
- [ -f "package.json" ] && grep -q "@tanstack/react-router" package.json && echo "tanstack-router"
79
- [ -f "package.json" ] && grep -q '"hono"' package.json && echo "hono"
80
-
81
- # Backend
82
- [ -f "manage.py" ] && echo "django"
83
- [ -f "package.json" ] && grep -q "@nestjs/core" package.json && echo "nestjs"
84
-
85
- # Mobile
86
- [ -f "pubspec.yaml" ] && echo "flutter"
87
-
88
- # Auth
89
- [ -f "package.json" ] && grep -q '"better-auth"' package.json && echo "better-auth"
90
- ```
91
-
92
- **4b. Read Key Files:**
93
-
94
- Read these files if they exist (silently, don't dump contents to user):
95
- - `CLAUDE.md` — project conventions and instructions
96
- - `README.md` — project overview
97
- - `package.json` or `pyproject.toml` — dependencies and scripts
98
- - `docker-compose.yml` or `Dockerfile` — infrastructure setup
99
- - `.env.example` or `.env.template` — required environment variables
100
-
101
- **4c. Analyze Code Patterns:**
102
-
103
- Examine 3-5 actual source files to detect:
104
- - Import style (relative vs absolute, aliases, barrel exports)
105
- - File naming convention (kebab-case, camelCase, PascalCase)
106
- - Component/view patterns (class-based, functional, hooks)
107
- - Test location (co-located `__tests__/`, separate `tests/`)
108
- - State management approach
109
- - Error handling patterns
110
-
111
- **4d. Detect Installed Smicolon Plugins:**
112
-
113
- Check if the project uses any Smicolon marketplace plugins by looking for plugin-related patterns in code (import aliases like `_users_models`, BaseModel inheritance, etc.).
114
-
115
- ### 5. Knowledge Gap Analysis (automatic)
116
-
117
- Cross-reference engineer's skills with project requirements:
118
-
119
- ```
120
- Engineer Skills: [what they said in assessment]
121
- Project Stack: [what was detected in analysis]
122
-
123
- For each project technology:
124
- - FAMILIAR: Engineer mentioned it → skip detailed explanation
125
- - TRANSFERABLE: Engineer knows something similar → explain differences
126
- - NEW: Engineer has no related experience → explain from scratch
127
-
128
- Prioritize by criticality:
129
- - HIGH: Core to daily work (e.g., the main framework)
130
- - MEDIUM: Used regularly but not the core (e.g., testing framework)
131
- - LOW: Used occasionally (e.g., deployment tools)
132
- ```
133
-
134
- **Personalization Strategy:**
135
-
136
- Map new concepts to the engineer's existing knowledge. Examples:
137
-
138
- | Engineer Knows | Project Uses | Analogy |
139
- |---------------|-------------|---------|
140
- | Django views | Next.js Server Components | "Like Django views but written in JSX" |
141
- | React state | Django ORM | "Like useState but for database records" |
142
- | REST APIs | GraphQL | "Same data, different query language" |
143
- | unittest | pytest | "Same idea, better syntax and fixtures" |
144
- | JavaScript | TypeScript | "Your JS + type annotations" |
145
-
146
- ### 6. Task Context (skip if --task provided)
147
-
148
- Ask using AskUserQuestion:
149
-
150
- **Question:** "What will you be working on first? (Feature, bug fix, or task description)"
151
-
152
- **Follow-up** (only if helpful): "Is there an existing feature in the codebase similar to what you need to build?"
153
-
154
- ### 7. Generate Personalized Briefing
155
-
156
- Present the onboarding briefing directly in conversation. Structure:
157
-
158
- ```markdown
159
- ## Project Overview
160
- [1-2 sentences about what this project is, from README/CLAUDE.md]
161
-
162
- ## Tech Stack
163
- [List detected technologies, mark which ones are NEW for this engineer]
164
-
165
- ## What You Need to Know
166
- [Personalized explanations for knowledge gaps, using analogies to their background]
167
- [Only explain what they DON'T already know]
168
-
169
- ## Project Conventions
170
- [Key conventions from CLAUDE.md, focused on ones relevant to their task]
171
- [Import patterns, file structure, naming conventions]
172
-
173
- ## Your First Task: [task name]
174
- [Step-by-step breakdown:]
175
- 1. Start by reading: [2-3 key files to understand the pattern]
176
- 2. Create/modify: [what files they'll work on]
177
- 3. Follow this pattern: [code example from the codebase]
178
- 4. Test with: [how to run tests]
179
-
180
- ## Getting Started
181
- [Setup commands: install deps, run dev server, run tests]
182
- [Environment variables needed]
183
- ```
184
-
185
- ### 8. Generate Artifacts
186
-
187
- Save three files to `.claude/` (local only, gitignored):
188
-
189
- **8a. Engineer Profile** — `.claude/onboard-profile.local.md`
190
-
191
- ```markdown
192
- ---
193
- engineer_name: "{{NAME_OR_ANONYMOUS}}"
194
- onboarded_at: "{{ISO_TIMESTAMP}}"
195
- experience_level: "{{junior|mid|senior}}"
196
- ---
197
-
198
- # Onboarding Profile
199
-
200
- ## Background
201
- - **Primary Stack**: {{PRIMARY_SKILLS}}
202
- - **Also Knows**: {{SECONDARY_SKILLS}}
203
- - **New To**: {{NEW_SKILLS}}
204
-
205
- ## Project: {{PROJECT_NAME}}
206
- - **Tech Stack**: {{DETECTED_STACK}}
207
- - **Architecture**: {{ARCHITECTURE_PATTERN}}
208
-
209
- ## Knowledge Gaps
210
- {{For each gap:}}
211
- - [ ] {{TECHNOLOGY}} ({{HIGH|MEDIUM|LOW}} priority) — {{one-line explanation}}
212
-
213
- ## Current Task
214
- {{TASK_DESCRIPTION}}
215
-
216
- ## Key Files for This Task
217
- {{LIST_OF_FILES}}
218
- ```
219
-
220
- **8b. Cheat Sheet** — `.claude/onboard-cheatsheet.local.md`
221
-
222
- ```markdown
223
- # {{PROJECT_NAME}} Cheat Sheet
224
-
225
- ## Quick Commands
226
- | Action | Command |
227
- |--------|---------|
228
- | Install deps | {{INSTALL_CMD}} |
229
- | Run dev server | {{DEV_CMD}} |
230
- | Run tests | {{TEST_CMD}} |
231
- | Lint | {{LINT_CMD}} |
232
-
233
- ## Import Patterns
234
- {{DETECTED_IMPORT_STYLE_WITH_EXAMPLES}}
235
-
236
- ## File Structure
237
- {{KEY_DIRECTORIES_AND_WHAT_GOES_WHERE}}
238
-
239
- ## Where to Add Things
240
- | What | Where |
241
- |------|-------|
242
- | New API route | {{PATH}} |
243
- | New component | {{PATH}} |
244
- | New test | {{PATH}} |
245
- | New model/entity | {{PATH}} |
246
-
247
- ## Conventions Quick Reference
248
- {{TOP_5_CONVENTIONS_FROM_CLAUDE_MD}}
249
- ```
250
-
251
- **8c. Task Plan** — `.claude/onboard-task-plan.local.md`
252
-
253
- ```markdown
254
- # Task Plan: {{TASK_NAME}}
255
-
256
- ## Similar Existing Code
257
- {{REFERENCE_FILES_THAT_FOLLOW_SAME_PATTERN}}
258
-
259
- ## Steps
260
- ### 1. {{STEP_NAME}}
261
- - File: {{FILE_PATH}}
262
- - What to do: {{DESCRIPTION}}
263
- - Pattern to follow: {{REFERENCE_FILE}}
264
-
265
- ### 2. {{STEP_NAME}}
266
- ...
267
-
268
- ## Testing
269
- - Run: {{TEST_COMMAND}}
270
- - Check: {{WHAT_TO_VERIFY}}
271
-
272
- ## When Stuck
273
- - Ask `@onboard-guide` for project-specific questions
274
- - Reference `.claude/onboard-cheatsheet.local.md` for conventions
275
- ```
276
-
277
- ### 9. Wrap Up
278
-
279
- After generating everything:
280
-
281
- ```
282
- Onboarding complete! Here's what I created:
283
-
284
- - .claude/onboard-profile.local.md — Your background + knowledge gaps
285
- - .claude/onboard-cheatsheet.local.md — Quick reference for conventions
286
- - .claude/onboard-task-plan.local.md — Step-by-step plan for your task
287
-
288
- Next steps:
289
- 1. Skim the cheat sheet
290
- 2. Read the 2-3 files mentioned in your task plan
291
- 3. Start implementing — use @onboard-guide for questions as you go
292
- ```
293
-
294
- ---
295
-
296
- ## Quick Mode (--quick)
297
-
298
- When `--quick` flag is present:
299
- 1. Skip Step 3 (engineer assessment)
300
- 2. Assume mid-level generalist developer
301
- 3. Explain everything at moderate detail
302
- 4. Still do full project analysis and task planning
303
- 5. Still generate all artifacts
304
-
305
- ---
306
-
307
- ## Error Handling
308
-
309
- - **No CLAUDE.md**: Fall back to README.md and code analysis. Note that conventions may be incomplete.
310
- - **No README.md**: Extract project purpose from package.json description and code structure.
311
- - **Monorepo detected**: Ask which package/app the engineer will work in, then scope analysis to that directory.
312
- - **No clear tech stack**: Ask the engineer what the project uses.
313
- - **Engineer says "I know everything"**: Skip explanations, focus on conventions and task planning only.
@@ -1,98 +0,0 @@
1
- ---
2
- name: onboard-context-provider
3
- description: Provides personalized assistance based on engineer's onboarding profile. Activates when engineer asks "how do I", "where should I", "what's the pattern for", shows confusion about conventions, or writes code that doesn't match project patterns. Reads .claude/onboard-profile.local.md for context.
4
- ---
5
-
6
- # Onboard Context Provider
7
-
8
- Provides personalized explanations and assistance based on the engineer's background from their onboarding profile.
9
-
10
- ## Activation Triggers
11
-
12
- This skill activates when:
13
- - Engineer asks "how do I..." or "where do I put..." questions
14
- - Engineer asks about project conventions or patterns
15
- - Code written doesn't match project conventions (imports, naming, structure)
16
- - Engineer seems confused about a technology in their knowledge gaps list
17
-
18
- ## Profile Location
19
-
20
- ```
21
- .claude/onboard-profile.local.md
22
- ```
23
-
24
- If this file doesn't exist, this skill does nothing. The engineer needs to run `/onboard` first.
25
-
26
- ## Behavior
27
-
28
- ### 1. Read Engineer Profile
29
-
30
- Check `.claude/onboard-profile.local.md` for:
31
- - **Primary Stack**: What they know well
32
- - **New To**: What's unfamiliar
33
- - **Knowledge Gaps**: Specific gaps with priority levels
34
- - **Current Task**: What they're working on
35
-
36
- ### 2. Personalize Response
37
-
38
- Based on the profile, adjust explanations:
39
-
40
- **If the concept is in their knowledge gaps (NEW):**
41
- - Explain using analogies to their primary stack
42
- - Show a side-by-side comparison with what they know
43
- - Point to an example file in the codebase
44
-
45
- **If the concept is related to something they know (TRANSFERABLE):**
46
- - Briefly note the difference, skip the basics
47
- - Focus on what's different, not what's the same
48
-
49
- **If they already know it (FAMILIAR):**
50
- - Don't explain the concept at all
51
- - Just show the project-specific convention
52
-
53
- ### 3. Always Include
54
-
55
- - Specific file paths from this project as examples
56
- - The project convention (from CLAUDE.md) for whatever they're doing
57
- - A concrete next action they can take
58
-
59
- ## Personalization Strategies
60
-
61
- ### Backend Engineer → Frontend Project
62
-
63
- | Concept | Explain As |
64
- |---------|-----------|
65
- | Components | "Like views that return HTML directly" |
66
- | State (useState) | "Like a variable that re-renders the page when changed" |
67
- | Props | "Like function arguments for components" |
68
- | useEffect | "Like Django signals — side effects triggered by changes" |
69
- | Client vs Server Components | "Server = Django view, Client = JavaScript in template" |
70
-
71
- ### Frontend Engineer → Backend Project
72
-
73
- | Concept | Explain As |
74
- |---------|-----------|
75
- | ORM Models | "Like TypeScript interfaces that map to database tables" |
76
- | Migrations | "Like schema changes — versioned database updates" |
77
- | Serializers | "Like Zod schemas for API input/output validation" |
78
- | Views/Controllers | "Like API route handlers" |
79
- | Middleware | "Same concept — runs before your handler" |
80
-
81
- ### Senior → New Framework
82
-
83
- - Skip conceptual explanations entirely
84
- - Focus on: syntax, file locations, project conventions
85
- - Example: "API routes at `app/api/*/route.ts`, export GET/POST/etc."
86
-
87
- ### Junior → Any Framework
88
-
89
- - Include "why" not just "how"
90
- - Provide more context about patterns
91
- - Suggest reading material when appropriate
92
-
93
- ## What NOT to Do
94
-
95
- - Don't activate if no profile exists (engineer hasn't onboarded)
96
- - Don't over-explain things the engineer already knows
97
- - Don't provide generic advice — always reference this specific project
98
- - Don't interrupt the engineer's flow with unsolicited lectures
@@ -1,30 +0,0 @@
1
- # Changelog
2
-
3
- All notable changes to the smi-tanstack-router plugin will be documented in this file.
4
-
5
- ## [Unreleased]
6
-
7
- ### Changed
8
- - Renamed from `smi-tanstack-router` to `tanstack-router` as part of ai-kit migration
9
- - Moved from `plugins/smi-tanstack-router/` to `packs/tanstack-router/`
10
-
11
- ## [0.1.0] - 2025-01-02
12
-
13
- ### Added
14
- - Initial release (experimental)
15
- - 3 agents: tanstack-architect, tanstack-builder, tanstack-tester
16
- - 4 commands: route-create, query-create, form-create, table-create
17
- - 11 skills for TanStack ecosystem:
18
- - `router-patterns` - File-based routing
19
- - `query-patterns` - Data fetching with factory keys
20
- - `form-patterns` - TanStack Form + Zod
21
- - `table-patterns` - Headless tables
22
- - `virtual-patterns` - List virtualization
23
- - `store-patterns` - State management (alpha)
24
- - `db-patterns` - Client-first database (beta)
25
- - `ai-patterns` - AI/LLM integration (alpha)
26
- - `pacer-patterns` - Rate limiting (beta)
27
- - `devtools-patterns` - Developer tools
28
- - `tanstack-conventions` - Project conventions
29
- - Bun as package manager and runtime
30
- - Feature-based project structure
@@ -1,113 +0,0 @@
1
- # tanstack-router
2
-
3
- TanStack SPA development with the full ecosystem: Router, Query, Form, Table, Virtual, and experimental libraries.
4
-
5
- ## Overview
6
-
7
- This plugin provides comprehensive support for building React SPAs with the TanStack ecosystem, using Bun as the runtime and following feature-based architecture with `@/` import aliases.
8
-
9
- ## Installation
10
-
11
- ```bash
12
- /plugin install tanstack-router
13
- ```
14
-
15
- ## Features
16
-
17
- ### Core Libraries
18
- - **TanStack Router** - Type-safe file-based routing
19
- - **TanStack Query** - Server state management with factory key patterns
20
- - **TanStack Form** - Type-safe form handling
21
- - **TanStack Table** - Headless table/datagrid
22
- - **TanStack Virtual** - List virtualization
23
-
24
- ### Experimental Libraries (Alpha/Beta)
25
- - **TanStack Store** - Framework-agnostic state
26
- - **TanStack DB** - Client-first reactive store
27
- - **TanStack AI** - Unified AI SDK
28
- - **TanStack Pacer** - Rate limiting, debouncing, throttling
29
- - **TanStack Devtools** - Unified debugging tools
30
-
31
- ## Agents
32
-
33
- | Agent | Purpose |
34
- |-------|---------|
35
- | `tanstack-architect` | Design TanStack application architecture |
36
- | `tanstack-builder` | Implement features with TanStack patterns |
37
- | `tanstack-tester` | Write tests for TanStack applications |
38
-
39
- ## Commands
40
-
41
- | Command | Description |
42
- |---------|-------------|
43
- | `/route-create` | Create a new file-based route |
44
- | `/query-create` | Create query with factory key pattern |
45
- | `/form-create` | Create type-safe form with validation |
46
- | `/table-create` | Create headless table component |
47
-
48
- ## Conventions
49
-
50
- ### Folder Structure (Feature-Based)
51
- ```
52
- src/
53
- ├── features/
54
- │ ├── posts/
55
- │ │ ├── components/
56
- │ │ ├── hooks/
57
- │ │ ├── queries/
58
- │ │ └── types.ts
59
- │ └── users/
60
- ├── routes/
61
- │ ├── __root.tsx
62
- │ ├── index.tsx
63
- │ └── posts/
64
- │ ├── index.tsx
65
- │ └── $postId.tsx
66
- ├── lib/
67
- │ ├── query-client.ts
68
- │ └── query-keys.ts
69
- └── components/
70
- └── ui/
71
- ```
72
-
73
- ### Import Alias
74
- ```typescript
75
- import { PostList } from '@/features/posts/components'
76
- import { queryKeys } from '@/lib/query-keys'
77
- ```
78
-
79
- ### Query Key Factory Pattern
80
- ```typescript
81
- export const queryKeys = {
82
- posts: {
83
- all: () => ['posts'] as const,
84
- lists: () => [...queryKeys.posts.all(), 'list'] as const,
85
- list: (filters: Filters) => [...queryKeys.posts.lists(), filters] as const,
86
- details: () => [...queryKeys.posts.all(), 'detail'] as const,
87
- detail: (id: string) => [...queryKeys.posts.details(), id] as const,
88
- }
89
- }
90
- ```
91
-
92
- ### Data Fetching (Hybrid Approach)
93
- - **Loaders**: Prefetch data in route loaders
94
- - **Queries**: Hydrate and manage in components
95
-
96
- ```typescript
97
- // Route loader prefetches
98
- export const Route = createFileRoute('/posts/$postId')({
99
- loader: ({ context, params }) =>
100
- context.queryClient.ensureQueryData(postQueryOptions(params.postId)),
101
- })
102
-
103
- // Component hydrates
104
- function PostPage() {
105
- const { postId } = Route.useParams()
106
- const { data } = useSuspenseQuery(postQueryOptions(postId))
107
- }
108
- ```
109
-
110
- ## Runtime
111
-
112
- - **Bun** - Package manager and runtime
113
- - Commands use `bun` instead of `npm`/`yarn`