Take an OpenSearch search application from requirements to a running cluster — BM25, dense and sparse vectors, hybrid retrieval, agentic search and RAG, with relevance evaluation built in.
SkillHone
Summary
Tencent's skill-evolution harness: it rewrites a whole skill folder — SKILL.md, scripts and references together — and lands every decision as a real Git issue, PR and wiki entry you can review.
Features
- Optimises the whole skill folder — SKILL.md, scripts/ and references/ in one atomic PR
- Every decision lands as a real Git issue, branch, commit, PR or wiki entry
- Runs on a local Forgejo instance, so the audit trail never leaves your machine
- Hard eval/skill split enforced by code paths and filesystem permissions, not prompt convention
- Ships as standard agentskills.io skills — no per-runtime adapter to maintain
- One LiteLLM gateway config spans Anthropic, OpenAI, DeepSeek, Gemini and more
- Separate credentials and endpoints for the improver, executor and synthesis stages
Install This Skill
Add this skill to your favorite AI agent in a few steps.
Skill Content
Usage Instructions
Learn how to use this skill with different AI agents.
Example Usage
/skillhone optimize my travel-qa skill for 5 iterations, then evaluate it against the latest probe split.
Description
Most "self-improving skill" projects hand an LLM a SKILL.md string and ask it to write a better one. SkillHone, from Tencent, changes both the unit of work and the record of it.
The unit of change is the whole skill folder. A single merged pull request can rewrite SKILL.md, add a helper under scripts/, and drop a new reference page under references/ as one atomic change, gated by a regression suite. Prompt-only optimisers cannot express that, which matters once a skill's behaviour depends on the code it shells out to as much as on its instructions.
The record is a real Git server. Every step in the loop lands as an issue, branch, commit, pull request or wiki entry on a Forgejo instance that can run entirely on your own machine. When you want to know why a skill changed, you open a UI reviewers already know how to read and the whole decision path is sitting there — no bespoke log format to learn.
What holds it together
- A hard eval/skill split enforced by code paths and filesystem permissions rather than prompt convention, so held-out probe tasks are much harder to leak into the skill's own instructions by accident.
- No runtime adapter. SkillHone ships as a bundle of standard agentskills.io skills, so any runtime that already supports skills supports it — Claude Code, Codex, OpenClaw, Hermes, and whatever comes next.
- A unified LiteLLM gateway (August 2026) means one
provider/modelstring covers Anthropic, OpenAI, DeepSeek, Gemini and other providers, and the improver, executor and synthesis stages can each hold independent credentials and endpoints.
Installing and running it
Installation is conversational: paste the install prompt into any skill-capable assistant and it fetches the guide, detects your runtime, and places the skillhone skill correctly. Then invoke it like any skill — /skillhone optimize my travel-qa skill for 5 iterations — and the top-level skill dispatches to the right sub-skill. A companion skillhone-prd sub-skill drafts a PRD for a new skill before the first optimisation pass.
One caution worth heeding: some workflows use bypass mode and local exec/subprocess calls during validation. Run it in a sandbox, container, VM or disposable clone — not in a directory holding credentials, production data or unrelated repositories.
Requires Python 3.10+, git, and a Forgejo instance or local filesystem. MIT licensed; the method is written up in arXiv 2606.08671.
Related Skills
Auth0's official agent skill: a router that detects your framework and intent, then loads the right Auth0 guidance for login, MFA, Organizations, tenant audits, debugging or provider migration.
Redis' own guidance for FT.CREATE schema design, FT.SEARCH / FT.AGGREGATE / FT.HYBRID, HNSW vector similarity and RAG retrieval pipelines.
Supabase's official skill covering Database, Auth, Edge Functions, Realtime, Storage, Vectors, Cron and Queues — with a hard rule to verify against the live changelog before writing code.