CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

research

Research a documentation topic — locate affected files, understand the problem, identify what to change. Use when investigating an issue, a question, or a topic before writing a fix. Triggers on: "research issue 1234", "investigate what needs changing for #500", "what files are affected by #200", "where is X documented", "is our docs page about Y accurate", "look into how we document Z".

Quality

88%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Research

Investigate the topic and determine whether documentation needs to change. When an update is warranted, identify exact files, named targets within those files, and the verified content needed.

1. Gather context

If the input is a GitHub issue number, fetch it:

gh issue view <number> --repo docker/docs \
  --json number,title,body,labels,comments

Otherwise, work from what was provided — a description, a URL, a question, or prior conversation context. Identify the topic, affected feature, or page to investigate.

2. Locate affected files

Search content/ using the URL or topic from the issue. Remember the /manuals prefix mapping when converting URLs to file paths.

For each candidate file, read the relevant section to confirm it contains the reported problem.

3. Check vendored ownership

Before planning any edit, verify the file is editable locally:

  • _vendor/ — read-only, vendored via Hugo modules
  • data/cli/ — read-only, generated from upstream YAML
  • content/reference/cli/ — read-only, generated from data/cli/
  • Everything else in content/ — editable

If the fix requires upstream changes, identify the upstream repo and note it as out of scope. See the vendored content table in CLAUDE.md.

4. Find related content

Look for pages that may need updating alongside the primary fix:

  • Pages that link to the affected content
  • Include files (content/includes/) referenced by the page
  • Related pages in the same section describing the same feature

5. Verify facts

If the issue makes a factual claim about how a feature behaves, verify it. Follow external links, read upstream source, check release notes. Do not plan a fix based on an unverified claim.

If the fix requires a replacement URL and that URL cannot be verified (e.g. network restrictions), report it as a blocker rather than guessing.

6. Assess documentation impact

A code change or release-note entry is evidence to investigate, not a reason by itself to add documentation. Identify the reader's task and what the change alters about it. Recommend an update when existing guidance becomes incorrect, leaves a gap in that task, or omits a capability useful to readers. An implementation fix may need no update if the docs already describe the intended behavior.

For each recommended update, connect the reader's task, the documentation gap, the destination page and section, and the proposed treatment. Prefer correcting existing prose or examples when they serve that task. Check related pages for contradictions, without assuming each needs the same explanation.

If there is no clear home, reconsider the value and scope before proposing a section or page. A separate home can be justified by a distinct reader task, not by the need to place a release-note bullet. "No documentation change" is a valid finding; explain it briefly when assessing a set of changes.

7. Check the live site (if needed)

For URL or rendering issues, fetch the live page:

https://docs.docker.com/<path>/

8. Report findings

Summarize what you found — files to change, the specific problem in each, what the fix should be, and any constraints. This context feeds directly into the write step.

Be specific: name the file, the section or element within it, and the verified content needed. "Fix the broken link in networking.md" is not specific enough. "In compose/networking.md, the 'Custom networks' section, remove the note about driver_opts being ignored — this was fixed in Compose 2.24" is.

Notes

  • Research quality bounds write quality. Vague research produces broad changes; precise research produces minimal ones.
  • Do not create standalone research files — findings stay in conversation context for the write step.
Repository

docker/docs

Path

.agents/skills/research/SKILL.md

Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.