Przejdź do treści
Biblioteka skilli
Programowanie · Przegląd i audyt

documenting-changes

/documenting-changes

Pilnuje po zakończeniu funkcji, poprawki lub refaktoryzacji, przed ogłoszeniem gotowości i scaleniem, aby docs/, README, CHANGELOG i docstringi odpowiadały zmianie.

Repozytorium
cf-powers ↗
Licencja
MIT
Ostatnia zmiana repozytorium
15.10.2026

Ocena i bezpieczeństwo

100/ 100Klasa: dobry
Format25 / 25
Frontmatter z nazwą i opisem, poprawna nazwa, opis do 1024 znaków, nazwa zgodna z folderem.
Odkrywalność25 / 25
Opis mówi, kiedy użyć skilla, ma sensowną długość i jest w 3. osobie.
Treść35 / 35
Co najmniej 150 słów i do 500 linii, nagłówki, listy kroków, przykłady albo kod.
Higiena15 / 15
Bez zaślepek typu TODO, bez ścieżek Windows, z licencją.
Ryzykobrak sygnałów w skanie
Pliki w paczce
1
Skrypty
0
Komentarze HTML
0
Adresy URL w SKILL.md
0
Przestarzałość

Brak sygnałów. Repozytorium zmienione 15.10.2026, bez odwołań do wycofanych modeli i API.

Licencja

MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.

Co robi i kiedy

Pilnuje po zakończeniu funkcji, poprawki lub refaktoryzacji, przed ogłoszeniem gotowości i scaleniem, aby docs/, README, CHANGELOG i docstringi odpowiadały zmianie.

Oryginalny opis (EN)

Use when implementation of a feature, fix, or refactor is finished, before claiming work complete or starting merge/PR — any change that may affect docs/, README, CHANGELOG, or inline docstrings/JSDoc

Jak działa

  1. Overview
  2. When to Use
  3. The Process
  4. Quick Reference
  5. Common Mistakes
  6. Red Flags
  7. Integration
Sekcje z nagłówków SKILL.md, w oryginale · 160 linii, 1 075 słów
Podgląd SKILL.md
---
name: documenting-changes
description: Use when implementation of a feature, fix, or refactor is finished, before claiming work complete or starting merge/PR — any change that may affect docs/, README, CHANGELOG, or inline docstrings/JSDoc
---

# Documenting Changes

## Overview

Code without matching documentation rots into "what does this do?" within weeks. Catch drift the moment implementation finishes, while the change is still in your head.

**Core principle:** When code changes, the docs that describe it must change too — or you must say why not.

**Documentation is part of the authorized change.** Perform required updates
without a separate permission stop. Keep explicit user deferrals or exclusions
visible; do not silently mark missing documentation as complete.

**Announce at start:** "I'm using the documenting-changes skill to keep docs in sync."

## When to Use

**Always run before:**
- Claiming a feature/fix is "done"
- Step 1.5 of `finishing-a-development-branch`
- Creating a PR for a feature, refactor, or bugfix

**Skip only when:**
- Pure cosmetic changes (formatting, whitespace, comment typos)
- The user has explicitly said "no docs needed for this"

## The Process

### Step 1: Inventory the Change

```bash
git diff <base>...HEAD --stat
git diff <base>...HEAD -- '*.md'   # committed documentation
git diff --stat                 # unstaged changes
git diff --cached --stat        # staged changes
git ls-files --others --exclude-standard  # untracked files
```

Read the relevant staged/unstaged diffs and untracked files, not only their names.
Use the task's actual delivery scope. Preserve unrelated user changes; do not
attribute them to this task or stage them as part of documentation updates.

Answer:
- **Public surface changed?** — API, CLI flags, config keys, env vars, schemas, slash commands, hooks, plugin manifest
- **Workflow/behavior changed?** — install steps, defaults, error messages, ordering
- **New things appeared?** — new feature, module, command, skill, script

### Step 2: Map Each Change to Doc Locations

For each change identified, walk **all five layers**:

| Layer | What to check |
|-------|---------------|
| `docs/` | Architecture, guides, references, ADRs, plans |
| `README.md` | Overview, install, quick-start, feature list (root + subdirectory READMEs) |
| `CHANGELOG.md` / release notes | Entry under current/next version |
| Inline (JSDoc, TSDoc, docstrings, Go doc comments) | Signatures, parameter docs, examples at definition sites |
| Plugin/skill metadata | `.claude-plugin/*`, `skills/*/SKILL.md` description fields, version fields |

### Step 3: Decide per Change

Technical layers (`docs/` architecture, ADRs, references, and inline docs) follow
[Technical English](../using-superpowers/references/technical-english.md). README, user guides and user-facing CHANGELOG entries keep their own voice.

Prefer the existing source of truth in `docs/`. If the repository uses another
documentation system, follow that convention. Create a new document only when no
existing guide fits, and link it from the relevant index or README. A changelog
entry or final chat reply does not replace a required persistent guide.

Each change resolves to exactly one of:

1. **UPDATE** — touches user-visible surface or modifies existing documented behavior → write the update
2. **CREATE** — entirely new feature with no existing doc home → create new file (and link from index/README)
3. **SKIP** — internal-only change → must give a one-line justification naming the specific module and confirming no public surface changed

