js-ts-best-practices
npx skills add https://github.com/gohypergiant/agent-skills --skill js-ts-best-practices
Agent 安装分布
Skill 文档
JavaScript and TypeScript Best Practices
Comprehensive coding standards and performance optimization guide for JavaScript and TypeScript applications, designed for AI agents and LLMs working with modern JavaScript/TypeScript codebases.
When to Use This Skill
This skill provides expert-level patterns for JavaScript and TypeScript code. Load AGENTS.md to scan rule summaries and identify relevant optimizations for your task.
How to Use
This skill uses a progressive disclosure structure to minimize context usage:
1. Start with the Overview (AGENTS.md)
Read AGENTS.md for a concise overview of all rules with one-line summaries organized by category.
2. Load Specific Rules as Needed
When you identify a relevant pattern or issue, load the corresponding reference file for detailed implementation guidance:
Quick Start:
- quick-start.md – Complete workflow examples with before/after code
General Best Practices:
- naming-conventions.md – Descriptive names, qualifier ordering, boolean prefixes
- functions.md – Function size, parameters, explicit values
- control-flow.md – Early returns, flat structure, block style
- state-management.md – const vs let, immutability, pure functions
- return-values.md – Return zero values instead of null/undefined
- misc.md – Line endings, defensive programming, technical debt
- code-duplication.md – Extract common patterns, DRY principle, when to consolidate
TypeScript:
- any.md – Avoid any, use unknown or generics
- enums.md – Use as const objects instead of enum
- type-vs-interface.md – Prefer type over interface
Safety:
- input-validation.md – Validate external data with schemas
- assertions.md – Split assertions, include values
- error-handling.md – Handle all errors explicitly
- error-messages.md – User-friendly vs developer-specific messages
Performance:
- reduce-branching.md – Convert conditionals to lookups, hoist invariants, early returns
- reduce-looping.md – Single-pass operations, O(1) lookups, typed arrays
- memoization.md – Hoist invariants, precompute constants, cache expensive operations
- batching.md – Batch I/O operations
- predictable-execution.md – Sequential access, cache locality, grouped data
- bounded-iteration.md – Set limits on loops and queues
- defer-await.md – Move await into branches that need it
- cache-property-access.md – Cache lookups, eliminate aliases, avoid unnecessary destructuring
- cache-storage-api.md – Cache localStorage/sessionStorage/cookie reads
- object-operations.md – Safe mutation, shallow clones, preallocate shapes
- avoid-allocations.md – Inline simple computations, avoid needless variables, reduce GC pressure
- currying.md – Curry to precompute constant parameters, optimize hot paths
- performance-misc.md – Strings, regex, async overhead, closures, try/catch
Documentation:
- jsdoc.md – Well-formed JSDoc for exports
- comment-markers.md – TODO, FIXME, HACK, NOTE markers
- comments-to-remove.md – Commented code, edit history
- comments-to-preserve.md – Markers, linter directives, business logic
- comments-placement.md – Move end-of-line comments above code
3. Apply the Pattern
Each reference file contains:
- â Incorrect examples showing the anti-pattern
- â Correct examples showing the optimal implementation
- Explanations of why the pattern matters