К основному содержанию
скилл CX Codex

code-documentation · moizibnyousaf — скилл для Claude Code: документация кода

Скилл задаёт структуру README, API-справки, комментариев и архитектурных заметок, чтобы агент писал документацию по одному шаблону.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add MoizIbnYousaf/ai-agent-skills --skill code-documentation -a claude-code
Открыть на GitHub

Что делает code-documentation

Скилл описывает, как оформлять документацию в проекте: шаблон README с разделами Quick Start, Installation, Usage, API Reference, Configuration, Contributing и License, стиль JSDoc/TSDoc для функций и интерфейсов, схему OpenAPI 3.0.0 для HTTP-эндпоинтов. Внутри есть правила, когда комментарий в коде уместен, а когда нет: объяснять причину решения, а не пересказывать строку, и удалять устаревшие комментарии, потому что они хуже отсутствия.

Отдельный блок — архитектурные заметки. ADR пишется по разделам Status, Context, Decision, Rationale, Consequences, а описание модуля включает обзор, поток выполнения, зависимости и переменные конфигурации. Пример с JWT разбирает вход по /auth/login, срок жизни access- и refresh-токенов и хранение refresh-токенов в Redis.

Скилл ставится в Claude, Codex, Cursor, GitHub Copilot, Gemini CLI и OpenCode. Для Copilot команда другая — gh skill install, у остальных npx skills add. Если в проекте уже есть свой формат README, шаблон скилла с ним поспорит: агент начнёт переписывать разделы под себя, так что перед запуском стоит решить, какой структуры вы держитесь.

Какие задачи решает

  • собрать README с быстрым стартом и установкой
  • описать функцию в стиле JSDoc с параметрами и исключениями
  • зафиксировать решение по базе данных в ADR
  • убрать комментарии, которые пересказывают код
  • описать модуль аутентификации: поток, зависимости, переменные окружения

Примеры запросов агенту

  • напиши README для этого проекта по шаблону скилла
  • задокументируй модуль аутентификации: поток, зависимости и конфигурацию
  • проверь комментарии в src/auth.ts и убери те, что повторяют код

Как установить code-documentation

1Через Skills CLI (Vercel)

npx skills add MoizIbnYousaf/ai-agent-skills --skill code-documentation -a claude-code

2Вручную: положить файлы

~/.claude/skills/code-documentation/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/code-documentation/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о code-documentation

Как установить code-documentation в Claude?

Выполните npx skills add MoizIbnYousaf/ai-agent-skills --skill code-documentation -a claude-code. Файл скилла окажется по пути ~/.claude/skills/code-documentation/SKILL.md.

Что делает code-documentation?

Задаёт агенту шаблоны для README, API-справки в JSDoc/TSDoc и OpenAPI, комментариев в коде и архитектурных записей ADR. Работает, когда вы просите задокументировать код или написать руководство для разработчиков.

Чем этот скилл отличается от обычной генерации README?

Он покрывает не только README: в нём есть правила для inline-комментариев, схема OpenAPI и формат ADR с разделом Consequences. Плюс отдельный список случаев, когда комментарий писать не нужно.

Исходный текст

SKILL.md · MIT
---
name: code-documentation
description: Writing effective code documentation - API docs, README files, inline comments, and technical guides. Use for documenting codebases, APIs, or writing developer guides.
source: wshobson/agents
license: MIT
version: 4.1.0
---

# Code Documentation

## README Structure

### Standard README Template
```markdown
# Project Name

Brief description of what this project does.

## Quick Start

\`\`\`bash
npm install
npm run dev
\`\`\`

## Installation

Detailed installation instructions...

## Usage

\`\`\`typescript
import { something } from 'project';

// Example usage
const result = something.doThing();
\`\`\`

## API Reference

### `functionName(param: Type): ReturnType`

Description of what the function does.

**Parameters:**
- `param` - Description of parameter

**Returns:** Description of return value

**Example:**
\`\`\`typescript
const result = functionName('value');
\`\`\`

## Configuration

| Option | Type | Default | Description |
|--------|------|---------|-------------|
| `option1` | `string` | `'default'` | What it does |

## Contributing

How to contribute...

## License

MIT
```

## API Documentation

### JSDoc/TSDoc Style
```typescript
/**
 * Creates a new user account.
 *
 * @param userData - The user data for account creation
 * @param options - Optional configuration
 * @returns The created user object
 * @throws {ValidationError} If email is invalid
 * @example
 * ```ts
 * const user = await createUser({
 *   email: '[email protected]',
 *   name: 'John'
 * });
 * ```
 */
async function createUser(
  userData: UserInput,
  options?: CreateOptions
): Promise<User> {
  // Implementation
}

/**
 * Configuration options for the API client.
 */
interface ClientConfig {
  /** The API base URL */
  baseUrl: string;
  /** Request timeout in milliseconds @default 5000 */
  timeout?: number;
  /** Custom headers to include in requests */
  headers?: Record<string, string>;
}
```

