Creates, structures, and reviews technical documentation following the Diátaxis framework (tutorials, how-to guides, reference, and explanation pages). Use when a user needs to write or reorganize docs, structure a tutorial vs. a how-to guide, build reference docs or API documentation, create explanation pages, choose between Diátaxis documentation types, or improve existing documentation structure. Trigger terms include: documentation structure, Diátaxis, tutorials vs how-to guides, organize docs, user guide, reference docs, technical writing.
91
87%
Does it follow best practices?
Impact
96%
1.11xAverage score across 5 eval scenarios
Passed
No known issues
{
"context": "Tests whether the agent follows how-to guide Diátaxis patterns: task-framed title, Goal→Assumptions→Numbered steps→Expected result structure, assuming baseline knowledge, and noting alternatives where they exist.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Task-framed title",
"description": "The document title is framed as a task starting with 'How to' (e.g., 'How to Connect Node.js to Redis') rather than a noun or verb-led imperative",
"max_score": 10
},
{
"name": "Goal statement",
"description": "The document opens with a one or two sentence goal statement describing what the reader will accomplish",
"max_score": 8
},
{
"name": "Assumptions/prerequisites listed",
"description": "A section explicitly lists what the reader is assumed to already have or know before starting (e.g., existing Express app, Redis instance running)",
"max_score": 10
},
{
"name": "Numbered steps",
"description": "The procedural content uses a numbered list for the steps",
"max_score": 8
},
{
"name": "Expected result stated",
"description": "The document ends with or includes an expected result or verification step showing what success looks like",
"max_score": 10
},
{
"name": "Assumes baseline knowledge",
"description": "The document does NOT explain what Node.js is, what Express is, or what Redis is at a conceptual level — it skips introductory definitions and gets straight to the task",
"max_score": 10
},
{
"name": "No conceptual digressions",
"description": "The document does NOT include a section explaining how caching works conceptually or the architecture of Redis internals",
"max_score": 8
},
{
"name": "Alternatives noted",
"description": "The document acknowledges at least one alternative approach or library (e.g., mentions ioredis vs redis package, or alternative connection options) without requiring the reader to use it",
"max_score": 12
},
{
"name": "No tutorial pattern mixing",
"description": "The document does NOT include a 'what you will learn' or 'by the end of this...' framing — it is results-focused, not learning-journey focused",
"max_score": 8
},
{
"name": "No reference table mixing",
"description": "The document does NOT include a comprehensive table of all Redis commands or all configuration options",
"max_score": 8
},
{
"name": "Experienced-user appropriate",
"description": "Code snippets are shown without line-by-line explanations of basic syntax — comments or explanations focus only on the non-obvious parts",
"max_score": 8
}
]
}