Skip to content

Repository files navigation

MaGi's Skills

License CI skill-land on npm

Agent skills that do one job each and say plainly what they do not do. Every skill is a plain SKILL.md with no runtime, no scripts and no dependencies, so the same file works on every agent that reads skills. Install the whole set as a Claude Code plugin, or copy a single file.

Works with Claude Code, OpenAI Codex, and Antigravity.


SkillsInstallLayoutskill-landAdding a SkillDesign Rules


Skills

Skill What it answers Where it lives
dep-egress What does this dependency send off the machine, to whom, is it disclosed, and can it be turned off? this repo
evidence-loop Has this experiment's evidence actually been verified, reviewed and closed before the hypothesis conclusion is trusted? this repo
skillmama Which library, SDK or tool should I use for my stack, and is it safe? Magithar/SKILLmama

The two compose. SKILLmama ranks candidates on compatibility, popularity, maintenance and simplicity. dep-egress runs on the winner and answers the question ranking says nothing about.

evidence-loop is the one skill here that isn't a self-contained file: its SKILL.md only tells an agent how to drive a companion Rust CLI, which enforces the actual state machine. Install it with cargo install evidence-loop (crates.io), or build it from this repo with cargo build --release --manifest-path tools/evidence-loop/Cargo.toml; either way, put the resulting binary on PATH. See docs/evidence-loop/protocol.md for why the enforcement needed to live outside the prompt.

A marketplace can list plugins that live in other repos, so SKILLmama keeps its own repository, issues and release history while still being installable from here.


Install

Claude Code

Add the marketplace once, then install what you want:

/plugin marketplace add Magithar/skills
/plugin install magithar-skills@magithar
/plugin install skillmama@magithar

/plugin marketplace update pulls new and updated plugins later.

Plugin Contains
magithar-skills every skill under skills/ in this repo
skillmama SKILLmama, hosted in its own repo

One skill, any agent

Skills are plain files, so a copy is a valid install. Only the directory differs:

Agent Global skills directory
Claude Code ~/.claude/skills/<name>/SKILL.md
OpenAI Codex ~/.codex/skills/<name>/SKILL.md
Antigravity ~/.gemini/config/skills/<name>/SKILL.md

Antigravity reads three global directories — ~/.gemini/config/skills, ~/.gemini/skills and ~/.gemini/antigravity-cli/skills — verified live against agy 1.1.27 on 2026-09-05 by planting a canary skill in each. Any one of them works; ~/.gemini/config/skills is the one to prefer.

mkdir -p ~/.codex/skills/dep-egress
curl -sL https://raw.githubusercontent.com/Magithar/skills/main/skills/engineering/dep-egress/SKILL.md \
  -o ~/.codex/skills/dep-egress/SKILL.md

Restart Antigravity after installing; it reads skills at startup.

npx skills add ... -g currently writes to ~/.agents/skills/ for Codex and Antigravity, which neither agent reads, and still exits 0. Verified against skills@1.5.22 on 2026-08-08. Tracked upstream in vercel-labs/skills#1060, fix pending in PR #1483.

The other half is on Antigravity's side: ~/.agents/skills is not a global search path there. Confirmed live on agy 1.1.27 (2026-09-05) — it appears only when its parent is the active workspace (agy --add-dir $HOME), which is project-local behaviour. Tracked in antigravity-cli#103, open.


Layout

skills/
  engineering/<name>/SKILL.md
  productivity/<name>/SKILL.md
  in-progress/<name>/SKILL.md     not published to the plugin manifest
  deprecated/<name>/SKILL.md      not published to the plugin manifest
.claude-plugin/
  marketplace.json                makes this repo an installable marketplace
  plugin.json                     lists every published skill
.claude/skills/<name>/SKILL.md    symlink, so the skills work inside this repo too
scripts/sync-plugin.mjs           regenerates plugin.json and the symlinks from disk
tools/skill-land/                 CLI: install a skill, then prove it landed

tools/ sits outside skills/, so nothing in it is scanned or published to the plugin manifest.


tools/skill-land

Installs a skill to the directory the agent actually reads, then verifies the file landed and exits non-zero if it didn't. Built because npx skills add -g reports success while writing somewhere Codex and Antigravity never look.

npx skill-land Magithar/SKILLmama --for codex,antigravity   # install, then verify
npx skill-land Magithar/SKILLmama --for codex --verify      # audit an existing install
npx skill-land ~/.agents/skills --for antigravity --verify --all   # audit everything you have

--verify --all answers a question nothing else in the ecosystem does: are the skills you already installed where the agent actually reads, whatever put them there? A skill is a directory, so it checks every file — impeccable ships 148, and an install holding only SKILL.md leaves every node .../scripts/context.mjs reference dangling.

It reports differences rather than judging them. An installer that rewrites on install (the skills CLI adapts paths and command prefixes per agent) produces files that are correct and still differ from source; skill-land says so and leaves the call to you.

Published as skill-land on npm. Source and docs: tools/skill-land/.


Adding a skill

  1. mkdir -p skills/<category>/<name> and write SKILL.md with name: and description: frontmatter.
  2. node scripts/sync-plugin.mjs
  3. Commit the skill, the updated plugin.json, and the new .claude/skills symlink.

plugin.json is generated, never hand-edited. A manifest maintained by hand drifts from the filesystem silently, which is the same class of bug as keeping multiple copies of one file. CI runs sync-plugin.mjs --check and fails if they disagree.

The script also maintains .claude/skills/<name>/SKILL.md as a symlink to each skill, so the skills in this repo are usable while working on this repo. Claude Code only scans .claude/skills, not skills/<category>, so without the link a skill silently is not there. The script creates, repairs and removes those links to match disk, and refuses to overwrite anything under .claude/skills that is not a symlink. Windows contributors need core.symlinks=true; without it the links fail to create, which costs a local slash command and nothing else.

It also adds magithar-skills to marketplace.json on the first skill, and removes it again if the last one goes. Publishing a plugin entry that installs nothing is worse than not listing it: users get something that looks like it worked and did nothing.

Skills under in-progress/ and deprecated/ are ignored by the manifest, so you can park work in the repo without shipping it.


Design rules

Every skill here follows the same four rules. They are what makes a skill trustworthy rather than merely present in a directory.

One question per skill. A skill that answers everything gets loaded for everything and is reliably good at nothing. Each SKILL.md opens with the single question it answers.

Say what it is not for. Every skill carries an explicit do-not-activate list naming the adjacent jobs it will not do, and which kind of skill does them instead. Scope stated only as inclusion always drifts outward.

Evidence, or say you could not verify. Findings cite a file and a line. A conclusion that cannot be traced to something read is reported as unverified, and "I found nothing" is stated as a claim about the search rather than about the thing searched.

No secrets in output. Skills that read real projects report locations and field names, never values. A report that copies live data into itself has caused the problem it was asked to detect.


Related

  • SKILLmama, capability discovery engine. Kept in its own repo because its published articles and skills.sh listing point there.
  • skill-land on npm.
  • CHANGELOG.md for skills and repo tooling. skill-land versions separately and has its own.

License

MIT

About

Magithar's agent skills, installable as a Claude Code plugin. Plus skill-land: install a skill where the agent actually reads, then prove it landed.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages