clean-code

Enforce language-agnostic coding standards for naming, structure, and reuse.

20|5|Updated Nov 30, 2025
One-click install
npx skills add https://github.com/tale-project/tale --skill clean-code-tale-project
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: clean-code
Source: https://github.com/tale-project/tale/tree/main/.claude/skills/clean-code
Command: npx skills add https://github.com/tale-project/tale --skill clean-code-tale-project

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

The language-agnostic baseline for every line in Tale — intention-revealing names, small single-purpose functions, guard clauses, comments that explain why, fail-fast errors, immutability, and the reuse-and-centralization procedure (search packages/ui → shared app/lib → feature before creating anything). Read before writing or changing code in any language — naming, function shape, error handling, comments, and whether to reuse instead of write new. Syntax lives in typescript / react / ui-components / convex.

Core Features & Use Cases

  • Intention-revealing names; consistent, non-ambiguous identifiers across languages.
  • Small, single-purpose functions; easy to test and reuse.
  • Guard clauses and meaningful comments; explain why decisions are made.
  • Fail-fast errors and immutability; reduce surprises and side effects.
  • Reuse and centralization; search and extend existing primitives before creating new ones.
  • Per-language guides live alongside the main baseline (typescript, react, ui-components, convex).

Quick Start

Adopt the clean-code baseline before creating any component, hook, util, type, validator, or constant.

Frequently Asked Questions about clean-code

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

FAQPage Schema
What are clean code baseline rules for writing reusable functions?

Clean code baseline rules require small, single-purpose functions with intention-revealing names, guard clauses, and immutability to ensure code is easy to test, understand, and reuse across languages.

How do I enforce code quality and naming conventions across multiple languages?

To enforce code quality and naming conventions across multiple languages, apply a centralized, language-agnostic baseline that standardizes identifiers, structure, and reuse practices before creating components or utils.

How to use guard clauses and fail-fast errors to improve code structure?

Use guard clauses and fail-fast errors to improve code structure by validating conditions early and reducing surprises, which keeps functions small, single-purpose, and easy to read.

Does the clean code baseline work with TypeScript and React components?

Yes, the clean code baseline works with TypeScript and React components by providing a language-agnostic foundation that guides naming, hook structure, and reuse alongside specific per-language syntax guides.

What is the best way to centralize and reuse code instead of creating new utilities?

The best way to centralize and reuse code is to search existing packages, shared libraries, and feature directories to extend current primitives before writing new components, hooks, or constants.

When should I not use immutable patterns in my codebase?

You should not use immutable patterns if your architecture explicitly requires in-place mutation for performance, as the clean code baseline enforces immutability by default to reduce side effects and unexpected state changes.