### OpenAPI/Swagger
```yaml
openapi: 3.0.0
info:
  title: My API
  version: 1.0.0

paths:
  /users:
    post:
      summary: Create a user
      description: Creates a new user account
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserInput'
      responses:
        '201':
          description: User created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/User'
        '400':
          description: Invalid input

components:
  schemas:
    UserInput:
      type: object
      required:
        - email
        - name
      properties:
        email:
          type: string
          format: email
        name:
          type: string
    User:
      type: object
      properties:
        id:
          type: string
        email:
          type: string
        name:
          type: string
        createdAt:
          type: string
          format: date-time
```

## Inline Comments

### When to Comment
```typescript
// GOOD: Explain WHY, not WHAT

// Use binary search because the list is always sorted and
// can contain millions of items - O(log n) vs O(n)
const index = binarySearch(items, target);

// GOOD: Explain complex business logic
// Users get 20% discount if they've been members for 2+ years
// AND have made 10+ purchases (per marketing team decision Q4 2024)
if (user.memberYears >= 2 && user.purchaseCount >= 10) {
  applyDiscount(0.2);
}

// GOOD: Document workarounds
// HACK: Safari doesn't support this API, fallback to polling
// TODO: Remove when Safari adds support (tracking: webkit.org/b/12345)
if (!window.IntersectionObserver) {
  startPolling();
}
```

### When NOT to Comment
```typescript
// BAD: Stating the obvious
// Increment counter by 1
counter++;

// BAD: Explaining clear code
// Check if user is admin
if (user.role === 'admin') { ... }

// BAD: Outdated comments (worse than no comment)
// Returns the user's full name  <-- Actually returns email now!
function getUserIdentifier(user) {
  return user.email;
}
```

## Architecture Documentation

### ADR (Architecture Decision Record)
```markdown
# ADR-001: Use PostgreSQL for Primary Database

## Status
Accepted

## Context
We need a database for storing user data and transactions.
Options considered: PostgreSQL, MySQL, MongoDB, DynamoDB.

## Decision
Use PostgreSQL with Supabase hosting.

## Rationale
- Strong ACID compliance needed for financial data
- Team has PostgreSQL experience
- Supabase provides auth and realtime features
- pgvector extension for future AI features

## Consequences
- Need to manage schema migrations
- May need read replicas for scale
- Team needs to learn Supabase-specific features
```

### Component Documentation
```markdown
## Authentication Module

### Overview
Handles user authentication using JWT tokens with refresh rotation.

### Flow
1. User submits credentials to `/auth/login`
2. Server validates and returns access + refresh tokens
3. Access token used for API requests (15min expiry)
4. Refresh token used to get new access token (7d expiry)

### Dependencies
- `jsonwebtoken` - Token generation/validation
- `bcrypt` - Password hashing
- `redis` - Refresh token storage

### Configuration
- `JWT_SECRET` - Secret for signing tokens
- `ACCESS_TOKEN_EXPIRY` - Access token lifetime
- `REFRESH_TOKEN_EXPIRY` - Refresh token lifetime
```

## Documentation Principles

1. **Write for your audience** - New devs vs API consumers
2. **Keep it close to code** - Docs in same repo, near relevant code
3. **Update with code** - Stale docs are worse than none
4. **Examples over explanations** - Show, don't just tell
5. **Progressive disclosure** - Quick start first, details later

© MoizIbnYousaf · MIT · MoizIbnYousaf/ai-agent-skills

Похожие скиллы

Всё по теме «Тексты и документация» →

Сначала — code-documentation от других авторов.

code-documentation bytedance Скилл автоматически создаёт README, API-референс, архитектурную документацию и гайды разработчика прямо из кода. Пригодится, если нужно документировать проект, библиотеку или API без ручной писанины. CX Codex +1 1 900установок code-documentation aj-geddes Скилл для написания документации прямо в коде: JSDoc, Python-докстринги, JavaDoc, комментарии и описания API. Пригодится, когда нужно задокументировать функции и классы, а не переписывать их вслепую. CX Codex +1 492установок update-docs NeoLabHQ Скилл анализирует изменения в коде через git и обновляет README, файлы docs/ или JSDoc. Помогает поддерживать документацию проекта без ручного переписывания. CX Codex +1 1 300установок api-docs ruvnet Скилл собирает документацию по исходникам на TypeScript и JavaScript: находит публичные экспорты, разбирает JSDoc, дописывает недостающие комментарии и выдаёт OpenAPI 3.0 для HTTP-эндпоинтов. CX Codex +1 891установок documentation официальный anthropics Скилл для технического письма: собирает README, справочник по API, ранбук, архитектурный документ или гайд для новичков. Пригодится, когда код есть, а описания к нему нет. CX Codex +1 10 300установок technical-documentation wondelai Скилл проверяет и переписывает документацию по гайдлайну Google: README, how-to, справочники API, changelog. Пригодится, когда доки расползлись по тону и структуре. CX Codex +1 1 400установок markdown-documentation aj-geddes Скилл задаёт агенту правила оформления Markdown: README, вики, страницы документации. Пригодится, когда тексты пишет модель и их надо привести к одному виду. CX Codex +1 1 300установок documentation-engineer zhaono1 Скилл для написания технической документации: README, описания API, комментарии к коду и архитектурные заметки. Пригодится, когда проект оброс кодом, а доки к нему нет. CX Codex +1 711установок

Из того же набора6

Спонсоры проекта

Компании, которые помогают держать аналитику открытой