docs(readme): renovate website hero + localized READMEs; nest contributors

- Home hero (web/app/[locale]/page.tsx): multi-model, community-first,
  'intent outranks everything' framing; replace DeepSeek-only positioning.
- Add 'See how it decides' section + thinking-trace.tsx: surfaces real
  reasoning traces (Article II/V citations) paired with the decision each
  produced — proof, not assertion, that the constitution operates.
- docs/CONTRIBUTORS.md: chronological collapsible bands (forward-track ->
  recurring/historical -> v0.8.48). Rebuilt by byte-copying verified HEAD
  content; handle diff confirms zero contributor drops.
- Localize README.zh-CN / ja-JP / vi to mirror the new English README
  (multi-model, community-first, constitution in its own section, concise
  Thanks linking to docs/CONTRIBUTORS.md).
This commit is contained in:
Hunter B
2026-06-13 13:40:33 -07:00
parent 5ca618d70a
commit 5b3228cc4e
6 changed files with 554 additions and 336 deletions
+33 -11
View File
@@ -5,6 +5,7 @@ import { getFacts } from "@/lib/facts";
import { Ticker } from "@/components/ticker";
import { StatGrid } from "@/components/stat-grid";
import { Seal } from "@/components/seal";
import { ThinkingTrace } from "@/components/thinking-trace";
import { MermaidDiagram } from "@/components/mermaid-diagram";
import type { CuratedDispatch, FeedItem, RepoStats } from "@/lib/types";
@@ -142,33 +143,33 @@ export default async function HomePage({ params }: { params: Promise<{ locale: s
<div className="mx-auto max-w-[1400px] px-4 sm:px-6 pt-10 sm:pt-14 pb-12 grid lg:grid-cols-12 gap-10">
<div className="lg:col-span-7">
<div className="mb-6">
<span className="pill pill-hot">DeepSeek V4 · 1M context</span>
<span className="pill pill-hot">{isZh ? "开源 · 多模型 · 本地优先" : "Open source · multi-model · local-first"}</span>
</div>
<h1 className="font-display tracking-crisp">
{isZh
? "先有自我,再有法律,永远留下证据。"
: "Ego first. Law next. Evidence always."}
? "面向最佳可用模型的终端智能体。"
: "An agentic terminal for the best available models."}
</h1>
<p className="mt-6 text-lg text-ink-soft leading-relaxed max-w-2xl">
<span className="font-cjk text-indigo font-semibold">CodeWhale</span>
{isZh
? " 是 DeepSeek V4 和开放模型的本地运行层。它给 Agent 一个可追责的自我、一套处理冲突的 law,以及把工具、审批、回滚、子 Agent 和交接都留在明面上的证据循环。"
: " is a local operating layer for DeepSeek V4 and open-model coding work. It gives an agent an accountable self, a conflict law for the workspace, and an evidence loop where tools, approvals, rollback, sub-agents, and handoffs stay visible."}
? " 是社区共建的终端智能体,本地运行,支持你真正在用的模型——GLM、DeepSeek、Kimi、MiniMax、OpenRouter 等等。完整的工具、审批闸门、快照回滚、子智能体与可恢复会话,都在你的终端里。"
: " is a community-built terminal agent that runs locally and works with the models you actually use — GLM, DeepSeek, Kimi, MiniMax, OpenRouter, and more. A full tool surface, approval gates, snapshots you can roll back, sub-agents, and sessions you can resume."}
</p>
{/* MISSION CALLOUT */}
{/* COMMUNITY CALLOUT */}
<div className="mt-6 px-4 py-3 bg-indigo-pale border-l-4 border-indigo text-sm leading-relaxed max-w-2xl">
{isZh ? (
<>
<span className="font-display text-indigo font-semibold mr-1"></span>
ego constitution
<span className="font-display text-indigo font-semibold mr-1"></span>
PR
</>
) : (
<>
<span className="font-display text-indigo font-semibold mr-1">Design thesis</span>
Ego is where responsibility attaches: this user, this repo, this session. Constitution is conflict law for a noisy workspace.
<span className="font-display text-indigo font-semibold mr-1">Built in the open</span>
Community-shaped to bring the best agent harness to the most people. Issues and pull requests are welcome at any experience level.
</>
)}
</div>
@@ -239,6 +240,27 @@ export default async function HomePage({ params }: { params: Promise<{ locale: s
</section>
<StatGrid stats={stats} />
{/* SEE HOW IT DECIDES — real reasoning traces prove the constitution operates */}
<section className="mx-auto max-w-[1400px] px-6 py-16">
<div className="flex items-baseline gap-4 mb-3 hairline-b pb-4">
<Seal char="判" />
<h2 className="font-display">
{isZh ? "看它如何决策" : "See how it decides"}
</h2>
</div>
<p className={`mb-8 text-ink-soft max-w-2xl ${isZh ? "leading-[1.9] tracking-wide" : "text-sm leading-relaxed"}`}>
{isZh
? "别的 Agent 声称自己「对齐」「可信」。CodeWhale 能证明——因为宪法会在模型的推理中现身:它决策时会援引「第 II 条」「第 V 条」。下面是真实会话中的推理摘录,以及它们所促成的决定。"
: "Every agent claims to be aligned and trustworthy. CodeWhale can prove it — the Constitution shows up in the model's reasoning, citing \"Article II\" and \"Article V\" as it decides. These are real traces from an actual session, paired with the decision each produced."}
</p>
<ThinkingTrace locale={locale} />
<div className="mt-6 text-[0.72rem] font-mono uppercase tracking-wider text-ink-mute">
{isZh
? "这些是真实推理的忠实摘录,非杜撰。宪法不是墙上的口号,而是模型决策时真正遵循的顺序。"
: "Faithful excerpts from real reasoning — not invented. The constitution isn't a poster on the wall; it's the order the model actually follows when it decides."}
</div>
</section>
{/* WHAT IT IS — the core ideas behind the harness */}
<section className="mx-auto max-w-[1400px] px-6 py-16">
@@ -579,4 +601,4 @@ export default async function HomePage({ params }: { params: Promise<{ locale: s
</section>
</>
);
}
}
+116
View File
@@ -0,0 +1,116 @@
/**
* "See how it decides" — a terminal-styled pane that surfaces REAL reasoning
* traces from a CodeWhale session, paired with the decision each produced.
*
* The point is "show, don't tell": every agent claims to be aligned/trustworthy;
* CodeWhale can prove it, because the Constitution is observable in the model's
* reasoning (it cites "Article II", "Article V", etc. as it decides). No other
* agent can show this because none have a hierarchy the model reasons against.
*
* The traces below are faithful excerpts from an actual session — not invented
* marketing copy. Keep them honest if you edit them (see AGENTS.md Article II).
*/
type Scene = {
context: { en: string; zh: string };
trace: string;
cites: string[];
decision: { en: string; zh: string };
};
const SCENES: Scene[] = [
{
context: {
en: "When the prior session's summary didn't match the real repo state…",
zh: "当上一会话的总结与仓库真实状态不符时……",
},
trace:
"Let me be careful and truthful here. Per Article II (truth) and V (verification), I need to report what's actually in the tree — not what the previous agent claimed.",
cites: ["Article II · Truth", "Article V · Verification"],
decision: {
en: "Reported the uncommitted work the summary left out, instead of repeating the claim.",
zh: "如实报告了总结遗漏的未提交改动,而不是照搬旧说法。",
},
},
{
context: {
en: "When a “pause” signal conflicted with the user's explicit request to keep going…",
zh: "当「暂停」信号与用户明确要求继续相冲突时……",
},
trace:
"The user's current request outranks the runtime statute — so I keep executing the task, not stopping on a technicality.",
cites: ["Article III · User agency", "Article VII · Hierarchy"],
decision: {
en: "Finished the work the user actually asked for.",
zh: "完成了用户真正要求的工作。",
},
},
{
context: {
en: "When trimming the README, tempted to drop the contributor wall…",
zh: "精简 README 时,本可以顺手删掉贡献者名单……",
},
trace:
"Deleting community credit would break the project's own ethos. Relocate it instead — zero names lost.",
cites: ["Community ethos"],
decision: {
en: "Moved 200 lines of credits to docs/CONTRIBUTORS.md and linked from the README.",
zh: "把 200 行贡献记录迁到 docs/CONTRIBUTORS.md,并在 README 中给出链接。",
},
},
];
export function ThinkingTrace({ locale = "en" }: { locale?: string }) {
const isZh = locale === "zh";
return (
<div className="grid gap-6 md:grid-cols-3">
{SCENES.map((s, i) => (
<div
key={i}
className="hairline-t hairline-b hairline-l hairline-r bg-paper flex flex-col overflow-hidden"
>
{/* terminal title bar */}
<div className="bg-ink text-paper px-4 py-2.5 flex items-center justify-between">
<div className="flex items-center gap-1.5">
<span className="w-2.5 h-2.5 rounded-full bg-jade inline-block" />
<span className="w-2.5 h-2.5 rounded-full bg-ochre inline-block" />
<span className="w-2.5 h-2.5 rounded-full bg-indigo inline-block" />
<span className="ml-2.5 font-mono text-[0.66rem] uppercase tracking-widest text-paper-deep">
codewhale thinking
</span>
</div>
<span className="font-cjk text-[0.6rem] text-paper-deep/70">
{isZh ? "推理痕迹" : "reasoning trace"}
</span>
</div>
{/* context */}
<div className="px-4 pt-4 text-[0.66rem] font-mono uppercase tracking-wider text-ink-mute">
{isZh ? s.context.zh : s.context.en}
</div>
{/* the trace */}
<pre className="px-4 py-3 font-mono text-[0.82rem] text-ink leading-relaxed whitespace-pre-wrap flex-1">
<span className="text-indigo"></span>{" "}
<span className="text-ink-soft">{s.trace}</span>
</pre>
{/* cited authority */}
<div className="px-4 pb-3 flex flex-wrap gap-1.5">
{s.cites.map((c) => (
<span key={c} className="pill text-[0.58rem] tracking-wider">
{c}
</span>
))}
</div>
{/* the decision it produced */}
<div className="bg-indigo-pale px-4 py-3 hairline-t text-[0.8rem] leading-relaxed text-ink-soft">
<span className="font-display text-indigo font-semibold mr-1"></span>
{isZh ? s.decision.zh : s.decision.en}
</div>
</div>
))}
</div>
);
}