Official agent skill

Doc Sync

by JetBrains in JetBrains/ideavim

Keeps IdeaVim documentation in sync with code changes. An agent skill from JetBrains/ideavim.

OfficialMITAuto-check passedDevelopment

Install Doc Sync

skills CLI
$ npx skills add JetBrains/ideavim --skill doc-sync -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install JetBrains/ideavim doc-sync --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/JetBrains/ideavim.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/doc-sync .claude/skills/doc-sync && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
doc-sync
GitHub stars
10k
Used in
2 other repos
Token cost
~2.6k tokens
SKILL.md length
1,016 words
Files
1
Skills in repo
5
Repo updated
First seen
Licence
MIT

At a glance

Keeps IdeaVim documentation in sync with code changes. An agent skill from JetBrains/ideavim.

  • You need to verify documentation accuracy after code changes
  • SKILL.md covers Documentation Locations, Core Mindset, Phase 0: Pre-Analysis Search… and Two Modes of Operation, plus 6 more sections
  • Calls git
  • Checking if documentation (in doc/

What it does

Doc Sync is an agent skill from JetBrains/ideavim, published by the product's own GitHub organization. Keeps IdeaVim documentation in sync with code changes. Use this skill when you need to verify documentation accuracy after code changes, or when checking if documentation (in doc/, README.md, CONTRIBUTING.md) matches the current codebase. The skill can work bidirectionally - from docs to code verification, or from code changes to documentation updates.

Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Technical documentation. It works with JetBrains IDEs, Kotlin and Git. The repository describes itself as: IdeaVim – A Vim engine for JetBrains IDEs. The licence is MIT.

When your agent uses it

  • You need to verify documentation accuracy after code changes
  • Checking if documentation (in doc/
  • CONTRIBUTING.md) matches the current codebase

Example prompts

  • “Use the doc-sync skill to keep IdeaVim documentation in sync with code changes. An agent skill from JetBrains/ideavim”
  • “/doc-sync”

What it can do on your machine

Read from SKILL.md and the folder at commit 37aeff6. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Doc Sync loads about 2.6k tokens when it runs. Until then it costs about 91 tokens; SKILL.md has 1,016 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~91
When it runs · the whole SKILL.md, loaded when a task matches
~2.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from JetBrains/ideavim at commit 37aeff6, republished under its MIT licence (© JetBrains). 1,016 words, ~2,634 tokens.

Download SKILL.mdSave it as .claude/skills/doc-sync/SKILL.md (or your agent's skills folder).
name
doc-sync
description
Keeps IdeaVim documentation in sync with code changes. Use this skill when you need to verify documentation accuracy after code changes, or when checking if documentation (in doc/, README.md, CONTRIBUTING.md) matches the current codebase. The skill can work bidirectionally - from docs to code verification, or from code changes to documentation updates.

Doc Sync Skill

You are a documentation synchronization specialist for the IdeaVim project. Your job is to keep documentation in sync with code changes by identifying discrepancies and updating docs when necessary.

Documentation Locations

The IdeaVim project has documentation in these locations:

  • doc/ folder - Detailed documentation files
  • README.md - Main project README
  • CONTRIBUTING.md - Contribution guidelines

Core Mindset

CRITICAL: After code changes, documentation is GUILTY until proven innocent.

❌ WRONG APPROACH: "Be conservative, only update if clearly wrong" ✅ RIGHT APPROACH: "Be aggressive finding issues, conservative making fixes"

Trust Hierarchy:

  1. Working Implementation in codebase (highest truth)
  2. API Definition (interface/class)
  3. Documentation (assume outdated until verified)

Phase 0: Pre-Analysis Search (DO THIS FIRST)

Before reading full files, run these quick searches to find red flags:

1. Find Working Examples (Ground Truth)
bash
# Find real implementations
grep -r '@VimPlugin\|@Plugin\|class.*Extension' --include="*.kt" | head -5

# Or search for known implementation patterns
find . -name "*NewApi.kt" -o -name "*Example*.kt"

Read at least ONE working implementation as ground truth. This shows you what "correct" looks like.

2. Check Recent Breaking Changes
bash
# Check recent commits to the changed files
git log --oneline -10 -- '**/[ChangedFile]*'

# Look for removal commits
git log --grep="remove\|deprecate\|incorrect" --oneline -10

# Check what was actually deleted (more important than additions!)
git show [recent-commit] --stat
3. Quick Pattern Search in Documentation
bash
# Find all named parameters in code examples
grep -E '\w+\s*=' doc/*.md

# Extract all function signatures from docs
grep -E 'fun \w+\(|nmap\(|vmap\(|map\(' doc/*.md -B1 -A3

Compare each signature/parameter against the actual API.

Two Modes of Operation

Mode A: Documentation → Code Verification

Starting with documentation, verify that the code still matches what's documented.

Steps: 0. FIRST: Find working implementation as ground truth (Phase 0)

  1. Read the specified documentation file(s)
  2. Extract ALL code examples and function signatures
  3. For EACH code block:
    • Extract every function call and parameter
    • Verify signature exists in current API
    • Compare pattern with working implementation
    • If different from working code → documentation is WRONG
  4. Update documentation if needed
Mode B: Code Changes → Documentation Update

Starting with code changes (e.g., from git diff), find related documentation and update if needed.

Steps: 0. FIRST: Understand what was REMOVED (Phase 0 - check git show/diff)

  1. Read the changed files and git diff
  2. Understand what changed (especially deletions and breaking changes)
  3. Find working implementations that use the new API
  4. Search for documentation that references these files/features/APIs
  5. Extract all code examples from docs
  6. Compare each example against working implementation
  7. Update documentation to match the correct pattern

Important Guidelines

When to Update

✅ DO update when:

  • API signatures have changed (parameters added/removed/renamed)
  • Function/class/file names have been renamed
  • Behavior has fundamentally changed
  • Features have been removed or added
  • File paths in documentation are now incorrect
  • Code examples in docs no longer work

❌ DON'T update when:

  • Only internal implementation changed (not public API)
  • Wording could be slightly better but is still accurate
  • Minor formatting inconsistencies
  • Documentation uses slightly different terminology but conveys the same meaning
  • Changes are in test files that don't affect public API
Update Strategy
  1. Be aggressive in finding issues - Assume docs are outdated after code changes
  2. Be conservative in making fixes - Only update when there's a real problem
  3. Preserve style - Match the existing documentation style
  4. Be specific - Don't make sweeping changes; target the specific issue
  5. Verify accuracy - Make sure your update is correct by checking working implementations
  6. Keep context - Don't remove helpful context or examples unless they're wrong
Verification Checklist

For EACH code block in documentation, verify:

  • Extract the complete code example
  • Identify every function call with its parameters
  • For each function: Does this signature exist in current API?
  • For each parameter: Does this parameter name/type exist in API?
  • Does this pattern match the working implementation from codebase?
  • If different from working code → Documentation is WRONG
  • If parameters don't exist in API → Documentation is WRONG

Workflow

When invoked, you should:

Step 0: Establish Ground Truth (CRITICAL - DO FIRST)
  • Find working implementations: Search for @VimPlugin, real examples in codebase
  • Check git history: Run git log -10 on changed files, look for "remove" commits
  • Understand deletions: Run git show [commit] to see what was removed
  • Study working code: Read at least 1-2 real implementations to understand correct patterns
Show full SKILL.md (400 more words)Show less
Step 1: Understand the Task
  • If given doc files: Mode A (verify docs match code)
  • If given code changes: Mode B (update docs to match code)
  • If given both: Check if the code changes affect the mentioned docs
  • Run grep searches from Phase 0 to find obvious red flags
  • Extract all function signatures from docs
  • Compare against API and working implementations
Step 3: Detailed Verification
  • Read relevant documentation thoroughly
  • For EACH code example: Run through Verification Checklist
  • Compare every signature and parameter against actual API
  • Compare patterns against working implementations
Step 4: Analyze Discrepancies
  • List what's different between docs and code
  • Assess severity (critical vs. minor)
  • Determine if update is needed
  • Default to updating when in doubt about code examples
Step 5: Make Updates if Needed
  • Edit documentation files with precise changes
  • Explain what was changed and why
  • Verify the update matches working implementation
Step 6: Report Findings
  • Summarize what was checked
  • List any discrepancies found
  • Describe what was updated (if anything)
  • Note anything that might need human review

Example Usage

Example 1: Check specific documentation
User: "Check if doc/ideavim-mappings.md is in sync with the code"

You should:
0. FIRST: Find working implementation (grep for @VimPlugin or similar)
1. Read at least one working example to establish ground truth
2. Read doc/ideavim-mappings.md
3. Extract ALL code examples and function signatures
4. For EACH signature: verify it exists in API and matches working code
5. Compare patterns with working implementation
6. Update docs if any discrepancies found
Example 2: Code changes → docs
User: "I changed MappingScope.kt, check if docs need updating"

You should:
0. FIRST: Check git log and recent commits for MappingScope
1. Run: git log --oneline -10 -- '**/MappingScope*'
2. Check for removal commits: git log --grep="remove" --oneline -5
3. If recent commits removed code: git show [commit] to see what was deleted
4. Find working implementation that uses MappingScope correctly
5. Read MappingScope.kt to understand current API
6. Search docs for references to MappingScope, mapping functions, etc.
7. Extract all code examples from docs
8. Compare each example against working implementation
9. Update docs to match the correct pattern
Example 3: Comprehensive check
User: "Check if all documentation in doc/ folder is up to date"

You should:
0. FIRST: Find working implementations as ground truth
1. Check recent git history for breaking changes
2. List files in doc/ folder
3. For each doc file:
   - Quick grep for function signatures and parameters
   - Compare against API and working implementations
   - Identify obvious issues
4. For files with issues: run full Mode A verification
5. Update any that need it

Output Format

Always provide a clear report:

## Documentation Sync Report

### Files Checked
- [doc file 1]
- [doc file 2]
- [code file 1]
- [code file 2]

### Discrepancies Found
1. **[Doc file]: [Issue description]**
   - Current docs say: [quote]
   - Actual code: [description]
   - Severity: [Critical/Minor]
   - Action: [Updated/No action needed]

### Updates Made
- [File]: [Description of change]

### Notes
- [Any observations or recommendations]

Tools Available

You have access to:

  • Read: Read any file in the project
  • Edit: Update documentation files
  • Glob: Find files by pattern
  • Grep: Search for text in files
  • Bash: Run git commands to see recent changes

Key Lessons Learned

Most Important Insights:

  1. Start with working code, not documentation. The working implementation is your ground truth. Documentation is assumed outdated until proven otherwise.

  2. Deletions matter more than additions. When code changes, what was REMOVED is more important than what was added. Removed functions/parameters will break documentation examples.

  3. Verify every parameter name. Don't just check if the function exists - check if parameter names in examples actually exist in the function signature. Named parameters in docs that don't exist in code are a critical bug.

  4. Compare patterns, not just signatures. A function might exist, but if the documentation shows a different usage pattern than the working implementation, the docs are wrong.

  5. Git history tells the story. Recent commits with "remove", "deprecate", or "incorrect" in the message are red flags that documentation is likely outdated.

Remember: Be aggressive in finding issues, conservative in making fixes. Your goal is to ensure every code example in documentation actually works, not to improve writing style.

© JetBrains, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/doc-sync of JetBrains/ideavim.

Open the folder on GitHubat commit 37aeff6

Used in 2 other repositories

We found 6 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 2 other GitHub owners. This page covers the copy in JetBrains/ideavim, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Doc Sync next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Doc Sync compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Doc Sync this skillJetBrains/ideavim10k2 repos~2.6kAutomated safety check: PassMIT
CodefmtAmplicode/spring-skills126—~595Automated safety check: PassNone
Mermaid Diagramsjjmartres/opencode1336 repos~1.9kAutomated safety check: PassMIT
Acquire Codebase Knowledgegithub/awesome-copilot40k1 repos~2.3kAutomated safety check: PassMIT
Roo Conflict Resolutionzgsm-ai/costrict4.4k—~2.3kAutomated safety check: PassApache-2.0
NeMo Curator Docs MaintenanceNVIDIA-NeMo/Curator1.8k—~4.3kAutomated safety check: PassApache-2.0

Similar skills

  • Codefmt

    Amplicode/spring-skills

    Reformat source code in this project using its own code-style settings — through the IntelliJ IDE when it's running, otherwise via the project's own formatter (Spotless / google-java-format /…

    126 GitHub stars~595 tokensUpdated 1 mo ago
    MobileAuto-check passed
  • Mermaid Diagrams

    jjmartres/opencode

    Helps an agent pick the right Mermaid diagram type and write the syntax for class, sequence, flow, ER, C4, state and other software diagrams.

    133 GitHub starsUsed in 6 repos~1.9k tokens
    DevelopmentAuto-check passed
  • Acquire Codebase Knowledge

    github/awesome-copilot

    Official

    Maps an unfamiliar codebase into seven evidence-backed documents in docs/codebase/, using a scan script and templates, for onboarding or architecture write-ups.

    40k GitHub starsUsed in 1 repo~2.3k tokens
    DevelopmentAuto-check passed
  • Roo Conflict Resolution

    zgsm-ai/costrict

    Provides comprehensive guidelines for resolving merge conflicts intelligently using git history and commit context.

    4.4k GitHub stars~2.3k tokensUpdated 7 days ago
    DevelopmentAuto-check passed
  • Adds, updates, moves and removes pages on the NeMo Curator Fern documentation site, keeping navigation entries, links and redirects in step.

    1.8k GitHub stars~4.3k tokensUpdated today
    DevelopmentAuto-check passed
  • Kotlin KDoc Generator

    modelcontextprotocol/kotlin-sdk

    Official

    Adds accurate KDoc comments to all public Kotlin declarations, with the right tags for constructor properties and parameters and examples where they help.

    1.5k GitHub stars~793 tokensUpdated 2 days ago
    DevelopmentAuto-check passed

More from JetBrains/ideavim

  • Changelog

    JetBrains/ideavim

    Official

    Maintains the IdeaVim changelog (CHANGES.md). An agent skill from JetBrains/ideavim.

    10k GitHub starsUsed in 1 repo~2.7k tokens
    Auto-check passed
  • Extensions API Migration

    JetBrains/ideavim

    Official

    Migrates IdeaVim extensions from the old VimExtensionFacade API to the new @VimPlugin annotation-based API.

    10k GitHub stars~1.7k tokensUpdated today
    Auto-check passed
  • Issues Deduplication

    JetBrains/ideavim

    Official

    Handles deduplication of YouTrack issues. An agent skill from JetBrains/ideavim.

    10k GitHub stars~1.3k tokensUpdated today
    Auto-check passed
  • Git Workflow

    JetBrains/ideavim

    Official

    IdeaVim git workflow conventions covering commits, branches, PRs, and CI.

    10k GitHub stars~424 tokensUpdated today
    Auto-check passed

Categories

Questions about Doc Sync

What does Doc Sync do?

Keeps IdeaVim documentation in sync with code changes. An agent skill from JetBrains/ideavim. Doc Sync is an agent skill from JetBrains/ideavim, published by the product's own GitHub organization. Keeps IdeaVim documentation in sync with code changes.

When should I use Doc Sync?

Doc Sync fits situations like: you need to verify documentation accuracy after code changes; checking if documentation (in doc/; CONTRIBUTING.md) matches the current codebase.

How do I install Doc Sync in Claude Code?

Run `npx skills add JetBrains/ideavim --skill doc-sync -a claude-code`. Or copy the skill folder (.claude/skills/doc-sync in JetBrains/ideavim) into .claude/skills/doc-sync in your project. Claude Code loads it when a task matches its description.

How do I install Doc Sync in Codex?

Run `npx skills add JetBrains/ideavim --skill doc-sync -a codex`. Or copy the skill folder (.claude/skills/doc-sync in JetBrains/ideavim) into .agents/skills/doc-sync in your project. Codex loads it when a task matches its description.

Can I use Doc Sync in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add JetBrains/ideavim --skill doc-sync -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/doc-sync, .gemini/skills/doc-sync, .github/skills/doc-sync and .opencode/skills/doc-sync in your project.

What does Doc Sync need to run?

Going by SKILL.md and its folder, Doc Sync needs the command-line tools its instructions call (git).

Does Doc Sync access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Doc Sync safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Doc Sync use?

Doc Sync is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Doc Sync use?

About 2.6k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Doc Sync?

Skills that share tags, products or a category with Doc Sync: Codefmt (Amplicode/spring-skills, 126 stars), Mermaid Diagrams (jjmartres/opencode, 133 stars), Acquire Codebase Knowledge (github/awesome-copilot, 40k stars) and Roo Conflict Resolution (zgsm-ai/costrict, 4.4k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Doc Sync?

JetBrains (a GitHub organization, an official publisher) maintains it in JetBrains/ideavim, which has 10,278 GitHub stars. The repository holds 5 skills in this directory. The repository was last updated on October 7, 2026.

Source: JetBrains/ideavim on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.