{"_id":"@aicode-nexus/skills","_rev":"3-2eb8db056204695c839d28b4a3adca02","name":"@aicode-nexus/skills","dist-tags":{"latest":"0.1.2"},"versions":{"0.1.0":{"name":"@aicode-nexus/skills","version":"0.1.0","keywords":["codex","skills","cli","installer"],"author":{"name":"AICode Nexus"},"license":"MIT","_id":"@aicode-nexus/skills@0.1.0","maintainers":[{"name":"trsoliu","email":"trsoliu@gmail.com"}],"homepage":"https://github.com/AICode-Nexus/skills#readme","bugs":{"url":"https://github.com/AICode-Nexus/skills/issues"},"bin":{"skills":"bin/skills.js"},"dist":{"shasum":"e26842308ff07cfe68206820dab09eb9858ae46f","tarball":"https://registry.npmjs.org/@aicode-nexus/skills/-/skills-0.1.0.tgz","fileCount":126,"integrity":"sha512-hsBJ6cg4Mt5jyZWxMr3PFBuoZ/JuFDt3ukIHZa/K2cBTDFmbywli+5/JtZyP5S2+2Y54dpbwWkuopWmePSMqSw==","signatures":[{"sig":"MEYCIQChjdrBC8SfrFjpF3zJB5ioT5BB0v1GgKQszrQN6EKS3AIhALCx6kwloaOoIcBnWNW+XKhPUhZuAHQL3AVBFnWd0p0d","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":150000},"type":"module","engines":{"node":">=20"},"gitHead":"95e8032428df51740ecf71a2490b039e321c0f5c","scripts":{"test":"node --test tests/*.test.mjs","pack:check":"npm pack --json","release:check":"npm test && npm run pack:check && npm run publish:dry-run","publish:dry-run":"npm publish --dry-run"},"_npmUser":{"name":"trsoliu","email":"trsoliu@gmail.com"},"repository":{"url":"git+https://github.com/AICode-Nexus/skills.git","type":"git"},"_npmVersion":"10.9.4","description":"Install Codex skills from the AICode Nexus skills hub.","directories":{},"_nodeVersion":"22.22.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.0_1775738162800_0.38167215319649417","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@aicode-nexus/skills","version":"0.1.1","keywords":["agents","claude-code","codex","skills","cli","installer"],"author":{"name":"AICode Nexus"},"license":"MIT","_id":"@aicode-nexus/skills@0.1.1","maintainers":[{"name":"trsoliu","email":"trsoliu@gmail.com"}],"homepage":"https://github.com/AICode-Nexus/skills#readme","bugs":{"url":"https://github.com/AICode-Nexus/skills/issues"},"bin":{"skills":"bin/skills.js"},"dist":{"shasum":"1ecb159dc950742e33e0cc62c3b7931297b18cf5","tarball":"https://registry.npmjs.org/@aicode-nexus/skills/-/skills-0.1.1.tgz","fileCount":126,"integrity":"sha512-GAkKZGV47GQneKYD+TiRoV17udWbaorN9W6VDWfO3DBByj77DHHEZUanQqaWhPBIqppxDpDII15zo6M9JJSkzQ==","signatures":[{"sig":"MEUCIQC+a+JmnVuMBWUPIV5Dp+UaJxRmlCN3t6HAkzZVQexyiQIgDqu8qyiAofO7R+8AzyqBmbKEVJyOXxOQHeAN5cmFJIg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":152141},"type":"module","engines":{"node":">=20"},"gitHead":"c0c657ce866a7091a105fb2fc98af97a317695c6","scripts":{"test":"node --test tests/*.test.mjs","pack:check":"npm pack --json","release:check":"npm test && npm run pack:check && npm run publish:dry-run","publish:dry-run":"npm publish --dry-run"},"_npmUser":{"name":"trsoliu","email":"trsoliu@gmail.com"},"repository":{"url":"git+https://github.com/AICode-Nexus/skills.git","type":"git"},"_npmVersion":"10.9.4","description":"Reusable agent skills for Codex, Claude Code, and local repos.","directories":{},"_nodeVersion":"22.22.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.1_1775739594239_0.06690835294905928","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@aicode-nexus/skills","version":"0.1.2","description":"Reusable agent skills for Codex, Claude Code, and local repos.","author":{"name":"AICode Nexus"},"license":"MIT","type":"module","repository":{"type":"git","url":"git+https://github.com/AICode-Nexus/skills.git"},"homepage":"https://github.com/AICode-Nexus/skills#readme","bugs":{"url":"https://github.com/AICode-Nexus/skills/issues"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"bin":{"skills":"bin/skills.js"},"scripts":{"test":"node --test tests/*.test.mjs","pack:check":"npm pack --json","publish:dry-run":"npm publish --dry-run","release:check":"npm test && npm run pack:check && npm run publish:dry-run","release:patch":"node scripts/release.mjs patch","release:minor":"node scripts/release.mjs minor","release:major":"node scripts/release.mjs major","release:patch:dry-run":"node scripts/release.mjs patch --dry-run","release:github:patch":"node scripts/release-github.mjs patch","release:github:minor":"node scripts/release-github.mjs minor","release:github:major":"node scripts/release-github.mjs major","release:github:patch:dry-run":"node scripts/release-github.mjs patch --dry-run"},"engines":{"node":">=20"},"keywords":["agents","claude-code","codex","skills","cli","installer"],"_id":"@aicode-nexus/skills@0.1.2","gitHead":"55659dc254fb01c825c1eafc9ade8503bc5a8ff6","_nodeVersion":"22.22.2","_npmVersion":"10.9.7","dist":{"integrity":"sha512-5HgRXiCG2o6aZbrqkQGLvznF2yOs9O70/+8mxsHneTxBQLLa7PfEzDg31WDPWpG9HMQzhdu9hB6NhQ2zD0bDCQ==","shasum":"56dc172a0f7b2ee385aab0222538f4f1731daaf8","tarball":"https://registry.npmjs.org/@aicode-nexus/skills/-/skills-0.1.2.tgz","fileCount":126,"unpackedSize":155621,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aicode-nexus%2fskills@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDgMeEum/Wd5eqPL9IIScaC6dQqtAhn4nRzmlIT8kK6zQIgftBmB2+Xg42CUEwKM+sGVqqq88a4RlIdfCN2f5K/3BA="}]},"_npmUser":{"name":"trsoliu","email":"trsoliu@gmail.com"},"directories":{},"maintainers":[{"name":"trsoliu","email":"trsoliu@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/skills_0.1.2_1775741395711_0.16408581999893657"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-09T12:36:02.638Z","modified":"2026-04-09T13:29:56.194Z","0.1.0":"2026-04-09T12:36:02.982Z","0.1.1":"2026-04-09T12:59:54.425Z","0.1.2":"2026-04-09T13:29:55.888Z"},"bugs":{"url":"https://github.com/AICode-Nexus/skills/issues"},"author":{"name":"AICode Nexus"},"license":"MIT","homepage":"https://github.com/AICode-Nexus/skills#readme","keywords":["agents","claude-code","codex","skills","cli","installer"],"repository":{"type":"git","url":"git+https://github.com/AICode-Nexus/skills.git"},"description":"Reusable agent skills for Codex, Claude Code, and local repos.","maintainers":[{"name":"trsoliu","email":"trsoliu@gmail.com"}],"readme":"# @aicode-nexus/skills\n\nReusable agent skills for Codex, Claude Code, and project-local workflows.\n\n适用于 Codex、Claude Code，以及项目内本地工作流的可复用 skills 仓库与安装 CLI。\n\n## Overview / 简介\n\nThis repository follows a simple convention: one skill per directory, with each skill containing at least one `SKILL.md`.\n\n这个仓库采用很直接的约定：一个 skill 对应一个目录，每个 skill 至少包含一个 `SKILL.md`。\n\nThe npm package ships a small CLI that can:\n\n- list the published skills\n- install one or more skills\n- install into a host-specific user directory\n- install into a project-local directory for sharing, vendoring, or bootstrapping\n\nnpm 包自带一个很轻量的 CLI，可以：\n\n- 列出当前可安装的 skills\n- 安装一个或多个 skill\n- 安装到宿主工具自己的用户目录\n- 安装到项目目录中，方便团队共享、仓库内置或二次分发\n\n## Quick Start / 快速开始\n\nList available skills:\n\n```bash\nnpx @aicode-nexus/skills list\n```\n\nInstall one skill:\n\n```bash\nnpx @aicode-nexus/skills install react-monorepo-init\n```\n\nInstall multiple skills:\n\n```bash\nnpx @aicode-nexus/skills install react-monorepo-init codex-switch-snapshot\n```\n\nInstall all published skills:\n\n```bash\nnpx @aicode-nexus/skills install --all\n```\n\nSkip the `npx` confirmation prompt:\n\n```bash\nnpx -y @aicode-nexus/skills list\n```\n\n安装完成后，重启或重新打开你的 agent 工具会话，以便加载新 skill。\n\n## Install Targets / 安装目标\n\nThe CLI supports any destination folder through `--dest`.\n\nCLI 通过 `--dest` 支持任意目标目录。\n\n| Use Case | Recommended Path | Example |\n| --- | --- | --- |\n| Codex user-level install | `~/.codex/skills` | `npx @aicode-nexus/skills install react-monorepo-init` |\n| Claude Code user-level install | `~/.claude/skills` | `npx @aicode-nexus/skills install react-monorepo-init --dest ~/.claude/skills` |\n| Claude Code project-local install | `./.claude/skills` | `npx @aicode-nexus/skills install react-monorepo-init --dest ./.claude/skills` |\n| Generic repo-local install | `./tools/agent-skills` | `npx @aicode-nexus/skills install react-monorepo-init --dest ./tools/agent-skills` |\n\nNotes:\n\n- If you omit `--dest`, the current default is `~/.codex/skills`.\n- Host tools differ in how they discover project-local directories.\n- A repo-local directory is a good choice when you want to keep the skill files in the repository, then copy or symlink them into the host tool if needed.\n\n说明：\n\n- 如果不传 `--dest`，当前默认目标目录是 `~/.codex/skills`\n- 不同宿主工具对项目目录的自动发现方式并不完全相同\n- 如果你想把 skills 跟项目一起版本管理，仓库内目录是一个很好用的中间层，后续再复制或软链接到具体宿主目录即可\n\n## CLI Usage / CLI 用法\n\n```bash\nskills list\nskills install <skill...> [--dest <path>] [--force] [--dry-run]\nskills install --all [--dest <path>] [--force] [--dry-run]\n```\n\n### Options / 参数\n\n| Option | Meaning |\n| --- | --- |\n| `--dest <path>` | Install into a specific directory |\n| `--force` | Overwrite an existing destination |\n| `--dry-run` | Print planned actions without writing files |\n| `--all` | Install every skill in `manifest/skills.json` |\n\n### Examples / 示例\n\n```bash\n# Codex default target\nnpx @aicode-nexus/skills install react-monorepo-init\n\n# Claude Code user-level target\nnpx @aicode-nexus/skills install react-monorepo-init --dest ~/.claude/skills\n\n# Claude Code project-local target\nnpx @aicode-nexus/skills install react-monorepo-init --dest ./.claude/skills\n\n# Generic repo-local target\nnpx @aicode-nexus/skills install react-monorepo-init --dest ./tools/agent-skills\n\n# Overwrite an existing install\nnpx @aicode-nexus/skills install react-monorepo-init --force\n\n# Preview without writing files\nnpx @aicode-nexus/skills install react-monorepo-init --dry-run\n```\n\n## Available Skills / 已收录 Skills\n\n### `codex-switch-snapshot`\n\nKeep local Codex continuity across account switches, OAuth changes, API key swaps, and snapshot recovery.\n\n用于在 Codex 账号切换、OAuth 变化、API key 更换和本地快照恢复之间保持连续性。\n\n- Host fit: Codex-specific\n- 安装：\n\n```bash\nnpx @aicode-nexus/skills install codex-switch-snapshot\n```\n\n### `producing-animated-icons`\n\nCreate animated icon assets and collect references from curated motion-icon sources.\n\n用于生产动态图标素材，并整理动效图标参考来源。\n\n- Host fit: general workflow skill\n- 安装：\n\n```bash\nnpx @aicode-nexus/skills install producing-animated-icons\n```\n\n### `react-monorepo-init`\n\nBootstrap a React 19 + TypeScript monorepo starter with Vite, Router, Query, Zustand, Tailwind v4, and testing defaults.\n\n用于初始化 React 19 + TypeScript monorepo 基线，内置 Vite、Router、Query、Zustand、Tailwind v4 和测试默认配置。\n\n- Optional add-ons: `ci`, `storybook`, `pwa`, `i18n`\n- Host fit: general workflow skill\n- 安装：\n\n```bash\nnpx @aicode-nexus/skills install react-monorepo-init\n```\n\n## Common Workflows / 常见用法\n\n### Install into a host user directory / 安装到宿主用户目录\n\n```bash\n# Codex\nnpx @aicode-nexus/skills install react-monorepo-init --dest ~/.codex/skills\n\n# Claude Code\nnpx @aicode-nexus/skills install react-monorepo-init --dest ~/.claude/skills\n```\n\n### Install into the current project / 安装到当前项目目录\n\n```bash\n# Claude Code project-local convention\nnpx @aicode-nexus/skills install react-monorepo-init --dest ./.claude/skills\n\n# Generic repo-local directory\nnpx @aicode-nexus/skills install react-monorepo-init --dest ./tools/agent-skills\n```\n\nThis is useful when:\n\n- you want shared team setup in a repository\n- you want to review or version the installed skill files\n- you want a portable bootstrap directory before copying into a host-specific path\n\n适合这些场景：\n\n- 你想把团队共用的 skill 配置放在仓库里\n- 你想把安装后的 skill 文件纳入版本控制或 code review\n- 你希望先安装到一个仓库内目录，再复制到不同宿主路径\n\n### Preview without writing / 仅预览不写入\n\n```bash\nnpx @aicode-nexus/skills install react-monorepo-init --dry-run --dest ./tools/agent-skills\n```\n\n### Overwrite an existing install / 覆盖已有安装\n\nIf you see:\n\n```text\nDestination already exists: /path/to/skill. Use --force to overwrite.\n```\n\nrun:\n\n```bash\nnpx @aicode-nexus/skills install react-monorepo-init --force\n```\n\n### Manual copy or symlink / 手动复制或软链接\n\nIf you prefer not to use the npm CLI, you can copy or symlink skill directories yourself.\n\n如果你不想通过 npm CLI 安装，也可以直接手动复制或软链接目录。\n\n```bash\n# Copy to Codex\nmkdir -p ~/.codex/skills\ncp -R react-monorepo-init ~/.codex/skills/\n\n# Copy to Claude Code\nmkdir -p ~/.claude/skills\ncp -R react-monorepo-init ~/.claude/skills/\n\n# Symlink into a repo-local directory\nmkdir -p ./tools/agent-skills\nln -s /path/to/skills-repo/react-monorepo-init ./tools/agent-skills/react-monorepo-init\n```\n\n## Compatibility Notes / 兼容性说明\n\nNot every skill is host-neutral.\n\n并不是每个 skill 都对所有宿主完全中立。\n\nFor example:\n\n- `codex-switch-snapshot` is intentionally Codex-specific\n- `react-monorepo-init` is a more general workflow skill\n\n在实际使用时，请以各自目录中的 `SKILL.md` 为准。\n\n## Local Development / 本地开发\n\nRun the local CLI from the repository root:\n\n```bash\nnpx . list\nnpx . install react-monorepo-init --dry-run --dest /tmp/codex-skills-test\n```\n\nRun tests:\n\n```bash\nnpm test\n```\n\nRun the release checks:\n\n```bash\nnpm run release:check\n```\n\nThis runs:\n\n```bash\nnpm test\nnpm run pack:check\nnpm run publish:dry-run\n```\n\n## Publishing / 发布\n\nThis package is published to npm and can be used directly with `npx @aicode-nexus/skills ...`.\n\n这个包已经发布到 npm，可以直接通过 `npx @aicode-nexus/skills ...` 使用。\n\nRecommended GitHub release flow:\n\n1. Add the repository secret `NPM_TOKEN`\n2. Run a GitHub release helper such as `npm run release:github:patch`\n3. The helper bumps the version, pushes the tag, and creates a GitHub Release\n4. GitHub Actions runs tests and publishes to npm automatically\n\n推荐的 GitHub 发版流程：\n\n1. 在仓库里配置 `NPM_TOKEN` secret\n2. 运行例如 `npm run release:github:patch` 这样的 GitHub 发版命令\n3. 这个命令会自动升级版本、推送 tag，并创建 GitHub Release\n4. GitHub Actions 自动跑测试并发布到 npm\n\nThis repository also includes a manual GitHub Actions fallback:\n\n- workflow: `.github/workflows/release.yml`\n- trigger: `workflow_dispatch`\n- input: a tag such as `v0.1.1`\n\n这个仓库同时保留了一个手动补发入口：\n\n- workflow：`.github/workflows/release.yml`\n- 触发方式：`workflow_dispatch`\n- 输入：例如 `v0.1.1` 这样的 tag\n\nRecommended GitHub release shortcuts:\n\n```bash\nnpm run release:github:patch\nnpm run release:github:minor\nnpm run release:github:major\n```\n\nSafe preview:\n\n```bash\nnpm run release:github:patch:dry-run\n```\n\nThe GitHub release helper does the following:\n\n- verifies the git worktree is clean\n- verifies `gh auth status`\n- runs `npm test`\n- runs `npm run publish:dry-run`\n- bumps the version with `npm version`\n- pushes the current branch and tags\n- creates a GitHub Release with `gh release create`\n- lets GitHub Actions publish to npm\n\n推荐的 GitHub 发版快捷命令：\n\n```bash\nnpm run release:github:patch\nnpm run release:github:minor\nnpm run release:github:major\n```\n\n安全预演：\n\n```bash\nnpm run release:github:patch:dry-run\n```\n\n这个 GitHub 发版脚本会依次执行：\n\n- 检查 git 工作区是否干净\n- 检查 `gh auth status`\n- 运行 `npm test`\n- 运行 `npm run publish:dry-run`\n- 用 `npm version` 升级版本\n- 推送当前分支和 tags\n- 用 `gh release create` 创建 GitHub Release\n- 然后交给 GitHub Actions 发布 npm\n\nRecommended local release shortcuts:\n\n```bash\nnpm run release:patch\nnpm run release:minor\nnpm run release:major\n```\n\nSafe preview:\n\n```bash\nnpm run release:patch:dry-run\n```\n\nThe release script does the following:\n\n- checks that the git worktree is clean\n- runs `npm test`\n- runs `npm run publish:dry-run`\n- bumps the version with `npm version`\n- publishes to npm\n- pushes the current branch and tags to `origin`\n\n推荐的本地发版入口：\n\n```bash\nnpm run release:patch\nnpm run release:minor\nnpm run release:major\n```\n\n安全预演：\n\n```bash\nnpm run release:patch:dry-run\n```\n\n这个发布脚本会依次执行：\n\n- 检查 git 工作区是否干净\n- 运行 `npm test`\n- 运行 `npm run publish:dry-run`\n- 用 `npm version` 升级版本\n- 发布到 npm\n- 把当前分支和 tags 一起推到 `origin`\n\nFor follow-up releases without the shortcut, the manual flow is:\n\n```bash\nnpm run release:check\nnpm version patch\nnpm publish\n```\n\n如果你不用快捷脚本，手动流程仍然是：\n\n```bash\nnpm run release:check\nnpm version patch\nnpm publish\n```\n\nFor the full release checklist, registry notes, scope troubleshooting, and post-publish validation, see [RELEASING.md](./RELEASING.md).\n\n完整的发布清单、registry 说明、scope 权限排障和发布后验证，请看 [RELEASING.md](./RELEASING.md)。\n\n## Maintainers / 维护建议\n\n- Prefer `npx @aicode-nexus/skills ...` in user-facing docs\n- Use directory names as canonical skill names\n- Update `manifest/skills.json` when adding installable skills\n- Keep README install examples aligned with real CLI behavior\n","readmeFilename":"README.md"}