brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
distribute-skill-to-all-agentsDistribute a skill across configured agent skill folders while respecting local symlink layouts.
Independent GitHub snapshot ยท Automated classification ยท Original documentation governs
The user has 4 agent skill locations on his MacBook. A skill must exist in each (or via symlink) to be discoverable by every agent.
| Agent | Skills Folder | Notes |
|---|---|---|
| Codex / OpenAI Agents | ~/.agents/skills/ | Canonical โ author skills here first |
| Claude Code | ~/.claude/skills/ | Symlink โ ~/.agents/skills/ โ writing to .agents/skills automatically covers Claude |
| Pi Agent | ~/.pi/agent/skills/ | Symlink โ ~/.agents/skills/ โ auto-covered. (Path is /agent/ nested โ NOT ~/.pi/skills/) |
| Hermes Agent | ~/.hermes/skills/ | Independent copy โ the only one needing a manual copy |
~/.agents/skills/<skill-name>/SKILL.md (canonical). Follow effective-agent-skills SKILL.md guidance..claude symlink is intact (one-time check):
ls -la ~/.claude/skills
# Expect: ~/.claude/skills -> ~/.agents/skills
If it's a real directory instead of a symlink, the user has diverged copies โ ask before touching..hermes only (.claude and .pi are symlinks โ already covered):
SKILL=<skill-name>
cp -r ~/.agents/skills/$SKILL ~/.hermes/skills/
for p in ~/.agents/skills/$SKILL ~/.claude/skills/$SKILL ~/.pi/agent/skills/$SKILL ~/.hermes/skills/$SKILL; do
echo "$p: $(wc -c < $p/SKILL.md) bytes"
done
All four numbers must match. If .claude or .pi shows a different byte count, that symlink is broken โ investigate before proceeding.Same flow โ re-copy from ~/.agents/skills/ to .hermes/skills/. The .claude and .pi symlinks update automatically. cp -r overwrites by default; use rsync -a --delete if the skill folder has nested files that may have been removed:
rsync -a --delete ~/.agents/skills/$SKILL/ ~/.hermes/skills/$SKILL/
~/.pi/skills/ is the wrong location. Pi Agent loads from ~/.pi/agent/skills/ only. A skill placed in ~/.pi/skills/ is invisible. If you find skills already there, they're orphans โ confirm with the user before deleting.~/.claude/skills is a symlink, not a folder. cp -r ~/.agents/skills/foo ~/.claude/skills/ will error with "are identical". Skip the explicit Claude copy../.pi/agent/skills/ (or .pi/skills/) inside a repo overrides the global one on collision (later-discovered wins). This skill only handles GLOBAL distribution..pi/agent/skills is a symlink โ .agents/skills. Don't cp into it (errors "are identical"); it auto-syncs. Only .hermes/skills is an independent copy โ don't unilaterally consolidate Hermes into a symlink unless the user asks.SKILL.md must be uppercase../.claude/skills/, ./.pi/agent/skills/, etc. inside the repo, not globally.~/.agents/skills/ and ~/.hermes/skills/.davidondrej/skills; verify local paths, tools, credentials, and agent features before acting.