Fork Documentation Updater
This skill keeps the fork's documentation in sync with the codebase. The fork
has several doc files that serve different audiences and purposes. When code
changes, one or more of these files likely need updating.
Which files to update
Read each file before editing to understand its current state. Only update
sections that are actually affected by the change — don't rewrite unrelated
parts.
1. README.md — For coworkers setting up and using the fork
Audience: New users who may not be developers. Beginner-friendly.
What it covers:
- Setup steps (clone, .env, setup.sh, run)
- Env var table (which keys, when required)
- Available models by environment (CORP/DEV/HOME)
- Troubleshooting (common errors and fixes)
- Usage examples (interactive, one-shot, model selection)
- Telemetry (Langfuse setup)
- Python integration
- Architecture overview (brief)
When to update:
- Setup flow changes (new steps, changed scripts)
- New env vars added or removed
- Model list changes significantly
- New features users need to know about
- New troubleshooting scenarios discovered
Style: Short sentences, code blocks, tables. No jargon. A plumber should
be able to follow the setup steps.
2. CLAUDE.md — Technical context for Claude Code
Audience: Claude Code (this AI). Detailed technical reference.
What it covers:
- Fork purpose and key behavior change
- Architecture (packages, runtime, frameworks)
- Model configuration (how models.default.json works)
- Env file location and variables
- Known issues and fixes applied
- Startup/auth flow (detailed code path)
- ContentGenerator interface
- Build/run/test commands
- Coding conventions
- File inventory (files created, modified, not-to-modify)
- Upstream sync process
When to update:
- New files created or existing files renamed/removed
- New env vars or removed env vars
- Bug fixes applied (add to Known Issues)
- Architecture changes (new packages, changed flow)
- New coding conventions established
- Files modified by fork changes
Style: Technical, precise, with file paths and code references. Tables for
file inventories. Keep sections that serve as lookup references (file lists,
env vars) accurate above all else.
3. GEMINI.md — Technical context for Gemini CLI (the AI agent itself)
Audience: Gemini CLI's own AI agent. Project context for when users run
gemini interactively.
What it covers:
- Fork overview (what it is, link to CLAUDE.md for details)
- Project overview (technologies, architecture)
- Fork setup quick-start
- Model configuration
- Building and running commands
- Testing conventions
- Documentation pointers
When to update:
- Build/run commands change
- Setup flow changes
- New testing conventions
- New documentation locations
Style: Similar to CLAUDE.md but shorter. Points to CLAUDE.md for deep
detail rather than duplicating it.
4. docs/fork/ — Detailed fork documentation
Audience: Developers maintaining or extending the fork.
Structure:
| Directory |
Contents |
docs/fork/overview/ |
Fork philosophy, fork-vs-upstream comparison |
docs/fork/setup/ |
Install guide, troubleshooting |
docs/fork/architecture/ |
OpenAI-compatible mode, model registry |
docs/fork/tracing/ |
Telemetry setup, Langfuse integration |
docs/fork/upstream/ |
Sync guide, merge history |
docs/fork/tracking/ |
TODO, changelog, phase plans |
When to update:
architecture/ — When the OpenAI adapter, type mapper, model registry, or
content generator changes
tracing/ — When telemetry behavior changes (new attributes, new exporters,
trace structure changes)
tracking/todo.md — After completing any phase or sub-phase (mark items
[x], add notes)
setup/ — When setup steps, env vars, or prerequisites change
upstream/ — After upstream merges
Style: In-depth, with code examples, architecture diagrams (ASCII), and
tables. These docs are for people who need to understand the internals.
5. scripts/fork/ — Setup and utility scripts
Audience: Users running setup, and developers extending the fork.
Scripts:
| Script |
Purpose |
setup.sh |
One-shot setup: build, link, env, bashrc |
test_openai_adapter.sh |
Build/test/run script |
gemini_llm.py |
Python LLM helper (langchain-openai) |
test_glm5_tools.py |
GLM-5 multi-turn tool call test |
upstream-sync.sh |
Upstream sync workflow |
verify-fork-features.sh |
Post-merge feature verification |
fork-diff-report.sh |
Pre-merge conflict analysis |
When to update:
setup.sh — When setup flow changes (new env vars, file paths move,
new templates, bashrc sourcing changes)
gemini_llm.py — When model registry format changes (new fields, moved
file path, env var resolution logic)
test_openai_adapter.sh — When build commands or test flow changes
upstream-sync.sh / verify-fork-features.sh / fork-diff-report.sh —
When merge strategy or fork feature set changes
Style: Shell scripts use info/warn/error helper functions. Python
uses inline script dependencies (uv style). Keep scripts self-contained
and well-commented.
Workflow
Understand the change. Read the recent git diff or ask the user what
changed. Identify which documentation files are affected.
Read before writing. Always read each target file before editing. Check
what's already there so you don't duplicate, contradict, or break existing
content.
Make surgical edits. Update only the sections affected by the change.
Don't rewrite entire files. Don't add sections that aren't needed.
Cross-reference consistency. If the same fact appears in multiple files
(e.g., an env var in both README.md and CLAUDE.md), update all occurrences.
Common cross-cutting changes:
- Env vars: README.md (table), CLAUDE.md (env section), .env.example
- New files: CLAUDE.md (file inventory), possibly GEMINI.md
- Setup changes: README.md (steps), CLAUDE.md (build section), GEMINI.md
(setup section)
- Model changes: README.md (models table), docs/fork/architecture/,
scripts/fork/gemini_llm.py
- File path changes: all docs, scripts/fork/setup.sh,
scripts/fork/gemini_llm.py
Don't forget tracking. If a phase or task was completed, update
docs/fork/tracking/todo.md.
What NOT to do
- Don't update docs for changes that are only visible in code (internal
refactors with no user-facing or AI-facing impact)
- Don't add documentation for things that can be derived by reading the code
(e.g., don't document every function signature)
- Don't create new doc files unless there's a clear gap — prefer updating
existing files
- Don't change the style or tone of a file — match what's already there
Source: Taekyo-Lee/gemini-cli-fork — distributed by TomeVault.
1---2name: taekyo-lee-gemini-cli-fork-fork-docs-updater3description: Fork Documentation Updater4---56# Fork Documentation Updater78This skill keeps the fork's documentation in sync with the codebase. The fork9has several doc files that serve different audiences and purposes. When code10changes, one or more of these files likely need updating.1112## Which files to update1314Read each file before editing to understand its current state. Only update15sections that are actually affected by the change — don't rewrite unrelated16parts.1718### 1. `README.md` — For coworkers setting up and using the fork1920**Audience:** New users who may not be developers. Beginner-friendly.2122**What it covers:**23- Setup steps (clone, .env, setup.sh, run)24- Env var table (which keys, when required)25- Available models by environment (CORP/DEV/HOME)26- Troubleshooting (common errors and fixes)27- Usage examples (interactive, one-shot, model selection)28- Telemetry (Langfuse setup)29- Python integration30- Architecture overview (brief)3132**When to update:**33- Setup flow changes (new steps, changed scripts)34- New env vars added or removed35- Model list changes significantly36- New features users need to know about37- New troubleshooting scenarios discovered3839**Style:** Short sentences, code blocks, tables. No jargon. A plumber should40be able to follow the setup steps.4142### 2. `CLAUDE.md` — Technical context for Claude Code4344**Audience:** Claude Code (this AI). Detailed technical reference.4546**What it covers:**47- Fork purpose and key behavior change48- Architecture (packages, runtime, frameworks)49- Model configuration (how models.default.json works)50- Env file location and variables51- Known issues and fixes applied52- Startup/auth flow (detailed code path)53- ContentGenerator interface54- Build/run/test commands55- Coding conventions56- File inventory (files created, modified, not-to-modify)57- Upstream sync process5859**When to update:**60- New files created or existing files renamed/removed61- New env vars or removed env vars62- Bug fixes applied (add to Known Issues)63- Architecture changes (new packages, changed flow)64- New coding conventions established65- Files modified by fork changes6667**Style:** Technical, precise, with file paths and code references. Tables for68file inventories. Keep sections that serve as lookup references (file lists,69env vars) accurate above all else.7071### 3. `GEMINI.md` — Technical context for Gemini CLI (the AI agent itself)7273**Audience:** Gemini CLI's own AI agent. Project context for when users run74`gemini` interactively.7576**What it covers:**77- Fork overview (what it is, link to CLAUDE.md for details)78- Project overview (technologies, architecture)79- Fork setup quick-start80- Model configuration81- Building and running commands82- Testing conventions83- Documentation pointers8485**When to update:**86- Build/run commands change87- Setup flow changes88- New testing conventions89- New documentation locations9091**Style:** Similar to CLAUDE.md but shorter. Points to CLAUDE.md for deep92detail rather than duplicating it.9394### 4. `docs/fork/` — Detailed fork documentation9596**Audience:** Developers maintaining or extending the fork.9798**Structure:**99| Directory | Contents |100| ------------------------- | -------------------------------------------- |101| `docs/fork/overview/` | Fork philosophy, fork-vs-upstream comparison |102| `docs/fork/setup/` | Install guide, troubleshooting |103| `docs/fork/architecture/` | OpenAI-compatible mode, model registry |104| `docs/fork/tracing/` | Telemetry setup, Langfuse integration |105| `docs/fork/upstream/` | Sync guide, merge history |106| `docs/fork/tracking/` | TODO, changelog, phase plans |107108**When to update:**109- `architecture/` — When the OpenAI adapter, type mapper, model registry, or110 content generator changes111- `tracing/` — When telemetry behavior changes (new attributes, new exporters,112 trace structure changes)113- `tracking/todo.md` — After completing any phase or sub-phase (mark items114 `[x]`, add notes)115- `setup/` — When setup steps, env vars, or prerequisites change116- `upstream/` — After upstream merges117118**Style:** In-depth, with code examples, architecture diagrams (ASCII), and119tables. These docs are for people who need to understand the internals.120121### 5. `scripts/fork/` — Setup and utility scripts122123**Audience:** Users running setup, and developers extending the fork.124125**Scripts:**126| Script | Purpose |127| ------------------------- | -------------------------------------------- |128| `setup.sh` | One-shot setup: build, link, env, bashrc |129| `test_openai_adapter.sh` | Build/test/run script |130| `gemini_llm.py` | Python LLM helper (langchain-openai) |131| `test_glm5_tools.py` | GLM-5 multi-turn tool call test |132| `upstream-sync.sh` | Upstream sync workflow |133| `verify-fork-features.sh` | Post-merge feature verification |134| `fork-diff-report.sh` | Pre-merge conflict analysis |135136**When to update:**137- `setup.sh` — When setup flow changes (new env vars, file paths move,138 new templates, bashrc sourcing changes)139- `gemini_llm.py` — When model registry format changes (new fields, moved140 file path, env var resolution logic)141- `test_openai_adapter.sh` — When build commands or test flow changes142- `upstream-sync.sh` / `verify-fork-features.sh` / `fork-diff-report.sh` —143 When merge strategy or fork feature set changes144145**Style:** Shell scripts use `info`/`warn`/`error` helper functions. Python146uses inline script dependencies (`uv` style). Keep scripts self-contained147and well-commented.148149## Workflow1501511. **Understand the change.** Read the recent git diff or ask the user what152 changed. Identify which documentation files are affected.1531542. **Read before writing.** Always read each target file before editing. Check155 what's already there so you don't duplicate, contradict, or break existing156 content.1571583. **Make surgical edits.** Update only the sections affected by the change.159 Don't rewrite entire files. Don't add sections that aren't needed.1601614. **Cross-reference consistency.** If the same fact appears in multiple files162 (e.g., an env var in both README.md and CLAUDE.md), update all occurrences.163 Common cross-cutting changes:164 - Env vars: README.md (table), CLAUDE.md (env section), .env.example165 - New files: CLAUDE.md (file inventory), possibly GEMINI.md166 - Setup changes: README.md (steps), CLAUDE.md (build section), GEMINI.md167 (setup section)168 - Model changes: README.md (models table), docs/fork/architecture/,169 scripts/fork/gemini_llm.py170 - File path changes: all docs, scripts/fork/setup.sh,171 scripts/fork/gemini_llm.py1721735. **Don't forget tracking.** If a phase or task was completed, update174 `docs/fork/tracking/todo.md`.175176## What NOT to do177178- Don't update docs for changes that are only visible in code (internal179 refactors with no user-facing or AI-facing impact)180- Don't add documentation for things that can be derived by reading the code181 (e.g., don't document every function signature)182- Don't create new doc files unless there's a clear gap — prefer updating183 existing files184- Don't change the style or tone of a file — match what's already there185186---187> Source: [Taekyo-Lee/gemini-cli-fork](https://github.com/Taekyo-Lee/gemini-cli-fork) — distributed by [TomeVault](https://tomevault.io).188<!-- tomevault:4.0:skill_md:2026-05-23 -->