<div align="center">
<img src="assets/banner.svg" alt="ez-skills" width="880"/>
<br/><br/>
[](LICENSE)
[](https://docs.anthropic.com/en/docs/claude-code/overview)
[](#skills)
[](#brainrotifier)
Claude Code skills by [Eric Zou](https://github.com/EricJujianZou), installable as a plugin.<br/>
Install once, and every skill added later ships to you automatically.
</div>
## Install
In Claude Code:
```
/plugin marketplace add EricJujianZou/skills
/plugin install ez-skills@ez
```
Prefer a single skill without the plugin? Copy its folder into `~/.claude/skills/`:
```sh
cp -r skills/mentor ~/.claude/skills/
```
## Skills
| Skill | What it does | Trigger it with |
|---|---|---|
| [**mentor**](skills/mentor) | Turns the session into a systems-design mentor who won't hand you the answer | `/mentor` |
| [**brainrotifier**](skills/brainrotifier) | Rewrites AI-slop text into certified gen z brainrot | "brainrotify this", "rizz this up", "deslopify" |
| [**humanizer**](skills/humanizer) | Removes signs of AI writing so text reads like a person wrote it | "humanize this", "de-AI this", "remove the AI tells" |
### mentor
Asking Claude to design a system gets you a design you can't defend. `/mentor` inverts that: you list the requirements and give the architecture, and Claude's job is to interrogate it. It points at the gap (cost, latency, failure modes, idempotency, data model) without filling the gap in, names scope creep and premature abstraction out loud, and parks your tangents in a list so one topic actually closes before the next one opens.
It's a **standing mode**, not a one-shot question. Invoke it once and every turn for the rest of the session runs that way until you say "exit mentor" or "just build it".
The last step is the one that makes it stick: when a topic settles, it writes the locked decision into a design doc, an ADR, or a ticket, so the reasoning survives the chat. You designed it, Claude tickets it.
Best used before you write any code, on the kind of problem where being wrong is expensive.
### brainrotifier
LLM slop words are deterministic tells, so brainrotifier patches them with a different, funnier set of deterministic tells. `delve into` becomes `lock in on`. `a testament to human ingenuity` becomes `humanity is so him`. Em dashes do not survive.
**Before:**
> In conclusion, this innovative framework serves as a testament to the team's meticulous engineering — a true game-changer in the ever-evolving landscape of web development.
**After (rizz 5):**
> anyways that's the tea, this him-coded framework is proof they're him... the team's sweaty engineering is a different breed in the patch-notes-every-week web dev meta.
Supports `rizz level 1-10`:
| Level | Mode |
|---|---|
| 1–3 | subtle patch. Word swaps only, the humor is the register clash |
| 4–6 | standard. Swaps plus structural slop removal (em dashes, "it's not X, it's Y") |
| 7–8 | committed. Gen z register rewrite, "ngl", "fr", "no cap" |
| 9–10 | terminal brainrot. Skibidi is on the table, grammar optional |
Meaning is always preserved. It's a translation layer, not a shredder.
Also ships [`scripts/exact_swap.py`](skills/brainrotifier/scripts/exact_swap.py), a deterministic regex pass for bulk files. The misfires are a feature.
### humanizer
The serious sibling. A writing editor that finds and removes signs of AI-generated text, built on a tiered taxonomy derived from Wikipedia's ["Signs of AI writing"](https://en.wikipedia.org/wiki/Wikipedia:Signs_of_AI_writing): **forensic** (model leakage like `oaicite` and `[Your Name]` placeholders, always on), **strict** (corporate slop, negative parallelism, em dashes, fake punchlines, on by default), and **aesthetic** (contested rules like the rule of three, opt in, because banning those flags Hemingway as AI).
It doesn't just strip tells: a mandatory self-critique loop and "human fingerprints" checklist (specific numbers, named entities, sensory detail, mixed feelings) keep the result from being sterile in the other direction. Supports voice calibration against a sample of your own writing, and a `--platform linkedin` pre-publish audit.
## Why a plugin instead of copy-pasting a .md?
A skill is just a folder with a `SKILL.md`. The plugin wrapper (`.claude-plugin/`) exists so you install once and get updates + new skills for free, instead of re-copying folders every release.
## Roadmap
More skills are coming. Star the repo to catch them when they land, or open an issue if there's a skill you wish existed.
## License
[MIT](LICENSE)