{"_id":"@arthjean/skills","_rev":"2-52133ed233acf882ceb31ab0658cc914","name":"@arthjean/skills","dist-tags":{"latest":"0.2.1"},"versions":{"0.2.0":{"name":"@arthjean/skills","version":"0.2.0","license":"MIT","_id":"@arthjean/skills@0.2.0","maintainers":[{"name":"arthjean","email":"arthur.jean@strivex.fr"}],"homepage":"https://github.com/arthjean/skills#readme","bugs":{"url":"https://github.com/arthjean/skills/issues"},"bin":{"arthur-skills":"bin/arthur-skills.js"},"dist":{"shasum":"4b27df150cc254107b89a2b0501cf014f887f188","tarball":"https://registry.npmjs.org/@arthjean/skills/-/skills-0.2.0.tgz","fileCount":11,"integrity":"sha512-CFXabI1n1SMC5EjtL3tU244dEvNNy9E7CdYh4TVrb39369T2gB/Pvg7n390wKKlQrivxz6479rculmS8AgDzMg==","signatures":[{"sig":"MEYCIQD+nMCk+jp3sPL0IDLvnAqgtrQ0tPOiBf8Dv417umD8/gIhAOinL8wbM9/yM0VL0aJuixzaHGs74DRwu9MJReE07laI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":43649827},"type":"module","_from":"file:target/bootstrap-npm-v0.2.0/arthur-skills-npm-0.2.0.tgz","engines":{"node":">=18"},"scripts":{"test":"node --test tests/*.test.js"},"_npmUser":{"name":"arthjean","email":"arthur.jean@strivex.fr"},"_resolved":"/home/arthur/dev/skills/target/bootstrap-npm-v0.2.0/arthur-skills-npm-0.2.0.tgz","_integrity":"sha512-CFXabI1n1SMC5EjtL3tU244dEvNNy9E7CdYh4TVrb39369T2gB/Pvg7n390wKKlQrivxz6479rculmS8AgDzMg==","repository":{"url":"git+https://github.com/arthjean/skills.git","type":"git","directory":"npm"},"_npmVersion":"10.9.7","description":"Native installer for Arthur's agent skills and workflow","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/skills_0.2.0_1785327314189_0.7323184334005932","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@arthjean/skills","version":"0.2.1","description":"Native installer for Arthur's agent skills and workflow","license":"MIT","type":"module","bin":{"arthur-skills":"bin/arthur-skills.js"},"engines":{"node":">=18"},"repository":{"type":"git","url":"git+https://github.com/arthjean/skills.git","directory":"npm"},"publishConfig":{"access":"public"},"scripts":{"test":"node --test tests/*.test.js"},"_id":"@arthjean/skills@0.2.1","bugs":{"url":"https://github.com/arthjean/skills/issues"},"homepage":"https://github.com/arthjean/skills#readme","_integrity":"sha512-0s2jmIazGwurJTfWBRPnYGRv/RC5lEfK4N+GXULRBvSQCQgj71fOVDOdVzdcQQbuY8x4jI7/BXNKnvEVIlOZAg==","_resolved":"/home/runner/work/skills/skills/arthur-skills-npm-0.2.1.tgz","_from":"file:arthur-skills-npm-0.2.1.tgz","_nodeVersion":"24.18.0","_npmVersion":"11.16.0","dist":{"integrity":"sha512-0s2jmIazGwurJTfWBRPnYGRv/RC5lEfK4N+GXULRBvSQCQgj71fOVDOdVzdcQQbuY8x4jI7/BXNKnvEVIlOZAg==","shasum":"13f80485e07b8e8dd8484ff87d2c0f50f15d1792","tarball":"https://registry.npmjs.org/@arthjean/skills/-/skills-0.2.1.tgz","fileCount":12,"unpackedSize":43827601,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@arthjean%2fskills@0.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDBGzzuhlDhE7hiwwXM575bJtgw6hup3BYO3DP8fg8XvAiAVZb6DSW1Z2iB/Jxev9xzP9ac8uxxj77RnnWLxTvflWw=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:df57b954-11cc-4b25-949e-7397e6fecea3"}},"directories":{},"maintainers":[{"name":"arthjean","email":"arthur.jean@strivex.fr"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/skills_0.2.1_1785359018357_0.8483486855557176"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-29T12:15:14.015Z","modified":"2026-07-29T21:03:39.126Z","0.2.0":"2026-07-29T12:15:14.583Z","0.2.1":"2026-07-29T21:03:38.784Z"},"bugs":{"url":"https://github.com/arthjean/skills/issues"},"license":"MIT","homepage":"https://github.com/arthjean/skills#readme","repository":{"type":"git","url":"git+https://github.com/arthjean/skills.git","directory":"npm"},"description":"Native installer for Arthur's agent skills and workflow","maintainers":[{"name":"arthjean","email":"arthur.jean@strivex.fr"}],"readme":"# Agent Skills\n\nPublic collection of Agent Skills used by Arthur across Codex, Claude Code, and other compatible coding agents.\n\n## Install the CLI\n\nInstall the native CLI through the npm registry with Node.js 18 or newer:\n\n```bash\nnpm install --global @arthjean/skills\n```\n\nBun can run the package without a separate Node.js installation:\n\n```bash\nbunx --bun --package @arthjean/skills@latest arthur-skills \\\n  plan --provider claude --provider codex\n```\n\nWith Node.js available, pnpm and Bun can also install the global launcher:\n\n```bash\npnpm add --global @arthjean/skills\nbun add --global @arthjean/skills\n```\n\nThe package contains the native binaries for every supported platform. It does not compile Rust or\nclone this repository during installation.\n\nReview the immutable plan, then apply the same provider selection:\n\n```bash\narthur-skills plan --provider claude --provider codex\narthur-skills install --provider claude --provider codex\narthur-skills doctor\n```\n\nUpdate the CLI by installing the latest package:\n\n```bash\nnpm install --global @arthjean/skills@latest\n```\n\n### Install skills only\n\nInstall from GitHub with the [`skills` CLI](https://github.com/vercel-labs/skills):\n\n```bash\nbunx skills add arthjean/skills\n```\n\nInspect the catalog without installing anything:\n\n```bash\nbunx skills add arthjean/skills --list\n```\n\nInstall one or more specific skills:\n\n```bash\nbunx skills add arthjean/skills --skill meta-code --skill write-prd\n```\n\nInstall globally instead of in the current project:\n\n```bash\nbunx skills add arthjean/skills --global\n```\n\nThe `skills` CLI installs skills, but not the Claude and Codex agent definitions bundled with\n`arthur-skills`.\n\n### Standalone installer\n\nUse the standalone installer when a JavaScript runtime or package manager is unavailable. The\n`arthur-skills` binary embeds the complete runtime catalog and requires no JavaScript runtime after\ninstallation. Rust 1.95.0 is pinned at the repository root.\n\n```bash\n# Pin acquisition to a release, then verify the downloaded checksum file before execution.\nARTHUR_SKILLS_VERSION=v0.2.1\ncurl --proto '=https' --tlsv1.2 -LsSf \\\n  \"https://github.com/arthjean/skills/releases/download/${ARTHUR_SKILLS_VERSION}/arthur-skills-installer.sh\" \\\n  -o arthur-skills-installer.sh\ncurl --proto '=https' --tlsv1.2 -LsSf \\\n  \"https://github.com/arthjean/skills/releases/download/${ARTHUR_SKILLS_VERSION}/sha256.sum\" \\\n  -o sha256.sum\ngrep ' arthur-skills-installer.sh$' sha256.sum > arthur-skills-installer.sh.sha256\nif command -v sha256sum >/dev/null; then\n  sha256sum --check arthur-skills-installer.sh.sha256\nelse\n  shasum -a 256 --check arthur-skills-installer.sh.sha256\nfi\nsh arthur-skills-installer.sh\n```\n\nUse a published tag and its `sha256.sum` manifest rather than an unpinned main-branch installer. For local development:\n\n```bash\ncargo run -p arthur-skills -- --help\ncargo build --release -p arthur-skills\n```\n\nOn Windows, use the signed release inputs from PowerShell:\n\n```powershell\n$Version = \"v0.2.1\"\n$Base = \"https://github.com/arthjean/skills/releases/download/$Version\"\nInvoke-WebRequest \"$Base/arthur-skills-installer.ps1\" -OutFile arthur-skills-installer.ps1\nInvoke-WebRequest \"$Base/sha256.sum\" -OutFile sha256.sum\n$Checksum = Get-Content sha256.sum | Where-Object { $_ -match ' arthur-skills-installer\\.ps1$' }\nif (@($Checksum).Count -ne 1) { throw \"Installer checksum entry missing\" }\n$Expected = $Checksum.Split()[0].ToLowerInvariant()\n$Observed = (Get-FileHash arthur-skills-installer.ps1 -Algorithm SHA256).Hash.ToLowerInvariant()\nif ($Observed -ne $Expected) { throw \"Installer checksum mismatch\" }\n& .\\arthur-skills-installer.ps1\n```\n\nThe installation command surface is `plan`, `install`, `status`, `doctor`, `update`, `uninstall`,\n`adopt`, and `recover`.\n\nRepository maintainers can inspect and synchronize the vendored third-party skills without changing an installed workflow:\n\n```bash\narthur-skills upstream check\narthur-skills upstream sync --dry-run\narthur-skills upstream sync --yes\n```\n\n[`upstreams.toml`](upstreams.toml) records each canonical repository, tracked branch, and skill path. [`upstreams.lock.json`](upstreams.lock.json) pins the imported source revision, Git tree, and vendored content hash. The updater clones each repository once into staging, blocks on local drift or removed upstream paths, and replaces only clean pinned snapshots. The regular `update` command remains offline and reconciles installations exclusively to the catalog embedded in the current binary.\n\nInteractive terminals use Ratatui in an inline viewport. `--plain`, `ARTHUR_SKILLS_PLAIN=1`, or `TERM=dumb` selects the keyboard-driven line renderer. Redirected streams and `CI=true` never prompt; pass explicit `--provider` values and `--yes` for mutations. `--json` emits one schema-v1 envelope and never initializes Ratatui. `NO_COLOR` disables color without changing the interaction mode.\n\nThe installer writes canonical skills under `$HOME/.agents/skills`, Claude activations and agents under `$HOME/.claude/{skills,agents}`, Codex agents under `${CODEX_HOME:-$HOME/.codex}/agents`, and its versioned receipt under `$HOME/.agents/.arthur-workflow/receipt.json`. On Windows, `$HOME` falls back to `%USERPROFILE%`, and Claude activations are managed copies because creating symlinks can require Developer Mode or elevated privileges. Unix uses relative Claude symlinks. The installer owns only entries recorded in its receipt or transferred from a verified Vercel Skills v3 lock. Matching foreign entries require explicit `adopt`; conflicts and drift without either ownership proof are never overwritten or removed. `--dry-run` scans and serializes the same plan without creating directories, locks, staging, timestamps, or a receipt.\n\nThe JSON v1 status set is closed: `success`, `noop`, `blocked`, `failed`, or `recovery_required`. Every diagnostic contains `code`, `severity`, `message`, mutually exclusive `path_utf8` or `path_bytes_hex`, and `remediation`. Exit codes are stable: `0` success or no-op, `2` usage or missing non-interactive decisions, `3` conflict, `4` invalid environment, `5` transaction or integrity failure, `130` SIGINT, and `143` SIGTERM.\n\n## Repository structure\n\n- [`skills/`](skills/) contains every installable skill. Each skill has its own `SKILL.md` and optional references, scripts, or assets.\n- [`agents/claude/`](agents/claude/) mirrors the agents optimized for Claude Code.\n- [`agents/codex/`](agents/codex/) mirrors the agents optimized for Codex, including their evaluation suite.\n- [`crates/arthur-skills/`](crates/arthur-skills/) contains the native CLI and build-time catalog validator.\n- [`npm/`](npm/) contains the dependency-free package launcher. Release staging injects the verified native binaries.\n- [`shared/claude/skills/_shared/`](shared/claude/skills/_shared/) contains packaged Claude workflow support documents.\n\nThe `skills` CLI does not install these agent files.\n\nThe CLI discovers skills recursively, so the repository can be installed directly through the GitHub shorthand above.\n\n## License\n\nOriginal material authored by Arthur is available under the MIT License. Bundled upstream skills and components retain their respective licenses and copyrights. See [THIRD_PARTY.md](THIRD_PARTY.md).\n","readmeFilename":"README.md"}