[claude-code-user-docs-review] Claude Code User Documentation Review - 2026-05-13 #31940
Closed
Replies: 1 comment
-
|
This discussion was automatically closed because it expired on 2026-05-14T13:16:25.497Z.
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Executive Summary
I reviewed the gh-aw documentation as a developer who uses Claude Code as their primary AI assistant and does not use GitHub Copilot or the Copilot CLI. The good news: gh-aw is genuinely multi-engine and a Claude user can adopt it without a Copilot subscription. The bad news: the onboarding path subtly assumes Copilot at several decision points, the example density skews ~5:1 toward Copilot, and one piece of "required" tooling (
gh aw init) is actually Copilot-Chat-specific without that being made clear.Key Finding: Claude Code users can successfully use gh-aw, but adoption requires reading past Copilot-first defaults in the Quick Start, recognizing that some "required" setup steps are only required for Copilot Chat authoring, and tolerating an example library where most workflows show
engine: copilot. There are no true critical blockers — but there are 4 major obstacles that create real friction.Persona Context
I reviewed this documentation as a developer who:
Question 1: Onboarding Experience
Can a Claude Code user understand and get started with gh-aw?
Mostly yes, with friction. The Quick Start (
docs/src/content/docs/setup/quick-start.mdx) lists all four engines as valid prerequisites on line 29 ("AI Account - GitHub Copilot, Anthropic Claude, OpenAI Codex, or Google Gemini") andadd-wizardinteractively prompts for the engine. A Claude user can pick "Claude" and proceed.Where it falls apart: the prose immediately after the engine list is Copilot-shaped:
> [!NOTE]block titled "Setting upCOPILOT_GITHUB_TOKEN?" with detailed 3-step PAT setup instructions. There is no equivalent prominent note forANTHROPIC_API_KEY. A Claude user reading top-to-bottom sees Copilot-specific PAT instructions and has to click out to the auth reference to find equivalent Claude steps.githubnext/agentics/daily-repo-statusdoes not specify anengine:field in its frontmatter, meaning the default (Copilot) applies if the user doesn't override it viaadd-wizard.Specific Issues Found:
docs/src/content/docs/setup/quick-start.mdx:76-79— Copilot-specific NOTE block has no Claude equivalentdocs/src/content/docs/setup/quick-start.mdx— no "What if I'm using Claude?" branch in the prosedocs/src/content/docs/index.mdx:39— "By the Numbers" says "4 (GitHub Copilot, Claude, OpenAI Codex, custom)" — omits Gemini (listed elsewhere), and "custom" is not actually a validengine:value perengines.mdRecommended Fixes:
> [!NOTE]block titled "Setting upANTHROPIC_API_KEY?" with the equivalent 2-step Anthropic Console flowdaily-repo-statusvariant that includesengine: claudeso Claude users see their engine in the headline exampleQuestion 2: Inaccessible Features for Non-Copilot Users
What features or steps don't work without Copilot?
Features that genuinely require Copilot (and should):
engine.agent(custom agent files in.github/agents/) — Copilot-only by designengine.harness(custom Node.js harness wrapper) — Copilot-onlymax-continuations(autopilot mode) — Copilot-onlyCOPILOT_PROVIDER_*env vars)Features that work without Copilot:
safe-outputs(create-issue, create-pull-request, add-comment, etc.)edit,bash,github,web-fetch,web-search,playwright,cache-memory,repo-memory,qmd,agentic-workflows,cli-proxy)mcp-servers:)max-turnsis actually Claude-only — a feature Copilot doesn't haveUnderdocumented friction point —
gh aw init:docs/src/content/docs/setup/creating-workflows.mdx:104states:This wording reads as "you must run this" but in practice
gh aw initonly sets up the Copilot Chat dispatcher agent (.github/agents/agentic-workflows.agent.md) and Copilot-specific MCP integration. A Claude Code user who never uses Copilot Chat on github.com does not need this — they can author with Claude Code locally and usegh aw compile. The doc never says "skip this if you don't use Copilot Chat," so a careful reader assumes they're broken without it.Missing Documentation:
--no-mcpis the path for users who don't want Copilot-specific MCP setupgh aw initis not required for purely-local authoring with non-Copilot agentsQuestion 3: Documentation Gaps and Assumptions
Where does the documentation assume Copilot usage?
Copilot-Centric Language Found In:
docs/src/content/docs/setup/quick-start.mdx:76-79docs/src/content/docs/setup/creating-workflows.mdx:104gh aw initdeclared "required" without disclosing it's Copilot-Chat-authoring infrastructuredocs/src/content/docs/setup/creating-workflows.mdx:118-127/agent agentic-workflowsis Copilot Chat syntax)docs/src/content/docs/introduction/architecture.mdx:181-184docs/src/content/docs/reference/engines.md:27docs/src/content/docs/index.mdx:39copilotengine declarations vs 15claudein the docs tree — workflows users copy/paste will skew CopilotMissing Alternative Instructions:
engines.md:23Severity-Categorized Findings
🚫 Critical Blockers (Score: 0/10)
None found. A Claude Code user can complete the Quick Start by choosing Claude in the
add-wizardinteractive prompt, addingANTHROPIC_API_KEY, and running their workflow. The path exists. It's just not the path the prose walks you down.Obstacle 1: Quick Start has a Copilot-only NOTE block with no Claude counterpart
Impact: Claude users get less hand-holding for the secret setup that is literally the only required setup step.
Current State:
docs/src/content/docs/setup/quick-start.mdx:76-79shows a multi-step> [!NOTE]block forCOPILOT_GITHUB_TOKENsetup. The Claude path is a single hyperlink toauth.mdx#anthropic_api_key.Why It's Problematic: The visual weight of the Quick Start signals that Copilot is "the" path and other engines are footnotes. For a Claude-first user, they have to navigate away from the Quick Start to discover the Anthropic Console URL.
Suggested Fix: Add a sibling NOTE for
ANTHROPIC_API_KEY(and ideally for each engine), or replace the Copilot-specific NOTE with an engine-neutral one that branches.Affected Files:
docs/src/content/docs/setup/quick-start.mdxObstacle 2: `gh aw init` framed as "required" but only enables Copilot Chat authoring
Impact: Claude Code users either run an unnecessary command or worry they're skipping a required step.
Current State:
creating-workflows.mdx:104saysgh aw init"is required to enable the authoring experience in the GitHub code agent." The benefits listed (lines 117–121) are all Copilot Chat features: a.github/agents/agentic-workflows.agent.mddispatcher and MCP server integration for Copilot.Why It's Problematic: "Required" is doing a lot of work in that sentence. It's required if you want to author via Copilot Chat on github.com — but that's the only thing it's required for. Claude Code users editing markdown locally don't need any of it.
Suggested Fix: Reword: "
gh aw initis required if you want to author workflows via Copilot Chat on github.com or the GitHub mobile app. If you author with another coding agent (Claude Code, Cursor, local editor), this step is optional." Then surface the optional bits that ARE useful for everyone (.gitattributes, VS Code settings).Affected Files:
docs/src/content/docs/setup/creating-workflows.mdx,docs/src/content/docs/setup/cli.md(theinitcommand description)Obstacle 3: Default engine is Copilot and that fact is buried
Impact: A user who omits
engine:from a hand-written workflow gets Copilot. Claude users get a confusing failure (COPILOT_GITHUB_TOKENmissing) instead of an obvious "you forgot to set the engine."Current State: The default is mentioned exactly once on the engines page (
engines.md:23) in passing. The home page and Quick Start never call it out.Why It's Problematic: The 95:15 example ratio in the docs tree means most copy-paste sources won't have
engine: claude— they'll haveengine: copilotor no engine at all. A Claude user copying any sample workflow needs to remember to change it.Suggested Fix: Add a prominent callout in the Quick Start: "If you're using Claude/Codex/Gemini, add
engine: claude(orcodex/gemini) to your workflow's frontmatter. Without it, gh-aw defaults to Copilot and will require a Copilot token."Affected Files:
docs/src/content/docs/setup/quick-start.mdx,docs/src/content/docs/index.mdxObstacle 4: Recommended sample workflow has no explicit engine declaration
Impact: The headline tutorial workflow (
daily-repo-status) doesn't includeengine: claude, so a Claude user who copies it (instead of usingadd-wizard) hits the default-Copilot trap.Current State:
gh aw add-wizard githubnext/agentics/daily-repo-statusworks because the wizard prompts for engine. But anyone reading the workflow source as a template won't see Claude represented.Why It's Problematic: Examples are how developers learn. With 95 Copilot examples and 15 Claude examples across the docs, Claude users get a "second-class citizen" impression even though the underlying tooling is engine-neutral.
Suggested Fix: Either (a) publish parallel Claude-engine variants of the headline workflows, or (b) add a docs convention where engine-agnostic examples explicitly say
# Choose your engine: copilot | claude | codex | gemininear the frontmatter. The single instance ofengine: copilot # or claude, codex, custom(found in one file) is a great pattern to extend.Affected Files: All
engine: copilotexamples indocs/src/content/docs/💡 Minor Confusion Points (Score: 6/10)
docs/src/content/docs/index.mdx:39says "4 (GitHub Copilot, Claude, OpenAI Codex, custom)" — butengines.mdlists 6 (Copilot, Claude, Codex, Gemini, Crush, OpenCode) and there is no "custom" engine value. Gemini is silently dropped from the headline count.architecture.mdx:181-184showsCOPILOT["Copilot CLI"]inside the "AI Agent Process" subgraph with no Claude/Codex/Gemini equivalents. Other diagrams (e.g.,architecture.mdx:280) correctly show all three. The AWF section is the visual exception.engine: custom" value. Theengines.mdtable doesn't include one. Either it exists and is undocumented, or the marketing copy is wrong.engines.md:199-265) lets you route Copilot CLI to an Anthropic endpoint. This is documented well but adds confusion: a Claude user could plausibly think "I need Copilot CLI + my Anthropic key" when they should actually just useengine: claude. A short callout — "If you want to use Claude, setengine: claude. BYOK mode is for users who want Copilot CLI but a non-Copilot model." — would help.auth.mdx:121-123good documentation, but a Claude Pro/Max subscriber might be surprised that their existing subscription doesn't power gh-aw. This is correctly flagged but could be more discoverable (the Quick Start doesn't mention it).gh aw secrets bootstrap --engine claude— Documented atcli.md:223but never referenced from the Quick Start as a Claude-friendly setup helper.Engine Comparison Analysis
Available Engines
Based on
docs/src/content/docs/reference/engines.md:engine: copilot— ⭐⭐⭐⭐⭐ Documentation is comprehensive (default, most examples, BYOK guide, custom agents, custom harness)engine: claude— ⭐⭐⭐⭐ Documentation is good (dedicated auth section, feature comparison table,max-turnssupport called out,baremode documented)engine: codex— ⭐⭐⭐ Documentation is adequate (auth section, web-search quirk documented)engine: gemini— ⭐⭐⭐ Documentation is adequate but minimal examplesengine: crush/opencode— ⭐⭐ Marked experimental; minimal docsDocumentation Quality by Engine
Tool Availability Analysis
Engine-Agnostic Tools (work with Claude):
edit,bash,github,web-fetch,playwright,cache-memory,repo-memory,qmd,agentic-workflows,cli-proxymcp-servers:configurationssafe-outputs:typesEngine-Specific Tool Behavior:
web-search: native in Codex (opt-in), via third-party MCP for all others (including Claude). Documented attools.md:65-67.tools.timeout: different defaults per engine (Claude: 60s, Codex: 120s, Copilot/Gemini: engine-managed). Documented atengines.md:379-385.Engine-Specific Features:
max-turns— Claude only ✅ (a Claude advantage, not a deficit)max-continuations— Copilot onlyengine.agent— Copilot onlyengine.harness— Copilot onlyVerdict: Tools are well-documented as engine-agnostic. The few engine-specific behaviors are tabulated clearly. No tool is hidden from Claude users.
Authentication Requirements
Current Documentation Quality
GITHUB_COPILOT_BASE_URLANTHROPIC_BASE_URLMissing for Claude Users
auth.mdxof how to verify the Anthropic key works before running a workflow (Copilot has the troubleshooting note pointing to a local diagnostic — Claude doesn't)(platform.claude.com/redacted) (auth.mdx:109) is fine but inconsistent — the troubleshooting section (auth.mdx:199) sends users tohttps://console.anthropic.com/`. Both URLs should be cross-referenced.Secret Names
COPILOT_GITHUB_TOKEN(documented)ANTHROPIC_API_KEY(documented;CLAUDE_CODE_OAUTH_TOKENexplicitly not supported)OPENAI_API_KEYorCODEX_API_KEY(both documented)GEMINI_API_KEY(documented)Example Workflow Analysis
Workflow Count by Engine (across docs/src/content/docs/)
Quality of Examples
Copilot Examples: Plentiful, varied, cover all patterns (issue triage, CI doctor, daily reports, custom agents).
Claude Examples: Adequate but thin. Concentrated in a few files (
reference/imports.md,guides/deterministic-agentic-patterns.md,guides/serena.md,patterns/side-repo-ops.mdx). A Claude user copy-pasting from a randomly chosen doc page is much more likely to land on a Copilot example.Codex / Gemini Examples: Sparse — Codex has a handful, Gemini essentially one.
Recommended Actions
Priority 1: Critical Documentation Fixes
ANTHROPIC_API_KEY— File:docs/src/content/docs/setup/quick-start.mdxgh aw init"required" claim to disclose it's Copilot-Chat-authoring infrastructure — File:docs/src/content/docs/setup/creating-workflows.mdxengine:defaults to Copilot — File:docs/src/content/docs/setup/quick-start.mdxPriority 2: Major Improvements
engines.md(drop fictional "custom", include Gemini) — File:docs/src/content/docs/index.mdxdocs/src/content/docs/introduction/architecture.mdx:181-184daily-repo-statusor similar headline workflow — even just anengine: claudeparallel block in the existing example would helpdocs/src/content/docs/reference/faq.mdPriority 3: Nice-to-Have Enhancements
max-turnsas a Claude-only featureplatform.claude.comandconsole.anthropic.com) in auth.mdxPositive Findings
What Works Well
add-wizardinteractively prompts for engine — Claude users get a guided pathauth.mdxhas a dedicated, well-structuredANTHROPIC_API_KEYsection with setup steps and custom endpoint guidanceengines.md:33-44is clear and shows Claude has unique advantages (max-turns)gh aw new --engine claudeandgh aw secrets bootstrap --engine claudeare first-class CLI optionsengine.bareis documented per-engine, including for ClaudeCLAUDE_CODE_OAUTH_TOKENnon-support is explicitly called out — this prevents Pro/Max subscribers from wasting timeengines.md:437-470) is documented in detail — a Claude-specific concern explicitly addressedConclusion
Can Claude Code Users Successfully Adopt gh-aw?
Answer: Yes, with manageable friction.
Reasoning: The product is genuinely multi-engine — the runtime, tools, safe outputs, security model, and CLI all support Claude as a first-class engine. Authentication is well-documented. The friction is purely at the documentation surface level: the Quick Start's narrative voice is Copilot-shaped, the example density is heavily Copilot, and one piece of "required" tooling (
gh aw init) is actually optional for non-Copilot users without that being said. A motivated Claude Code user will get through this in 15–20 minutes. A casual reader scanning the home page might bounce, assuming Copilot is required.The biggest single win for Claude users would be a 3-paragraph addition to the Quick Start: a Claude-flavored secret setup note, an explicit statement that omitting
engine:defaults to Copilot, and a one-line "skipgh aw initif you don't author via Copilot Chat."Overall Assessment Score: 7/10
Breakdown:
max-turnsis a Claude winNext Steps
creating-workflows.mdx. These are small text changes with high ROI.Appendix: Files Reviewed
Complete List of Documentation Files Analyzed
README.mddocs/src/content/docs/index.mdxdocs/src/content/docs/setup/quick-start.mdxdocs/src/content/docs/setup/creating-workflows.mdxdocs/src/content/docs/setup/cli.mddocs/src/content/docs/introduction/how-they-work.mdxdocs/src/content/docs/introduction/architecture.mdxdocs/src/content/docs/reference/tools.mddocs/src/content/docs/reference/engines.mddocs/src/content/docs/reference/auth.mdxdocs/src/content/docs/examples/multi-repo.md(sampled)engine:declarations across the full docs treeReport Generated: §25800990420
Workflow: claude-code-user-docs-review
Engine Used: claude (eating our own dog food)
Beta Was this translation helpful? Give feedback.
All reactions