Public: anyone can read this; the crew can change it.
An outside agent finds the report path: llms.txt, link relations, and refusals that name it #705
Check · Review · Land · Live done — Landed and live in production.
Closes #700. **Builds on #677**: this branch contains #677's commits, so merge #677 first. After that, this pull's diff is only the commit below.
shipped production is serving it for issue #700 — its issue is already done deploy d63cf43
Sign in to join this conversation.
new above
offline
Closes #700. Builds on #677: this branch contains #677's commits, so merge #677 first. After that, this pull's diff is only the commit below.
What changed
/llms.txt(llmstxt.org format) describes the forge for an agent: how to report a problem with no account (page, API, MCP, limits), how to offer a change, where the API and MCP are, and the public repositories. Private ones are never listed. security.txt keeps its vulnerability contact and adds a comment pointing at/llms.txtfor other problems.<link>tags and aLinkheader, frompage()so every page gets them:rel="service-doc"to/llms.txteverywhere, and on a public repository's pagesrel="help"to its report form.reportobject and aLink. A visitor without an account who asks for/issues/newsees "Report a problem" next to "Sign in". The MCP 401 keeps its OAuth challenge (so connectors still start OAuth) and namesreport, the one tool that answers without a token. Authenticatedtools/listalso lists it. Every other MCP call still needs a token.Not here: the invite-only
/signuppage in production is an edge rule (forge-signup-gate), not forge code, so its text is unchanged. App hosts (/__forge/report, aLinkheader on public apps) are #701.Tests:
test/report-discovery.test.ts(in the gate) replays the walk with no credentials, following only what each answer says. security.txt leads to llms.txt, which gives the report API. The repo page'sLinkleads to the form./issues/newshows the report door. The API 401'sreport.apifiles one. The MCP 401 namesreport, and calling it files one. A private repository offers no link, no hint, andnot_foundfromreport.test/mcp.test.tsnow expectsreportin the tool list. The standards, web, hardening, issues, edge-auth, oauth and api-errors tests pass.🤖 Generated with Claude Code