"Internal" alone is not a justification. "Refactored cache eviction in `src/internal/cache.ts`; no exported API, config, or behavior changed" is.

### Step 4: Apply and Report

```
Documentation review for this work:

UPDATED:
- docs/architecture.md — describe new event flow
- README.md — add "MyFeature" to feature list
- CHANGELOG.md — entry for v1.6.0

CREATED:
- docs/guides/myfeature.md — usage guide for new MyFeature

INLINE:
- src/api/handler.ts — JSDoc on handleRequest() reflects new param

SKIPPED (internal-only):
- src/internal/cache.ts refactor — no public surface or behavior change

Validation: [commands/results, or a named documentation gap]
```

Apply UPDATE and CREATE decisions within the authorized scope before reporting.
Verify affected examples and links, plus the relevant repository checks.
Ask only when a material documentation/product decision is unresolved or work
would exceed existing authorization.

- **Explicit user deferral** → record the gap locally or in the handoff. Creating
  an external issue still requires authorization. Do not claim the docs are complete.
- **SKIP** → retain the specific reason; confirm existing docs remain accurate.
- **Blocked update** → name the missing document or information and report that
  part as incomplete. A summary in chat is not a substitute.

## Quick Reference

| Change type | Likely doc actions |
|-------------|-------------------|
| New public API/CLI flag | UPDATE README + CHANGELOG + inline docstring; consider docs/ guide |
| New feature (user-facing) | CREATE docs/guides/<name>.md + UPDATE README feature list + CHANGELOG |
| Behavior change of existing feature | UPDATE relevant docs/ page + CHANGELOG; check README quick-start |
| Renamed/removed export | UPDATE inline docs at new site + CHANGELOG (breaking?) + grep `docs/` for old name |
| Bugfix (no behavior change beyond fix) | CHANGELOG entry; SKIP rest with justification |
| Internal refactor | SKIP all with one-line justification per affected module |
| New skill / plugin command | CREATE SKILL.md or command doc + UPDATE plugin manifest + CHANGELOG |

## Common Mistakes

**Skipping inline docs**
- **Problem:** Function signature changed but docstring still describes old params
- **Fix:** `grep` for the symbol you changed and check the doc comment at its definition

**"I'll update docs in a follow-up PR"**
- **Problem:** Follow-up PRs for docs rarely happen; drift compounds
- **Fix:** Update in same change. If truly impossible, file an issue with a deadline before merging.

**Updating only `docs/`**
- **Problem:** `README.md` and inline docs still show old usage; users hit them first
- **Fix:** Walk all five layers every time, even if most resolve to SKIP

**Vague justification for skip**
- **Problem:** "internal change" is a label, not a reason
- **Fix:** Name the file/module and the surface that did NOT change

**New feature with no doc home**
- **Problem:** Adding a feature but updating only CHANGELOG — no place a user can learn how to use it
- **Fix:** CREATE a `docs/guides/<name>.md` and link from README, even if short

## Red Flags

- About to claim "done" without having looked at `docs/`
- Edited a function but didn't open its docstring
- Added a new feature with no entry in README or `docs/`
- "The code is self-documenting" (often true at unit level, almost never true for user-facing features or workflows)
- Skipping with no justification, or justification that just repeats "internal"

## Integration

**Called by:**
- `finishing-a-development-branch` (Step 1.5) — between test verification and presenting merge/PR options
- `verification-before-completion` — completion claims include "docs reviewed"

**Independent invocation:** Any time after a non-trivial change, even mid-work, to keep drift from accumulating.

Wersje

W bazie nie ma innych skilli o nazwie documenting-changes.

Migawka bazy z 13.11.2026 · wersja paczki 33e0a2f5b84f (skrót SHA-256 całej paczki)

Pobrania w ostatnich 30 dniach: 0 · ranking

Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.

Podobne skille

  • 100documenting
    Pisze lub aktualizuje dokumentację projektu, np. README, docs, docstringi i dziennik decyzji, gdy zmienia się zachowanie lub architektura.
  • 100post-impl-docs
    Aktualizuje dokumentację repozytorium po implementacji: README, CHANGELOG, folder docs i docstringi, na podstawie wprowadzonych zmian, po zakończeniu zadania przez lane-executor.
  • 100documentation
    Generuje docstringi, JSDoc, dokumentację API i aktualizacje README, które odzwierciedlają bieżący kod.
  • 100docs-writer
    Pisze README, komentarze w kodzie, ADR, wpisy do CHANGELOG i poradniki API na podstawie kodu, z przykładami, które faktycznie działają.
  • 100api-docs-generator
    Generuje dokumentację API z kodu, w tym specyfikacje OpenAPI, JSDoc i docstringi Pythona, dla API, endpointów REST i funkcji bibliotek.
  • 100documentation-generation
    Generuje dokumentację projektu: README, docstringi (JSDoc, JavaDoc, Python), opisy OpenAPI i potoki dokumentacji w CI/CD.

Uwagi i zgłoszenia

Wiadomość trafi do Bartosza Sokolińskiego. Adres e-mail jest potrzebny tylko do odpowiedzi. Szczegóły w polityce prywatności.