- Python 64.9%
- Shell 35.1%
| .agents/plugins | ||
| .claude-plugin | ||
| docs | ||
| plugins | ||
| scripts | ||
| template | ||
| xcode-skills | ||
| .gitignore | ||
| README.md | ||
Skills
Portable Agent Skills distributed as six plugins for Claude Code and Codex. Both hosts load the same skill directories; only their plugin and marketplace manifests are separate.
| Plugin | Contents |
|---|---|
engineering-skills |
Review, diagnosis, architecture, prototypes, setup, research, and delivery |
productivity-skills |
Grilling, handoffs, teaching, re-pitching, and writing for agents |
swift-skills |
Swift concurrency, testing, SwiftUI, symbol documentation, and DocC |
rust-skills |
Idiomatic Rust development guidance |
web-skills |
Distinctive frontend design guidance |
personal |
Personal workflows, including Mela recipe creation and editing |
Install
Add this repository as a marketplace, then install only the plugins you want.
Claude Code:
claude plugin marketplace add /path/to/skills
claude plugin install swift-skills@noahs-agent-workspace
Codex:
codex plugin marketplace add /path/to/skills
codex plugin add swift-skills@noahs-agent-workspace
For a hosted repository, replace /path/to/skills with its owner/repo identifier.
Validate
claude plugin validate . --strict
claude plugin validate ./plugins/swift-skills --strict
Create a skill
Run the interactive generator:
./scripts/new-skill.py
It asks which plugin should contain the skill, followed by its purpose, activation context,
optional resource directories, license, and compatibility requirements. Pass
--plugin engineering, --plugin productivity, --plugin swift, --plugin rust, --plugin web,
or --plugin personal to select the destination non-interactively. Use --output-dir <path> for a
custom parent directory.
After creation, replace the TODOs in SKILL.md and validate the result:
skills-ref validate plugins/<plugin-name>/skills/<skill-name>
Link skills directly
Marketplace installation is the normal path. For standalone local development, symlink every individual skill into Claude Code and Codex:
./scripts/link-skills.py
Link only one agent, preview changes, or replace stale symlinks:
./scripts/link-skills.py claude
./scripts/link-skills.py codex --dry-run
./scripts/link-skills.py all --replace
The defaults are ~/.claude/skills and $CODEX_HOME/skills (falling back to
~/.codex/skills). Use --claude-dir or --codex-dir to override them. Existing real files and
directories are never replaced.