Use when creating a new builtin skill for Crush, editing an existing builtin skill (internal/skills/builtin/), or when the user needs to understand how the embedded skill system works. --- # Builtin Skills Crush embeds skills directly into the binary via `internal/skills/builtin/`. These are always available without user configuration. ## How It Works - Each skill lives in `internal/skills/builtin/<skill-name>/SKILL.md`. - The tree is embedded at compile time via `//go:embed builtin/*` in `internal/skills/embed.go`. - `DiscoverBuiltin()` walks the embedded FS, parses each `SKILL.md`, and sets paths with the `crush://skills/` prefix (e.g., `crush://skills/jq/SKILL.md`). - The View tool resolves `crush://` paths from the embedded FS, not disk. - User skills with the same name override builtins (last occurrence wins in `Deduplicate()`). ## Adding a New Builtin Skill 1. Create `internal/skills/builtin/<skill-name>/SKILL.md` with YAML frontmatter (`name`, `description`) and markdown instructions. The directory name must match the `name` field. 2. No extra wiring needed — `//go:embed builtin/*` picks up new directories automatically. 3. Add a test assertion in `TestDiscoverBuiltin` in `internal/skills/skills_test.go` to verify discovery. 4. Build and test: `go build . && go test ./internal/skills/...` ## Existing Builtin Skills | Skill | Directory | Description | | -------------- | ----------------------- | ------------------------------------------ | | `crush-config` | `builtin/crush-config/` | Crush configuration help | | `crush-hooks` | `builtin/crush-hooks/` | Authoring, configuring and debugging hooks | | `jq` | `builtin/jq/` | jq JSON processor usage guide |
Guide for creating builtin MCP tools in LibrAgent. Use when creating a new builtin MCP server, adding tools to existing builtin servers, refactoring tool implementations to follow best practices, or auditing tool compliance with the Tool Design Manifesto v2.1.
Skill files are scattered across GitHub and communities, difficult to search, and hard to evaluate. SkillWink organizes open-source skills into a searchable, filterable library you can directly download and use.
We provide keyword search, version updates, multi-metric ranking (downloads / likes / comments / updates), and open SKILL.md standards. You can also discuss usage and improvements on skill detail pages.
Sort by downloads/likes/comments/updated to find higher-quality skills.
4. Which import methods are supported?
Upload archive: .zip / .skill (recommended)
Upload skills folder
Import from GitHub repository
Note: file size for all methods should be within 10MB.
5. How to use in Claude / Codex?
Typical paths (may vary by local setup):
Claude Code:~/.claude/skills/
Codex CLI:~/.codex/skills/
One SKILL.md can usually be reused across tools.
6. Can one skill be shared across tools?
Yes. Most skills are standardized docs + assets, so they can be reused where format is supported.
Example: retrieval + writing + automation scripts as one workflow.
7. Are these skills safe to use?
Some skills come from public GitHub repositories and some are uploaded by SkillWink creators. Always review code before installing and own your security decisions.
8. Why does it not work after import?
Most common reasons:
Wrong folder path or nested one level too deep
Invalid/incomplete SKILL.md fields or format
Dependencies missing (Python/Node/CLI)
Tool has not reloaded skills yet
9. Does SkillWink include duplicates/low-quality skills?
We try to avoid that. Use ranking + comments to surface better skills: