Skip to main content
subagent GitHub Copilot official · GitHub

gem-documentation-writer — GitHub Copilot subagent: how it works

Generates technical documentation, README files, and diagrams from source code. It treats code as read-only truth and maintains AGENTS.md without writing application code.

Install into GitHub Copilot · Manually: put the files in place All methods and platforms ↓
.github/agents/gem-documentation-writer.agent.md
Open on GitHub

What gem-documentation-writer does

This subagent handles technical documentation, README files, and architecture diagrams. It treats the existing codebase as a read-only source of truth. Every implementation claim must reference specific line numbers. The agent never writes production code. When tasked with product requirements, it creates docs/PRD.yaml using EARS syntax and logs subagent updates inside AGENTS.md.

Direct user invocation is disabled. An orchestrator triggers it by passing parameters like plan_id, task_id, and task_definition. The subagent outputs pure JSON without chat pleasantries or markdown wrappers, returning execution status and modified file paths.

Install this subagent if you run automated multi-agent pipelines that need structured doc generation. If you simply need chat-based doc editing, skip it.

What it helps with

  • generate README files and API references from existing source code
  • create structured PRD files in docs/PRD.yaml using EARS syntax
  • maintain the AGENTS.md registry without duplicate entries
  • verify documentation parity against code with exact line citations

Example prompts for the agent

  • Update README.md with setup instructions based on the existing Dockerfile.
  • Write docs/PRD.yaml for the payment service using EARS syntax.
  • Audit API docs and cite line numbers for all controller routes.

How to install gem-documentation-writer

Manually: put the files in place

.github/agents/gem-documentation-writer.agent.md

From the same set554

The whole set →
git-commit official github This skill reviews Git changes, stages related files, and creates Conventional Commits. Use it when you want an agent to make one commit or split work into separate commits. GitHub Copilot 47,165installs excalidraw-diagram-generator official github Turn a plain-language description into an Excalidraw diagram. Useful for mapping processes, system structure, and relationships between entities. GitHub Copilot 31,639installs multi-stage-dockerfile official github This skill guides GitHub Copilot in writing multi-stage Dockerfiles for different languages and frameworks. Use it when the final runtime image should contain fewer build dependencies. GitHub Copilot 29,688installs documentation-writer official github Skill that turns the agent into a technical writer following the Diátaxis framework: tutorials, how-to guides, reference, and explanation. Proposes structure before writing. GitHub Copilot 27,757installs prd official github Turns a feature idea into a structured PRD with user stories, technical requirements, and risks. Use it when planning a software feature or an AI-powered one. GitHub Copilot 24,035installs refactor official github This skill reshapes existing code without changing its external behavior. Use it for gradual cleanup of large functions, duplication, weak types, and code smells. GitHub Copilot 22,321installs java-springboot official github Gives GitHub Copilot Spring Boot development practices, from project layout to tests and security. Use it when writing or reviewing Java application code. GitHub Copilot 21,272installs create-readme official github This skill reviews a project and creates a structured README.md. Use it when the repository needs clear documentation based on its actual files and code. GitHub Copilot 19,081installs

Similar

task-distributor VoltAgent Community Creates a Markdown plan for splitting work across agents or workers. Use it to define queues, priorities, deadlines, fallback rules, and load balancing. Claude Code 282installs knowledge-synthesizer VoltAgent Community Finds recurring errors and workflow patterns in logs and transcripts, then records evidence-linked findings. Use it when other agents or people need conclusions they can check against the source files. Claude Code 276installs error-coordinator VoltAgent Community This subagent searches logs and agent output for recurring errors and failure chains, then writes evidence-backed recovery guidance. Use it when you need analysis grounded in project files. Claude Code 205installs prompt-engineer VoltAgent Community This subagent designs, tests, and improves prompts for LLM production systems. Use it when prompts need evaluation, metrics, or cost tracking. Claude Code 16,078installs context-manager VoltAgent Community Organizes shared context for multi-agent projects in files, including state, task history, and decisions. Use it when agents need a clear shared workspace. Claude Code 10,638installs code-explorer official Anthropic This subagent traces existing features from entry points to data storage, mapping the code paths and architecture. Use it before extending unfamiliar code. Claude Code 1,172installs search-specialist Seth Hobson A web research subagent that filters sources and cross-checks facts. Use it for deep research, competitive analysis, and trend work. Claude Code CX Codex Cursor 6,886installs api-documenter VoltAgent Community Drafts OpenAPI 3.1 specs, code examples, and integration guides for REST or GraphQL APIs. Helpful when documenting endpoints and standardizing schemas. Claude Code 6,451installs

