Overview
This skill helps create high-quality skills that are clear, reusable, and maintainable.
It also includes the workflow for syncing OpenCode skill/config changes from MBP to mini using SSH key authentication.
When to Use
- Creating a new skill from scratch
- Improving an existing skill's clarity and trigger quality
- Adding references, templates, and checklists to a skill
- Preparing a skill repo for publishing
- Syncing OpenCode settings/skills to the mini
Skill Quality Standard
Every skill should include:
- Clear trigger scope
- Explicitly state when to use and when not to use
- Outcome focus
- Explain what successful output looks like
- Actionable workflow
- Step-by-step process, not generic advice
- Concrete examples
- Include ready-to-use snippets and patterns
- Safety and constraints
- Call out assumptions, risks, and anti-patterns
Recommended Skill Structure
- Frontmatter:
name,description - Overview
- When to Use / When Not to Use
- Core principles and workflow
- Output contract (how responses should be structured)
- References (templates, checklists, examples)
Use template: references/SKILL_SKELETON.md
Authoring Workflow
- Define a narrow job-to-be-done and explicit trigger phrases
- Draft frontmatter and scope boundaries
- Write operational steps (what to do first, then next)
- Add references for repeated tasks (checklists/templates)
- Validate readability and remove vague language
- Test discoverability by listing installed/available skills
- Sync changes to mini
Use checklist: references/AUTHORING_CHECKLIST.md
Sync Workflow (MBP -> Mini)
Prerequisite: SSH key auth works for scotttolinski@mini.
Push local OpenCode settings + skills:
~/.config/opencode/scripts/sync-opencode-settings.sh push scotttolinski@mini
Pull from mini back to MBP:
~/.config/opencode/scripts/sync-opencode-settings.sh pull scotttolinski@mini
Optional key override:
OPENCODE_SYNC_IDENTITY=~/.ssh/id_ed25519 ~/.config/opencode/scripts/sync-opencode-settings.sh push scotttolinski@mini
Publishing Guidance
- Keep public READMEs client-neutral and machine-neutral
- Avoid personal infrastructure notes in public docs
- Put local environment specifics in private/internal docs or local automation scripts