npx-cli — Claude Code skill: what it does, how to install
Builds and packages npx-runnable CLI tools using Bun for development while generating Node.js-compatible output for npm.
npx skills add jwynia/agent-skills --skill npx-cli -a claude-codeWhat npx-cli does
This skill establishes a project structure for terminal utilities distributed through npx. It separates business logic from command-line plumbing. You get either a dual setup that exports an importable library alongside the executable binary, or a binary-only package. Argument parsing uses citty, output styling relies on picocolors, and bundling goes through Bunup.
Code quality relies on strict TypeScript settings, Biome, ESLint, and Vitest test suites. Release preparation is handled by Changesets with provenance flags for npm. The compiled output in dist/ explicitly requires a #!/usr/bin/env node shebang. End users do not need Bun installed to run your published command.
This setup targets single-package repositories only. It breaks down in monorepos, and standalone libraries without a CLI need a separate configuration.
What it helps with
- scaffold a new CLI package executable via
npx - configure argument parsing and sub-commands with
citty - isolate domain logic from terminal entry points for unit testing
- bundle dual-entry packages with both library API and binary exports
- automate npm releases with
Changesetsand provenance checks
Example prompts for the agent
- Scaffold a new CLI project for npx with input and output flags
- Set up sub-commands for my tool using citty and format terminal output
- Configure package.json and Bunup for publishing a CLI binary to npm
How to install npx-cli
1Skills CLI (Vercel)
npx skills add jwynia/agent-skills --skill npx-cli -a claude-code2Manually: put the files in place
~/.claude/skills/npx-cli/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/npx-cli/
1Skills CLI (Vercel)
npx skills add jwynia/agent-skills --skill npx-cli -a codex2Manually: put the files in place
.agents/skills/npx-cli/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add jwynia/agent-skills --skill npx-cli -a cursor2Manually: put the files in place
.cursor/skills/npx-cli/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install jwynia/agent-skills npx-cli2Manually: put the files in place
.github/skills/npx-cli/SKILL.md1Skills CLI (Vercel)
npx skills add jwynia/agent-skills --skill npx-cli -a gemini-cli2Platform CLI
gemini skills install https://github.com/jwynia/agent-skills --path skills/tech/development/tooling/npx-cliManually: put the files in place
.devin/skills/npx-cli/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add jwynia/agent-skills --skill npx-cli -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about npx-cli
How do I install npx-cli in Claude Code?
Run npx skills add jwynia/agent-skills --skill npx-cli -a claude-code. This adds the skill instructions to your agent setup.
Why does the skill target Node.js if development uses Bun?
Most developers invoking npx rely on Node.js and lack Bun on their machines. Output binaries target the standard Node.js runtime and require a #!/usr/bin/env node shebang.
When should this skill be avoided?
Do not use it inside monorepos or for unpublished private applications. It is also unsuitable for packages that only export library code without a CLI entry point.