Sandbox
@Webioinfo01/aweskill

CLI skill package manager for AI agents

aweskill keeps AI agent skills in a central local store and projects them into tools like Claude Code, Codex, Cursor, Gemini CLI, and Windsurf. It can also find skills from sources, install tracked copies, bundle related skills, and repair broken or duplicated agent state.

35 stars5 forksTypeScriptUpdated 7d ago
Who it's for

Builders who want one place to manage reusable skills across multiple AI agents.

What it delivers

You can manage skills once and reuse them across agents instead of copying folders by hand.

What it does

Central skill store

Keeps managed skills in `~/.aweskill/skills/` as the source of truth.

Multi-agent projection

Projects skills into agent-specific directories using symlinks, junctions, or managed copies.

Find, install, and update

Searches skills sources, installs them into the store, and refreshes tracked installs from their recorded source.

Bundles

Groups related skills so you can project or remove them together.

Doctor workflows

Checks for broken projections, duplicates, suspicious files, and malformed `SKILL.md` frontmatter.

Backup and restore

Archives the store and restores it later when the local state needs recovery.

Built-in management skills

Ships `aweskill`, `aweskill-doctor`, and `aweskill-creator` skills so an agent can operate aweskill from natural language.

How to get it

  1. 1You can tell your agent
    Read https://github.com/Webioinfo01/aweskill/blob/main/README.ai.md and follow it to install aweskill for this agent.
  2. 2Package page: npmjs.com/package/aweskill
    # Install aweskill and initialize the central store
    npm install -g aweskill
    aweskill store init
    
    # Show where the aweskill store lives
    aweskill store where --verbose
  3. 3You can tell your agent
    List the supported agent ids, then project aweskill, aweskill-doctor, and aweskill-creator into codex's global skills directory.
  4. 4Run
    # See supported agent ids
    aweskill agent supported
    
    # Project the built-in management skills into your current agent
    aweskill agent add skill aweskill,aweskill-doctor,aweskill-creator --global --agent codex
    
    # Verify the current projected state
    aweskill agent list --global --agent codex
  5. 5You can tell your agent
    Bring the skills already in my Claude Code directories into aweskill.
  6. 6You can tell your agent
    Find a proteomics skill and install it; then check whether my installed skills have source updates.

README

aweskill

aweskill: Skill Package Manager for AI Agents aweskill

A CLI-first skill package manager that AI agents can operate themselves.

Install, update, bundle, and project skills across Codex, Claude Code, Cursor, Gemini CLI, Qwen Code, Windsurf, and more.

One CLI, identical commands on Ubuntu, macOS, and Windows.

English · 简体中文 · Website · Webioinfo

Ko-fi

Version Node License Website

Status Supported agents Projection mode Platform npm downloads GitHub stars Local CLI

Like npm for local AI agent skills: one install, many coding agents.

aweskill is a local skill package manager for AI agents such as Codex, Claude Code, Cursor, Gemini CLI, Qwen Code, Windsurf, OpenCode, and more.

It helps developers find, install, update, bundle, deduplicate, back up, and reuse skills across multiple AI coding tools.

Instead of copying the same SKILL.md folders into every tool by hand, aweskill keeps one central source of truth in ~/.aweskill/skills/ and projects selected skills into each agent's expected directory using symlink, junction, or managed copy.

Website: aweskill.webioinfo.top — project homepage with install guides and agent compatibility overview.

Quick Start

aweskill is designed for a simple loop: install the CLI once, equip your agent with the built-in management skills, then let the agent operate aweskill for day-to-day work.

1. Install aweskill

If you are working inside Codex, Claude Code, Cursor, or another coding agent, just hand the whole job to it — the agent installs the CLI, initializes the store, and projects the built-in skills. Invoke skills (/ in Claude Code, $ in Codex) afterwards to confirm the new skills appear; if not, restart the agent first.

You can tell your agent:

Read https://github.com/Webioinfo01/aweskill/blob/main/README.ai.md and follow it to install aweskill for this agent.

Working outside a coding agent and prefer to do it yourself? Install globally with npm (requires Node.js 20 or later), then initialize the central store — the commands are in the folded blocks below.

