claude-automation-recommender
Analyze a codebase and recommend Claude Code automations (hooks, subagents, skills, plugins, MCP servers). Use when user asks for automation recommendations, wants to optimize their Claude Code setup, mentions improving Claude Code workflows, asks how to first set up Claude Code for a project, or wants to know what Claude Code features they should use.
git clone --depth 1 https://github.com/CherryHQ/cherry-studio /tmp/claude-automation-recommender && cp -r /tmp/claude-automation-recommender/resources/builtin-agents/cherry-assistant/.claude/skills/claude-automation-recommender ~/.claude/skills/claude-automation-recommenderSKILL.md
# Claude Automation Recommender
Analyze codebase patterns to recommend tailored Claude Code automations across all extensibility options.
**This skill is read-only.** It analyzes the codebase and outputs recommendations. It does NOT create or modify any files. Users implement the recommendations themselves or ask Claude separately to help build them.
## Output Guidelines
- **Recommend 1-2 of each type**: Don't overwhelm - surface the top 1-2 most valuable automations per category
- **If user asks for a specific type**: Focus only on that type and provide more options (3-5 recommendations)
- **Go beyond the reference lists**: The reference files contain common patterns, but use web search to find recommendations specific to the codebase's tools, frameworks, and libraries
- **Tell users they can ask for more**: End by noting they can request more recommendations for any specific category
## Automation Types Overview
| Type | Best For |
|------|----------|
| **Hooks** | Automatic actions on tool events (format on save, lint, block edits) |
| **Subagents** | Specialized reviewers/analyzers that run in parallel |
| **Skills** | Packaged expertise, workflows, and repeatable tasks (invoked by Claude or user via `/skill-name`) |
| **Plugins** | Collections of skills that can be installed |
| **MCP Servers** | External tool integrations (databases, APIs, browsers, docs) |
## Workflow
### Phase 0: Confirm Before Scanning(Cherry Studio addition)
This scan reads many files (package.json, source structure, .claude/, framework
configs, dependencies) and produces detailed analysis. **It is token-intensive**
— a typical run on a medium-sized repo consumes **20–40K tokens** of model
context, plus model output for the recommendations themselves.
Before doing **any** filesystem reads or Bash calls, you MUST:
1. **Announce the scan plan** in one short paragraph: what dirs/files you will
read, why each is needed, and the token-budget estimate. Example phrasing:
> 我准备扫描当前工作目录的 `package.json`/`pyproject.toml`/`go.mod` 等清单文件 +
> `src/` `tests/` 项目结构 + 已有的 `.claude/` 配置 + CLAUDE.md,给出 hook /
> subagent / skill / MCP 推荐。预计消耗 **~30K tokens**(实际取决于仓库大小)。
2. **Ask explicit confirmation** with a clear yes/no question — in Cherry Studio
the chat UI surfaces this as a confirmation button:
> **继续扫描吗?** / **Proceed with scan?**
3. **Wait for explicit "yes" / "继续" / "go ahead"** before proceeding to Phase 1.
Treat anything ambiguous as a no.
4. **If the user declines or hesitates**, offer alternatives:
- **Narrower scope**: scan only one directory the user names → smaller budget
- **Verbal-only**: skip the scan, recommend based on what the user describes
(project type, frameworks, pain points)
- **Defer**: note the request to memory/FACT.md so a future session can pick
it up without re-asking
5. **Skip Phase 0 only if** the user has already explicitly granted scan
permission earlier in the same session (e.g. their first message was
"scan my repo and recommend automations now").
Only after explicit confirmation, proceed with Phase 1 below.
### Phase 1: Codebase Analysis
Gather project context:
```bash
# Detect project type and tools
ls -la package.json pyproject.toml Cargo.toml go.mod pom.xml 2>/dev/null
cat package.json 2>/dev/null | head -50
# Check dependencies for MCP server recommendations
cat package.json 2>/dev/null | grep -E '"(react|vue|angular|next|express|fastapi|django|prisma|supabase|stripe)"'
# Check for existing Claude Code config
ls -la .claude/ CLAUDE.md 2>/dev/null
# Analyze project structure
ls -la src/ app/ lib/ tests/ components/ pages/ api/ 2>/dev/null
```
**Key Indicators to Capture:**
| Category | What to Look For | Informs Recommendations For |
|----------|------------------|----------------------------|
| Language/Framework | package.json, pyproject.toml, import patterns | Hooks, MCP servers |
| Frontend stack | React, Vue, Angular, Next.js | Playwright MCP, frontend skills |
| Backend stack | Express, FastAPI, Django | API documentation tools |
| Database | Prisma, Supabase, raw SQL | Database MCP servers |
| External APIs | Stripe, OpenAI, AWS SDKs | context7 MCP for docs |
| Testing | Jest, pytest, Playwright configs | Testing hooks, subagents |
| CI/CD | GitHub Actions, CircleCI | GitHub MCP server |
| Issue tracking | Linear, Jira references | Issue tracker MCP |
| Docs patterns | OpenAPI, JSDoc, docstrings | Documentation skills |
### Phase 2: Generate Recommendations
Based on analysis, generate recommendations across all categories:
#### A. MCP Server Recommendations
See [references/mcp-servers.md](references/mcp-servers.md) for detailed patterns.
| Codebase Signal | Recommended MCP Server |
|-----------------|------------------------|
| Uses popular libraries (React, Express, etc.) | **context7** - Live documentation lookup |
| Frontend with UI testing needs | **Playwright** - Browser automation/testing |
| Uses Supabase | **Supabase MCP** - Direct database operations |
| PostgreSQL/MySQL database | **Database MCP** - Query and schema tools |
| GitHub repository | **GitHub MCP** - Issues, PRs, actions |
| Uses Linear for issues | **Linear MCP** - Issue management |
| AWS infrastructure | **AWS MCP** - Cloud resource management |
| Slack workspace | **Slack MCP** - Team notifications |
| Memory/context persistence | **Memory MCP** - Cross-session memory |
| Sentry error tracking | **Sentry MCP** - Error investigation |
| Docker containers | **Docker MCP** - Container management |
#### B. Skills Recommendations
See [references/skills-reference.md](references/skills-reference.md) for details.
Create skills in `.claude/skills/<name>/SKILL.md`. Some are also available via plugins:
| Codebase Signal | Skill | Plugin |
|-----------------|-------|--------|
| Building plugins | skill-development | plugin-dev |
| Git commits | commit | commit-commands |
| React/Vue/Angular | frontend-design | frontend-design |
| Automa从当前安装包查询 Cherry Studio 产品信息并排查运行问题。当用户询问功能、路由、快捷键、Provider、语言、Agent、频道、定时任务、Code CLI、当前版本,或报告运行错误、连接失败、配置异常并需要诊断时触发。
Develop, fix, and profile Cherry Studio in a tracked Electron instance. Use for everyday implementation, UI and interaction work, bug fixing, runtime debugging, DevTools inspection, lag or jank investigation, CPU and memory monitoring, leak checks, and startup-performance analysis; reuse a verified workspace instance across instructions and launch or replace one only when required.
当用户明确要求搜索、安装、查看、卸载或创建 Skill,或内置 Skill / 工具出现能力缺口、无法完成当前任务时触发。通过 `mcp__skills__search_skills` 搜索并用 `mcp__skills__install_skill` 安装;已安装 Skill 的查看和删除通过产品清单导航到 Skills UI;没有合适结果时调用内置 `skill-creator` 创建并验证自定义 Skill,再继续原任务。普通任务仍先尝试内置能力。
Use when Cherry Studio 用户希望报告、提交或整理 BUG、UI/UX 问题或功能建议,但未明确要求创建 GitHub Issue。
Cherry Studio first-party tool and bundled-shell routing for general agents. For straightforward local work in shell-capable sessions, run JS/TS with `bun <file>` and one-off JS tools with `bun x`; run Python with `uv run [--with <pkg>] python` and one-off Python CLIs with `uvx`; search with `rg`. Load this guide before changing project dependencies, deciding whether a tool should be ephemeral or reusable, reading or converting local Office/PDF files, coordinating or delegating across Agent Sessions, or using Cherry-owned web/browser, knowledge, persistent memory, schedules/notifications, IM channels, image generation, artifact reporting, managed CLI, skill, or MCP-server-registration capabilities—even if the user names no tool. Consult it before shell/file workarounds; live tool schemas are authoritative.
Runs Antigravity CLI headlessly for repository analysis and coding tasks. Use when the user asks to delegate work to Antigravity CLI or compare its result with another coding agent.
Runs Claude Code non-interactively for code analysis and implementation tasks. Use when the user asks to delegate repository work to Claude Code or compare its result with another coding agent.
Runs Codex CLI non-interactively for code analysis and implementation tasks. Use when the user asks to delegate repository work to Codex or obtain a second coding-agent result.