My opinionated set of custom skills for AI coding assistants. Feel free to use them.
Compatible with Claude Code, Codex, Cursor, and any agent supporting the Agent Skills standard.
npx skills add emmsixx/skillsTo install a specific skill:
npx skills add emmsixx/skills --skill lecture-notesAdd to your setup script to reproduce across machines:
npx skills add emmsixx/skills --no-confirm| Skill | Description |
|---|---|
| lecture-notes | Transform lecture materials into exam-ready Markdown notes for Obsidian |
| file-uploads | Upload hand-off artifacts to a private Zipline instance and return a raw link |
| file-pr | Open a ready-for-review PR with a clear problem, outcome, and validation |
| babysit-pr | Follow CI and reviews, address real issues, and keep the PR within scope |
| html-communication | Create readable HTML plans, comparisons, and reports, then share a link |
Append “HTML” to a request, for example: “Compare these approaches and recommend one. HTML.”
Install file-uploads alongside html-communication and configure PHOBOS_TOKEN for sharing. Local-only output is also supported.
file-pr and babysit-pr are independently written adaptations of the workflows in Theo's video.
Use them separately or together: “File a PR”, “Babysit PR #123 and fix relevant failures”, or “File and babysit”. Watch-only requests stay read-only. Posting review replies follows the authorization given in the session; merging remains a separate instruction.
These skills require Git and an authenticated GitHub CLI (gh), and can also use available PR monitoring tools. Account selection, commit conventions, and attribution follow your global and repository instructions.
The file-uploads skill uploads files to phobos.m6.rs. Make sure PHOBOS_TOKEN is defined in the agent's environment before using it.
export PHOBOS_TOKEN=your_zipline_token_hereFor audio or video lecture inputs, the lecture-notes skill uses OpenRouter audio transcription. Make sure OPENROUTER_API_KEY is defined in your environment before using those workflows.
export OPENROUTER_API_KEY=your_openrouter_api_key_here