npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

claude-omakase

v0.6.0

Published

Skill Suggester MCP for Claude — proactive omakase-style skill discovery, installation, and generation.

Readme

┌──────────────────────────────────────────────────────────┐
│                      Claude Code                         │
│                                                          │
│  ┌─────────────────┐         ┌──────────────────────┐    │
│  │ omakase-chef    │  calls  │ claude-omakase MCP   │    │
│  │ SKILL.md        │ ──────▶│ server (stdio)       │    │
│  │ (the behavior)  │         │ (registry + install) │    │
│  └─────────────────┘         └──────────┬───────────┘    │
└───────────────────────────────────────  │  ──────────────┘
                                          │  fetched at build time
                                          ▼
         ┌───────────────────────────────────────────────┐
         │  Federated catalog (400+ skills)              │
         │  ├── handpicked/     verified seeds + overlay │
         │  ├── mcp-servers-repo  Anthropic reference    │
         │  ├── awesome-mcp       community list         │
         │  └── skillsmp          public marketplace     │
         └───────────────────────────────────────────────┘

How it works

  1. You install the MCP server — one npx command added to your MCP host config.
  2. Claude watches — the bundled omakase-chef skill instructs Claude to monitor your workflow in the background.
  3. Claude notices — after you repeat the same kind of manual task three times, Claude surfaces the right skill from the catalog.
  4. You approve — Claude installs it to ~/.claude/skills/ and it's active next session.

First time? Claude greets you with a starter pack of universally useful skills so you're not starting from zero.

Install

# 1. Install the omakase-chef skill
npx -y -p claude-omakase claude-omakase-install

# 2. Add the MCP server to your Claude Code config
claude mcp add omakase -- npx -y claude-omakase

Requirements: Node.js 20+, Claude Code (or another MCP host that supports stdio servers).

That's it. Restart your Claude session and the chef is active.

Add this to your MCP host config file and restart the host:

{
  "mcpServers": {
    "omakase": {
      "command": "npx",
      "args": ["-y", "claude-omakase"]
    }
  }
}

What Claude does for you

Once registered, these things just happen:

| Situation | Claude does | |---|---| | You summarize three PRs in one session | Offers to install pr-summarizer | | You mention "I always have to do X by hand" | Searches for a skill that covers X | | You ask "what can I install?" | Runs recommend_skills against your profile | | No skills installed yet | Shows the starter pack | | No catalog match found | Drafts a new SKILL.md tailored to your task using MCP sampling |

You can also be explicit: "I have a recurring task that doesn't have a skill yet" → Claude calls propose_new_skill, writes a draft SKILL.md to ~/.claude/skills/, and iterates with you until it's right.

Use cases

Concrete, end-to-end walkthroughs of what Omakase actually does.

1. First session — onboarding from zero

You:     (start a new Claude session, no skills installed)
Claude:  New here — want to set up a starter pack? I'll pop up a picker.
         → [native checkbox dialog appears]
            [x] Quick Review     — one-line, severity-tagged diff feedback
            [x] Understand Anything — deep explanations that lead with WHY
            [ ] Grill Me         — stress-test a plan by getting interviewed
            [ ] Write a Skill    — turn a workflow into a new skill
You:     (check two boxes, submit)
Claude:  Installed Quick Review and Understand Anything to ~/.claude/skills/. Active next session.

On clients with MCP elicitation (e.g. Claude Code), recommend_skills shows a real interactive checkbox dialog and installs exactly what you check — no typing, no parsing. The same tool drives this for both a brand-new user (the full pack) and a returning user with gaps (just the missing staples). On clients without elicitation it says so and returns the skills as a Markdown checklist for you to pick from.

2. Repeated manual work — proactive nudge

You:     (run `git diff`, review by hand; repeat across three PRs in one session)
Claude:  You've reviewed three diffs by hand this session. There's a Quick Review skill
         that gives one-line severity-tagged feedback — want me to install it?
You:     yes
Claude:  Done. Say "review this diff" next session to use it.