Package page: npmjs.com/package/aweskill

Install and bootstrap CLI commands
# Install aweskill and initialize the central store
npm install -g aweskill
aweskill store init

# Show where the aweskill store lives
aweskill store where --verbose
Example agent-assisted install screenshot

Example: a coding agent following README.ai.md to install aweskill and project the built-in skills.

Example: a coding agent following README.ai.md to install aweskill, initialize the central store, and project the built-in skills.

Other install methods: this repository, GitHub dev branch, local dev link, packed tarball
# Install from this repository
npm install
npm run build
npm install -g .

# Install the dev version from GitHub (dev branch contains in-progress changes and may be unstable)
npm install -g Webioinfo01/aweskill#dev

# Local development link
npm install
npm link
aweskill --help

# Install from a packed tarball
npm install
npm pack
npm install -g ./aweskill-<version>.tgz

2. Equip your agent

If you just installed aweskill by hand, one step remains: project the three built-in management skills into your current agent — aweskill for day-to-day operations, aweskill-doctor for diagnosis and repair, and aweskill-creator for authoring (see Built-In Agent Skills for what each covers). Agent-assisted installs complete this step automatically.

You can tell your agent:

List the supported agent ids, then project aweskill, aweskill-doctor, and aweskill-creator into codex's global skills directory.
Equivalent CLI commands
# See supported agent ids
aweskill agent supported

# Project the built-in management skills into your current agent
aweskill agent add skill aweskill,aweskill-doctor,aweskill-creator --global --agent codex

# Verify the current projected state
aweskill agent list --global --agent codex

Replace codex with your agent id.

3. Use aweskill through natural language

From here on, day-to-day use needs no memorized commands: state the intent and the agent enters the matching aweskill workflow. The six common scenarios follow — each opens with the intent and the outcome in plain language; expand the folded block to run the CLI by hand or verify exactly what happens.

Bring existing skills under management

If you already have skills scattered across Claude Code, Codex, and other tools, aweskill can scan those directories and bring the unmanaged ones into the central store as the single source of truth going forward. Scanning only discovers and reports; importing happens after you confirm. On import, the original directory is replaced by a symlink into the central store by default (original files can be kept instead).

You can tell your agent:

Bring the skills already in my Claude Code directories into aweskill.
Equivalent CLI commands
# Scan agent skill directories (dry-run: only discover)
aweskill store scan

# Scan and import all discovered skills
aweskill store scan --import

# Scan and import with detailed output
aweskill store scan --import --verbose

# Scan and import, overwriting existing skills
aweskill store scan --import --override

# Scan and import, keeping originals instead of replacing with symlinks
aweskill store scan --import --keep-source

# Scan specific agent only
aweskill store scan --import --agent claude

Find, install, and keep skills up to date

When you need a new skill, have the agent search skills.sh and sciskillhub.org together, or only the local central store: remote results come with a source aweskill store install can use directly, and local results point at the skill path. Installs record their source, so one command later checks or refreshes updates while your local edits in the central store stay protected. Peek at a skill with store show before installing or updating.

You can tell your agent:

Find a proteomics skill and install it; then check whether my installed skills have source updates.
Equivalent CLI commands
# Search both skills.sh and sciskillhub.org
aweskill find protein

# Search one provider only
aweskill find protein --provider sciskill

# Search the local central store and print matching skill paths
aweskill find review --local

# Inspect one local skill summary
aweskill store show paper-review

# Print the full markdown or just the path
aweskill store show paper-review --raw
aweskill store show paper-review --path

# Install a skill from a GitHub-style source discovered via skills.sh
aweskill store install owner/repo

# Install a scientific skill from sciskillhub.org
aweskill store install sciskill:open-source/research/lifesciences-proteomics

# Check tracked installs for updates without changing files
aweskill store update --check

# Refresh one tracked skill from its recorded source
aweskill store update lifesciences-proteomics

Create a new skill

Making a skill follows the same lifecycle as installing one: scaffold into the central store, iterate, validate, project, and publish when it is good enough.

You can tell your agent:

Make me a skill for reviewing papers: scaffold it, write the trigger description, and project it to Codex.
Equivalent CLI commands
# Check whether a similar skill already exists before writing a new one
aweskill find review
aweskill find review --local

# Scaffold a new skill with valid SKILL.md frontmatter and references/
aweskill store create paper-review --description "Use when reviewing academic papers, checking citations, or summarizing manuscripts. 中文触发词:论文评审、审稿、文献总结。"

# Draft the skill: edit the generated SKILL.md body at
# ~/.aweskill/skills/paper-review/SKILL.md and add on-demand docs under references/

# Validate the frontmatter (dry-run by default)
aweskill doctor fix-skills --skill paper-review

# Project and iterate; projections are symlinks, so edits go live instantly
aweskill agent add skill paper-review --global --agent codex

A few notes:

  • With the built-in aweskill-creator skill projected, you can just ask your agent to "make me a skill for X" — it interviews you, checks for existing skills, scaffolds, drafts, tests with realistic prompts, validates, and projects
  • For a repo-specific skill shared through git, scaffold into the repo instead and bring it into the store later: aweskill store create my-skill --dir <repo>/.agents/skills, then aweskill store install <path> on each machine
  • To publish, copy the finished skill directory into its own git repo; others install it with aweskill install owner/repo
  • Created skills are not source-tracked (like scan --import), so store update never overwrites your edits

Group skills into reusable bundles

