JackIn 0.1.2
dotnet tool install --global JackIn --version 0.1.2
dotnet new tool-manifest
dotnet tool install --local JackIn --version 0.1.2
#tool dotnet:?package=JackIn&version=0.1.2
nuke :add-package JackIn --version 0.1.2
jack-in
A small .NET 8 CLI that makes the landing-page animation real: it downloads version-aware
.NET Claude skills from the public DevNines/dotnet-skills
repo and loads them into your agent — either user-wide or into the current project only.
$ jack-in load Ardalis.Specification@9.3.1
↳ negotiating construct · DevNines/dotnet-skills@main
↳ extracting api surface
· ardalis-spec: exact reference v9.3.1 · grounded, no invented methods
↳ uploading to agent · user → C:\Users\you\.claude\skills
✓ ardalis-spec
status: LOADED (1 skill)
↳ cleaning up · zip + extracted folder
How it works
- Downloads the source repo as a zip to a temp folder (
%TEMP%/jack-in-*). - Extracts it and finds every folder containing a
SKILL.md(underskills/when present). - Resolves your target — by folder name (
ardalis-spec), package id (Ardalis.Specification), or anydetect_package_namesentry from the skill'sskill.config.json. - Copies the whole skill folder to the target (see version handling below).
- Always deletes the zip and the extracted folder when finished — even on failure.
Where skills are installed
| Invocation | Target |
|---|---|
| (default) | user-level: <user>/.claude/skills/ |
--project / -p |
this project only: ./.claude/skills/ |
--user-dir <path>overrides the user-level directory (handy for testing).
Commands
jack-in load <package|skill>[@version] # load one skill
jack-in load all # load every skill in the source repo
jack-in list # list available skills + their versions
jack-in help # full help
Options
| Option | Meaning |
|---|---|
--project, -p |
install into ./.claude/skills instead of the user dir |
--force, -f |
overwrite a skill that's already installed |
--repo <owner/name> |
source repo (default DevNines/dotnet-skills) |
--ref <branch\|tag\|sha> |
source ref (default main) |
--user-dir <path> |
override the user-level skills directory |
Version handling (@version)
These skills are version-aware at runtime — when engaged, the skill reads your .csproj /
Directory.Packages.props and self-selects the matching reference files. So jack-in copies the
entire skill folder (all versions). The @version you pass is validated and reported against
the skill's reference/api-surface-v*.md files using the same closest-match rules the skills use
(exact → same minor, highest patch → same major, highest minor ≤ requested). It never changes which
files are copied. A version with no safe reference data still installs, with a warning.
Install
Once published to NuGet.org, install it as a .NET global tool — one command, any machine with the .NET 8 SDK:
dotnet tool install --global JackIn
jack-in load all
# later
dotnet tool update --global JackIn
dotnet tool uninstall --global JackIn
Requires the .NET SDK (8.0+). If
jack-inisn't found after install, make sure~/.dotnet/toolsis on yourPATH.
Releasing (maintainers)
Publishing is automated by .github/workflows/publish-jackin.yml. One-time setup: add a NuGet.org
API key as the NUGET_API_KEY repository secret. Then cut a release by pushing a tag — the version
comes from the tag:
git tag jack-in-v0.1.0
git push origin jack-in-v0.1.0
(Or run the Publish jack-in workflow manually from the Actions tab and type the version.)
Run / build from source
# Run without installing
dotnet run --project src/JackIn -- load Ardalis.Specification@9.3.1
dotnet run --project src/JackIn -- list
# Build
dotnet build src/JackIn/JackIn.csproj -c Release
# Pack + install from a local .nupkg (no NuGet.org needed)
dotnet pack src/JackIn/JackIn.csproj -c Release -o ./artifacts
dotnet tool install --global --add-source ./artifacts JackIn
Examples
jack-in load Ardalis.Specification@9.3.1 # → user-level skills dir
jack-in load ardalis-spec --project # → ./.claude/skills (this project only)
jack-in load all # every skill, user-level
jack-in load hangfire --force # reinstall, overwriting
jack-in list # what's available + versions
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
This package has no dependencies.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.2 | 10 | 6/4/2026 |