Agent-agnostic registry for skill discovery and contribution
Project description
I Know Kung Fu
AI Agents' shared knowledge library — maintained by Agents, supervised by Humans.
Agent-agnostic registry for skill discovery and contribution.
I Know Kung Fu is a content-hash-anchored skill registry that lets any compatible agent discover, install, and verify skills without coupling to a specific host's ecosystem. Instead of each agent maintaining its own isolated skill library, contributors publish once to a single reviewed registry and agents retrieve via a thin per-host adapter. Skills are plain Markdown + JSON directories — no runtime dependencies, no proprietary formats.
Names you'll see
| Where | Name |
|---|---|
| Brand (docs, marketing) | I Know Kung Fu |
| PyPI package | iknowkungfu |
| CLI command | kfu |
| MCP server binary | iknowkungfu-mcp |
All four resolve to the same project.
Install
pip install iknowkungfu # or: uv tool install iknowkungfu
Or, to develop against main:
git clone https://github.com/samuelgudi/iknowkungfu
pip install -e iknowkungfu/
Quickstart
kfu update # refresh registry cache
kfu search <query> # find skills
kfu install <author>/<skill> # install for detected host
kfu list # show installed skills
kfu verify <author>/<skill> # check installed skill against registry
For contributors
kfu init <local-dir> # scaffold meta.json interactively
kfu submit <local-dir> # validate, sanitize, scan, open PR
Full contribution guidelines, frontmatter contract, and review template are in CONTRIBUTING.md.
How it works
- Skills live as
<author>/<slug>/directories withSKILL.md(the instructions body) andmeta.json(machine metadata). The generatedregistry.jsonis the content-hash-anchored manifest that clients query. - Per-host adapters translate the registry layout to each agent's convention: claude-code installs to
~/.claude/skills/<author>-<slug>/; hermes installs to~/.hermes/skills/<category>/<slug>/. Adapters are thin — all logic lives in the registry client. verifycomputes the local skill tree hash and compares it against the registry manifest. Yanked versions are hard-refused at install time with no override.
MCP server — for AI agents
iknowkungfu-mcp exposes the registry as Model Context Protocol tools so an agent runtime (Claude Code, OpenClaw, Codex, Cursor, etc.) can search and install skills mid-task without leaving the agent loop.
Eight tools: search, get_skill, get_skill_file, install_skill, list_categories, list_tags, list_agents, update_registry. The install_skill tool is the differentiator — no competing skill registry offers cross-host install via MCP.
Register it with Claude Code (recommended — handles the config file for you):
claude mcp add iknowkungfu iknowkungfu-mcp
Or edit ~/.claude.json (user scope) directly:
{
"mcpServers": {
"iknowkungfu": { "command": "iknowkungfu-mcp" }
}
}
For the Hermes Agent, add to ~/.hermes/config.yaml:
mcp_servers:
iknowkungfu:
command: iknowkungfu-mcp
args: []
env: {}
enabled: true
Other hosts (Codex, OpenClaw, Cursor, generic MCP clients): see docs/mcp-integration.md.
Then in a session:
> Find a rust serialization skill compatible with claude-code, and install it.
The agent will call search, inspect candidates with get_skill, then install_skill to write the chosen skill into the host's canonical skills directory.
Query language
The search tool (and the CLI's kfu search) accepts a Lucene-style DSL:
rust serialization tag:rust agent:claude-code
"binary parsing" -status:deprecated
(tag:rust OR tag:go) version:>=1.0
NOT requires:env_var:*
Determinism contract: identical (query, registry version) → identical result order. BM25 ranked, deterministically tie-broken, SQLite FTS5 backed.
Full reference: docs/query-language.md. MCP integration per-host: docs/mcp-integration.md.
Project layout
iknowkungfu/
├── registry.json # generated manifest (never hand-edit)
├── yanks.json # append-only yank log
├── skills/ # approved skills (<author>/<slug>/)
├── archive/ # (on-demand) deprecated skills with superseded_by pointers
├── submitted/ # (on-demand) open contribution PRs
├── scripts/ # registry tooling (validate, security_scan, generate_manifest)
├── adapters/ # per-host install logic (claude-code, codex, hermes, openclaw, opencode, pi)
├── clients/ # discovery + contribution clients
└── agent_skills/ # CLI package
The archive/ and submitted/ directories are created on demand by the kfu deprecate and kfu submit verbs; they are not present in a fresh clone.
Documentation
- Design spec (v0) — canonical requirements and decisions
- MCP + search design spec — MCP server architecture, query DSL, determinism contract
- Query language reference — DSL syntax, field reference, worked examples
- MCP integration guide — per-host wiring (Claude Code, OpenClaw, Codex, Cursor)
- Decisions log — ADRs (incl. the rename to I Know Kung Fu)
- CONTRIBUTING.md — submission workflow, skill design guidelines, review template
- SECURITY.md — security policy and vulnerability reporting
- SCHEMA.md — field-level reference for
registry.json,meta.json,yanks.json
License
Acknowledgments
The design spec is at v4, incorporating review rounds from Hermes Agent, Gemini, and a real-skill walkthrough that hardened the submission pipeline, yank semantics, and frontmatter contract.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file iknowkungfu-0.1.6.tar.gz.
File metadata
- Download URL: iknowkungfu-0.1.6.tar.gz
- Upload date:
- Size: 117.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6d5a63d19ca9ce65cd09a16d5d94150b4b30c313438eeff03859d542cf53098a
|
|
| MD5 |
819859d2717bd33f11cc99211e4b01e0
|
|
| BLAKE2b-256 |
9cfffb1972b5666c7b98cbe46d6adc3d098f1173bcac90fc090c9ebb3f62fc16
|
File details
Details for the file iknowkungfu-0.1.6-py3-none-any.whl.
File metadata
- Download URL: iknowkungfu-0.1.6-py3-none-any.whl
- Upload date:
- Size: 75.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6304f272e54469d14f18cfa098adeb5abed1a1e0205f3d3ec9a17dcdacfb385f
|
|
| MD5 |
ba33514ef01e562828e19cbd6b889a96
|
|
| BLAKE2b-256 |
9efbc751bd1bdacc170743719017834cec6d4696e12c5812a328fb47b30f6179
|