When the same skills always travel together — a project's stack, a team's standard workflow — group them into a bundle and project or remove the whole set at once instead of naming skills one by one. Bundles live in ~/.aweskill/bundles/*.yaml and can be shared through git.

You can tell your agent:

Create a backend bundle with api-design and db-schema in it.
Equivalent CLI commands
# Create a reusable bundle
aweskill bundle create backend

# Add multiple skills into the bundle
aweskill bundle add backend api-design,db-schema

# Inspect what the bundle contains
aweskill bundle show backend

Project skills into agents

A skill takes effect only once it is projected into the target agent's skill directory — the projected state is the activation state. Project a single skill, several skills, or a whole bundle, into one agent or every detected agent. Projections are symlinks by default, so edits in the central store go live instantly. Disable a projection with agent remove, and when you no longer want aweskill to manage things at all, agent recover turns the symlinks back into full directories.

You can tell your agent:

Project the backend bundle to Codex and Cursor.
Equivalent CLI commands
# Project one skill into detected global agent directories
aweskill agent add skill biopython

# Project multiple skills into one specific global agent directory
aweskill agent add skill biopython,scanpy --global --agent codex

# Project a whole bundle into every detected global agent directory
aweskill agent add bundle backend --global --agent all

# Turn managed symlinks back into full directories
aweskill agent recover --global --agent codex

Inspect, repair, and back up

Local state drifts over time: broken projections, duplicate entries, suspicious files, malformed frontmatter. The doctor commands handle these — they all default to dry run, only --apply makes real changes, and rewrites or moves can back up the originals first. The central store as a whole can be archived with store backup and restored with store restore at any time.

You can tell your agent:

Inspect my Codex skills for broken or duplicate projections, but do not modify anything yet.
Equivalent CLI commands
# Inspect the central store layout and entry counts
aweskill store where --verbose

# Create a backup archive of the current store
aweskill store backup

# Restore a backup archive into the current store
aweskill store restore ~/Downloads/aweskill-backup.tar.gz

# Inspect agent entries and categories
aweskill agent list

# Remove suspicious entries from the central store
aweskill doctor clean

# Move duplicate central-store skills into dup_skills
aweskill doctor dedup --apply

# Back up duplicates before moving them into dup_skills
aweskill doctor dedup --apply --backup

# Back up malformed SKILL.md files before rewriting them
aweskill doctor fix-skills --apply --backup

# Inspect repair actions for one agent
aweskill doctor sync --global --agent codex

# Repair broken / duplicate / matched agent entries for one agent
aweskill doctor sync --global --agent codex --apply

# Remove suspicious agent entries only when explicitly requested
aweskill doctor sync --global --agent codex --apply --remove-suspicious

aweskill doctor fix-skills reports two groups of categories:

  • Actionable fixes: missing-closing-delimiter adds the missing frontmatter closing fence, invalid-yaml rebuilds broken frontmatter from recoverable fields and body text, added-frontmatter inserts minimal frontmatter when the file starts with body content, normalized-name restores a usable canonical skill name, and normalized-description restores a usable description from the first body sentence.
  • Informational checks: normalized-required-permissions reports permissions that could be normalized into the canonical list form, preserved-unknown-fields reports frontmatter fields outside the built-in core set, and removed-empty-fields reports blank arrays, objects, or scalar values that could be dropped.

See docs/fix-skills-categories.md for full details and before/after examples.

Add the aweskill badge to your project

If your project uses aweskill and you'd like to show support, add one of these badges to your README:

BadgePreview
aweskill-badge.svgUsed by aweskill itself
aweskill-badge2.svgFor companion projects

Example using aweskill-badge2.svg:

<a href="https://github.com/Webioinfo01/aweskill">
  <img src="https://raw.githubusercontent.com/Webioinfo01/aweskill/main/logo/aweskill-badge2.svg" alt="aweskill companion">
</a>

Place it in your README title, e.g.:

# My Project <a href="https://github.com/Webioinfo01/aweskill"><img src="https://raw.githubusercontent.com/Webioinfo01/aweskill/main/logo/aweskill-badge2.svg" alt="aweskill companion"></a>

FAQ

Why aweskill, and who is it for?

aweskill is for developers and teams who use more than one AI agent, maintain reusable SKILL.md folders or agent instructions, and want one local source of truth instead of copying the same skills into every tool. It is especially useful when the problem is not only distribution, but also ongoing repair: broken projections, duplicate skills, suspicious entries, stale links, and malformed SKILL.md files that accumulate over time.

  • One central store for all your local skills in ~/.aweskill/skills/
  • Search, install, and update loop across skills.sh, sciskillhub.org, GitHub-style sources, and local paths
  • Multi-agent projection across Codex, Claude Code, Cursor, Gemini CLI, Qwen Code, Windsurf, OpenCode, and more
  • Doctor workflows for real local mess such as broken projections, duplicate entries, suspicious files, malformed frontmatter, and drift between agent directories and the central store
  • Bundle-based organization for reusable skill sets by project, team, workflow, or agent
  • Managed enable/disable model with plug-and-play projection instead of manually copying folders into each tool
  • Agent-callable management, repair, and authoring skills so AI agents can run aweskill, aweskill-doctor, and aweskill-creator workflows from natural-language requests
  • Backup, restore, deduplication, cleanup, sync repair, and recovery in one local CLI workflow
More FAQ

Where does aweskill store skills?

aweskill stores managed skills in ~/.aweskill/skills/.

Can aweskill share skills between Claude Code and Codex?

Yes. aweskill keeps one central copy of a skill and projects it into each agent's expected skill directory.

Do projected skills work inside git worktrees?

By default aweskill writes relative symlinks, which resolve only at the depth they were created for. If you commit projected skills into git and check them out into a nested git worktree, the relative target can dangle. Run aweskill agent add … --absolute (or set AWESKILL_ABSOLUTE_SYMLINKS=1 to make it the default) to write absolute symlink targets that resolve at any depth, so the same committed projection works in the main checkout and in nested worktrees. Note the tradeoff: an absolute target hard-codes this machine's ~/.aweskill path, so it will dangle on another machine or in CI where the home directory differs — use it only when the same checkout is reused at varying depths on one machine.

Does aweskill support Cursor and Gemini CLI?

Yes. aweskill supports skill projection for Cursor, Gemini CLI, and many other AI agents.

Is aweskill local-first?

Yes. aweskill manages skills on your local machine and does not require a hosted service.

Can AI agents call aweskill directly?

Yes. aweskill ships built-in management skills for aweskill and aweskill-doctor; after installing or projecting those skills, an AI agent can follow natural-language requests to search, install, update, bundle, repair, deduplicate, clean, sync, or project skills by running aweskill commands.

What makes aweskill different once the local skill state gets messy?

aweskill does not stop at install-and-project. It also gives you a repair path when local state drifts:

  • doctor sync inspects or repairs broken, duplicate, matched, new, and suspicious agent entries
  • doctor clean finds suspicious non-store files in managed areas before they silently accumulate
  • doctor dedup helps reconcile duplicate skills without forcing blind deletion
  • doctor fix-skills repairs malformed SKILL.md frontmatter and can back up originals first
  • agent list as a dry-run view lets you inspect repair state before applying changes

How does aweskill handle find, install, and update?

aweskill combines local orchestration with a source-aware skill lifecycle:

  • Find skills across skills.sh, sciskillhub.org, or the local central store with one command
  • Install skills from GitHub-style sources, local paths, or sciskill:<skill-id> identifiers into the central store
  • Update tracked installs from their recorded sources while protecting local central-store edits
  • Project the same managed skills into Codex, Claude Code, Cursor, Gemini CLI, and other agents

What is the difference between scan and install?

Both commands add skills to the central store, but serve different purposes:

store scan --importstore install
Primary useBatch discovery from agent directoriesSingle skill from GitHub, local path, or sciskill
Source trackingNo (one-time import)Yes (automatic, enables update)
Key flags--override, --verbose, --scope, --agent--skill, --all, --ref, --as
Typical commandaweskill store scan --importaweskill store install owner/repo

Use scan --import for initial setup — discover and import skills from existing agent directories. Use install for ongoing management — install individual skills with source tracking for future updates.

Comparison

CapabilitysciskillSkills Managerskillfishvercel-labs/skillsskills-manageHow aweskill does it
One central local skill storeKeeps all managed skills in ~/.aweskill/skills/ as the source of truth
Registry or catalog discoverySearches skills.sh, sciskillhub.org, or the local central store with aweskill find
GitHub-style repo import/installImports from GitHub-style sources and sciskill:<skill-id> into the central store
Local-path import/installImports from local paths into the central store
Tracked updates from recorded sourcesRecords source metadata, then refreshes with aweskill update while protecting local central-store edits
Plug-and-play multi-agent projectionProjects selected skills from the central store into agent-specific directories using symlink, junction, or managed copy
Bundle, manifest, or collection groupingUses bundles to group reusable skills by project, team, workflow, or agent
Agent-callable management skillsShips built-in aweskill, aweskill-doctor, and aweskill-creator skills so AI agents can run aweskill workflows from natural-language requests
Local maintenance and recoveryIncludes backup, restore, deduplication, clean, sync, fix-skills, and recover workflows in the CLI

sciskill here refers to the public registry-metadata repository under sciskillhub, not a local skill-manager CLI.

Use aweskill when your main problem is not just installing a skill once, but maintaining a reusable local skill inventory across multiple AI agents over time and keeping that local state repairable when it inevitably gets messy.

Built-In Agent Skills

aweskill works best when your coding agent can operate it directly.

Project the built-in aweskill, aweskill-doctor, and `aw

Files in the repo

Repository payload20 top-level entries
  • .github
  • assets
  • config
  • docs
  • logo
  • resources
  • src
  • tests
  • .gitignore
  • AGENTS.md
  • biome.json
  • CLAUDE.md
  • LICENSE
  • logo.png
  • package-lock.json
  • package.json
  • README.ai.md
  • README.md
  • README.zh-CN.md
  • tsconfig.json

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More tools

JuliusBrussee/
caveman

🪨 why use many token when few token do trick — Claude Code skill that cuts 65% of tokens by talking like caveman

105k
1 add
MemPalace/
mempalace

The best-benchmarked open-source AI memory system. And it's free.

59k
stablyai/
orca

Orca is the ADE for working with a fleet of parallel agents. Run any coding agent with your own subscription. Available on desktop, mobile and remote runtime.

66k

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

132k

Never stop coding. Free MIT AI gateway: one endpoint, 352 providers (150+ free), 1200+ models Kimi, Claude, GPT, Gemini, GLM, DeepSeek, MiniMax. Works with Claude Code, Codex, Cursor, OpenCode, Cline & Copilot. Quota-aware auto-fallback, RTK+Caveman compression saves 15-95% tokens, MCP/A2A, Desktop/PWA. Built by 550+ contributors

64k
headroomlabs-ai/
headroom

Compress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.

71k