Programming (Multi-Language Coding Standard)
Enforces strict typing, modern toolchains, and TDD discipline whenever Claude writes Python, Rust, TypeScript, or Go.
Dev & CodingAdvanced★ 67,531⑂ 5,507AI score 8/10Last updated: Aug 9, 2026
What it does
This skill is a "lazy senior engineer" rulebook that auto-triggers whenever Claude creates or edits .py, .rs, .ts/.tsx, or .go files.
- Language gate: forces the matching
references/docs to be read before a single line of code is written. - Seven shared axioms: the best code is never written (YAGNI), the type system is your proof system, parse-don't-validate at boundaries, branded primitives (UserId ≠ string), exhaustive variant matching, no speculative defensive layers, and test-driven development.
- Canonical stacks: Pydantic v2/FastAPI, serde+thiserror/axum, Zod/Hono, gin+sqlc+pgx+slog, plus per-domain library tables (HTTP client, ORM, CLI, TUI, logging, config).
- Locked toolchains: uv+basedpyright+ruff, cargo+clippy+miri, Bun+Biome+tsc, gofumpt+golangci-lint v2+nilaway, with ready-made pre-commit gate commands.
- TDD discipline: red→green→refactor order, Given/When/Then structure, unit/integration/E2E pyramid budgets, a mock-avoidance priority ladder, and an anti-pattern table (including a hard ban on asserting natural-language prompt text).
- Code smells + mandatory post-write review: >250 pure LOC per file is a defect, >3 parameters is a smell, redundant post-delete verification is deleted, negative-form names are renamed — and every session ends with a 9-question architectural self-review.
Who it's for
- Polyglot developers tired of inconsistent AI-generated code across languages
- Tech leads who want
any,unwrap, and blanketexcept Exceptioneliminated from the codebase - Anyone who wants TDD actually enforced (test first, minimal mocks, E2E required)
- Solo builders bootstrapping new projects who want toolchain decisions settled once
Usage examples
- New FastAPI endpoint: ask for "a payment webhook receiver" and you get Pydantic v2 boundary parsing,
NewTypeIDs, anyio-based async, and a failing pytest written first. - Go server refactor: open a 400-line handler and the skill flags the 250-LOC ceiling as a defect, proposes a responsibility-based split, and converts bare error strings into typed errors with
%w/errors.Ispluslog/slogstructured logging. - Unsafe Rust review: the moment
*mutorMaybeUninitappears, it additionally loads the rust-ub references and reviews the code against miri/UB soundness criteria.
· · · Install guide · · ·
Install in the Claude app (no terminal)
- Download the ZIP with the button below.
- In Claude, open Settings → Capabilities and turn on 'Code execution and file creation'. (one time)
- Go to Customize → Skills → + → 'Upload a skill' and upload the ZIP.
Install in Claude Code
Let Claude do it — paste this into Claude Code
Install the skill I found on Claude Skill Mart. Copy the packages/shared-skills/skills/programming folder from the GitHub repo code-yeongyu/oh-my-openagent into my ~/.claude/skills/programming/. When it's done, tell me in one line what this skill can do.
Install with a command instead
git clone https://github.com/code-yeongyu/oh-my-openagent.git && mkdir -p ~/.claude/skills && cp -r oh-my-openagent/packages/shared-skills/skills/programming ~/.claude/skills/⚠ This is a third-party skill. Check the source repository before installing.
- Open a terminal (Terminal on macOS; WSL or Git Bash on Windows).
- Clone the repository:
git clone https://github.com/code-yeongyu/oh-my-openagent.git - Create the skills directory:
mkdir -p ~/.claude/skills - Copy the skill in:
cp -r oh-my-openagent/packages/shared-skills/skills/programming ~/.claude/skills/ - Verify the reference docs came along:
ls ~/.claude/skills/programming/references - Start a new terminal, run
claude, then check/skills(or ask "which skills do you have?") to confirmprogrammingis listed. - Try it: with a Python/Rust/TypeScript/Go file in context, ask "refactor this function" — the skill triggers automatically.
- (Optional) If your team's conventions differ (e.g. pnpm instead of Bun), record the exceptions in your project's
CLAUDE.mdso the skill's defaults don't override them.
View source on GitHub ↗License: NOASSERTION