{
 "schema": "aiblocks-page/1",
 "id": "agency-engineering-technical-writer",
 "type": "agent",
 "name": "Engineering documentation writer",
 "summary": "Get developer docs drafted from your code and notes, such as a README, API reference or tutorial, plus a list of claims to verify.",
 "headline": "Engineering documentation writer",
 "subhead": "Give your AI the feature, code or rough notes, and say who will read the docs. It drafts the right type of page, such as a README, API reference, tutorial or how-to. You also get a list of claims and code examples to check before you publish.",
 "job": {
  "id": "document-work",
  "name": "Write down how work gets done"
 },
 "level": "intermediate",
 "thinking": "high",
 "tested": true,
 "updated": "2026-11-03",
 "first_published": "2026-10-26",
 "inputs": [
  {
   "type": "question",
   "required": true,
   "label": "Question",
   "what": "the problem, decision or piece of work you want help with, and what a good outcome looks like"
  },
  {
   "type": "codebase",
   "required": false,
   "label": "Codebase",
   "what": "a project's code, in a folder or repo the AI can open"
  },
  {
   "type": "api_spec",
   "required": false,
   "label": "Api spec",
   "what": "an API's spec, such as an OpenAPI file: the endpoints, data shapes, sign-in method and errors"
  },
  {
   "type": "product_spec",
   "required": false,
   "label": "Product spec",
   "what": "what to build and how to tell it's done: a product requirements doc, feature spec or user stories with acceptance criteria"
  }
 ],
 "outputs": [
  {
   "type": "document",
   "required": true,
   "label": "Document",
   "what": "a finished document, such as a Word file, a PDF or a page of notes"
  }
 ],
 "you_give": [
  "What you are documenting, such as a feature, API endpoint, library or setup process",
  "Who will read it and what they already know, for example new users or experienced developers",
  "The type of doc you want, such as README, API reference, tutorial or how-to guide",
  "Source material, such as code, an OpenAPI file, a spec, issue threads or an engineer's notes",
  "Your docs tool, such as Docusaurus or MkDocs (optional)"
 ],
 "you_get": [
  "A draft in the right format for the doc type, in plain second-person voice",
  "Code examples, each marked run or not run",
  "A list of every claim, number and example to check against the code",
  "A list of gaps, marked MISSING, where your material did not say enough",
  "A suggested page structure if you asked for a set of docs"
 ],
 "use_when": [
  "You shipped a feature and the README still describes last year's version.",
  "You have an API and need a reference page with request, response and error examples.",
  "New users keep asking the same setup question, and you want a tutorial that answers it.",
  "An engineer sends rough notes, and you need a clean how-to for other developers."
 ],
 "skip_when": [
  "You need release notes, a changelog or a decision record. Use the Technical writer.",
  "You already have a doc and want its false claims and drift from the code found. Use the Documentation accuracy reviewer.",
  "You want docstrings and a README written straight from a repo by a tool that reads the code. Use the Code documentation writer."
 ],
 "output_sample": {
  "input": [
   "The feature, API or library you are documenting",
   "Who will read the docs and the type of page you want",
   "Code, specs or notes as source material"
  ],
  "output": [
   {
    "name": "The draft doc",
    "contains": "A README, API reference, tutorial or how-to guide, in the standard layout for that type."
   },
   {
    "name": "Code examples",
    "contains": "Each snippet marked as run or not run, so you know which to test first."
   },
   {
    "name": "Accuracy checks",
    "contains": "Every claim and number tied to its source, with who should confirm it."
   },
   {
    "name": "Gaps",
    "contains": "Facts your material left out, marked MISSING instead of guessed."
   },
   {
    "name": "Suggested next pages",
    "contains": "Related docs the reader will probably need, such as a migration guide."
   }
  ]
 },
 "output_shape": "# <Doc title>\nDoc type: <README, API reference, tutorial, how-to or explanation>\nReader: <who it is for and what they already know>\n\n<the draft, in the structure for that doc type>\n\n## Accuracy checks\n- <claim, number or code example> | <where it comes from> | <run or not run> | <who should confirm>\n\n## Gaps (MISSING)\n- <what the material did not say> | <who can answer>\n\n## Suggested next pages\n- <related doc worth writing>",
 "how_to_use": [
  "Add the pack as a skill, or paste SKILL.md and then references/source-agent.md into a new chat.",
  "Paste your source material first, then say what to write. For example, \"Write a README for this library. Readers are developers new to it.\"",
  "Check the list of gaps and ask the engineer who built it to fill them, or paste the answers back.",
  "Go through the claims list. Run each code example yourself, or give your AI a tool that can run code.",
  "Keep the docs in the same pull request as the code change, so they do not fall behind."
 ],
 "checks": [
  "The result addresses your actual task and cites the evidence used.",
  "Examples, role-play experience and targets are kept separate from verified results.",
  "Claims of tests, memory, tool access or completed actions match what actually happened."
 ],
 "next": [
  {
   "name": "Developer docs writer",
   "url": "https://useaiblocks.com/skills/developer-docs-writer",
   "why": "Developer docs writer"
  },
  {
   "name": "Developer documentation reviewer",
   "url": "https://useaiblocks.com/skills/monthly-developer-docs-keeper",
   "why": "Developer documentation reviewer"
  },
  {
   "name": "Documentation system planner",
   "url": "https://useaiblocks.com/skills/documentation-system-planner",
   "why": "Documentation system planner"
  }
 ],
 "source": {
  "by": "Michael Sitarzewski and Agency Agents contributors",
  "repo": "msitarzewski/agency-agents",
  "url": "https://github.com/msitarzewski/agency-agents/blob/b37b5bb33b78f2c1d6567d98e25ca818e3259219/engineering/engineering-technical-writer.md",
  "licence": "MIT",
  "original_name": "Technical Writer",
  "commit": "b37b5bb33b78f2c1d6567d98e25ca818e3259219"
 },
 "credits": [
  {
   "title": "Technical Writer",
   "by": "Michael Sitarzewski and Agency Agents contributors",
   "url": "https://github.com/msitarzewski/agency-agents/blob/b37b5bb33b78f2c1d6567d98e25ca818e3259219/engineering/engineering-technical-writer.md",
   "used": "Original agent profile, preserved in references/source-agent.md; AI Blocks adds setup and review instructions."
  }
 ],
 "files": [
  "LICENSE",
  "references/source-agent.md",
  "SETUP.md",
  "source.json"
 ],
 "links": {
  "page": "https://useaiblocks.com/agents/agency-engineering-technical-writer",
  "markdown": "https://useaiblocks.com/agents/agency-engineering-technical-writer.md",
  "json": "https://useaiblocks.com/agents/agency-engineering-technical-writer.json",
  "instructions": "https://useaiblocks.com/skills/agency-engineering-technical-writer/SKILL.md",
  "download": "https://useaiblocks.com/skills/agency-engineering-technical-writer.zip",
  "api_item": "https://useaiblocks.com/api/v1/items/agency-engineering-technical-writer",
  "api_document": "https://useaiblocks.com/api/v1/documents/agent/agency-engineering-technical-writer",
  "mcp": "https://useaiblocks.com/mcp"
 }
}
