Harness-agnostic agent skills by MotionDevLab. One repo, every harness, free-local-first.
Skills ship as plain folders (skills/<name>/ with SKILL.md + skill.json) that load
unmodified in Claude Code, OpenCode, and OpenClaude. No lock-in, no registry account.
| Skill | Cost | Backend | When to use it |
|---|---|---|---|
laya |
free, local, offline-capable | Ollama preferred, llama.cpp fallback | Default: routing, triage, scoring, guardrail verification |
jev |
very cheap, paid API | TypeSafe native endpoint, Vercel Gateway fallback | Escalation: low confidence, high stakes, multilingual quality gaps |
Routing rule: default to Laya for zero-cost/offline; escalate freely to very-cheap Jev on
low confidence (cost is negligible, so the threshold stays low) or explicit request.
See skills/_shared/decision-contract.md.
Windows (PowerShell):
irm https://raw.githubusercontent.com/MotionDevLab/agent-skills/main/scripts/install.ps1 | iexmacOS / Linux:
curl -fsSL https://raw.githubusercontent.com/MotionDevLab/agent-skills/main/scripts/install.sh | bashWhat it does: detects OS, ensures Python 3.10+, downloads the Laya model weights
(--NoModel skips this), then symlinks-or-copies each skill into every harness it finds
(~/.claude/skills, ~/.config/opencode/skills, ~/.openclaude/skills). Re-running is safe:
already-installed skills are reported, not duplicated. Details: docs/INSTALL.md.
- Copy the template:
templates/new-skill/toskills/<name>/, fill in the TODOs. - Register it in root
skill.jsonand check the installer picks it up (install.ps1 -WhatIf). - Run
scripts/lint-repo.ps1(must PASS) and open a PR. Full guide:docs/ADD-A-SKILL.md.