From 90626b6405d7661749dac4adf260d652d3ce5f04 Mon Sep 17 00:00:00 2001 From: istos Date: Fri, 31 Jul 2026 17:08:55 +0200 Subject: [PATCH] site: a Why bench? section, and a console wide enough to read MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two changes to the landing page and the reference layout. The three problem one-liners become "Why bench?" — four reasons now, led by the one no hosted tool can answer: bench lives in your codebase and is built to be extended, so the workflow it runs is exactly yours. It stays unboxed on purpose; the doors below are the page's one grid of cards and repeating that shape would make the eye read it twice. The reference pages split the room right of the nav three fifths prose, two fifths console. At the old fixed 208px every BOARD_AGENT_MODEL_* key was cut mid-word, which makes a console of settings useless for the one thing it is there for. Articles keep the narrow gutter — a list of headings needs no more. The narrow-width overrides are repeated at .page-reference .shell specificity in both media blocks. Without that the base override (0-2-0) outranks the bare .shell inside the query (0-1-0), the third track survives, and with the gutter hidden it becomes two fifths of empty grid squeezing the prose on every phone. --- site/static/site.css | 45 +++++++++++++++++++++++-------------- site/templates/home.html | 48 +++++++++++++++++++++++++--------------- 2 files changed, 59 insertions(+), 34 deletions(-) diff --git a/site/static/site.css b/site/static/site.css index 13195d0..500b4de 100644 --- a/site/static/site.css +++ b/site/static/site.css @@ -131,6 +131,15 @@ img{max-width:100%;height:auto} display:grid;grid-template-columns:236px minmax(0,1fr) 208px; background:var(--surface); } +/* Reference pages put a console in the gutter instead of a contents + list, and a console of settings is only useful if the settings are + legible: at 208px every BOARD_AGENT_MODEL_* line was cut mid-key. + So the room right of the nav is split three fifths prose, two + fifths console. Articles keep the narrow gutter — a list of + headings needs no more. */ +.page-reference .shell{ + grid-template-columns:236px minmax(0,3fr) minmax(0,2fr); +} .side{ border-right:1px solid var(--border-soft); padding:22px 16px 40px;display:flex;flex-direction:column;gap:22px; @@ -397,25 +406,26 @@ img{max-width:100%;height:auto} .install-copy p{margin:0;max-width:52ch;color:var(--muted);text-wrap:pretty} .install .terminal{min-width:0} -/* The three sentences between the hero and the doors. Quiet on purpose: - no cards, no borders, no colour — the doors below are the page's one - grid of boxes, and repeating that shape here would make the reader - look twice at the same thing. The said-out-loud line takes the - display face; its answer is body copy. */ -.snags{padding:8px 44px 30px} -.snags-title{ +/* Why bench, above the doors. Deliberately unboxed: the doors below are + the page's one grid of cards, and repeating that shape here would make + the eye read the same object twice. Two columns rather than three, so + the first reason — the one that needs a sentence, not a phrase — has + somewhere to put it. */ +.why{padding:8px 44px 30px} +.why-title{ margin:0 0 20px;font:600 var(--t-h2)/1.3 var(--display); letter-spacing:-.01em;color:var(--text); } -.snag-list{ - display:grid;grid-template-columns:repeat(3,1fr);gap:22px; +.why-list{ + display:grid;grid-template-columns:repeat(2,minmax(0,1fr)); + gap:22px 40px; } -.snag{display:flex;flex-direction:column;gap:6px} -.snag-said{ +.why-reason{display:flex;flex-direction:column;gap:6px} +.why-lead{ font:600 var(--t-h3)/1.4 var(--display);color:var(--text); text-wrap:pretty; } -.snag-answer{ +.why-text{ font-size:var(--t-ui);line-height:1.6;color:var(--muted); text-wrap:pretty; } @@ -531,13 +541,15 @@ img{max-width:100%;height:auto} stylesheet. */ @media (max-width:1080px){ .shell{grid-template-columns:220px minmax(0,1fr)} + /* Same specificity as the base override, or the console's track + would survive here as two fifths of empty grid. */ + .page-reference .shell{grid-template-columns:220px minmax(0,1fr)} .gutter{display:none} .menu-contents{display:block} .hero{grid-template-columns:minmax(0,1fr);gap:28px;padding:32px 24px} .install{grid-template-columns:minmax(0,1fr);gap:26px;padding:28px 24px} .doors{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 24px 28px} - .snags{padding:8px 24px 26px} - .snag-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px} + .why{padding:8px 24px 26px} .strip{padding:18px 24px} /* Only a code block or a table may scroll sideways, so a token that @@ -578,11 +590,12 @@ img{max-width:100%;height:auto} --t-lede:16.5px; } .shell{grid-template-columns:minmax(0,1fr)} + .page-reference .shell{grid-template-columns:minmax(0,1fr)} .side{display:none} .menu{display:block} .page-article .prose,.page-reference .prose{padding:24px 20px 36px} .doors{grid-template-columns:minmax(0,1fr)} - .snag-list{grid-template-columns:minmax(0,1fr);gap:18px} + .why-list{grid-template-columns:minmax(0,1fr);gap:18px} .masthead{padding:12px 18px;gap:12px;flex-wrap:wrap} .crumbs{flex-wrap:wrap} .footer{flex-wrap:wrap;gap:16px 20px;padding:20px 18px} @@ -623,7 +636,7 @@ img{max-width:100%;height:auto} .hero-actions{gap:8px} .hero-actions .button{width:100%} .doors{padding:0 16px 24px} - .snags{padding:8px 16px 22px} + .why{padding:8px 16px 22px} .strip{padding:16px} .install{padding:24px 16px} .page-article .prose,.page-reference .prose{padding:20px 16px 32px} diff --git a/site/templates/home.html b/site/templates/home.html index 4ff0f68..a67161f 100644 --- a/site/templates/home.html +++ b/site/templates/home.html @@ -133,26 +133,38 @@ Task board for ~/your-repo/.task-manager/tasks - -
-

You've got agents. Now you've got a coordination problem.

-
-
- “Which tab was that in?” - Every agent's task, branch and status on one - board — not scattered across chat sessions that forget everything. + +
+

Why bench?

+
+
+ Simplicity, and total control + bench lives in your codebase — task files in + your repo, a board that reads them, nothing in the middle. And it + is built to be extended: the app it drives, the agent it launches, + the chores it runs are all yours to write, so the workflow it runs + is exactly your workflow.
-
- “They keep stepping on each other.” - Each agent works in its own git worktree. - Parallel work, zero collisions. +
+ Nothing lives in a scrollback + Every agent's task, branch and status on one + board — not scattered across chat sessions that forget everything + the moment they end.
-
- “Did something just merge?” - Never. bench opens PRs and puts CI on the - card — the merge button is yours alone. +
+ Parallel work, zero collisions + Each agent gets its own git worktree and + branch. Run five at once without them editing the same file out + from under each other. +
+
+ Nothing merges without you + Finished work arrives as a PR with CI on the + card. bench never merges — the button stays yours, and you stop + being the thing everything queues behind.