Built for Claude Code

Skills, commands & agents
manager for Claude Code

Connect your projects to centralized GitHub registries. Track versions, detect drift, sync shared context — all through a simple manifest file.

$ go install github.com/barelias/amaru@latest

Everything you need

Manage the full lifecycle of Claude Code extensions across your team.

^

Version Management

Semver constraints (^, ~, exact) with reproducible lock files. Every install is deterministic.

#

Drift Detection

Content hashing detects local edits. Know when skills diverge from the registry — or accept the drift intentionally.

{}

Skillsets

Curated bundles of skills, commands, and agents. Add a whole pack at once — each item is tracked individually.

<>

Context Sync

Share brainstorms, plans, and solutions across projects via sparse checkout. Auto-syncs with git hooks.

+

Multi-Registry

Connect to multiple GitHub registries — public or private. Token, GitHub CLI, or no-auth supported.

@

Self-Hosted

Any repo can be its own registry. Add amaru_registry.json and ship skills alongside your code.

Get started in seconds

Six commands to go from zero to a fully managed project.

terminal
# 1. Initialize a manifest in your project
$ amaru init

# 2. Discover what's available
$ amaru browse

# 3. Add skills, commands, and agents
$ amaru add research
$ amaru add dev/bootstrap --type command
$ amaru add starter-pack --type skillset

# 4. Install everything
$ amaru install

# 5. Set up shared context documentation
$ amaru context init

# 6. Check for updates later
$ amaru check

How it works

Two files at the root of your project. Both committed to the repo.

Manifest amaru.json

Declares registries, version constraints, and dependencies.

{
  "version": "1.0.0",
  "registries": {
    "main": {
      "url": "github:acme/skills",
      "auth": "github"
    }
  },
  "skills": {
    "research": "^1.0.0",
    "plan": "^1.0.0"
  },
  "agents": {
    "code-reviewer": "^1.0.0"
  }
}

Lock file amaru.lock

Resolved versions, content hashes, and timestamps for reproducibility.

{
  "skills": {
    "research": {
      "version": "1.0.3",
      "registry": "main",
      "hash": "a1b2c3d4",
      "installed_at": "2026-03-04"
    },
    "plan": {
      "version": "1.0.1",
      "registry": "main",
      "hash": "e5f6a7b8"
    }
  }
}

CLI Reference

Every command you need, nothing you don't.

Command Description
amaru initGenerate initial amaru.json interactively
amaru browseList available items from registries
amaru add <name>Add a skill/command/agent/skillset and install
amaru installInstall everything from the manifest
amaru checkCheck for updates and local drift
amaru updateUpdate to latest compatible versions
amaru listShow installed items with status
amaru ignoreAccept local drift for an item
amaru context initSet up context documentation sync
amaru context syncPull latest context from registry
amaru context pushPush local context changes back
amaru repo initScaffold a new registry repository

Registry structure

A registry is just a GitHub repo with a simple convention.

my-skills-registry/
amaru_registry.json            # Package index
AGENTS.md                        # Navigation
.amaru_registry/                 # All content
  skills/
    research/
      skill.md                     # Skill content
      manifest.json                # Metadata
  commands/
    dev/bootstrap/
      command.md
      manifest.json
  agents/
    code-reviewer/
      agent.md
      manifest.json
  context/
    my-app/
      brainstorms/
      plans/
      solutions/

Versions are tracked via git tags: skill/research/1.0.3

Ready to get started?

Install amaru and connect your first registry in under a minute.