skill-cli

A high-performance AI Agent Skill Engine. Stores, searches, and fetches Markdown skills dynamically via an embedded SQLite FTS5 database to save context tokens.

Documentation

skill-cli

A high-performance, open-source Rust AI Agent Skill Engine.

skill-cli is a single statically-linked binary that acts as a centralized skill store for AI agents and human developers. It provides:

  • A CLI for syncing, searching, and managing skills stored in a local SQLite database.
  • An MCP server (over stdio, JSON-RPC 2.0) that exposes clean, token-efficient tools for LLMs and agents to search, fetch, and update skills without clogging context windows.

Features

  • ⚑ Millisecond FTS5 search β€” BM25-ranked full-text search powered by SQLite's built-in FTS5 engine, no external search infrastructure required.
  • πŸ—„οΈ Embedded SQLite β€” Zero-config, single-file database (~/.config/skills/skills.db). Statically compiled, no system SQLite installation needed.
  • πŸ€– MCP-native β€” Implements the Model Context Protocol (2024-11-05) over stdio. Compatible with Claude Desktop, Antigravity, and any MCP host.
  • πŸ“ Filesystem sync β€” Import any directory of .md files with YAML frontmatter in one command.
  • πŸ¦€ Pure Rust β€” Single binary, no runtime, no daemon, no network service to manage.

Quick Start

Install

Windows (PowerShell):

irm https://raw.githubusercontent.com/JohnnytheShark/skill-cli/main/install.ps1 | iex

macOS / Linux:

curl -fsSL https://raw.githubusercontent.com/JohnnytheShark/skill-cli/main/install.sh | bash

The binary is installed to ~/.skill-cli/bin/ and added to your PATH automatically. Restart your terminal after installing, then verify:

skill-cli --version

Build from Source (advanced): Requires the Rust toolchain.

git clone https://github.com/JohnnytheShark/skill-cli.git
cd skill-cli
cargo build --release

Sync skills from a directory

skill-cli sync --dir ./my-skills

Each .md file becomes a skill. Frontmatter provides the name and description:

---
name: Git Bisect
description: Use binary search to find the commit that introduced a bug
---

# Git Bisect
...

Search from the terminal

skill-cli search "async runtime"
skill-cli list

Run the MCP server

skill-cli serve

Point any MCP-compatible agent at this binary and it will expose three tool groups: skills_*, agents_*, and collections_*.


CLI Reference

CommandDescription
skill-cli serveStart the MCP JSON-RPC 2.0 server over stdio
skill-cli sync --dir <PATH> [--prune]Sync .md files in a directory into SQLite (optional --prune deletes removed files)
skill-cli search <QUERY> [--collection <NAME>]Full-text search the skill index
skill-cli listList all indexed skills
skill-cli remove <ID>Delete a single skill by ID
skill-cli remove-bulk <ID...>Delete multiple skills by ID
skill-cli purge --yesDelete all skills from the database and rebuild FTS index
skill-cli export --dir <PATH> [--ids ...] [--query ...]Export skills as sync-compatible .md files

MCP Tools

ToolInputOutput
skills_search{ "query": "...", "collection": "...", "limit": 5 }Array of { id, name, description } metadata
skills_fetch{ "id": "..." }Raw Markdown content string
skills_upsert{ "id", "name", "description", "content", "collections" }{ "status": "success", "id": "..." }
skills_delete{ "id": "..." }{ "status": "success", "deleted": bool, "id": "..." }
skills_delete_bulk{ "ids": ["..."] }{ "status": "success", "deleted": number }
skills_export{ "ids"?: [...], "query"?: "...", "collection"?: "...", "limit"?: 200 }JSON array of complete { id, name, description, content } objects

Connecting to an Agent

Add to your mcp_config.json:

{
  "mcpServers": {
    "skill-engine": {
      "command": "skill-cli",
      "args": ["serve"]
    }
  }
}

Documentation

Full DiΓ‘taxis documentation is in the docs/ directory:

TypeContents
TutorialStep-by-step introduction for new users
How-to GuidesPractical guides for specific tasks
ReferenceComplete CLI, MCP, schema, and format specs
ExplanationArchitecture, design decisions, and concepts

Development

cargo check      # Verify compilation
cargo clippy     # Lint
cargo test       # Run unit tests
cargo build --release  # Optimised build

License

Copyright 2026 Johnny Orellana

Licensed under the Apache License, Version 2.0.

You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0

See NOTICE for required attribution notices.


Contributing

Contributions are welcome! Please read CONTRIBUTING.md before opening a pull request.