#601

Global Rank · of 601 Skills

package-publishing AI Agent Skill

View Source: oakoss/agent-skills

Safe

Installation

npx skills add oakoss/agent-skills --skill package-publishing

34

Installs

Package Publishing

Overview

Covers modern npm package authoring: package.json configuration with the exports field, dual ESM/CJS builds, TypeScript type declarations, and secure publishing workflows with provenance.

When to use: Configuring package entry points, setting up conditional exports, building dual-format packages, publishing scoped packages, or troubleshooting module resolution.

When NOT to use: Application-level bundling (Vite/webpack app configs), monorepo workspace orchestration (Turborepo/Nx), private registry setup (Verdaccio/Artifactory).

Quick Reference

Pattern Field / Command Key Points
Entry point exports in package.json Replaces main/module; encapsulates internals
CJS fallback main Legacy consumers without exports support
ESM entry module Bundler convention; not used by Node.js
Type declarations types condition in exports Must be listed first in each condition block
Subpath exports "./utils": { ... } Clean public API; blocks deep imports
Conditional exports import/require conditions Toggle ESM vs CJS per consumer
Package type "type": "module" Makes .js files ESM; use .cjs for CommonJS
Side effects "sideEffects": false Enables tree-shaking in bundlers
Peer deps peerDependencies Shared runtime deps (React, Vue, etc.)
Engine constraints "engines": { "node": ">=18" } Document minimum Node.js version
Files allowlist "files": ["dist"] Controls what gets published to npm
Prepublish check "prepublishOnly": "npm run build" Ensure build runs before publish
Dry run npm pack --dry-run Preview package contents before publishing
Provenance --provenance flag or trusted publishers Cryptographic build attestation
Scoped publish --access public Required for first publish of scoped packages

Common Mistakes

Mistake Correct Pattern
Putting types after default in exports types must be the first condition in every export block
Missing "./package.json" in exports Include "./package.json": "./package.json" for tooling compatibility
Different APIs for import vs require Same API surface; write ESM source, transpile to CJS
Using main without exports for new packages Use exports as the primary entry point definition
Forgetting "type": "module" with .js ESM output Set "type": "module" or use .mjs extension explicitly
Publishing src/ or node_modules/ Use "files" allowlist to include only dist/
No prepublishOnly script Add build step to prevent publishing stale artifacts
Using default export for libraries Prefer named exports for consistent cross-tooling behavior
Not testing with npm pack before publish Always dry-run to verify package contents and size
Omitting peerDependencies for framework plugins Declare shared runtime dependencies as peers
Publishing without provenance Enable provenance for supply-chain transparency
Using .d.ts for CJS when package is "type": "module" Use .d.cts for CJS type declarations, .d.ts or .d.mts for ESM

Delegation

  • Build tooling setup: Use Explore agent to examine tsup/unbuild/rollup configs
  • Type resolution debugging: Use Task agent with "Are the Types Wrong?" (attw)
  • Publish pipeline review: Delegate to code-reviewer agent

References

Installs

Installs 34
Global Rank #601 of 601

Security Audit

ath Safe
socket Safe
Alerts: 0 Score: 90
snyk Low
EU EU-Hosted Inference API

Power your AI Agents with the best open-source models.

Drop-in OpenAI-compatible API. No data leaves Europe.

Explore Inference API

GLM

GLM 5

$1.00 / $3.20

per M tokens

Kimi

Kimi K2.5

$0.60 / $2.80

per M tokens

MiniMax

MiniMax M2.5

$0.30 / $1.20

per M tokens

Qwen

Qwen3.5 122B

$0.40 / $3.00

per M tokens

How to use this skill

1

Install package-publishing by running npx skills add oakoss/agent-skills --skill package-publishing in your project directory. Run the install command above in your project directory. The skill file will be downloaded from GitHub and placed in your project.

2

No configuration needed. Your AI agent (Claude Code, Cursor, Windsurf, etc.) automatically detects installed skills and uses them as context when generating code.

3

The skill enhances your agent's understanding of package-publishing, helping it follow established patterns, avoid common mistakes, and produce production-ready output.

What you get

Skills are plain-text instruction files — not executable code. They encode expert knowledge about frameworks, languages, or tools that your AI agent reads to improve its output. This means zero runtime overhead, no dependency conflicts, and full transparency: you can read and review every instruction before installing.

Compatibility

This skill works with any AI coding agent that supports the skills.sh format, including Claude Code (Anthropic), Cursor, Windsurf, Cline, Aider, and other tools that read project-level context files. Skills are framework-agnostic at the transport level — the content inside determines which language or framework it applies to.

Data sourced from the skills.sh registry and GitHub. Install counts and security audits are updated regularly.

EU Made in Europe

Chat with 100+ AI Models in one App.

Use Claude, ChatGPT, Gemini alongside with EU-Hosted Models like Deepseek, GLM-5, Kimi K2.5 and many more.

Customer Support