SKILL.md
Push Skills to GitHub
When to Use
- Use when skill changes are ready to commit and push to the configured skills repo.
- Use when the user asks to save or publish skill updates after validation.
For committing any skill change to the user's private skills repo, git root ~/.agents (this is also the canonical skill folder; .claude and .pi/agent/skills symlink to ~/.agents/skills). Pushes here auto-publish a sanitized public mirror to davidondrej/skills — never push directly to that public repo.
Use this after creating or editing a skill. If the skill is distributed to all agents, do that first (distribute-skill-to-all-agents), then run this to push the canonical copy.
Steps
Not in cmux? (no $CMUXWORKSPACEID): skip the cmux pane steps — just run the git commands from step 2 directly in any available terminal, then verify the push output.
- Open a fresh cmux pane in the current workspace, no focus steal:
``bash cmux new-pane --type terminal --direction right --workspace "$CMUXWORKSPACEID" --focus false cmux list-panes --workspace "$CMUXWORKSPACEID" # note the NEW pane + its surface ref ``
- Stage, commit, push in
~/.agents(send to the new pane's surface):
``bash cmux send --surface surface:NEW 'cd ~/.agents && git add -A && git commit -m "<concise message>" && git push' cmux send-key --surface surface:NEW enter ``
- Verify the push landed:
``bash sleep 2 cmux read-screen --surface surface:NEW | tail -15 # expect "main -> main" ``
- Close the pane once confirmed:
``bash cmux close-surface --surface surface:NEW cmux list-panes --workspace "$CMUXWORKSPACEID" # confirm the pane is gone ``
Notes
- Always run git from
~/.agents(the repo root), not~/.agents/skills. - Write a concise, specific commit message describing the skill change.
- Only push to GitHub when the user asks. Don't push speculatively.
Example
User request:
Validate the changed skills, review the diff, commit them with a focused message, and push the topic branch.
Limitations
- Adapted from
davidondrej/skills; verify local paths, tools, credentials, and agent features before acting. - For commands, remote access, scheduling, browser automation, or file-changing workflows, get explicit user approval and confirm the target environment first.