skillc Single binary file, a local skills management tool for the multi-Agent ecosystem.
- 📦 Multi-source management — Local paths and Git repositories as Skill sources
- 🔍 Index & search — Auto-scans sources and builds a searchable index
- ⚡ One-shot install —
--sourceflag registers, syncs, and installs in a single command - 🧩 Profiles — Save a reusable Skill set and apply it to any project with a dry-run plan
- 🔒 Lock file tracking — Records origin, version, and install path; supports
restore - 🤖 Multi-agent adapters — Automatically targets each agent's install directory
- 🔄 Batch update — Update all installed Skills with one command
- ⌨️ Interactive selection — Filter and multi-select Skills for install, update, and profile creation
Install by eget
Can quickly install by inherelab/eget
eget install inhere/skillcInstall by Go
go install github.com/inhere/skillc/cmd/skillc@latestBuild from source
git clone https://github.com/inhere/skillc
cd skillc
make build # compile to current directory
make install # install to $GOPATH/bin# 1. Initialize config
skillc config init
# 2. Add a Skill source (Git repo or local path)
skillc source add git https://github.com/org/skills.git
skillc source add local /path/to/my-skills
# 3. Sync sources (clone/pull and rebuild index)
skillc source sync --all
# 4. Search for a Skill
skillc search typescript
# 5. Install a Skill
skillc install my-skill
# 6. List installed Skills
skillc listskillc config init # initialize config file
skillc config show # display current config
skillc config set <key> <value> # update a config valueskillc source list # list all sources
skillc source add git <url> [ref] # add a Git source
skillc source add local <path> # add a local source
skillc source sync <id> # sync a source (partial ID match supported)
skillc source sync --all # sync all sources
skillc source status # show source status
skillc source collections [source] # list collections under sources
skillc source skills <source> # list skills under a source
skillc source skills <source> --collection <name>
skillc source remove <id> # remove a source
source syncsupports partial ID matching — e.g.skillc source sync edgematcheslocal-golang-edge-skills.
skillc profile list # list saved profiles
skillc profile show <name> # show profile details
skillc profile create <name> --from-installed # create from current installed Skills
skillc profile create <name> --from-collection <source>/<collection>
skillc profile create go-dev --interactive # pick Skills interactively
skillc profile diff <name> # preview profile apply plan
skillc profile apply <name> --dry-run # print plan without installing
skillc profile apply <name> --yes # apply profile without confirmationskillc install <skill-id> # install a Skill
skillc install <id1>,<id2> # install multiple (comma-separated)
skillc install # restore all Skills from lock file
skillc install --interactive [keyword] # filter and multi-select Skills
# One-shot: register source → sync → install
skillc install --source https://github.com/org/skills.git my-skill
skillc install --source /path/to/local-skills my-skillOptions:
| Flag | Short | Default | Description |
|---|---|---|---|
--scope |
-s |
project |
Install scope (project / global) |
--agent |
-a |
claude-code |
Target agent name or directory |
--yes |
-y |
false |
Skip confirmation prompt |
--source |
-S |
Git URL or local path — auto-register & sync before installing | |
--interactive |
-i |
false |
Open an interactive Skill selector |
--install-mode |
Install mode (symlink / junction / copy) |
||
--copy |
false |
Install by copying files |
Interactive selection uses gookit/cliui: type to filter the candidate list, press Space to multi-select, and press Enter to continue into the normal install confirmation and execution flow.
skillc update # update all installed Skills
skillc update --target <skill-id> # update a specific Skill
skillc update --check # preview update candidates without installing
skillc update --interactive # filter and multi-select update candidatesskillc status # show current project skill status
skillc status --profile go-dev # filter by profile
skillc status --agent claude-code # filter by agentskillc web
skillc web --port 8090
skillc web --host 127.0.0.1 --port 8090The web manager runs on 127.0.0.1 by default and shows sources, profiles, current status, project install map, and version drift. Web writes are guarded: profile apply and update require a plan-first flow and an explicit confirmation, and only operate on the current project/agent/scope.
skillc uninstall <skill-id> [...] # uninstall one or more Skillsskillc list # list installed Skills (current agent)
skillc list --scope global # list globally installed Skillsskillc search <keyword> # keyword search
skillc search <keyword> --agent claude # filter by agent
skillc show <skill-id> # show Skill detailsCollections are browsed through source collections and source skills --collection; to reuse a collection as a project Skill set, create a profile from it and apply the profile.
skillc doctor # verify git, config, index, and cacheConfig file lookup order:
./skillc.yaml(current directory)~/.config/skillc/config.yaml
Key fields:
lock_file: skillc.lock.yaml # lock file path
index_file: skillc-index.json # index file path
repo_cache_dir: ~/.cache/skillc # Git repo cache directory
proxy_url: "" # HTTP proxy (optional)
sources: [] # registered sources
agent_tools: # agent tools config agent_name: config
claude-code:
dirname: .claude
aliases:
- claude
codex:
dirname: .codex
opencode:
# dirname: .opencode # default is .{agent_name}
user_dir: ~/.config/opencode
universal: # universal agent config, most agent tool support this
dirname: .agents
aliases:
- agents
user_dir: ~/.agents
project_dir: .agentsskillc.lock.yaml records every installed Skill and is used by skillc install (no args) to restore all Skills:
records:
- skill_id: my-skill
source_id: git-org-skills
agent: claude-code
scope: project
installed_path: .claude/skills/my-skill
installed_at: "2026-01-01T00:00:00Z"go test ./... # run all tests
make build # local buildMIT