← VercelCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
changed
Update to Vercel
Snapshot Sep 30, 2026 · 23:18 UTC · version 0.21.4
Collection source: not recorded for this historical snapshot. These snapshots do not have a confirmed matching collection source. Differences in file lists alone do not establish changes to the package.
Supporting file metadata differs
Newly listed paths: agents/openai.yaml. This compares saved file lists, not package contents; a different collection source can change the list.
Observed in package metadata. These changes alone do not establish a new customer-facing feature.
Supporting files
Before
[]
After
[{"relative_path":"agents/openai.yaml","size_in_bytes":169}]
Compare saved observations
Download comparison JSONFull technical diff · 1 changed fields
changed /included_files
BEFORE
[]
AFTER
[
{
"relative_path": "agents/openai.yaml",
"size_in_bytes": 169
}
]Full snapshot data
{
"name": "ncc",
"description": "Expert guidance for @vercel/ncc — a simple CLI for compiling Node.js modules into a single file with all dependencies included. Use when bundling serverless functions, CLI tools, or any Node.js project into a self-contained file.",
"included_files": [
{
"relative_path": "agents/openai.yaml",
"size_in_bytes": 169
}
],
"skill_md_contents": "---\nname: ncc\ndescription: 'Expert guidance for @vercel/ncc — a simple CLI for compiling Node.js modules into a single file with all dependencies included. Use when bundling serverless functions, CLI tools, or any Node.js project into a self-contained file.'\nmetadata:\n priority: 4\n docs:\n - \"https://github.com/vercel/ncc\"\n pathPatterns: []\n importPatterns:\n - '@vercel/ncc'\n bashPatterns:\n - '\\bnpm\\s+(install|i|add)\\s+[^\\n]*@vercel/ncc\\b'\n - '\\bpnpm\\s+(install|i|add)\\s+[^\\n]*@vercel/ncc\\b'\n - '\\bbun\\s+(install|i|add)\\s+[^\\n]*@vercel/ncc\\b'\n - '\\byarn\\s+add\\s+[^\\n]*@vercel/ncc\\b'\n - '\\bncc\\s+build\\b'\n---\n\n# @vercel/ncc — Node.js Compiler Collection\n\nYou are an expert in `@vercel/ncc`, Vercel's simple CLI for compiling a Node.js module into a single file, together with all its dependencies.\n\n## Overview\n\nncc bundles a Node.js application and all of its `node_modules` into a single output file. This is ideal for:\n- **Serverless functions** — deploy a single file instead of `node_modules`\n- **CLI tools** — distribute a self-contained executable\n- **Docker images** — reduce image size by eliminating `node_modules`\n\n## Installation\n\n```bash\nnpm install -g @vercel/ncc\n\n# Or as a dev dependency\nnpm install --save-dev @vercel/ncc\n```\n\n## Basic Usage\n\n```bash\n# Compile index.js into dist/index.js\nncc build input.js -o dist/\n\n# Watch mode for development\nncc build input.js -o dist/ -w\n\n# Run directly without writing to disk\nncc run input.js\n```\n\n## CLI Options\n\n| Flag | Description |\n|---|---|\n| `-o, --out [dir]` | Output directory (default: `dist`) |\n| `-m, --minify` | Minify the output |\n| `-s, --source-map` | Generate source maps |\n| `-a, --asset-builds` | Build nested JS assets recursively |\n| `-e, --external [mod]` | Keep module as external (don't bundle) |\n| `-w, --watch` | Watch mode — rebuild on changes |\n| `-t, --transpile-only` | Skip TypeScript type checking |\n| `--license [file]` | Output licenses to a file |\n| `-q, --quiet` | Suppress non-error output |\n| `--no-cache` | Skip the build cache |\n| `--no-asset-builds` | Skip nested JS asset builds |\n\n## package.json Integration\n\n```json\n{\n \"scripts\": {\n \"build\": \"ncc build src/index.ts -o dist/ -m\",\n \"build:watch\": \"ncc build src/index.ts -o dist/ -w\",\n \"start\": \"node dist/index.js\"\n },\n \"devDependencies\": {\n \"@vercel/ncc\": \"^0.38.0\"\n }\n}\n```\n\n## TypeScript Support\n\nncc natively supports TypeScript — no separate `tsc` step needed:\n\n```bash\n# Compiles TypeScript directly\nncc build src/index.ts -o dist/\n\n# Skip type checking for faster builds\nncc build src/index.ts -o dist/ -t\n```\n\nncc uses the project's `tsconfig.json` automatically.\n\n## Externals\n\nKeep specific modules out of the bundle (useful for native modules or optional dependencies):\n\n```bash\n# Single external\nncc build input.js -e aws-sdk\n\n# Multiple externals\nncc build input.js -e aws-sdk -e sharp\n```\n\nFor serverless environments where the runtime provides certain modules (like AWS Lambda's `aws-sdk`), mark them as external.\n\n## Static Assets\n\nncc handles non-JS assets (`.json`, `.node`, binary files) by copying them to the output directory alongside the compiled JS file. They are referenced correctly at runtime.\n\n## Common Patterns\n\n### Serverless Function Bundling\n\n```bash\n# Build a minimal serverless handler\nncc build api/handler.ts -o .output/ -m --no-cache\n```\n\n### CLI Tool Distribution\n\n```json\n{\n \"bin\": \"dist/index.js\",\n \"scripts\": {\n \"prepublishOnly\": \"ncc build src/index.ts -o dist/ -m\"\n }\n}\n```\n\n### GitHub Actions\n\n```bash\n# Bundle a GitHub Action into a single file\nncc build src/index.ts -o dist/ -m --license licenses.txt\n```\n\nGitHub Actions require all dependencies bundled — ncc is the recommended bundler for custom JS/TS actions.\n\n## Key Points\n\n1. **Single-file output** — all dependencies inlined, no `node_modules` needed at runtime\n2. **TypeScript native** — compiles `.ts` files directly using the project's `tsconfig.json`\n3. **No config file** — entirely driven by CLI flags\n4. **Asset handling** — non-JS files are automatically copied to the output directory\n5. **Use externals for native modules** — binary `.node` modules often need to be external\n6. **Source maps for debugging** — use `-s` flag to generate `.js.map` files\n7. **Watch mode for dev** — use `-w` for fast iteration during development\n\n## Official Resources\n\n- [ncc GitHub](https://github.com/vercel/ncc)\n- [Vercel Blog — ncc Introduction](https://github.com/vercel/ncc)\n"
}SHA-256: f7bb87f3d625948f656882ed24fd3ab41cd31bdc935dc59580d60110f2bf214e