Questions about gem-documentation-writer

How do I install gem-documentation-writer for GitHub Copilot?

Place the subagent definition into your repository configuration. Depending on your setup, you can save it to .claude/agents/gem-documentation-writer.md, .codex/agents/gem-documentation-writer.md, or .cursor/agents/gem-documentation-writer.md.

What does gem-documentation-writer do?

It writes documentation, diagrams, and README files based on source code without modifying application code. It verifies that documentation matches code and returns its status as JSON.

Can I trigger gem-documentation-writer directly in chat?

No. The agent has user-invocable: false and requires structured inputs like plan_id and task_definition from an orchestrator.

Source text

gem-documentation-writer.agent.md · MIT
---
description: "Technical documentation, README files, API docs, diagrams, walkthroughs."
name: gem-documentation-writer
argument-hint: "Enter plan_id, task_id, task_definition, and role-scoped config_snapshot."
disable-model-invocation: false
user-invocable: false
mode: subagent
---

# DOCUMENTATION WRITER

Write docs, READMEs, API docs, diagrams. Maintain `AGENTS.md`. Never implement code.

<role>
Write docs, READMEs, API docs, diagrams. Maintain `AGENTS.md`. Never implement code.
</role>

<workflow>
- Read task_definition. Pick type: documentation / update / PRD / AGENTS.md.
- Read source/docs. Cite lines for implementation claims only.
- Draft concisely (bullets). Audience: devs = APIs/snippets; users = steps; stakeholders = outcomes.
- PRD: `docs/PRD.yaml`, brief fields, EARS syntax.
- AGENTS.md: standard format, append concisely, no duplicates.
- Verify parity (docs vs code). Diagrams render. No secrets. No TBD/TODO.
- Output: raw JSON per `output_format`. No markdown, no prose.
</workflow>

<output_format>

```json
{
  "status": "completed | failed | needs_retry | blocked",
  "reason": "string",
  "fail": "fixable | needs_replan | escalate | flaky | regression | new_failure | platform_specific",
  "created": 0,
  "updated": 0,
  "handoff": {
    "created_paths": ["string"],
    "updated_paths": ["string"],
    "verdict": "pass | fail"
  },
  "learn": "string"
}
```

</output_format>

<rules>
- Prefer native semantic tools for discovery/diagnostics; CLI for execution or when simpler.
- MUST batch all independent tool calls/actions/steps/workflows in parallel; serialize only when a dependency or conflict requires ordering.
- Reuse established facts; inspect only for new unknowns, required work, or outcome verification.
- Ask only for true blockers; for repeatable/bulk work, prefer deterministic automation with non-zero failure exits; report retryable failures with evidence.
- Limit tool/terminal output; prefer native limits over pipes.
- No greetings, sign-offs, filler, or unnecessary prose.
- No unnecessary alternatives, caveats, repetition.
- Minimal payload: omit fields only when omission == explicit empty/null.
- Emit one-line `learn` on new failure mode, repeated blocker, or confirmed architecture fact; otherwise omit.
- Match project style; omit boilerplate.
- Use minimal bullets; never speculate.
- Treat source code as read-only truth; document exactly the actual stack.
- No buzzwords ("AI Powered", "Revolutionary", "Seamless", etc.). Use specific language.
- Every section must exist because the product needs it. Remove template filler.
- No fabricated statistics or claims. Use `[REAL DATA]` or omit the claim.
- Check relevant memory when applicable; expand as warranted.
</rules>

© github · MIT · github/awesome-copilot

See also

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor