npx skills add ...
npx skills add builderio/skills --skill adding-a-skill
Use in the BuilderIO/skills repo whenever adding, updating, publishing, documenting, validating, or wiring a public skill. Covers the repo-local skill files, root catalog docs, plugin metadata, @agent-native/skills dynamic install path, optional managed AGENTS/CLAUDE instruction blocks in ../agent-native/framework, and generated/synced Plan skill gotchas.
npx skills add builderio/skills --skill adding-a-skill
Use this for public skill work in this repo. Keep ordinary skill changes in
skills/<skill-name>/; keep repo-only guidance under .agents/skills/.
skills/<name>/ with
SKILL.md. This is the common case. @agent-native/skills discovers these
dynamically from BuilderIO/skills@main, so there is no framework registry to
edit just to make npx @agent-native/skills@latest add --skill <name> work.AGENTS.md / CLAUDE.md line when users pass
--update-instructions. These need one extra framework change; see
"Managed Instruction Blocks" below.../agent-native/framework/packages/core/src/cli/skills.ts and
../agent-native/framework/packages/skills/src/built-in-apps.ts.visual-plan and visual-recap have generated/synced copies
between this repo and ../agent-native/framework. Do not treat them like a
standalone prose folder.SKILL.md is generated from Agent Native because
the instructions and local Screen Memory tools share one privacy contract.
Keep the human README here; use npm run sync:agent-native-skills for the
generated skill instead of editing it by hand.Create or update skills/<skill-name>/SKILL.md.
Add skills/<skill-name>/README.md when the skill should appear in the
public catalog. This repo intentionally uses READMEs for public skill pages.
If the collection positioning changes, update root README.md,
.codex-plugin/plugin.json, .claude-plugin/plugin.json, and package.json
descriptions.
Keep the skill concise. Put only essential agent instructions in SKILL.md;
avoid extra docs unless they directly support the skill.
Validate with:
Smoke-test install discovery locally before claiming the CLI path works:
Run npm run check. If it fails on visual-plan / visual-recap sync while
the change is unrelated, report that specifically instead of rewriting those
skills casually.
For a plain public skill, the install path is dynamic:
../agent-native/framework/packages/skills/src/index.ts sets
DEFAULT_SKILLS_SOURCE = "BuilderIO/skills".
It materializes that repo, reads plugin manifests via resolveSkillsRoot, and
discovers every skills/*/SKILL.md through discoverSkills.
Therefore a new folder under skills/<name>/ is enough for:
No @agent-native/core built-in registry change is needed unless the skill is
app-backed or needs custom install behavior.
If the skill should affect AGENTS.md / CLAUDE.md through
--update-instructions, update the framework wrapper:
Add a concise line in
../agent-native/framework/packages/skills/src/index.ts inside
instructionContentForSkill(skillName).
Add or update tests in
../agent-native/framework/packages/skills/src/index.spec.ts.
Run:
Use this for durable behavior rules like quick-recap, efficient-fable,
stay-within-limits, and likely docs-first behavior such as
read-the-damn-docs.
If a skill needs hosted tools, auth, MCP registration, local-files mode, or special install flags, inspect the framework before editing:
../agent-native/framework/packages/core/src/cli/skills.ts../agent-native/framework/packages/skills/src/built-in-apps.ts../agent-native/framework/packages/skills/src/sync-with-core.spec.tsKeep the core and standalone @agent-native/skills MCP descriptors in sync.
visual-plan, visual-recap, and rewind are special:
npm run check compares those copies and can fail for drift
unrelated to a new plain skill.sync-plan-marketplace, sync-workspace-skills, and skills.sync.spec.ts.SKILL.md is generated from
packages/core/src/cli/skills-content/rewind-skill.ts. Its public README is
preserved as an overlay. The plain-copy installer cannot configure Rewind's
local MCP connection; public setup docs must use @agent-native/skills or
@agent-native/core.skills/ directory must carry an
always-on setup directive: invoking Rewind with Clips absent asks permission
before opening the official install flow, never installs or enables capture
silently, and keeps Rewind unavailable until Core configures the local MCP
connection and screen_memory_status succeeds.When finishing a skill change, tell the user:
@agent-native/skills dynamic install discovery is enough.