Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Generates SKILL.md files for npm packages following Anthropic's Agent Skills specification. Use when adding agent documentation to an npm package, making a package AI-agent friendly, or creating skills from existing code.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 1208% | 0% |
| case-02 | ✗→✓ | ▲ Improved | -24% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 4% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 648% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 53% | 0% |
Generate a SKILL.md file for an npm package, making it discoverable and usable by AI agents.
Use the npm CLI tool:
bashnpx skill-gen . # Current directory npx skill-gen ~/path/to/package # Local package npx skill-gen . --stdout # Preview output
Or invoke manually via /skillify <path>.
Read these files (in order of importance):
name → skill name (kebab-case)description → base for skill descriptionbin → CLI commands availablemain/exports → API entry pointskeywords → trigger wordsbin exists)--help outputmain/exports exists)Determine:
Follow this template:
yaml--- name: <package-name-kebab-case> description: <What it does>. <When to use - specific triggers>. ---
Description rules:
Body structure:
markdown# <Package Name> ## When to Use Invoke when you need to: - <specific trigger 1> - <specific trigger 2> - <specific trigger 3> ## Quick Start <primary usage pattern - CLI or code> ## Examples **Example 1: <use case>** Input: <concrete input> Output: <concrete output> ## CLI Reference (if applicable) <flags and commands> ## API Reference (if applicable) <key exported functions>
Save to: <package-root>/SKILL.md
Before finalizing, verify:
<Verb>s <object> [details]. Use when <trigger1>, <trigger2>, or <trigger3>.Good examples:
yamldescription: Builds Bitcoin Taproot transactions from inputs and outputs. Use when creating P2TR transactions, spending UTXOs, or working with Taproot addresses.
yamldescription: Broadcasts signed Bitcoin transactions to the network. Use when sending transactions to mempool, publishing to testnet4, or checking broadcast status.
Bad examples:
yamldescription: Helps with Bitcoin stuff. # Too vague description: I can build transactions. # Wrong POV description: A library for transactions. # No "when to use"
Convert package name to kebab-case:
| package.json name | SKILL.md name | |-------------------|---------------| | btctx | btctx | | sendTx | send-tx | | BitcoinBuilder | bitcoin-builder | | @scope/pkg | pkg (drop scope) |
For a package like btctx:
yaml--- name: btctx description: Builds Bitcoin Taproot (P2TR) transactions from UTXOs. Use when creating Bitcoin transactions, spending Taproot outputs, or building raw transaction hex. --- # btctx ## When to Use Invoke when you need to: - Build a Bitcoin transaction from UTXOs - Create Taproot (P2TR) outputs - Generate signed transaction hex for broadcasting ## Quick Start
import { buildTx } from 'btctx';
const { hex, txid } = await buildTx({ privateKey: '...', publicKey: '...', txid: '<input-txid>', vout: 0, inputAmount: 100000, outputs: { pubkey: '<recipient>', amount: 99000 }] });
## Examples
**Example: Simple transfer**
Input:
- 100,000 sats from UTXO
- Send to one recipient
Output:
- Signed transaction hex
- Transaction ID (txid)
## API Reference
### `buildTx(options)`
Builds and signs a Taproot transaction.
Options:
- `privateKey` - 64-char hex signing key
- `publicKey` - 64-char hex x-only pubkey
- `txid` - Input transaction ID
- `vout` - Output index to spend
- `inputAmount` - Satoshis in input
- `outputs` - Array of `{ pubkey, amount }`
Returns: `{ hex, txid }`Other measured skills in the registry, with their headline benchmark lift.