programming

Enforces language-agnostic conventions for writing, reviewing, and testing source code.

Updated Feb 12, 2026
One-click install
npx skills add https://github.com/gnarea/clone --skill programming-gnarea
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: programming
Source: https://github.com/gnarea/clone/tree/main/sdlc/skills/programming
Command: npx skills add https://github.com/gnarea/clone --skill programming-gnarea

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Codebases drift into inconsistency when naming, error handling, testing, and security decisions are made ad hoc. This Skill gives an AI assistant a single, opinionated rulebook so that every piece of code it writes or reviews follows the same standards regardless of language. ## Core Features & Use Cases - Language-agnostic coding rules: Covers code organisation, function design, naming, data modelling, error handling, reliability, security and privacy, dependencies, performance, tests, and comments. - Context-specific references: Loads additional rules for published libraries, server-side applications, end-user applications, instrumentation, cryptography, and prototypes only when the situation calls for them. - Use Case: Ask the assistant to review a pull request or write a new module, and it will apply conventions such as guard clauses over nesting, result types for expected failures, immutable data models, and real dependencies in tests instead of mocks. ## Quick Start Use the programming skill to review this module and rewrite it so it follows the naming, error handling, and testing conventions.

Frequently Asked Questions about programming

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I enforce consistent coding conventions across a codebase?▼

Apply a single rulebook covering naming, error handling, data modelling, and tests to every change. This Skill encodes such rules, for example imperative function names, result types for expected failures, and immutable types by default.

How should errors be handled in application code?▼

Return failures the caller must reason about as values, and raise programming errors. Always chain the cause, translate third-party errors into the module's own vocabulary, and document whether retrying is likely to help.

Should unit tests use mocks or real dependencies?▼

Prefer real dependencies, including databases and cryptographic operations, with an isolated instance per test run. Confine test doubles to I/O boundaries and non-determinism sources, and never mock your own units to make them testable.

Does this apply to a specific programming language?▼

No, the rules are language-agnostic and apply to any stack. Language- or artefact-specific concerns are handled through optional references for libraries, server-side apps, end-user apps, cryptography, and instrumentation.

When are the cryptography and instrumentation rules applied?▼

They load conditionally: cryptography rules apply when a change selects or invokes a cryptographic primitive or handles keys, and instrumentation rules apply when a change adds or alters logs, metrics, or traces.