npx skills add https://github.com/0xkynz/codekit --skill setup扫描当前项目,检测其技术栈,并自动安装匹配的 codekit 技能。
codekit skills add <name>codekit learn --all -y 以使用已安装的技能重新生成平台规则扫描项目根目录以查找以下信号。按顺序检查它们 — 当语言生态系统明确时尽早停止。
| 信号 | 它能告诉你什么 |
|---|---|
| package.json | 读取 dependencies、devDependencies、、、、 |
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
scriptsbinmainexports| tsconfig.json | TypeScript 项目 |
| bun.lockb / bunfig.toml | Bun 运行时 |
| next.config. * | Next.js 全栈 |
| nuxt.config. * | Nuxt 全栈 |
| svelte.config. * | SvelteKit 全栈 |
| vite.config. * | Vite 前端 |
| app.json / app.config.js 包含 expo | Expo 移动端 |
| Podfile / ios/ | iOS 原生 |
| android/ | Android 原生 |
| 信号 | 它能告诉你什么 |
|---|---|
uv.lock / pyproject.toml 包含 [tool.uv] | Python + uv 包管理器 |
| pyproject.toml | Python 项目(检查 [project.dependencies] 或 [tool.poetry.dependencies]) |
| requirements.txt | Python 项目(读取包名) |
| Pipfile | Python + pipenv |
| setup.py / setup.cfg | Python 包 |
| 信号 | 它能告诉你什么 |
|---|---|
| Cargo.toml | Rust 项目 |
| go.mod | Go 项目 |
| *Gemfile /.gemspec__ | Ruby 项目 |
| composer.json | PHP 项目 |
| **.csproj /.sln__ | .NET / C# 项目 |
| pom.xml / build.gradle | Java / Kotlin 项目 |
| Package.swift | Swift 项目 |
| mix.exs | Elixir 项目 |
| Makefile +.c/.cpp/*.h | C/C++ 项目 |
| 信号 | 它能告诉你什么 |
|---|---|
| .github/workflows/ | GitHub Actions CI/CD |
| .git/ | Git 仓库 |
| docker-compose.yml / Dockerfile | 容器化项目 |
| prisma/schema.prisma | Prisma ORM (PostgreSQL/MySQL/MongoDB) |
| drizzle.config. * | Drizzle ORM |
| mongod.conf / .mongodb | MongoDB |
确定项目类型 — 这决定了 Cook 工作流程的阶段:
| 信号 | 项目类型 | 基础模板 | 阶段 |
|---|---|---|---|
| API 路由、控制器、ORM、无 UI — NestJS、ElysiaJS、FastAPI、Express、Hono | 后端 | cook-backend | 规划 → 编码 → 审查 → 测试 |
| React/Vue/Svelte SPA、CSS、组件、无 API 路由 | 前端 | cook-frontend | 规划 → 设计 → 编码 → 审查 → 测试 |
| React Native、Expo、iOS/Android | 移动端 | cook-mobile | 规划 → 设计 → 编码 → 审查 → 测试 |
| Next.js、Nuxt、SvelteKit(API + UI 在一个项目中) | 全栈 | cook-fullstack | 规划 → 设计 → 编码 API → 编码 UI → 审查 → 测试 |
bin 字段,commander/yargs/meow/oclif,CLI 入口点 | CLI | cook-cli | 规划 → 编码 → 审查 → 测试 |
package.json 中的 main/exports,无应用;或带有 setup.py/pyproject.toml 的 Python 包 | 库 | cook-library | 规划 → 设计 → 编码 → 审查 → 测试 |
如果混合或不明确,使用 全栈。
使用这些查找表。当 任何 触发条件匹配时,安装相应的技能。
这些技能对每个项目都有益,无论使用何种语言:
| 技能 | 原因 |
|---|---|
memory-bank | 跨会话的持久化上下文 |
git-expert | 每个项目都使用 git |
agents | 通用 AI 代理配置(agents.md 标准) |
| 触发条件 | 要安装的技能 |
|---|---|
Python 依赖项(requirements.txt、pyproject.toml、Pipfile)中包含 fastapi | fastapi、python-fastapi |
Python 依赖项中包含 sqlalchemy、alembic | database-expert |
Python 依赖项中包含 pymongo、motor、mongoengine | database-expert |
Python 依赖项中包含 psycopg2、asyncpg | database-expert |
Python 依赖项中包含 pgvector | pgvector、database-expert |
Python 依赖项中包含 pytest、unittest | testing-expert |
Python 依赖项中包含 ruff、flake8、pylint、black | linting-expert |
注意: 使用 uv 的 Python 项目使用 pyproject.toml([project.dependencies])或 uv.lock。读取这些文件以检测包。
| 触发条件 | 要安装的技能 |
|---|---|
devDeps 中包含 typescript 或存在 tsconfig.json | typescript-expert |
deps 中包含 react(不包含 react-native) | react |
deps 中包含 next | nextjs |
deps 中包含 react 或 next | uiux-design-expert、web-design-guidelines、vercel-react-best-practices、vercel-composition-patterns、chrome-devtools |
deps 中包含 @nestjs/core | typescript-expert、database-expert、testing-expert |
deps 中包含 elysia 且运行时为 bun | elysiajs-ddd |
deps 中包含 elysia 和 mongoose | elysiajs-ddd-mongoose(替代 elysiajs-ddd) |
deps 中包含 elysia 和(prisma 或 drizzle 或 pg) | elysiajs-ddd |
deps 中包含 react-native(不包含 expo) | react-native、react-native-best-practices、vercel-react-native-skills、mobile-app-distribution |
deps 中包含 expo 或 app.json 包含 expo 配置 | react-native-expo、react-native-best-practices、vercel-react-native-skills、mobile-app-distribution |
当检测到 react 或 next 时,同时检查这些推荐的前端库。如果它们 不 存在于依赖项中,则将其作为推荐技术栈建议给用户:
| 库 | 用途 | 包名 |
|---|---|---|
| TanStack Query | 服务器状态和数据获取 | @tanstack/react-query |
| TanStack Table | 无头表格/数据网格 | @tanstack/react-table |
| Zod | 模式验证 | zod |
| Zustand | 客户端状态管理 | zustand |
| Axios | HTTP 客户端 | axios |
| React Hook Form | 表单处理 | react-hook-form |
| Recharts | 图表和数据可视化 | recharts |
行为:
recharts 是可选的 — 仅当项目具有图表/仪表板功能或用户要求图表时才推荐。| 触发条件 | 要安装的技能 |
|---|---|
JS/TS deps 中包含 pg、postgres、@neondatabase/serverless、knex、prisma、drizzle、sequelize、typeorm | database-expert |
JS/TS deps 中包含 mongoose、mongodb、@typegoose/typegoose | database-expert |
JS/TS deps 中包含 mysql2 | database-expert |
deps 中包含 pgvector 或 SQL 文件包含 vector 类型 | pgvector、database-expert |
存在 prisma/schema.prisma | database-expert |
| 触发条件 | 要安装的技能 |
|---|---|
deps 中包含 @nestjs/core 或 elysia 且具有 DDD 风格文件夹结构(domain/、application/、infrastructure/) | clean-architecture-ddd、domain-driven-hexagon |
deps 中包含 @nestjs/cqrs | domain-driven-hexagon |
FastAPI 具有分层结构(domain/、services/、repositories/) | clean-architecture-ddd |
| 触发条件 | 要安装的技能 |
|---|---|
JS/TS deps 中包含 jest、vitest、mocha 或 @testing-library/* | testing-expert |
deps/devDeps 中包含 eslint 或 prettier | linting-expert |
存在 .github/ 目录 | github、github-actions |
deps 中包含 commander、yargs、meow 或 oclif | cli-expert |
对于没有专门技能的语言,安装基础技能:
| 语言 | 要安装的技能 |
|---|---|
| Rust (Cargo.toml) | memory-bank、git-expert、testing-expert + cook(为后端或库自动生成) |
| Go (go.mod) | memory-bank、git-expert、testing-expert + cook(为后端或库自动生成) |
| Ruby (Gemfile) | memory-bank、git-expert、database-expert、testing-expert + cook(为后端自动生成) |
| PHP (composer.json) | memory-bank、git-expert、database-expert、testing-expert + cook(为后端自动生成) |
| .NET (*.csproj) | memory-bank、git-expert、database-expert、testing-expert + cook(为后端或全栈自动生成) |
| Java/Kotlin (pom.xml/build.gradle) | memory-bank、git-expert、database-expert、testing-expert + cook(为后端自动生成) |
| Swift (Package.swift) | memory-bank、git-expert + cook(为移动端或库自动生成) |
| Elixir (mix.exs) | memory-bank、git-expert、database-expert、testing-expert + cook(为后端自动生成) |
| C/C++ (Makefile + .c/.h) | memory-bank、git-expert、testing-expert + cook(为库自动生成) |
对于这些语言,如果存在 .github/ 则添加 github + github-actions,如果存在 linter 配置文件则添加 linting-expert。
不要安装冲突的技能:
react 和 nextjs 是替代品 — 如果 deps 中同时包含 react 和 next,则安装 nextjsreact-native 和 react-native-expo 是替代品 — 根据是否存在 expo 来决定安装哪个elysiajs-ddd 和 elysiajs-ddd-mongoose 是替代品 — 根据是否存在 mongoose 来决定安装哪个python-fastapi 和 fastapi — 两者都安装(它们在不同深度上互补)cook(见步骤 7)在安装之前,展示检测结果和建议的技能:
Detected: TypeScript, Bun, ElysiaJS, Mongoose, GitHub Actions
Project type: Backend
Skills to install (11):
Always: memory-bank, agents, git-expert
Auto-gen: cook (customized for backend — ElysiaJS + Mongoose)
Framework: elysiajs-ddd-mongoose, typescript-expert
Database: database-expert
Arch: clean-architecture-ddd, domain-driven-hexagon
Tooling: testing-expert, github, github-actions
Proceed? (Y/n)
如果用户拒绝,询问要跳过哪些技能。
运行每个安装命令:
codekit skills add <name>
按顺序安装以避免冲突。如果某个技能已安装,则跳过 — codekit skills add 会报告。
安装后,检查用户可能还想要的相关技能:
codekit skills related <name>
不要安装预构建的 cook 变体。 相反,生成一个针对此项目定制的自定义 cook 技能。
codekit skills add <cook-variant> 获取基础模板,或从 .claude/skills/cook-<type>/SKILL.md 读取.claude/skills/cook/SKILL.md,使用项目特定细节定制基础模板cook)用实际项目细节替换通用术语:
| 通用术语 | 替换为 |
|---|---|
| "API routes, controllers" | 实际框架(例如:"NestJS controllers"、"FastAPI routers"、"ElysiaJS handlers") |
| "models, migrations, schemas" | 实际 ORM(例如:"Prisma models"、"Mongoose schemas"、"SQLAlchemy models + Alembic migrations") |
| "Run the full test suite" | 实际命令(例如:"bun run test"、"pytest"、"vitest run") |
| "Run type checking" | 实际命令(例如:"tsc --noEmit"、"mypy .") |
| "Run linting" | 实际命令(例如:"eslint ."、"ruff check .") |
| "components, pages, state" | 实际技术栈(例如:"React components with Zustand store"、"Next.js pages with TanStack Query") |
| "data fetching" | 实际库(例如:"TanStack Query"、"SWR"、"Axios") |
| "form handling" | 实际库(例如:"React Hook Form + Zod validation") |
| "package manager" | 实际包管理器(例如:"bun"、"uv"、"pnpm") |
生成的 .claude/skills/cook/SKILL.md 必须始终包含:
---
name: cook
description: [Project-specific description with actual tech stack]
---
# Cook — [Project Type] Workflow for [Project Name]
[Phase diagram]
---
## Memory Bank — Required for Every Session
[Always include this section — copy from any cook variant]
---
## [PLAN] Plan
[Customized with actual project context]
## [DESIGN] Design (if applicable)
[Customized with actual component/API patterns]
## [CODE] Code
[Customized with actual framework, ORM, patterns]
## [REVIEW] Review
[Customized checklist with actual tech-specific checks]
## [TEST] Test
[Customized with actual test runner, commands, patterns]
---
## Iteration
[Standard iteration rules]
## Phase Markers
[Standard phase markers]
---
name: cook
description: Workflow orchestration for the [project-name] fullstack project — Next.js 15, Prisma, TanStack Query, Zustand. Phases: Plan, Design, Code API, Code UI, Review, Test.
---
# Cook — Fullstack Workflow for [project-name]
Plan → Design → Code (API first) → Code (UI) → Review → Test
## Memory Bank — Required for Every Session
[... standard memory-bank section ...]
## [PLAN] Plan
1. Read requirements. Identify both API routes and page/component changes.
2. Break into backend subtasks (Prisma models, API routes) and frontend subtasks (components, pages).
3. Define the API contract — Next.js API route request/response shapes.
4. Define acceptance criteria for the full user flow.
## [DESIGN] Design
1. Design API contract first — Next.js API routes are the bridge.
2. Define component hierarchy and TanStack Query data fetching strategy.
3. Plan Zustand store shape for client state.
4. Plan loading states, optimistic UI, and error handling.
## [CODE] Code — API First
1. Implement Prisma schema changes and run `bunx prisma db push`.
2. Implement Next.js API routes / Server Actions.
3. Validate API works with a test or manual check.
4. Then implement React components with TanStack Query for data fetching.
5. Wire up React Hook Form + Zod for form validation.
6. Use Zustand for client-side state where needed.
## [REVIEW] Review
1. **Prisma** — Schema correct? Migrations clean? No N+1 queries?
2. **API routes** — Correct HTTP methods? Input validated with Zod? Proper error responses?
3. **Components** — TanStack Query keys correct? Loading/error states handled?
4. **Forms** — React Hook Form + Zod validation working? Error messages shown?
5. **Types** — No `any`? Prisma types flowing through to components?
6. **Security** — Auth checks on protected routes? No exposed secrets?
## [TEST] Test
1. `bun run test` — Run Vitest suite.
2. `tsc --noEmit` — Type check passes.
3. `eslint .` — No lint errors.
4. Test API routes with edge case inputs.
5. Visual check — run `bun run dev` and verify the feature.
在所有技能安装完毕且 cook 生成后,重新生成平台规则:
codekit learn --all -y
这将使用已安装的技能部分更新 CLAUDE.md、.cursorrules、GEMINI.md 和 AGENTS.md。
# pyproject.toml
[project]
dependencies = [
"fastapi>=0.115.0",
"sqlalchemy[asyncio]>=2.0",
"asyncpg>=0.30.0",
"alembic>=1.14.0",
]
[tool.uv]
dev-dependencies = [
"pytest>=8.0",
"ruff>=0.8.0",
]
检测到:Python、uv、FastAPI、SQLAlchemy、asyncpg (PostgreSQL)、pytest、ruff 项目类型:后端 (FastAPI API,无 UI)
已安装技能:
memory-bank、agents、git-expert(始终安装)+ cook(为后端自动生成)fastapi、python-fastapi(deps 中包含 fastapi)database-expert(deps 中包含 sqlalchemy + asyncpg)testing-expert(dev-deps 中包含 pytest)linting-expert(dev-deps 中包含 ruff)github、github-actions(如果存在 .github/){
"dependencies": {
"@nestjs/core": "^10.0.0",
"@nestjs/typeorm": "^10.0.0",
"typeorm": "^0.3.0",
"pg": "^8.0.0"
},
"devDependencies": {
"typescript": "5.x",
"jest": "29.x",
"eslint": "9.x"
}
}
检测到:TypeScript、NestJS、TypeORM、PostgreSQL、Jest、ESLint 项目类型:后端 (NestJS,无 UI)
已安装技能:
memory-bank、agents、git-expert(始终安装)+ cook(为后端自动生成)typescript-expert(devDeps 中包含 typescript)database-expert(deps 中包含 typeorm + pg)clean-architecture-ddd、domain-driven-hexagon(NestJS 架构)testing-expert(devDeps 中包含 jest)linting-expert(devDeps 中包含 eslint)github、github-actions(如果存在 .github/){
"dependencies": {
"elysia": "^1.2.0",
"mongoose": "^8.0.0",
"@elysiajs/cors": "^1.0.0"
},
"devDependencies": {
"typescript": "5.x",
"bun-types": "latest"
}
}
检测到:TypeScript、Bun、ElysiaJS、Mongoose (MongoDB) 项目类型:后端 (ElysiaJS API,无 UI)
已安装技能:
memory-bank、agents、git-expert(始终安装)+ cook(为后端自动生成)elysiajs-ddd-mongoose(deps 中包含 elysia + mongoose)typescript-expert(devDeps 中包含 typescript)database-expert(deps 中包含 mongoose)clean-architecture-ddd、domain-driven-hexagon(DDD 架构)testing-expert{
"dependencies": {
"elysia": "^1.2.0",
"prisma": "^6.0.0",
"@prisma/client": "^6.0.0"
},
"devDependencies": {
"typescript": "5.x",
"bun-types": "latest"
}
}
检测到:TypeScript、Bun、ElysiaJS、Prisma (PostgreSQL) 项目类型:后端 (ElysiaJS API,无 UI)
已安装技能:
memory-bank、agents、git-expert(始终安装)+ cook(为后端自动生成)elysiajs-ddd(deps 中包含 elysia + prisma,无 mongoose)typescript-expert(devDeps 中包含 typescript)database-expert(deps 中包含 prisma)clean-architecture-ddd、domain-driven-hexagon(DDD 架构)testing-expert{
"dependencies": {
"next": "15.x",
"react": "19.x",
"@prisma/client": "6.x",
"@tanstack/react-query": "^5.0.0",
"@tanstack/react-table": "^8.0.0",
"zustand": "^5.0.0",
"axios": "^1.7.0",
"react-hook-form": "^7.0.0",
"zod": "^3.23.0"
},
"devDependencies": {
"typescript": "5.x",
"eslint": "9.x",
"vitest": "3.x"
}
}
检测到:TypeScript、Next.js、React、Prisma、TanStack Query、TanStack Table、Zustand、Axios、React Hook Form、Zod、ESLint、Vitest 项目类型:全栈 (Next.js = API + UI)
已安装技能:
memory-bank、agents、git-expert(始终安装)+ cook(为全栈自动生成)nextjs(deps 中包含 next,由于两者都存在,优先于 react)typescript-expert(devDeps 中包含 typescript)uiux-design-expert、web-design-guidelines、vercel-react-best-practices、vercel-composition-patterns、chrome-devtools(前端技术栈)database-expert(deps 中包含 prisma)testing-expert(devDeps 中包含 vitest)linting-expert(devDeps 中包含 eslint)github、github-actions(如果存在 .github/)检测到推荐技术栈:TanStack Query、TanStack Table、Zustand、Axios、React Hook Form、Zod
{
"dependencies": {
"react": "19.x",
"react-dom": "19.x",
"@tanstack/react-query": "^5.0.0",
"@tanstack/react-table": "^8.0.0",
"zustand": "^5.0.0",
"axios": "^1.7.0",
"react-hook-form": "^7.0.0",
"zod": "^3.23.0",
"recharts": "^2.0.0"
},
"devDependencies": {
"typescript": "5.x",
"vite": "6.x",
"eslint": "9.x",
"vitest": "3.x"
}
}
检测到:TypeScript、React、Vite、TanStack Query、TanStack Table、Zustand、Axios、React Hook Form、Zod、Recharts、ESLint、Vitest 项目类型:前端 (React SPA,无 API 层)
已安装技能:
memory-bank、agents、git-expert(始终安装)+ cook(为前端自动生成)react(deps 中包含 react,无 next)typescript-expert(devDeps 中包含 typescript)uiux-design-expert、web-design-guidelines、vercel-react-best-practices、vercel-composition-patterns、chrome-devtools(前端技术栈)testing-expert(devDeps 中包含 vitest)linting-expert(devDeps 中包含 eslint)检测到推荐技术栈:TanStack Query、TanStack Table、Zustand、Axios、React Hook Form、Zod、Recharts
{
"dependencies": {
"expo": "52.x",
"react-native": "0.76.x",
"expo-router": "4.x"
},
"devDependencies": {
"typescript": "5.x",
"jest": "29.x"
}
}
检测到:TypeScript、Expo、React Native、Jest 项目类型:移动端 (React Native + Expo)
已安装技能:
memory-bank、agents、git-expert(始终安装)+ cook(为移动端自动生成)react-native-expo(deps 中包含 expo)react-native-best-practices、vercel-react-native-skills(移动端增强技能)mobile-app-distribution(移动端项目)typescript-expert(devDeps 中包含 typescript)testing-expert(devDeps 中包含 jest){
"bin": { "mytool": "./dist/index.js" },
"dependencies": {
"commander": "^12.0.0"
},
"devDependencies": {
"typescript": "5.x",
"vitest": "3.x"
}
}
检测到:TypeScript、Commander、Vitest 项目类型:CLI(bin 字段 + commander)
已安装技能:
memory-bank、agents、git-expert(始终安装)+ cook(为 CLI 自动生成)cli-expert(deps 中包含 commander)typescript-expert(devDeps 中包含 typescript)testing-expert(devDeps 中包含 vitest)// go.mod
module github.com/user/api
go 1.23
require (
github.com/gin-gonic/gin v1.10.0
github.com/jackc/pgx/v5 v5.7.0
)
检测到:Go、Gin、pgx (PostgreSQL) 项目类型:后端 (API 带数据库)
已安装技能:
memory-bank、agents、git-expert(始终安装)+ cook(为后端自动生成)database-expert(pgx = PostgreSQL)testing-expert(Go 有内置测试)github、github-actions(如果存在 .github/)# Cargo.toml
[package]
name = "my-lib"
version = "0.1.0"
[lib]
name = "my_lib"
[dev-dependencies]
tokio-test = "0.4"
检测到:Rust、库 crate 项目类型:库(Cargo.toml 中的 [lib] 部分)
已安装技能:
memory-bank、agents、git-expert(始终安装)+ cook(为库自动生成)testing-expertgithub、github-actions(如果存在 .github/)每周安装数
1
仓库
GitHub 星标数
1
首次出现
1 天前
安全审计
已安装于
zencoder1
amp1
cline1
openclaw1
opencode1
cursor1
Scan the current project, detect its tech stack, and install the matching codekit skills automatically.
codekit skills add <name> for each matchcodekit learn --all -y to regenerate platform rules with installed skillsScan the project root for these signals. Check them in order — stop early when the language ecosystem is clear.
| Signal | What it tells you |
|---|---|
| package.json | Read dependencies, devDependencies, scripts, bin, main, exports |
| tsconfig.json | TypeScript project |
| bun.lockb / bunfig.toml | Bun runtime |
| next.config. * | Next.js fullstack |
| nuxt.config. * | Nuxt fullstack |
| svelte.config. * | SvelteKit fullstack |
| vite.config. * | Vite frontend |
| app.json / app.config.js with expo | Expo mobile |
| Podfile / ios/ | iOS native |
| android/ | Android native |
| Signal | What it tells you |
|---|---|
uv.lock / pyproject.toml with [tool.uv] | Python + uv package manager |
| pyproject.toml | Python project (check [project.dependencies] or [tool.poetry.dependencies]) |
| requirements.txt | Python project (read for package names) |
| Pipfile | Python + pipenv |
| setup.py / setup.cfg | Python package |
| Signal | What it tells you |
|---|---|
| Cargo.toml | Rust project |
| go.mod | Go project |
| *Gemfile /.gemspec__ | Ruby project |
| composer.json | PHP project |
| **.csproj /.sln__ | .NET / C# project |
| pom.xml / build.gradle | Java / Kotlin project |
| Package.swift | Swift project |
| mix.exs | Elixir project |
| Makefile +.c/.cpp/*.h | C/C++ project |
| Signal | What it tells you |
|---|---|
| .github/workflows/ | GitHub Actions CI/CD |
| .git/ | Git repository |
| docker-compose.yml / Dockerfile | Containerized project |
| prisma/schema.prisma | Prisma ORM (PostgreSQL/MySQL/MongoDB) |
| drizzle.config. * | Drizzle ORM |
| mongod.conf / .mongodb | MongoDB |
Determine the project type — this decides the Cook workflow phases:
| Signal | Project Type | Base Template | Phases |
|---|---|---|---|
| API routes, controllers, ORM, no UI — NestJS, ElysiaJS, FastAPI, Express, Hono | Backend | cook-backend | Plan → Code → Review → Test |
| React/Vue/Svelte SPA, CSS, components, no API routes | Frontend | cook-frontend | Plan → Design → Code → Review → Test |
| React Native, Expo, iOS/Android | Mobile | cook-mobile | Plan → Design → Code → Review → Test |
| Next.js, Nuxt, SvelteKit (API + UI in one project) | Fullstack |
If mixed or unclear, use Fullstack.
Use these lookup tables. Install a skill when any of its triggers match.
These skills benefit every project regardless of language:
| Skill | Reason |
|---|---|
memory-bank | Persistent context across sessions |
git-expert | Every project uses git |
agents | Universal AI agent configuration (agents.md standard) |
| Trigger | Skills to Install |
|---|---|
fastapi in Python deps (requirements.txt, pyproject.toml, Pipfile) | fastapi, python-fastapi |
sqlalchemy, alembic in Python deps | database-expert |
pymongo, motor, mongoengine in Python deps |
Note: Python with uv uses pyproject.toml ([project.dependencies]) or uv.lock. Read these files to detect packages.
| Trigger | Skills to Install |
|---|---|
typescript in devDeps OR tsconfig.json exists | typescript-expert |
react in deps (without react-native) | react |
next in deps | nextjs |
| OR in deps |
When react or next is detected, also check for these recommended frontend libraries. If they are not present in deps, suggest them as the recommended stack:
| Library | Purpose | Package Name |
|---|---|---|
| TanStack Query | Server state & data fetching | @tanstack/react-query |
| TanStack Table | Headless table/datagrid | @tanstack/react-table |
| Zod | Schema validation | zod |
| Zustand | Client state management | zustand |
| Axios | HTTP client | axios |
Behavior:
recharts is optional — only recommend if the project has chart/dashboard features or the user asks for charts.| Trigger | Skills to Install |
|---|---|
pg, postgres, @neondatabase/serverless, knex, prisma, drizzle, sequelize, typeorm in JS/TS deps | database-expert |
mongoose, , in JS/TS deps |
| Trigger | Skills to Install |
|---|---|
@nestjs/core OR elysia in deps with DDD-style folder structure (domain/, application/, infrastructure/) | clean-architecture-ddd, domain-driven-hexagon |
@nestjs/cqrs in deps | domain-driven-hexagon |
| Trigger | Skills to Install |
|---|---|
jest, vitest, mocha, or @testing-library/* in JS/TS deps | testing-expert |
eslint or prettier in deps/devDeps | linting-expert |
.github/ directory exists |
For languages without specialized skills, install the baseline:
| Language | Skills to Install |
|---|---|
| Rust (Cargo.toml) | memory-bank, git-expert, testing-expert + cook (auto-generated for backend or library) |
| Go (go.mod) | memory-bank, git-expert, testing-expert + cook (auto-generated for backend or library) |
For these languages, add github + github-actions if .github/ exists, and linting-expert if linter config files exist.
Do NOT install skills that conflict:
react and nextjs are alternatives — install nextjs if both react and next are in depsreact-native and react-native-expo are alternatives — install based on whether expo is presentelysiajs-ddd and elysiajs-ddd-mongoose are alternatives — install based on whether mongoose is presentBefore installing, show the detection results and proposed skills:
Detected: TypeScript, Bun, ElysiaJS, Mongoose, GitHub Actions
Project type: Backend
Skills to install (11):
Always: memory-bank, agents, git-expert
Auto-gen: cook (customized for backend — ElysiaJS + Mongoose)
Framework: elysiajs-ddd-mongoose, typescript-expert
Database: database-expert
Arch: clean-architecture-ddd, domain-driven-hexagon
Tooling: testing-expert, github, github-actions
Proceed? (Y/n)
If the user declines, ask which skills to skip.
Run each install command:
codekit skills add <name>
Install sequentially to avoid conflicts. If a skill is already installed, skip it — codekit skills add will report it.
After installing, check for related skills the user might also want:
codekit skills related <name>
Do NOT install a pre-built cook variant. Instead, generate a custom cook skill tailored to this project.
codekit skills add <cook-variant> to get the base, OR read it from .claude/skills/cook-<type>/SKILL.md.claude/skills/cook/SKILL.md by customizing the base template with project-specific detailscook)Replace generic terms with actual project details:
| Generic | Replace With |
|---|---|
| "API routes, controllers" | Actual framework (e.g., "NestJS controllers", "FastAPI routers", "ElysiaJS handlers") |
| "models, migrations, schemas" | Actual ORM (e.g., "Prisma models", "Mongoose schemas", "SQLAlchemy models + Alembic migrations") |
| "Run the full test suite" | Actual command (e.g., "bun run test", "pytest", "vitest run") |
| "Run type checking" | Actual command (e.g., "tsc --noEmit", "mypy .") |
| "Run linting" | Actual command (e.g., "eslint .", "") |
The generated .claude/skills/cook/SKILL.md must always include:
---
name: cook
description: [Project-specific description with actual tech stack]
---
# Cook — [Project Type] Workflow for [Project Name]
[Phase diagram]
---
## Memory Bank — Required for Every Session
[Always include this section — copy from any cook variant]
---
## [PLAN] Plan
[Customized with actual project context]
## [DESIGN] Design (if applicable)
[Customized with actual component/API patterns]
## [CODE] Code
[Customized with actual framework, ORM, patterns]
## [REVIEW] Review
[Customized checklist with actual tech-specific checks]
## [TEST] Test
[Customized with actual test runner, commands, patterns]
---
## Iteration
[Standard iteration rules]
## Phase Markers
[Standard phase markers]
---
name: cook
description: Workflow orchestration for the [project-name] fullstack project — Next.js 15, Prisma, TanStack Query, Zustand. Phases: Plan, Design, Code API, Code UI, Review, Test.
---
# Cook — Fullstack Workflow for [project-name]
Plan → Design → Code (API first) → Code (UI) → Review → Test
## Memory Bank — Required for Every Session
[... standard memory-bank section ...]
## [PLAN] Plan
1. Read requirements. Identify both API routes and page/component changes.
2. Break into backend subtasks (Prisma models, API routes) and frontend subtasks (components, pages).
3. Define the API contract — Next.js API route request/response shapes.
4. Define acceptance criteria for the full user flow.
## [DESIGN] Design
1. Design API contract first — Next.js API routes are the bridge.
2. Define component hierarchy and TanStack Query data fetching strategy.
3. Plan Zustand store shape for client state.
4. Plan loading states, optimistic UI, and error handling.
## [CODE] Code — API First
1. Implement Prisma schema changes and run `bunx prisma db push`.
2. Implement Next.js API routes / Server Actions.
3. Validate API works with a test or manual check.
4. Then implement React components with TanStack Query for data fetching.
5. Wire up React Hook Form + Zod for form validation.
6. Use Zustand for client-side state where needed.
## [REVIEW] Review
1. **Prisma** — Schema correct? Migrations clean? No N+1 queries?
2. **API routes** — Correct HTTP methods? Input validated with Zod? Proper error responses?
3. **Components** — TanStack Query keys correct? Loading/error states handled?
4. **Forms** — React Hook Form + Zod validation working? Error messages shown?
5. **Types** — No `any`? Prisma types flowing through to components?
6. **Security** — Auth checks on protected routes? No exposed secrets?
## [TEST] Test
1. `bun run test` — Run Vitest suite.
2. `tsc --noEmit` — Type check passes.
3. `eslint .` — No lint errors.
4. Test API routes with edge case inputs.
5. Visual check — run `bun run dev` and verify the feature.
After all skills are installed and cook is generated, regenerate platform rules:
codekit learn --all -y
This updates CLAUDE.md, .cursorrules, GEMINI.md, and AGENTS.md with the installed skills section.
# pyproject.toml
[project]
dependencies = [
"fastapi>=0.115.0",
"sqlalchemy[asyncio]>=2.0",
"asyncpg>=0.30.0",
"alembic>=1.14.0",
]
[tool.uv]
dev-dependencies = [
"pytest>=8.0",
"ruff>=0.8.0",
]
Detected: Python, uv, FastAPI, SQLAlchemy, asyncpg (PostgreSQL), pytest, ruff Project type: Backend (FastAPI API, no UI)
Installed skills:
memory-bank, agents, git-expert (always) + cook (auto-generated for backend)fastapi, python-fastapi (fastapi in deps)database-expert (sqlalchemy + asyncpg in deps)testing-expert (pytest in dev-deps)linting-expert (ruff in dev-deps)github, github-actions (if .github/ exists){
"dependencies": {
"@nestjs/core": "^10.0.0",
"@nestjs/typeorm": "^10.0.0",
"typeorm": "^0.3.0",
"pg": "^8.0.0"
},
"devDependencies": {
"typescript": "5.x",
"jest": "29.x",
"eslint": "9.x"
}
}
Detected: TypeScript, NestJS, TypeORM, PostgreSQL, Jest, ESLint Project type: Backend (NestJS, no UI)
Installed skills:
memory-bank, agents, git-expert (always) + cook (auto-generated for backend)typescript-expert (typescript in devDeps)database-expert (typeorm + pg in deps)clean-architecture-ddd, domain-driven-hexagon (NestJS architecture)testing-expert (jest in devDeps)linting-expert (eslint in devDeps){
"dependencies": {
"elysia": "^1.2.0",
"mongoose": "^8.0.0",
"@elysiajs/cors": "^1.0.0"
},
"devDependencies": {
"typescript": "5.x",
"bun-types": "latest"
}
}
Detected: TypeScript, Bun, ElysiaJS, Mongoose (MongoDB) Project type: Backend (ElysiaJS API, no UI)
Installed skills:
memory-bank, agents, git-expert (always) + cook (auto-generated for backend)elysiajs-ddd-mongoose (elysia + mongoose in deps)typescript-expert (typescript in devDeps)database-expert (mongoose in deps)clean-architecture-ddd, domain-driven-hexagon (DDD architecture)testing-expert{
"dependencies": {
"elysia": "^1.2.0",
"prisma": "^6.0.0",
"@prisma/client": "^6.0.0"
},
"devDependencies": {
"typescript": "5.x",
"bun-types": "latest"
}
}
Detected: TypeScript, Bun, ElysiaJS, Prisma (PostgreSQL) Project type: Backend (ElysiaJS API, no UI)
Installed skills:
memory-bank, agents, git-expert (always) + cook (auto-generated for backend)elysiajs-ddd (elysia + prisma in deps, no mongoose)typescript-expert (typescript in devDeps)database-expert (prisma in deps)clean-architecture-ddd, domain-driven-hexagon (DDD architecture)testing-expert{
"dependencies": {
"next": "15.x",
"react": "19.x",
"@prisma/client": "6.x",
"@tanstack/react-query": "^5.0.0",
"@tanstack/react-table": "^8.0.0",
"zustand": "^5.0.0",
"axios": "^1.7.0",
"react-hook-form": "^7.0.0",
"zod": "^3.23.0"
},
"devDependencies": {
"typescript": "5.x",
"eslint": "9.x",
"vitest": "3.x"
}
}
Detected: TypeScript, Next.js, React, Prisma, TanStack Query, TanStack Table, Zustand, Axios, React Hook Form, Zod, ESLint, Vitest Project type: Fullstack (Next.js = API + UI)
Installed skills:
memory-bank, agents, git-expert (always) + cook (auto-generated for fullstack)nextjs (next in deps, prefer over react since both present)typescript-expert (typescript in devDeps)uiux-design-expert, web-design-guidelines, vercel-react-best-practices, vercel-composition-patterns, chrome-devtools (frontend stack)Recommended stack detected: TanStack Query, TanStack Table, Zustand, Axios, React Hook Form, Zod
{
"dependencies": {
"react": "19.x",
"react-dom": "19.x",
"@tanstack/react-query": "^5.0.0",
"@tanstack/react-table": "^8.0.0",
"zustand": "^5.0.0",
"axios": "^1.7.0",
"react-hook-form": "^7.0.0",
"zod": "^3.23.0",
"recharts": "^2.0.0"
},
"devDependencies": {
"typescript": "5.x",
"vite": "6.x",
"eslint": "9.x",
"vitest": "3.x"
}
}
Detected: TypeScript, React, Vite, TanStack Query, TanStack Table, Zustand, Axios, React Hook Form, Zod, Recharts, ESLint, Vitest Project type: Frontend (React SPA, no API layer)
Installed skills:
memory-bank, agents, git-expert (always) + cook (auto-generated for frontend)react (react in deps, no next)typescript-expert (typescript in devDeps)uiux-design-expert, web-design-guidelines, vercel-react-best-practices, vercel-composition-patterns, chrome-devtools (frontend stack)Recommended stack detected: TanStack Query, TanStack Table, Zustand, Axios, React Hook Form, Zod, Recharts
{
"dependencies": {
"expo": "52.x",
"react-native": "0.76.x",
"expo-router": "4.x"
},
"devDependencies": {
"typescript": "5.x",
"jest": "29.x"
}
}
Detected: TypeScript, Expo, React Native, Jest Project type: Mobile (React Native + Expo)
Installed skills:
memory-bank, agents, git-expert (always) + cook (auto-generated for mobile)react-native-expo (expo in deps)react-native-best-practices, vercel-react-native-skills (mobile enhancers)mobile-app-distribution (mobile project)typescript-expert (typescript in devDeps)testing-expert (jest in devDeps){
"bin": { "mytool": "./dist/index.js" },
"dependencies": {
"commander": "^12.0.0"
},
"devDependencies": {
"typescript": "5.x",
"vitest": "3.x"
}
}
Detected: TypeScript, Commander, Vitest Project type: CLI (bin field + commander)
Installed skills:
memory-bank, agents, git-expert (always) + cook (auto-generated for CLI)cli-expert (commander in deps)typescript-expert (typescript in devDeps)testing-expert (vitest in devDeps)// go.mod
module github.com/user/api
go 1.23
require (
github.com/gin-gonic/gin v1.10.0
github.com/jackc/pgx/v5 v5.7.0
)
Detected: Go, Gin, pgx (PostgreSQL) Project type: Backend (API with database)
Installed skills:
memory-bank, agents, git-expert (always) + cook (auto-generated for backend)database-expert (pgx = PostgreSQL)testing-expert (Go has built-in testing)github, github-actions (if .github/ exists)# Cargo.toml
[package]
name = "my-lib"
version = "0.1.0"
[lib]
name = "my_lib"
[dev-dependencies]
tokio-test = "0.4"
Detected: Rust, library crate Project type: Library ([lib] section in Cargo.toml)
Installed skills:
memory-bank, agents, git-expert (always) + cook (auto-generated for library)testing-expertgithub, github-actions (if .github/ exists)Weekly Installs
1
Repository
GitHub Stars
1
First Seen
1 day ago
Security Audits
Gen Agent Trust HubPassSocketPassSnykPass
Installed on
zencoder1
amp1
cline1
openclaw1
opencode1
cursor1
agent-browser 浏览器自动化工具 - Vercel Labs 命令行网页操作与测试
147,400 周安装
cook-fullstack |
| Plan → Design → Code API → Code UI → Review → Test |
bin field, commander/yargs/meow/oclif, CLI entry | CLI | cook-cli | Plan → Code → Review → Test |
main/exports in package.json, no app; or Python package with setup.py/pyproject.toml | Library | cook-library | Plan → Design → Code → Review → Test |
database-expert |
psycopg2, asyncpg in Python deps | database-expert |
pgvector in Python deps | pgvector, database-expert |
pytest, unittest in Python deps | testing-expert |
ruff, flake8, pylint, black in Python deps | linting-expert |
reactnextuiux-design-expert, web-design-guidelines, vercel-react-best-practices, vercel-composition-patterns, chrome-devtools |
@nestjs/core in deps | typescript-expert, database-expert, testing-expert |
elysia in deps AND bun runtime | elysiajs-ddd |
elysia + mongoose in deps | elysiajs-ddd-mongoose (instead of elysiajs-ddd) |
elysia + (prisma OR drizzle OR pg) in deps | elysiajs-ddd |
react-native in deps (without expo) | react-native, react-native-best-practices, vercel-react-native-skills, mobile-app-distribution |
expo in deps OR app.json with expo config | react-native-expo, react-native-best-practices, vercel-react-native-skills, mobile-app-distribution |
| React Hook Form | Form handling | react-hook-form |
| Recharts | Charts & data visualization | recharts |
mongodb@typegoose/typegoosedatabase-expert |
mysql2 in JS/TS deps | database-expert |
pgvector in deps OR SQL files with vector type | pgvector, database-expert |
prisma/schema.prisma exists | database-expert |
FastAPI with layered structure (domain/, services/, repositories/) | clean-architecture-ddd |
github, github-actions |
commander, yargs, meow, or oclif in deps | cli-expert |
| Ruby (Gemfile) |
memory-bank, git-expert, database-expert, testing-expert + cook (auto-generated for backend) |
| PHP (composer.json) | memory-bank, git-expert, database-expert, testing-expert + cook (auto-generated for backend) |
| .NET (*.csproj) | memory-bank, git-expert, database-expert, testing-expert + cook (auto-generated for backend or fullstack) |
| Java/Kotlin (pom.xml/build.gradle) | memory-bank, git-expert, database-expert, testing-expert + cook (auto-generated for backend) |
| Swift (Package.swift) | memory-bank, git-expert + cook (auto-generated for mobile or library) |
| Elixir (mix.exs) | memory-bank, git-expert, database-expert, testing-expert + cook (auto-generated for backend) |
| C/C++ (Makefile + .c/.h) | memory-bank, git-expert, testing-expert + cook (auto-generated for library) |
python-fastapi and fastapi — install both (they complement each other with different depth)cook (see Step 7)ruff check .| "components, pages, state" | Actual stack (e.g., "React components with Zustand store", "Next.js pages with TanStack Query") |
| "data fetching" | Actual library (e.g., "TanStack Query", "SWR", "Axios") |
| "form handling" | Actual library (e.g., "React Hook Form + Zod validation") |
| "package manager" | Actual PM (e.g., "bun", "uv", "pnpm") |
github, github-actions (if .github/ exists)database-expert (prisma in deps)testing-expert (vitest in devDeps)linting-expert (eslint in devDeps)github, github-actions (if .github/ exists)testing-expert (vitest in devDeps)linting-expert (eslint in devDeps)