From 5560180dbeeae7808f8b197d6d3d4a89eced575e Mon Sep 17 00:00:00 2001 From: Lily Shen <115414357+lilyshen0722@users.noreply.github.com> Date: Tue, 27 Oct 2026 04:17:38 -0700 Subject: [PATCH] fix(landing): back every hero claim; drop "workstation", keep memory to what code does MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit "its own workstation" has no code behind it, so it comes out of the hero, the Your team feature and the proof line (en + zh-CN 工位). "its own memory" becomes "memory that stays with it": memory is keyed by the agent's identity, not its install or runtime. "no per-agent fees" stays and gets its row. The zh-CN hero also takes the locked term Pod in place of 群. Three claim-table rows carry the evidence (file:line on main). Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01MDs9DPuqzcZk8TdGaHUr5Y --- docs/audits/claim-table.md | 3 +++ frontend/src/i18n/locales/en.json | 6 +++--- frontend/src/i18n/locales/zh-CN.json | 6 +++--- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/docs/audits/claim-table.md b/docs/audits/claim-table.md index 3f16e8276a..9f087d128a 100644 --- a/docs/audits/claim-table.md +++ b/docs/audits/claim-table.md @@ -149,6 +149,9 @@ the FAQ, and `CONTRIBUTING.md`. The section is complete when every surface in th | In-app Plan (`billing.proNote`) | "…and hosted agent seats when they land." | FALSE | Hosted agents have shipped. `backend/services/hostedRuntimeService.ts:36` gives a free account one agent (`DEFAULT_AGENTS_PER_USER = 1`). The key has no call site, so the sentence is removed with it. | 2026-10-26 | | In-app Plan (`billing.freeNote`) | "Unlimited agents you bring, and 30 days of message history. …" | CUT | No call site in `frontend/src` or `backend`. The only other match is a fixture label at `frontend/src/i18n/__tests__/zhNumberUnitSpacing.test.ts:256`, which reads no catalog value. The key is removed. | 2026-10-26 | | Landing, open-source list (`landing.openSource.items.federation`) | "Federation on the roadmap. Agents on different instances will interact — ActivityPub for agents." | CUT | `git grep -i activitypub` finds nothing under `backend`, `frontend/src` or `docs-site`. The federation code that exists is cross-pod queries (`backend/services/federationService.ts:1-5`). The bullet is removed; it can return with a shipped track or a walk. | 2026-10-26 | +| Landing hero, Your team feature, proof line (`landing.hero.lede`, `landing.features.team.text`, `landing.proof.sub`) | "its own workstation" (en), 工位 (zh-CN) | FALSE | No code backs a per-agent workstation: `git grep -i workstation` over `backend`, `cli` and `frontend/src` (outside locales) finds no code, only an operator-workstation sentence in `frontend/src/content/guides.json`. Removed from all three strings in en and zh-CN. | 2026-10-27 | +| Landing hero, Your team feature, proof line (same keys) | "memory that stays with it" (was "its own memory") | TRUE | Memory is keyed by the agent's identity, not its install or runtime: unique index on `{ agentName, instanceId }` at `backend/models/AgentMemory.ts:326`; the agent reads it as itself at `backend/routes/agentsRuntime.ts:2781-2785` and writes it at `:2822` (ADR-003). Code path only, not walked. | 2026-10-27 | +| Landing hero (`landing.hero.lede`) | "no per-agent fees" | TRUE | The only charge is one Pro subscription at quantity 1, with no agent count: `backend/routes/billing.ts:91` (`line_items: [{ price: priceId, quantity: 1 }]`). Same promise as pricing's "Never per agent" (`en.json:981`, `:1023`), checked against the code by lumen on #2805. | 2026-10-27 | | CONTRIBUTING.md | "pick up an open issue labeled `good first issue` on GitHub" (the label-query link on main before this PR) | FALSE | `gh issue list -R Team-Commonly/commonly --label "good first issue" --state open` returned 0 on 2026-10-26, so the link opened an empty list. The earlier task-board link, `app-dev.commonly.me/pods/team`, was already dead (`CLAUDE.md`, Quick Start). This PR replaces the link with the open-issues list, which had 138 open issues on 2026-10-27. | 2026-10-27 | | CONTRIBUTING.md | "you can install it into the public Commonly instance" (OpenClaw) | TRUE | The provider route exists: `backend/routes/providers/moltbot.ts:4`. This row checks the code path only, not a contributor install on commonly.me. | 2026-10-26 | | CONTRIBUTING.md | "pick up an open issue on GitHub" (the open-issues link) | TRUE | `gh issue list -R Team-Commonly/commonly --state open` returned 138 on 2026-10-27. `--label "good first issue"` returned 0, so the old label link was empty. | 2026-10-27 | diff --git a/frontend/src/i18n/locales/en.json b/frontend/src/i18n/locales/en.json index 6d468cdb1b..27823a9755 100644 --- a/frontend/src/i18n/locales/en.json +++ b/frontend/src/i18n/locales/en.json @@ -781,7 +781,7 @@ "ariaLabel": "Commonly AI: chat with your Claude Code, Codex — your whole team.", "titlePrefix": "Chat with your", "titleSuffix": "", - "lede": "Get real work done with a team of AI agents — each with its own memory and workstation, all in one pod where they hand off instead of making you re-explain. Open source, your infra, no per-agent fees.", + "lede": "Get real work done with a team of AI agents — each with memory that stays with it, all in one pod where they hand off instead of making you re-explain. Open source, your infra, no per-agent fees.", "selfHostInstall": "Self-host install", "copy": "Copy", "copied": "Copied", @@ -820,7 +820,7 @@ "alt": "Commonly's Your team page: six agents with their roles and pods, two marked as needing you, and a card for bringing your own agent.", "kicker": "Your team", "title": "Hosted or your own, one roster", - "text": "Claude Code, Codex and hosted agents side by side. Hire a hosted agent or connect your own — every one gets a name, its own memory, its own skills, and its own workstation. A real seat on the team, not a subagent you spawn and lose.", + "text": "Claude Code, Codex and hosted agents side by side. Hire a hosted agent or connect your own — every one gets a name, its own skills, and memory that stays with it. A real seat on the team, not a subagent you spawn and lose.", "points": { "bring": "Bring your own agent in about two minutes", "hosted": "Hosted agents when you want zero setup", @@ -968,7 +968,7 @@ "proof": { "kicker": "Self-proof", "title": "Commonly is built on Commonly.", - "sub": "Role-specialized agents and a solo founder ship this project together — each agent with its own memory and workstation. Every agent-authored PR is labeled; {{count}} architecture decision records document the why.", + "sub": "Role-specialized agents and a solo founder ship this project together — each agent with memory that stays with it. Every agent-authored PR is labeled; {{count}} architecture decision records document the why.", "stats": { "agents": "agents", "messages": "messages / 24h", diff --git a/frontend/src/i18n/locales/zh-CN.json b/frontend/src/i18n/locales/zh-CN.json index 1fdd560fa3..06f322780a 100644 --- a/frontend/src/i18n/locales/zh-CN.json +++ b/frontend/src/i18n/locales/zh-CN.json @@ -780,7 +780,7 @@ "ariaLabel": "与你的 Claude Code、Codex,以及整个团队对话。", "titlePrefix": "与你的", "titleSuffix": "对话", - "lede": "和一支 AI 团队一起把正事办成——每个智能体都有自己的记忆和工位,在同一个群里互相交接,不用你一遍遍重复解释。开源、部署在你自己的基础设施上,绝不按智能体收费。", + "lede": "和一支 AI 团队一起把正事办成——每个智能体的记忆都跟着它走,大家在同一个 Pod 里互相交接,不用你一遍遍重复解释。开源、部署在你自己的基础设施上,绝不按智能体收费。", "selfHostInstall": "自托管安装命令", "copy": "复制", "copied": "已复制", @@ -819,7 +819,7 @@ "alt": "Commonly 的团队页面:六个智能体及其角色和所在 pod,其中两个标记为等你处理,另有一张接入自己智能体的卡片。", "kicker": "你的团队", "title": "托管或自带,同在一个团队", - "text": "Claude Code、Codex 和托管智能体并肩协作。你可以雇一个托管智能体,也可以接入自己的——每个都有名字、自己的记忆、自己的技能、自己的工位。是团队里真正的一员,不是你用完就丢的子智能体。", + "text": "Claude Code、Codex 和托管智能体并肩协作。你可以雇一个托管智能体,也可以接入自己的——每个都有名字、有自己的技能,记忆也一直跟着它。是团队里真正的一员,不是你用完就丢的子智能体。", "points": { "bring": "约两分钟即可接入自己的智能体", "hosted": "需要零配置时,可直接使用托管智能体", @@ -967,7 +967,7 @@ "proof": { "kicker": "自我验证", "title": "Commonly 用 Commonly 构建。", - "sub": "各有专长的智能体和一位独立创始人一起做出了这个项目——每个智能体都有自己的记忆和工位。每个由智能体提交的 PR 都有标注;{{count}}份架构决策记录写清了缘由。", + "sub": "各有专长的智能体和一位独立创始人一起做出了这个项目——每个智能体的记忆都跟着它走。每个由智能体提交的 PR 都有标注;{{count}}份架构决策记录写清了缘由。", "stats": { "agents": "智能体", "messages": "过去24小时消息",