Individual skill
programming
Applies strict, modern language practice (typed errors, exhaustive match, tests that can fail) for Python, Rust, TypeScript, JavaScript, and Go. Use for work on .py, .rs, .ts, .js, or .go files, and whenever a test or spec file is written, reshaped, reviewed, or deleted: the four-question test authoring gate and the junk-test classes live here.
plugins/omo/skills/programming/SKILL.md
Source commit 49104cf38aa10f0a55aabf33aa675118d2873fc1
What was checked
- Matches the observed repository HEAD
- Yes
- Scanner rules are current
- Yes
- Repository scan complete
- No
- Skill scan complete
- No
- Observed behavior
- Network or broad shell
- Last checked
- Nov 3, 2026
These are observations at the recorded commit, not a guarantee of safety. Review the source before running it.
Install this skill
Choose an agent in your Stack or copy a command below. Commands fetch the pinned commit and copy only this skill directory. Existing destinations are refused. Copying a command does not install anything.
An install command is unavailable: current rules, complete repository and skill scans, an eligible behavior level and a permitted license are required.
Repository context
- Repository stars (not skill ratings)
- 3,889
- Repository last updated
- Nov 6, 2026
- License
- MIT
Observed agent integration: No specific integration evidence. Standard SKILL.md installation does not imply verified compatibility.
- ai Repository topic
- ai-agents Repository topic
- claude Repository topic
- claude-code Repository topic
- cli Repository topic
- codex Repository topic
- developer-tools Repository topic
- lazy Repository topic
- oh-my-openagent Repository topic
- omo Repository topic
- engineering Derived category
- testing Derived category
Files and excerpt
File metadata and permitted, redacted excerpts come from the recorded scan. Source links are pinned to that commit.
Browse files
SKILL.mdcore · 33,700 bytesSKILL.mdcore · 33,700 bytesSKILL.mdcore · 33,700 bytesSKILL.mdcore · 33,700 bytesSKILL.mdcore · 33,700 bytesagents/openai.yamlasset · 46 bytesreferences/code-smells.mddoc · 14,108 bytesreferences/go/README.mddoc · 7,579 bytesreferences/go/backend-stack.mddoc · 16,952 bytesreferences/go/bootstrap.mddoc · 9,081 bytesreferences/go/bubbletea-v2.mddoc · 11,584 bytesreferences/go/cobra-stack.mddoc · 11,801 bytesreferences/go/concurrency.mddoc · 11,135 bytesreferences/go/data-modeling.mddoc · 12,272 bytesreferences/go/error-handling.mddoc · 10,383 bytesreferences/go/golangci-strict.mddoc · 10,258 bytesreferences/go/grpc-connect.mddoc · 10,520 bytesreferences/go/libraries.mddoc · 14,059 bytesreferences/go/one-liners.mddoc · 5,650 bytesreferences/go/sqlc-pgx.mddoc · 13,023 bytesreferences/go/testing.mddoc · 14,583 bytesreferences/go/type-patterns.mddoc · 9,774 bytesreferences/logging.mddoc · 10,715 bytesreferences/python/README.mddoc · 15,788 bytesreferences/python/async-anyio.mddoc · 14,528 bytesreferences/python/data-modeling.mddoc · 6,768 bytesreferences/python/data-processing.mddoc · 4,266 bytesreferences/python/error-handling.mddoc · 6,123 bytesreferences/python/fastapi-stack.mddoc · 9,458 bytesreferences/python/httpx2-optimization.mddoc · 12,308 bytesreferences/python/libraries.mddoc · 10,820 bytesreferences/python/one-liners.mddoc · 8,060 bytesreferences/python/orjson-stack.mddoc · 13,592 bytesreferences/python/pydantic-ai.mddoc · 8,389 bytesreferences/python/pyproject-strict.mddoc · 9,252 bytesreferences/python/textual-tui.mddoc · 5,261 bytesreferences/python/type-patterns.mddoc · 4,186 bytesreferences/rust-ub/README.mddoc · 9,967 bytesreferences/rust-ub/miri-sanitizers-loom.mddoc · 11,788 bytesreferences/rust-ub/ub-taxonomy.mddoc · 13,568 bytesreferences/rust/README.mddoc · 17,027 bytesreferences/rust/api-design.mddoc · 6,695 bytesreferences/rust/async-tokio.mddoc · 12,922 bytesreferences/rust/axum-stack.mddoc · 14,524 bytesreferences/rust/cargo-strict.mddoc · 10,203 bytesreferences/rust/clap-stack.mddoc · 12,426 bytesreferences/rust/concurrency.mddoc · 14,686 bytesreferences/rust/libraries.mddoc · 17,772 bytesreferences/rust/macros.mddoc · 3,364 bytesreferences/rust/one-liners.mddoc · 7,684 bytesreferences/rust/proptest-insta.mddoc · 14,269 bytesreferences/rust/type-state.mddoc · 13,402 bytesreferences/rust/unsafe-discipline.mddoc · 13,160 bytesreferences/rust/zero-cost-safety.mddoc · 17,347 bytesreferences/testing/README.mddoc · 10,501 bytesreferences/testing/junk-classes.mddoc · 6,299 bytesreferences/typescript/README.mddoc · 10,485 bytesreferences/typescript/backend-hono.mddoc · 21,727 bytesreferences/typescript/bootstrap.mddoc · 7,063 bytesreferences/typescript/data-modeling.mddoc · 5,126 bytesreferences/typescript/error-handling.mddoc · 4,825 bytesreferences/typescript/oxc-lint.mddoc · 7,814 bytesreferences/typescript/tsconfig-strict.mddoc · 3,977 bytesreferences/typescript/type-patterns.mddoc · 5,339 bytesscripts/go/check-no-excuse-rules.shruns · 7,234 bytesscripts/go/new-project.tsruns · 7,012 bytesscripts/go/templates/.editorconfigruns · 206 bytesscripts/go/templates/.golangci.ymlasset · 1,553 bytesscripts/go/templates/AGENTS.md.tmplasset · 845 bytesscripts/go/templates/README.md.tmplasset · 207 bytesscripts/go/templates/Taskfile.ymlruns · 706 bytesscripts/go/templates/ci.ymlasset · 863 bytesscripts/go/templates/config.goruns · 643 bytesscripts/go/templates/gitignoreruns · 99 bytesscripts/go/templates/main.go.tmplasset · 329 bytesscripts/go/templates/run.goruns · 350 bytesscripts/python/check-no-excuse-rules.pyruns · 25,489 bytesscripts/python/new-project.tsruns · 6,940 bytesscripts/python/new-script.tsruns · 4,348 bytesscripts/rust/check-no-excuse-rules.shruns · 7,672 bytesscripts/rust/new-project.tsruns · 6,319 bytesscripts/shared/run-tool.tsruns · 862 bytesscripts/typescript/check-no-excuse-rules.tsruns · 12,777 bytesscripts/typescript/check-test-junk-rules.tsruns · 5,485 bytesscripts/typescript/check-test-junk.tsruns · 5,486 bytesscripts/typescript/mutation-proof.tsruns · 6,476 bytesscripts/typescript/new-project.tsruns · 3,227 bytesscripts/typescript/oxc/.oxfmtrc.jsonasset · 256 bytesscripts/typescript/oxc/.oxlintrc.jsonasset · 1,702 bytesscripts/typescript/oxc/lint/oxlint-plugin/LICENSEruns · 1,070 bytesscripts/typescript/oxc/lint/oxlint-plugin/index.jsruns · 288 bytesscripts/typescript/oxc/lint/oxlint-plugin/no-em-dash-copy.jsruns · 785 bytesscripts/typescript/oxc/lint/oxlint-plugin/require-suppression-reason.jsruns · 2,381 bytesscripts/typescript/oxc/tsconfig.jsonasset · 794 bytes
Read excerpt
# Programming
You are a lazy senior engineer — lazy meaning efficient, never careless. **The best code is the code never written; the code you do write is type-strict, stack-first, async-correct, and architecturally honest about size.**
This skill is an index. The hard per-language rules live under `references/`. Load the language-specific reference **before** writing a single line of code.
---
## PHASE 0 — LANGUAGE GATE (RUN THIS FIRST, EVERY TIME)
**DO NOT WRITE OR EDIT A SINGLE LINE OF CODE BEFORE COMPLETING THIS GATE.**
1. **Identify the language** from the file extension or the user's request.
2. **STOP** and read the matching reference set: