upskill 0.3.0

Author and distribute AI-assistance content across coding agents
Documentation

upskill

docs

Upskill your coding agents.

A single Rust binary for authoring and distributing AI-assistance content — rules, skills, and agents — across multiple AI coding clients (Claude Code, GitHub Copilot, opencode) from a single source of truth.

No Node.js. No npm. No runtime dependencies.

Install (consumer)

cargo install upskill

# Install everything from a source repo (auto-fans out to .claude/, .github/, .agents/)
upskill add driftsys/skills

# Or install a curated bundle — one entry, dependency-resolved
upskill add driftsys/bundles:platform-baseline.bundle.md

# Pull latest and regenerate
upskill update

# Inspect installed state
upskill list
upskill doctor

.upskill-lock.json records what was installed at which ref and hash — commit it alongside the project.

Author

# In a source-registry repo (where SSOT items live)
upskill new skill code-review
upskill lint --strict
upskill fmt

Two roles, no overlap

  • Source registry — repo where SSOT items live. Author commands run here: new, lint, fmt.
  • Consumer project — repo where generated outputs land. Consumer commands run here: add, remove, update, list, doctor, search.

The same repo can be both, but SSOT and generated outputs do not mix in the same tree.

Bundles

A bundle is a flat manifest (*.bundle.md) that names the items it includes, and optionally other bundles it depends on. Installing a bundle resolves the transitive closure once and writes per-item output:

upskill add driftsys/bundles:platform-baseline.bundle.md

The lockfile records the bundle entry alongside the items, so remove --source <bundle-label> and future remove <bundle-name> flows know which items came from which bundle.

Documentation

License

MIT

Post-clone setup

Run ./bootstrap after git clone or git worktree add.