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

@valtown/skills

v0.2.1

Published

Val Town platform skills — guidance for building on Val Town, usable as a library and as a Claude Code plugin.

Downloads

1,926

Readme

Agent plugins for Val Town

Installs the Val Town MCP server and Skills for Claude Code, Codex, and Cursor.

Skills are markdown files with platform guidance for building on Val Town. Used by Val Town's own tools (Townie, the MCP server) and by AI coding agents. Skills include HTTP vals, crons, SQLite, email, OAuth, frontend, and API integrations.

Install

Installing the plugin makes platform skills available to your agent and registers the hosted Val Town MCP server (https://api.val.town/v3/mcp). On first use of an MCP tool, the agent runs the OAuth flow in your browser.

  1. Claude Code
  2. Codex
  3. Cursor

Claude Code

Install the Val Town plugin by running:

claude plugin install valtown@claude-plugins-official

Codex

codex CLI

First, run:

codex plugin marketplace add val-town/plugins

Then fire up codex and run:

/plugins

Search for Val Town, hit install, and it'll take you through the OAuth path.

Codex desktop app

  1. Click "Plugins" in the sidebar
  2. In the dropdown that says "Built by OpenAI" click "Add more +"
  3. Copy-paste https://github.com/val-town/plugins and select "Add marketplace"

Cursor

In Cursor, run:

/add-plugin valtown

Or in Cursor Settings, copy-paste https://github.com/val-town/plugins in the search box and select "Add to Cursor."

Contributing

Authoring skills

Skills live in plugin/skills/<name>/SKILL.md with YAML frontmatter:

---
name: http-endpoints
description: Use when building an HTTP val — a web endpoint, API route, webhook...
triggers: [http, endpoint, webhook, api, request, response]
---

# HTTP Endpoints

...guide body...
  • name (required) — must match the directory name; lowercase, hyphens, ≤64 chars.
  • description (required) — written as "Use when…"; this is how Claude decides to load the skill. ≤1024 chars.
  • triggers (optional) — keyword hints that boost searchSkills ranking; ignored by Claude Code's native loader.

Keep content audience-neutral: only platform knowledge true for every consumer. No product-flow or chat-only advice.

Then build:

npm install
npm run build   # generate src/generated/skills.ts, then tsc
npm test        # build + smoke tests

npm run generate validates every skill against both our schema and Claude Code's frontmatter constraints — a skill that wouldn't load in Claude Code fails the build.

Relationship to the Val Town monorepo

This package is the source of truth for skill content. The Val Town app and MCP server consume it as a dependency rather than holding their own copy. See docs/SKILLS_PLUGIN.md in the main repo for the full design.

Versioning

This repository uses Changesets for publishing. See their documentation for more information.

  • For each change that should trigger a new version, you should run npx @changesets/cli and fill out the interactive prompts to describe the changes. This will generate a new changeset in the .changesets directory.
  • Each change in that directory will prompt the release.yml GitHub action to create a new release PR.
  • Merging a release PR will automatically publish a new version of this module.

Configuration

Claude Code

The official Claude plugin marketplace pulls from .plugins/marketplace.json.

Codex

Codex reads the native marketplace at .agents/plugins/marketplace.json (and falls back to the Claude .claude-plugin/marketplace.json for compatibility).

Cursor

Cursor reads .cursor-plugin/marketplace.json and the per-plugin plugin/.cursor-plugin/plugin.json.