3. Intent in your prompt — suggestion without asking

You:     I need to automate browser testing across Chrome and Firefox
Claude:  That lines up with a browser-testing skill in the catalog (not installed yet) —
         want me to add it? (otherwise I'll just help directly)

4. Nothing matches — draft a new skill

You:     I keep reformatting our weird internal changelog format by hand
Claude:  No catalog skill covers that. Want me to draft one? I'll write a SKILL.md
         tailored to your changelog format and we'll iterate.

5. Manage what you've installed

npx claude-omakase tui

An interactive terminal app to list installed skills, health-check them (missing SKILL.md? missing receipt? update available?), update them from the catalog, and remove them — all with arrow keys and checkboxes. See Manage your skills below.

Starter pack

When you have no skills installed, recommend_skills returns four universally useful skills:

| Skill | What it does | |---|---| | Grill Me | Stress-tests your plans — Claude interviews you relentlessly, one hard question at a time | | Understand Anything | Deep explanations of code, systems, or concepts — leads with WHY, not HOW | | Write a Skill | Turns any recurring workflow into a reusable Claude skill | | Quick Review | Fast, severity-tagged code review (🔴 bug, 🟡 perf, 🔵 style) — no praise, no fluff |

Install any of them: "Install the Grill Me skill" → Claude calls install_skill("grill-me").

MCP tools

| Tool | Description | |---|---| | find_skill | Search the catalog by task description | | list_installed_skills | List installed skills and install receipts | | install_skill | Download and install a skill to ~/.claude/skills/<id>/ | | recommend_skills | Ranked suggestions based on your profile, context, and install state. With no context it drives starter-pack onboarding — full pack for a new user, missing staples for a returning one — via a real checkbox picker (MCP elicitation), or a Markdown checklist on clients without it | | offer_skill | Offer one found skill with an interactive Install / Not now / Never recommend picker (MCP elicitation); "never" blocks it from future find_skill/recommend_skills | | uninstall_skill | Remove ~/.claude/skills/<id>/ and its install receipt (idempotent) | | update_skill | Re-download a skill's files from the catalog | | doctor_skills | Health report per skill: SKILL.md present? receipt present? in catalog? version match? | | set_profile | Save your role, languages, and tools so recommendations improve over time | | propose_new_skill | Draft a new SKILL.md from scratch using MCP sampling |

Manage your skills

A terminal UI for the day-to-day lifecycle, no Claude session required:

npx claude-omakase tui      # or: omakase tui

It shows a health dashboard for every installed skill and lets you act on them:

┌  🍱  Claude Omakase — skill manager
│
◇  3 installed · 2 healthy · 1 need attention ───────────────╮
│      Skill              SKILL.md  Receipt  Catalog         │
│  ──────────────────────────────────────────────────────   │
│  ✅  quick-review        ✓         ✓        ✓               │
│  🔄  grill-me            ✓         ✓        update!         │
│  ⚠️  understand-anything ✗ missing ✓        ✓               │
╰────────────────────────────────────────────────────────────╯
│
◇  What would you like to do?
│  ● Re-run health check
│  ○ Update skill(s) from catalog
│  ○ Remove skill(s)
│  ○ Quit
  • Health check — flags skills with a missing SKILL.md, a missing install receipt, or a newer version available in the catalog.
  • Update — re-downloads selected skills' files from the catalog (multi-select).
  • Remove — deletes selected skills and their receipts, with a confirmation prompt.

The same operations are available to Claude as the doctor_skills, update_skill, and uninstall_skill MCP tools.

Proactive hooks (optional)

Three opt-in Claude Code hooks make discovery deterministic instead of relying on Claude noticing on its own. The installer copies them to ~/.claude/hooks/omakase/ (a stable path), but never registers them for you — you opt in by pasting the snippet it prints into your settings.json.

| Hook | Event | What it does | |---|---|---| | omakase-session-start.mjs | SessionStart | At the start of a fresh session (startup/clear, not resume), tells Claude to run the chef's onboarding routine now — so new users get the starter pack without asking. Fires at most once per cooldown window. | | omakase-repetition.mjs | PostToolUse (Bash) | Tracks command workflows (single commands and multi-step chains via n-gram detection) in one cross-session file with timestamps; when a task recurs 3× within a rolling window, nudges Claude to find a matching skill. Primitive tools (grep, cut, find, …) and VCS/build plumbing (git status, npm run, gh pr, …) are filtered out, so it fires on real tasks, not on the commands you run to do them. Stays silent if no catalog is available. | | omakase-suggest.mjs | UserPromptSubmit | Matches each prompt against the catalog; if a not-yet-installed skill clearly fits, suggests it once per session (with a cooldown). |

Register them in your Claude Code settings.json (the installer prints this block with your real paths filled in):

{
  "hooks": {
    "SessionStart": [
      { "hooks": [
        { "type": "command", "command": "node ~/.claude/hooks/omakase/omakase-session-start.mjs" }
      ] }
    ],
    "PostToolUse": [
      { "matcher": "Bash", "hooks": [
        { "type": "command", "command": "node ~/.claude/hooks/omakase/omakase-repetition.mjs" }
      ] }
    ],
    "UserPromptSubmit": [
      { "hooks": [
        { "type": "command", "command": "node ~/.claude/hooks/omakase/omakase-suggest.mjs" }
      ] }
    ]
  }
}

Tunable via env vars: OMAKASE_SESSION_COOLDOWN_HOURS (default 24; set 0 to greet on every startup), OMAKASE_REPETITION_THRESHOLD (default 3), OMAKASE_REPETITION_WINDOW_DAYS (default 14), OMAKASE_SUGGEST_THRESHOLD (default 5), OMAKASE_SUGGEST_COOLDOWN (default 3 prompts). All are local-only — no network, no telemetry.

Catalog

The catalog is federated from multiple sources at build time. Nothing is hand-curated — adapters generate entries, and a daily CI job opens a PR if the catalog drifts.

| Adapter | Source | Notes | |---|---|---| | handpicked | handpicked/*.json in this repo | Manually audited, verified: true | | mcp-servers-repo | modelcontextprotocol/servers | Anthropic reference servers | | awesome-mcp | punkpeye/awesome-mcp-servers | Community list | | skillsmp | skillsmp.com | Public marketplace |

Want to add a source? See src/adapters/README.md and run:

npm run scaffold:adapter -- <source-name>

Privacy

Everything Omakase writes stays on your machine:

| Path | Contents | |---|---| | ~/.claude/skills/<id>/ | Installed skill files | | ~/.config/claude-omakase/profile.json | Your profile (role, languages, tools) | | ~/.local/share/claude-omakase/installed/ | Install receipts | | ~/.cache/claude-omakase/catalog.json | Cached catalog (refreshed every 6h) |

No telemetry. No accounts. Outbound calls happen only for catalog refresh and skill file downloads (when you approve an install).

Develop

git clone https://github.com/gyuch-an02/claude-omakase
cd claude-omakase
npm install
npm run build           # compile TypeScript
npm run build:catalog   # fetch all adapters → catalog.json
npm run typecheck       # type check without emitting
npm test                # run all tests

Register your local build with Claude Code:

claude mcp add omakase -- node /path/to/claude-omakase/dist/server.js

Contributing

All contributions are welcome — from first-timers to seasoned TypeScript developers.

Good first issues: look for the good first issue label.

Quick ways to contribute:

  • New adapter: npm run scaffold:adapter -- <name> → implement fetch(): Promise<Entry[]> → register in src/adapters/index.ts → PR.
  • New handpicked entry: add a JSON file to handpicked/ following the Entry shape in src/types.ts.
  • Bug or feature: open an issue or PR — all contributions welcome.

See CONTRIBUTING.md for the full guide, including the PR checklist and local dev loop.

We follow the Contributor Covenant. Please read it before participating.

License

MIT. © 2026 Claude Omakase contributors.