By Osipchuk
Equip Claude Code with reusable agent skills for architectural decision capture, multi-language translation with voice preservation, interactive learning tutorials, codebase onboarding, Socratic problem reflection, adversarial design review, and harsh code critique.
Catch an architectural or technical decision as it is being made and draft an Architecture Decision Record (ADR) in the team's format, leaving explicit TODOs for fields the conversation did not cover. Never writes or commits without explicit confirmation. Use this when the user asks to "draft an ADR", "record this decision", "capture this as an ADR", AND proactively offer it when the conversation shows a commitment pattern — "we'll go with X over Y because Z", "let's standardize on...", "decided to...", "we're choosing..." — paired with a rationale. It assigns the next ADR id, fills what the discussion supports, and flags team-mandatory sections (e.g. regulatory impact, data classification, rollback plan) as TODO when missing. Do NOT use for: exploratory discussion with no commitment ("we might try", "could consider", "what if we"), non-architectural decisions (scheduling, naming, trivial style), or generating product/requirements specs. When unsure whether a real decision was actually made, ask one question rather than draft.
Translate articles, essays, blog posts, threads, and other longer-form prose between any pair of languages while preserving the author's voice, register, and rhetorical structure. Use this whenever the user asks to translate, localize, render, or "give me in [language]" any text longer than a few paragraphs — news articles, op-eds, essays, blog posts, longreads, newsletters, technical writeups, conference transcripts, Twitter/X threads, or non-fiction excerpts. Trigger even when the user does not say the word "translate" explicitly — for example "I need this in English for our investors", "rewrite this for a Russian audience", or "make this readable to a German reader" all count. Do not use for single sentences, UI strings, code-only inputs, or short slogans — those are too small to benefit from this workflow.
Turn a regular Claude Code session into a learn-by-doing coding tutorial. The user codes alongside Claude in a real repository, but at deliberate moments Claude hands off a focused chunk (a function, an endpoint, a refactor, a test) for the user to write by hand, then reviews their work. Maintains a per-repo learning plan and a spaced-repetition log under .claude/learning/ so topics resurface for review at the right time. Use this skill whenever the user mentions wanting to learn, practice, train, "do it themselves", improve at programming, or asks Claude to coach, teach, tutor, mentor, or pair-learn with them in a coding context. Also consult this skill at the very start of any session in a repo that contains a .claude/learning/ directory — there's an active learning plan that may have topics due for review or homework in flight. Trigger phrases include "coach me", "teach me X", "I want to learn Y", "help me practice Z", "let me try it myself", "review what I wrote", "give me a task", "what should I learn next", as well as any signal that the user wants to grow as a developer rather than just ship code.
Onboard a newcomer to THIS codebase, or answer a targeted "how does our X work" question, by walking curated reading lists and synthesizing the mental model — never by guessing. Works out of the box: if a maintainer has committed .onboard/topics.yaml it uses that curated path; if not, it cold-starts from the repo's own authoritative docs (README, CLAUDE.md / AGENTS.md, ARCHITECTURE.md, docs/, the dependency manifest, the entry point) and is explicit about what curated knowledge is still missing. The newcomer never has to create files, run setup, or change code. Use this for "I'm new, help me understand this project", "where do I start", "onboard me", and for "explain our auth flow", "how does our scheduler work", "walk me through our X". Do NOT use for: generic programming or public-library questions, debugging a specific error or stack trace, or writing/modifying code. This skill teaches an existing system; it does not generate documentation or code, and it does not invent gotchas or assert which files are load-bearing beyond what the sources actually say.
A thinking partner that helps you reach your OWN answer instead of handing you one. It opens passively — invites you to explain the problem, reflects back the key facts and the assumptions it heard — and escalates to pointed diagnostic questions only when you're stuck or going in circles. Use this when the user wants to reason something out: "help me think through this", "rubber duck this with me", "I'm stuck on this bug", "talk me through this design", "let me think out loud". Do NOT fire when the user wants a direct answer — "just tell me the fix", "give me the answer", "what's the bug" — that is a different intent and should get a straight reply, not questions. Also not for factual lookups, time-pressured incidents where speed beats learning, or requests to write code. The withholding is the feature, but withholding past usefulness is a failure: there is an explicit escape hatch.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
A library of reusable skills for AI coding agents — plus askill, a small CLI that installs them into your agent's environment.
A skill is a self-contained folder (a SKILL.md plus optional scripts and references) that teaches an agent a repeatable workflow. This repo collects skills under skills/, describes them in a manifest (manifest/registry.json), and ships an installer so any agent — Claude Code first — can pull a skill into ~/.claude/skills/ with one command.
Status: early, under active development. The
askillcore and thelist/info/install/uninstall/wizardcommands are implemented and well-tested; a one-line installer and a Claude Code plugin marketplace are live. The remaining commands (update,outdated,search,validate,self-update) are on the roadmap.
A trusted, first-class install — no permission prompts, no remote-code-execution dance:
/plugin marketplace add Osipchuk/agent-skills
/plugin install skills@askill
That installs the whole library as the skills plugin. Claude picks the right skill by context, or invoke one explicitly as /skills:learning-mode. Non-interactive equivalent: claude plugin marketplace add Osipchuk/agent-skills then claude plugin install skills@askill.
Interactive picker — one command opens a checklist of skills and a scope prompt; check what you want, pick where, Enter:
uvx --from "git+https://github.com/Osipchuk/agent-skills#subdirectory=installer" askill wizard
(Already have the CLI? Just run askill with no arguments.)
Or non-interactively — needs only curl (the script installs uv if it's missing):
# install a skill straight away (user scope -> ~/.claude/skills/):
curl -fsSL https://raw.githubusercontent.com/Osipchuk/agent-skills/main/install.sh | sh -s -- learning-mode
# into the current project instead (-> <cwd>/.claude/skills/):
curl -fsSL https://raw.githubusercontent.com/Osipchuk/agent-skills/main/install.sh | ASKILL_SCOPE=project sh -s -- learning-mode
# or install the askill CLI once, then drive it yourself:
curl -fsSL https://raw.githubusercontent.com/Osipchuk/agent-skills/main/install.sh | sh
askill list
askill install learning-mode
Heads-up: the first install into a project's
.claude/skills/creates that directory; Claude Code doesn't watch a skills directory created mid-session, so restart it (or open a new session) to load the skill.askillprints this reminder when it applies.
Tell it (replace <skill> with the name you want, e.g. toxic-senior-reviewer):
Install the
<skill>skill from the agent-skills library by running this exact command, substituting the skill name I asked for:uvx --from "git+https://github.com/Osipchuk/agent-skills#subdirectory=installer" askill install <skill> --scope user
Note: in Claude Code, use the plugin install above — its default permission mode (rightly) refuses
uvx, since that runs remote code and writes into your~/.claude. Theuvxline is for other agents, or run it yourself in a terminal.
Once installed, askill reads from the published manifest/registry.json by default — no --registry flag needed:
askill # interactive wizard (checklist + scope picker)
askill list # all skills in the manifest (--json for machine output)
askill info learning-mode
askill install learning-mode --scope user
askill uninstall learning-mode --scope user
Implemented: wizard, list, info, install, uninstall — with --scope user|project, --json on the non-interactive commands, deterministic checksum verification, and the spec's conflict handling (already-installed no-op, version conflicts, --force, --dry-run, --no-checksum). Exit codes: 0 ok, 1 user error, 2 system error, 3 conflict.
learning-mode — turn a Claude Code session into a learn-by-doing tutorial with a spaced-repetition review log.article-translator — translate long-form articles and prose between languages while preserving the author's voice, structure, and formatting.toxic-senior-reviewer — code review in the voice of a blunt senior dev: sharp criticism only, curt approval when the code is actually good.Run it from a clone with uv, pointing at the local manifest:
git clone https://github.com/Osipchuk/agent-skills
cd agent-skills/installer
uv sync
npx claudepluginhub osipchuk/agent-skillsReusable agent skills: article-translator, learning-mode, toxic-senior-reviewer.
Ultra-compressed communication mode. Cuts ~75% of tokens while keeping full technical accuracy by speaking like a caveman.
Frontend design skill for UI/UX implementation
Comprehensive UI/UX design plugin for mobile (iOS, Android, React Native) and web applications with design systems, accessibility, and modern patterns
Memory compression system for Claude Code - persist context across sessions
Marketing skills for AI agents — conversion optimization, copywriting, SEO, paid ads, ad creative, and growth
Standalone image generation plugin using Nano Banana MCP server. Generates and edits images, icons, diagrams, patterns, and visual assets via Gemini image models. No Gemini CLI dependency required.