[feat] English-only agent-facing texts (recall rule, todowrite-hint, mr-hint)
Maintainers usually reply within 1 day
A pull request for this has already been merged.
- #1042 by @Frank-zhu2000 — merged
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- typescript, yaml
- Domain
- cli, internationalization
Research direction
The three agent-facing texts live in src/builtin-rules.ts (the teamai-recall rule), src/todowrite-hint.ts and src/mr-hint.ts, and the hash list is DEPLOYED_RECALL_RULE_HASHES. Read how teamai.yaml is parsed before adding the optional language key. The maintainers have not yet chosen between an opt-in setting and English by default, so confirm that in the thread before writing code. Done means en emits English-only text, while zh or an omitted key leaves output byte-identical.
Written by the indexing model from the issue text.
Description
Problem
TeamAI injects three texts into the agent's context that are still fully or partly Chinese
on main (checked at ec7d4db):
- the built-in
teamai-recallrule (src/builtin-rules.ts), which is mostly Chinese - the
todowrite-hintPostToolUse message (src/todowrite-hint.ts), which is bilingual - the
mr-hintSessionStart message (src/mr-hint.ts), which is mostly Chinese
For teams that work in English, this puts mixed-language instructions into every session.
That costs tokens and can conflict with team rules that require English (we enforce one in
our team repo). A team postPull script can rewrite the deployed rule, but it cannot reach
the hook hints, because those are generated at runtime.
AGENTS.md already says "CLI user-facing output must be English". These agent-facing
texts seem to be the remaining exception.
Proposed Solution
Add an optional team-level setting in teamai.yaml:
language: en # en | zh — omitted = current behavior
en: deploy an English recall rule body, and emit English-onlytodowrite-hintandmr-hint.zhor omitted: no change, so existing output stays byte-identical.- Add the English rule body's hash to
DEPLOYED_RECALL_RULE_HASHES, so pull keeps
replacing unedited copies of either variant.
We have a draft of the English rule text and are happy to open the PR (unit tests plus one
real-CLI e2e run).
Alternatives Considered
- English-only by default, no setting. This is smaller and matches the
AGENTS.mdrule,
but it changes what Chinese-speaking teams see today. If you prefer this, we would
implement that instead. - Team
postPullscript. This is what we do now. It only covers deployed files, not the
runtime hook hints, and it breaks whenever the rule text changes.
Additional Context
- Out of scope: code comments, the dashboard (it has its own i18n, #529), and the CJK keyword
examples inagents/teamai-recall.md, which serve cross-language matching. - Question for maintainers: would you prefer the opt-in setting or English by default?
- Dominant language
- TypeScript
- Stars
- 5.5k
- Forks
- 443
- Avg merge
- 21h 38m
- Merged PRs (30d)
- 347
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Tencent/teamai-cli
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 22/100
Tencent/teamai-cli#1193 · 1 comment ·
Maintainers usually reply within 1 day
-
[feat] import --from-mr: include the MR's review threads in the extractionPossibly taken @scpia claimed this 1 day ago. Open
Difficulty 4/5 3-5 days Newbie friendliness 25/100
Tencent/teamai-cli#1187 ·
Maintainers usually reply within 1 day
-
[feat] Let designated maintainers assign roles instead of each member setting their ownPossibly taken @scpia claimed this today. Open
Difficulty 5/5 Over a week Newbie friendliness 8/100
Tencent/teamai-cli#1186 ·
Maintainers usually reply within 1 day
-
codebuddy: project-scope MCP written to .codebuddy/mcp.json instead of .mcp.json (mcpProject unused)Open
Difficulty 3/5 Half a day Newbie friendliness 62/100
Tencent/teamai-cli#1185 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 8/100
Tencent/teamai-cli#1183 ·
Maintainers usually reply within 1 day
All issues in Tencent/teamai-cli
Similar issues
-
Difficulty 1/5 Under an hour Newbie friendliness 83/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
ranxianglei/billion-context#3583 ·
Maintainers usually reply within 1 day
-
bug:new
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
callstackincubator/simlock#673 ·
Maintainers usually reply within 1 day
-
documentation v3
Difficulty 2/5 1-3 hours Newbie friendliness 73/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 73/100
anomalyco/opencode#56380 · 1 comment ·
Maintainers usually reply within 1 day