Knowledge

One Source of Truth for Your Skills: Iterate Daily, Break Nothing

One Source of Truth for Your Skills: Iterate Daily, Break Nothing

Cover: One Source of Truth for Your Skills — iterate daily, break nothing

If you build AI agent Skills, you’ll hit the loop: the Skill isn’t mature yet, so you tweak it daily. Open-source installers already solved distributing one Skill across many agents. The leftover pain is the copy round-trip between your repo and the installed directory. Symlink the install to the repo and one edit updates everything.

The real pain: the repo↔install copy round-trip

Open-source installers (like npx skills) install a Skill into one runtime directory (e.g. ~/.agents/skills) and symlink the rest — multi-agent sync is solved. But they don’t close the seam between your repo (the single source of truth) and the installed directory:

The more immature and fast-moving the Skill, the more frequent that manual copy — and the easier drift becomes.

skill-manager doesn’t copy a Skill into each runtime. It creates a symlink from each runtime’s skills/ back to the real repo directory. You edit once, in the repo; every runtime sees it on next load — no copy-back, no reinstall.

# Link a local Skill into all agent runtimes (symlinks only, no copy)
python <skill-path>/scripts/manage.py add /path/to/local/skill

# Unlink later — removes the link, keeps the source
python <skill-path>/scripts/manage.py remove <skill-name>

The real Skill directory (e.g. kylinlab.tech.skills/skills/<name>/) is the only source of truth. skill-manager links 8 runtimes: ~/.trae-cn, ~/.claude, ~/.codebuddy, ~/.qoder, ~/.qoder-cn, ~/.lingma, ~/.zcode, ~/.agents.

The key distinction: an installer’s install is a copy (two edit locations); skill-manager’s install is a link (one edit location, two names for the same file).

Why it’s safe to thrash daily

Result: the copy round-trip goes to zero

Dimension Copy approach Symlink approach
repo↔install copy tax every time 0
drift risk high 0
reinstall round-trip frequent gone
uninstall safety afraid to delete source link only removed

Reproduction checklist

Conclusion & further reading

Local evolving Skills → skill-manager (install = symlink). External stable Skills → npx skills (install = copy). They’re a division of labour, not competitors. Next time a Skill enters its daily-change phase, link it to a single source of truth first — because the install is the repo’s link, one edit updates the repo and every agent together.

Open source:

📖 阅读中文版本

← Back to all articles