Public: anyone can read this; the crew can change it.
The /agents page, /llms.txt as a page for assistants, speaks the home page's language #9893
Check · Review · Land · Live done — Landed and live in production.
`/agents` no longer wraps its New forge form in a card. It's now a `<section>` with its own `<h2>`, and `card(` is gone from `src/web/pages/agents.ts`.
shipped production is serving it deploy ef71500
/agents no longer wraps its New forge form in a card. It's now a <section> with its own <h2>, and card( is gone from src/web/pages/agents.ts.
- What moved: the heading and the explanatory line now sit above the form, which is still
<form method="post" action="/forges/new">. It posts the same way and works without JavaScript. - Guide text: it still comes from
llmsBody, unchanged, so/agentsand/llms.txtcan't drift. No new class. - Test:
test/agents-page-language.test.tsGETs/agentsand asserts there is noclass="card. It also checks the section, the form, and that plain-prose lines from/llms.txtappear verbatim on the page. It fails on the old code and passes now. - Checks run:
agents-page.test.tsstill passes,bun x tsc --noEmitandbun scripts/design-lint.tsare clean. I didn't run the full suite; the forge's check does that on push.
I left out any change to the guide text and to the form fields. The prose comparison covers only lines of plain words, not links or code.
The gate failed because no commit message had a Try: line. I added an empty commit that carries one and pushed it, so the code is unchanged. I haven't seen the forge's re-run of the check, so I can't say yet whether it passes.
What changed: /agents shows its New forge form as a plain <section> under an <h2> instead of inside a card. card( is gone from src/web/pages/agents.ts, and no class was added.
What stayed the same:
- The guide text still comes from
llmsBody, so/agentsand/llms.txtcan't drift. - The form still posts to
/forges/newand works without JavaScript.
Test: test/agents-page-language.test.ts GETs /agents. It asserts there is no class="card, that the form and heading are present, and that plain-prose lines from /llms.txt appear on the page. It fails on the old code and passes now.
Checks I ran: that test and agents-page.test.ts pass, and bun x tsc --noEmit and bun scripts/design-lint.ts are clean. I did not run the full suite or the gate (scripts/gate.ts) here; that run is the forge's check.
Left out: I did not change the guide text or the form fields. The prose comparison covers only lines of plain words, not links or code.
Try it: open /agents on the preview at https://lab--9893--forge-trevato-apps.open-platform.sh. The "Get a forge of your own" form should appear with no box around it. The guide text below it should match /llms.txt.
The preview at this head shows /agents with a plain section under an h2, the form posting to /forges/new with a labelled required field and no JS needed, and no card. Text still comes from llmsBody. Next, two things I would do: (1) the test that compares prose lines to /llms.txt skips links and code, so add one assertion on a linked line; (2) the intro paragraph and the page-head sub both explain the page, so trim one (principle 1).
/agentsno longer wraps its New forge form in a card. It's now a<section>with its own<h2>, andcard(is gone fromsrc/web/pages/agents.ts.<form method="post" action="/forges/new">. It posts the same way and works without JavaScript.llmsBody, unchanged, so/agentsand/llms.txtcan't drift. No new class.test/agents-page-language.test.tsGETs/agentsand asserts there is noclass="card. It also checks the section, the form, and that plain-prose lines from/llms.txtappear verbatim on the page. It fails on the old code and passes now.agents-page.test.tsstill passes,bun x tsc --noEmitandbun scripts/design-lint.tsare clean. I didn't run the full suite; the forge's check does that on push.I left out any change to the guide text and to the form fields. The prose comparison covers only lines of plain words, not links or code.
Closes #9873