Skip to content

docs(site): reorganize and rewrite product docs#343

Open
velga111 wants to merge 6 commits into
TouchAI-org:mainfrom
velga111:feat/docs-site-clean
Open

docs(site): reorganize and rewrite product docs#343
velga111 wants to merge 6 commits into
TouchAI-org:mainfrom
velga111:feat/docs-site-clean

Conversation

@velga111

@velga111 velga111 commented May 31, 2026

Copy link
Copy Markdown
Contributor

Summary

  • flatten the docs structure to match the sidebar navigation
  • rewrite docs in a clearer, user-focused product style
  • add screenshots for onboarding, settings, and feature pages

Related issue or RFC

  • None

AI assistance disclosure

  • Used Claude Code to restructure copy, sync English docs, and organize image paths.
  • Verified the docs site build locally after the changes.

Risk notes

  • Docs-only change; no runtime behavior change expected.
  • Main risk is wording, links, and screenshot path accuracy.

Test plan

  • Start the docs preview site
  • Verify the updated sidebar structure renders correctly
  • Open representative pages and confirm links and screenshots load
  • Review the PR in GitHub

🤖 Generated with Claude Code

Flatten the docs structure to match the sidebar, rewrite the pages in a more
user-focused product style, and add screenshots for onboarding, settings,
and feature flows.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry @velga111, you have reached your weekly rate limit of 500000 diff characters.

Please try again later or upgrade to continue using Sourcery

@github-actions github-actions Bot added the area:frontend Frontend UI or view-layer changes label May 31, 2026
@coderabbitai

coderabbitai Bot commented May 31, 2026

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

This PR adds comprehensive Chinese documentation for TouchAI 1.0.0, modernizes Husky hooks, updates site infrastructure, and removes placeholder documentation. The changes span build configuration, landing page structure, getting-started guides, feature documentation, settings, MCP integration, release announcements, and localization.

Changes

TouchAI Documentation Launch

Layer / File(s) Summary
Build system and site configuration
.husky/commit-msg, .husky/pre-commit, apps/desktop/scripts/run-rust-command.mjs, apps/site/astro.config.mjs, apps/site/src/content.config.ts, apps/site/src/content/i18n/zh-CN.json
Husky hooks now source internal helpers; pre-commit command chain removed; cargo spawnSync no longer uses shell option; Astro sidebar navigation restructured with Chinese sections and English translations; Starlight configured with locales, logo assets, and social links; i18n collection added to content config; new Chinese translation key for anchor labels.
Documentation homepage and navigation
apps/site/src/content/docs/index.mdx
Landing page with splash template, hero section, feature cards (wake, context, keyboard-first, tools, model selection, MCP), ordered 3-step walkthrough, follow-up navigation grid, and consolidated tech stack/license/community links.
Getting started guides
apps/site/src/content/docs/getting-started/installation.mdx, quickstart.mdx, shortcuts.mdx
Installation guide with platform-specific download instructions; quickstart covering model configuration from tray menu and first conversation via Alt+Space with troubleshooting; comprehensive keyboard shortcuts reference including core keys, smart Esc logic for sequential cancel/clear/deselect/close, and recommended quick-start keys.
Built-in features documentation
apps/site/src/content/docs/features/built-in-tools.mdx, code-and-command.mdx, file-search.mdx, upgrade-model.mdx, visualization.mdx
Built-in tools overview table (bash, read, file_search, web_fetch, show_widget, upgrade_model); terminal operation guide with execution approval and boundary notes; file search prerequisites for Windows/Everything, dual search modes, and troubleshooting; model upgrade chain behavior and context preservation; visualization capabilities for code and structural diagrams.
Settings and model configuration
apps/site/src/content/docs/settings/model-configuration.mdx, api-keys.mdx
Model provider configuration covering supported vendors, add-provider workflow, API key retrieval, model switching via icon or Ctrl+M, and security warnings; API key guides with step-by-step setup for XiaoMIMO (with limited-free token promotion), OpenAI, and Google Gemini.
MCP integration and extensions
apps/site/src/content/docs/extensions/mcp-tools.mdx, mcp-add-service.mdx, mcp-popular-scenarios.mdx
MCP server overview and connection benefits; detailed service addition workflow (discovery, MCP tools page, create/configure/inspect tools/check logs/verify); popular service scenarios with use-case examples and selection guidance for first services.
Release information and support
apps/site/src/content/docs/about/announcement.mdx, changelog.mdx, support.mdx
Official TouchAI 1.0.0 announcement with key features (desktop workflow, shortcuts, model config, tools, MCP, visualization, model switching); 1.0.0 changelog entry; support and feedback page with GitHub issue/email guidance and official contact channels (support, security, business).

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Suggested reviewers

  • hiqiancheng

Poem

🐰 A rabbit hops through docs so bright,
With shortcuts, tools, and models right,
Chinese guides for all to see,
TouchAI 1.0 runs wild and free!
MCP servers join the fray,
Hopping onward, come what may! 🚀

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title 'docs(site): reorganize and rewrite product docs' follows Conventional Commits format, uses English, and accurately describes the main changes: documentation reorganization and rewriting.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description check ✅ Passed The PR description is mostly complete with a clear summary, related issue section, AI assistance disclosure, risk notes, and test plan checklist.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 8

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.husky/commit-msg:
- Around line 1-2: Remove the legacy Husky v4-style initializer lines from the
commit hook: delete the shebang "#!/usr/bin/env sh" and the source line `.
"$(dirname -- "$0")/_/husky.sh"` so the file contains only the hook command body
compatible with Husky v9+; ensure the remaining content is the actual hook
script (the command(s) you want to run on commit) and nothing else.

In `@apps/site/src/content/docs/extensions/mcp-faq.mdx`:
- Around line 6-26: Expand each FAQ section ("服务无法连接", "工具没有显示", "响应较慢") to
include concrete, actionable troubleshooting steps: under each heading add
subheadings like "检查命令路径", "验证依赖安装", "检查配置和环境变量" with explicit commands/examples
(e.g., which/where, npm list -g, systemctl status, tail -f /path/to/log),
provide common fixes (install commands, sample correct vs incorrect env var
formats), list specific error messages and their meanings, and add
cross-references to the detailed guide mcp-add-service.mdx; ensure examples show
exact command output expectations and include one short config snippet for
typical MCP service env vars so users can compare.

In `@apps/site/src/content/docs/features/visualization.mdx`:
- Around line 6-32: Add navigational cross-references to related docs by adding
a "See Also" section (or inline links) that points to the built-in tools
overview and other relevant feature pages; specifically, edit the visualization
page that documents ShowWidget and VisualizeReadMe to include links to
built-in-tools.mdx and any related feature pages where users encounter
ShowWidget or VisualizeReadMe, ensuring the links are labeled clearly (e.g.,
"Built-in tools overview", "Related features") and placed at the end of the page
and/or near the ShowWidget and VisualizeReadMe headings for better
discoverability.

In `@apps/site/src/content/docs/getting-started/quickstart.mdx`:
- Line 37: Update the heading "## 4. 更顺手的使用方式" to "## 3. 更顺手的使用方式" so the
section numbering follows the existing sequence (it currently jumps from "## 2."
to "## 4."); locate the exact header string "## 4. 更顺手的使用方式" in
apps/site/src/content/docs/getting-started/quickstart.mdx and change the numeric
prefix to 3, and scan nearby headings to confirm there are no other skipped
numbers.
- Line 1: The file begins with a UTF-8 BOM character immediately before the
frontmatter delimiter '---'; remove that BOM (the invisible character at the
very start of the file) so the file starts exactly with '---', then save the
file as UTF-8 without BOM and commit the change to avoid parsing issues in
tools/editors.

In `@apps/site/src/content/docs/index.mdx`:
- Around line 29-48: The Card components inside CardGrid are using invalid
StarlightIcon names for the icon prop (symbols: CardGrid, Card, icon); update
each Card's icon prop to a valid StarlightIcon name from the Icons Reference
(replace bolt, monitor, keyboard, wrench, key, search with valid icons such as
lightning (or another valid name for bolt), screen/monitor (if available),
keyboard (if a valid name), tools (or spanner) for wrench, lock/key-outline for
key, and magnifier for search) so every Card's icon prop matches a supported
StarlightIcon identifier.

In `@apps/site/src/content/docs/settings/data-management.mdx`:
- Line 4: The frontmatter contains an explicit redundant slug entry "slug:
settings/data-management" that duplicates the file path; remove the slug line
from the document (the explicit slug in the frontmatter) so Starlight can
auto-generate the route, unless you intentionally need a different URL, in which
case keep or change that slug value.
- Around line 33-35: Replace the invalid Starlight aside type `:::warning[注意]`
with a supported admonition type (one of `note`, `tip`, `caution`, or `danger`);
for example change `:::warning[注意]` to `:::caution[注意]` so the aside renders
correctly—update the token `:::warning[注意]` in the document to the chosen
supported type.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: a2d47404-1a60-4ce9-ad80-96a152dd91cc

📥 Commits

Reviewing files that changed from the base of the PR and between 8eb5cdf and eeb6ac9.

⛔ Files ignored due to path filters (13)
  • apps/site/public/display/code-display/code-display-example.png is excluded by !**/*.png
  • apps/site/public/display/diagrams/diagram-example.png is excluded by !**/*.png
  • apps/site/public/extensions/mcp-add-service/mcp-add-service-form.png is excluded by !**/*.png
  • apps/site/public/features/code-and-command/code-and-command-example.png is excluded by !**/*.png
  • apps/site/public/features/visualization/visualization-example.png is excluded by !**/*.png
  • apps/site/public/getting-started/installation/installation-overview.png is excluded by !**/*.png
  • apps/site/public/getting-started/quickstart/quickstart-first-chat.png is excluded by !**/*.png
  • apps/site/public/getting-started/quickstart/quickstart-provider-settings.png is excluded by !**/*.png
  • apps/site/public/getting-started/shortcuts/shortcuts-overview.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/OpenAI/openai-api-keys-page.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/OpenAI/openai-create-key-dialog.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/OpenAI/openai-platform-home.png is excluded by !**/*.png
  • apps/site/public/settings/model-configuration/model-configuration-overview.png is excluded by !**/*.png
📒 Files selected for processing (32)
  • .husky/commit-msg
  • .husky/pre-commit
  • apps/desktop/scripts/run-rust-command.mjs
  • apps/site/astro.config.mjs
  • apps/site/src/content/docs/about/announcement.mdx
  • apps/site/src/content/docs/about/changelog.mdx
  • apps/site/src/content/docs/about/contact.mdx
  • apps/site/src/content/docs/about/feedback.mdx
  • apps/site/src/content/docs/display/code-display.mdx
  • apps/site/src/content/docs/display/diagrams.mdx
  • apps/site/src/content/docs/display/reasoning.mdx
  • apps/site/src/content/docs/display/visual-rendering.mdx
  • apps/site/src/content/docs/extensions/mcp-add-service.mdx
  • apps/site/src/content/docs/extensions/mcp-faq.mdx
  • apps/site/src/content/docs/extensions/mcp-popular-scenarios.mdx
  • apps/site/src/content/docs/extensions/mcp-tools.mdx
  • apps/site/src/content/docs/features/built-in-tools.mdx
  • apps/site/src/content/docs/features/code-and-command.mdx
  • apps/site/src/content/docs/features/file-search.mdx
  • apps/site/src/content/docs/features/upgrade-model.mdx
  • apps/site/src/content/docs/features/visualization.mdx
  • apps/site/src/content/docs/getting-started/faq.mdx
  • apps/site/src/content/docs/getting-started/installation.mdx
  • apps/site/src/content/docs/getting-started/quickstart.mdx
  • apps/site/src/content/docs/getting-started/shortcuts.mdx
  • apps/site/src/content/docs/guides/example.md
  • apps/site/src/content/docs/index.mdx
  • apps/site/src/content/docs/settings/api-keys.mdx
  • apps/site/src/content/docs/settings/backup-and-restore.mdx
  • apps/site/src/content/docs/settings/customization.mdx
  • apps/site/src/content/docs/settings/data-management.mdx
  • apps/site/src/content/docs/settings/model-configuration.mdx
💤 Files with no reviewable changes (2)
  • apps/desktop/scripts/run-rust-command.mjs
  • apps/site/src/content/docs/guides/example.md
📜 Review details
🧰 Additional context used
🪛 LanguageTool
apps/site/src/content/docs/getting-started/quickstart.mdx

[uncategorized] ~37-~37: 动词的修饰一般为‘形容词(副词)+地+动词’。您的意思是否是:顺手"地"使用
Context: ...rt/quickstart-first-chat.png) ## 4. 更顺手的使用方式 TouchAI 最适合接住你手头正在做的事情,而不是把它当成一个独立...

(wb4)

apps/site/src/content/docs/getting-started/shortcuts.mdx

[uncategorized] ~45-~45: 动词的修饰一般为‘形容词(副词)+地+动词’。您的意思是否是:合适"地"处理
Context: ...辑(Esc) Esc 不只是一个单纯的“关闭键”,它会根据当前状态做更合适的处理。 在 AI 正在生成、已有输出内容或已经选择模型时,连续按下 Esc...

(wb4)

🔇 Additional comments (29)
.husky/pre-commit (2)

1-2: Same deprecated Husky initialization as in .husky/commit-msg; see that comment.


4-6: Summary/code discrepancy: the command chain is still present.

The AI summary states the pnpm run check:rust && ... chain was removed from this file, but lines 4-6 still contain it (unchanged context). Confirm the intended final state of this hook.

apps/site/astro.config.mjs (1)

16-84: LGTM!

apps/site/src/content/docs/index.mdx (1)

7-8: ⚡ Quick win

Hero image asset found at resolved path

../../assets/houston.webp resolves to apps/site/src/assets/houston.webp, and that file is present in the branch—so the splash hero should render.

apps/site/src/content/docs/display/reasoning.mdx (1)

1-21: LGTM!

apps/site/src/content/docs/about/announcement.mdx (1)

1-13: LGTM!

apps/site/src/content/docs/about/changelog.mdx (1)

1-9: LGTM!

apps/site/src/content/docs/about/feedback.mdx (1)

1-10: LGTM!

apps/site/src/content/docs/display/diagrams.mdx (1)

16-16: Referenced screenshot exists.
The file /display/diagrams/diagram-example.png is present in the repo at apps/site/public/display/diagrams/diagram-example.png.

apps/site/src/content/docs/display/code-display.mdx (1)

17-17: Resolve: referenced code-display screenshot exists
The image /display/code-display/code-display-example.png is present in the repository at apps/site/public/display/code-display/code-display-example.png.

apps/site/src/content/docs/about/contact.mdx (1)

8-8: GitHub repo link is publicly accessible (TouchAI-org/TouchAI).

gh repo view TouchAI-org/TouchAI returns the repository metadata successfully and isPrivate: false, so the linked GitHub repository should be accessible to documentation readers.

apps/site/src/content/docs/display/visual-rendering.mdx (1)

19-21: Ensure /display/* links resolve to the correct Astro routes.

The referenced MDX sources exist (code-display.mdx, diagrams.mdx, reasoning.mdx), but the links still need their Astro content/slug configuration checked to confirm they generate /display/code-display, /display/diagrams, and /display/reasoning.
File: apps/site/src/content/docs/display/visual-rendering.mdx (lines 19-21)

apps/site/src/content/docs/features/built-in-tools.mdx (1)

1-27: LGTM!

apps/site/src/content/docs/features/file-search.mdx (1)

1-33: LGTM!

apps/site/src/content/docs/features/upgrade-model.mdx (1)

1-18: LGTM!

apps/site/src/content/docs/getting-started/installation.mdx (1)

18-18: ⚡ Quick win

Verify image reference: /getting-started/installation/installation-overview.png exists.
The file is present at apps/site/public/getting-started/installation/installation-overview.png, so the MDX reference is valid.

apps/site/src/content/docs/features/code-and-command.mdx (1)

36-36: ⚡ Quick win

Referenced image exists—no change needed.

apps/site/public/features/code-and-command/code-and-command-example.png is present, so the MDX image reference resolves successfully.

apps/site/src/content/docs/getting-started/quickstart.mdx (1)

22-22: ⚡ Quick win

Fix: update link/image checks to match actual MDX references in quickstart.mdx.
The target doc and both referenced screenshots exist in the repo:

  • /settings/model-configuration/apps/site/src/content/docs/settings/model-configuration.mdx
  • /getting-started/quickstart/quickstart-provider-settings.pngapps/site/public/getting-started/quickstart/quickstart-provider-settings.png
  • /getting-started/quickstart/quickstart-first-chat.pngapps/site/public/getting-started/quickstart/quickstart-first-chat.png
apps/site/src/content/docs/getting-started/faq.mdx (1)

18-18: ⚡ Quick win

Internal docs links point to existing MDX pages: /getting-started/installation/, /settings/model-configuration/, and /getting-started/shortcuts/ each have corresponding files in apps/site/src/content/docs/.

apps/site/src/content/docs/getting-started/shortcuts.mdx (1)

72-72: ⚡ Quick win

Confirm screenshot path and fix trailing whitespace

  • /getting-started/shortcuts/shortcuts-overview.png exists at apps/site/public/getting-started/shortcuts/shortcuts-overview.png (matches the MDX reference).
  • Remove trailing whitespace on the F11 row (F11 :切换窗口最大化 `) — line 65.
  • The “grammar” warning referenced near the Esc/cancel logic section needs the exact linter message (line/text) to identify the precise fix.
apps/site/src/content/docs/features/visualization.mdx (2)

1-4: LGTM!


34-34: ⚡ Quick win

Resolve: documentation image reference exists

The referenced image /features/visualization/visualization-example.png is present at apps/site/public/features/visualization/visualization-example.png, so the link shouldn’t be broken.

apps/site/src/content/docs/settings/customization.mdx (1)

1-57: LGTM!

apps/site/src/content/docs/settings/backup-and-restore.mdx (1)

1-35: LGTM!

apps/site/src/content/docs/extensions/mcp-tools.mdx (1)

1-16: LGTM!

apps/site/src/content/docs/extensions/mcp-add-service.mdx (1)

1-36: LGTM!

apps/site/src/content/docs/extensions/mcp-popular-scenarios.mdx (1)

1-55: LGTM!

apps/site/src/content/docs/settings/model-configuration.mdx (1)

1-96: Astro 6.3.1 version claim is valid — Astro v6.3.1 exists (released May 7, 2026). The latest Astro version as of May 31, 2026 is 6.4.0.

apps/site/src/content/docs/settings/api-keys.mdx (1)

13-21: ⚡ Quick win

Update: OpenAI image path casing matches the repo
The MDX references /settings/api-keys/OpenAI/... and the corresponding directory and files exist under apps/site/public/settings/api-keys/OpenAI/ with the exact filenames (openai-platform-home.png, openai-api-keys-page.png, openai-create-key-dialog.png), so this shouldn’t cause case-sensitivity issues on Linux.

Comment thread .husky/commit-msg
Comment on lines +1 to +2
#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Find husky version declared in any package.json
fd -t f '^package.json$' --exec sh -c 'v=$(jq -r ".devDependencies.husky // .dependencies.husky // empty" "$1"); [ -n "$v" ] && echo "$1 -> husky $v"' _ {}
# Also check lockfile-resolved version if present
fd -t f '^pnpm-lock.yaml$' --exec grep -nE "^\s*husky@|/husky@" {} \;

Repository: TouchAI-org/TouchAI

Length of output: 182


Update .husky/commit-msg to match Husky v9+

Repo uses Husky ^9.1.7 (root package.json and apps/desktop/package.json), so the legacy Husky initializer in .husky/commit-msg (shebang + . "$(dirname -- "$0")/_/husky.sh") is deprecated. Remove those two lines and keep only the hook command body.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.husky/commit-msg around lines 1 - 2, Remove the legacy Husky v4-style
initializer lines from the commit hook: delete the shebang "#!/usr/bin/env sh"
and the source line `. "$(dirname -- "$0")/_/husky.sh"` so the file contains
only the hook command body compatible with Husky v9+; ensure the remaining
content is the actual hook script (the command(s) you want to run on commit) and
nothing else.

Comment on lines +6 to +26
## 服务无法连接

1. 命令路径是否正确
2. 所需依赖是否已经安装
3. 环境变量是否填写完整
4. 工作目录是否正确
5. 日志页中是否有具体错误信息

## 工具没有显示

1. 服务是否已经启用
2. 连接状态是否显示“已连接”
3. 服务端是否真的暴露了工具
4. 当前配置是否填写完整

## 响应较慢

1. 适当调大工具超时时间
2. 减少同时启用的 MCP 服务数量
3. 检查本地网络或远程服务状态
4. 优先使用响应更快的服务实现 No newline at end of file

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major | 🏗️ Heavy lift

Add actionable troubleshooting steps and examples to each FAQ section.

The FAQ currently lists diagnostic areas but lacks concrete solutions or guidance. Users encountering MCP setup issues need step-by-step instructions, not just a checklist of what to verify.

Consider enhancing each section with:

  • Specific verification steps (e.g., "run which npx to verify command path" or "check logs at [path]")
  • Common solutions (e.g., "install dependencies with npm install -g @package``")
  • Configuration examples showing correct vs incorrect setup
  • Cross-references to detailed guides like mcp-add-service.mdx
  • Concrete error messages users might see and their meanings

For example, "服务无法连接" could expand:

## 服务无法连接

### 1. 检查命令路径
- 运行 `which [command]``where [command]` 确认命令可执行
- 示例:`which npx` 应返回 `/usr/local/bin/npx`

### 2. 验证依赖安装
- 对于 Node.js 服务:运行 `npm list -g [package]`
- 检查版本是否符合要求
...

This is a high-traffic support document; investing in detailed content significantly improves user experience for a critical troubleshooting scenario.

Would you like me to draft expanded troubleshooting content for these sections, or open an issue to track this enhancement?

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/src/content/docs/extensions/mcp-faq.mdx` around lines 6 - 26,
Expand each FAQ section ("服务无法连接", "工具没有显示", "响应较慢") to include concrete,
actionable troubleshooting steps: under each heading add subheadings like
"检查命令路径", "验证依赖安装", "检查配置和环境变量" with explicit commands/examples (e.g.,
which/where, npm list -g, systemctl status, tail -f /path/to/log), provide
common fixes (install commands, sample correct vs incorrect env var formats),
list specific error messages and their meanings, and add cross-references to the
detailed guide mcp-add-service.mdx; ensure examples show exact command output
expectations and include one short config snippet for typical MCP service env
vars so users can compare.

Comment on lines +6 to +32
这一页讲的是 TouchAI 如何通过 `ShowWidget` 和 `VisualizeReadMe` 两个工具,把复杂结果展示得更直观。

## ShowWidget

`ShowWidget` 用来把结果展示成更适合阅读和交互的界面。

- 展示结构化信息
- 生成卡片、面板、交互结果
- 呈现更清晰的任务结果
- 让信息一眼就能理解

## VisualizeReadMe

`VisualizeReadMe` 用来在生成图表、结构图、界面草图或交互内容前,先读取对应的可视化规范。

它主要帮助:

- 让结果更稳定
- 让结构更清晰
- 让表达方式更统一
- 更适合展示流程、关系和信息结构

## 常见用法

- 抓网页 → 提炼信息 → 做可视化展示
- 整理流程 → 转成结构图 → 用更清晰的方式呈现
- 输出复杂结果 → 用卡片或面板展示

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick | 🔵 Trivial | ⚡ Quick win

Consider adding cross-references to related documentation.

The page could benefit from linking to related documentation pages, such as the built-in tools overview (built-in-tools.mdx) or other feature pages where users might first encounter these tools. This would improve documentation navigation and discoverability.

📚 Example cross-reference additions

For example, add a "See Also" section at the end or inline links:

 这一页讲的是 TouchAI 如何通过 `ShowWidget` 和 `VisualizeReadMe` 两个工具,把复杂结果展示得更直观。
+
+:::tip
+这两个工具是 TouchAI [内置工具](/features/built-in-tools)的一部分。
+:::

Or at the end of the page:

 - 输出复杂结果 → 用卡片或面板展示

+## 相关文档
+
+- [内置工具总览](/features/built-in-tools)
+- [代码与命令执行](/features/code-and-command)
+
 ![可视化展示示意](/features/visualization/visualization-example.png)
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/src/content/docs/features/visualization.mdx` around lines 6 - 32,
Add navigational cross-references to related docs by adding a "See Also" section
(or inline links) that points to the built-in tools overview and other relevant
feature pages; specifically, edit the visualization page that documents
ShowWidget and VisualizeReadMe to include links to built-in-tools.mdx and any
related feature pages where users encounter ShowWidget or VisualizeReadMe,
ensuring the links are labeled clearly (e.g., "Built-in tools overview",
"Related features") and placed at the end of the page and/or near the ShowWidget
and VisualizeReadMe headings for better discoverability.

Comment thread apps/site/src/content/docs/getting-started/quickstart.mdx Outdated
Comment thread apps/site/src/content/docs/getting-started/quickstart.mdx Outdated
Comment on lines +29 to +48
<CardGrid stagger>
<Card title="快速唤起" icon="bolt">
按 `Alt+Space` 立即开始,把 AI 放进你正在进行的任务里。
</Card>
<Card title="当前上下文" icon="monitor">
围绕文件、屏幕、剪贴板和当前内容继续处理,不必每次从头描述背景。
</Card>
<Card title="键盘优先" icon="keyboard">
不用频繁切换鼠标和窗口,更自然地融入桌面工作流。
</Card>
<Card title="内置能力" icon="wrench">
搜索文件、读取内容、执行命令、修改文件,把任务继续推进下去。
</Card>
<Card title="模型选择" icon="key">
自由配置模型提供商和模型,根据任务选择更适合的能力与成本组合。
</Card>
<Card title="扩展服务" icon="search">
通过 MCP 扩展接入更多外部服务,让 TouchAI 能处理更完整的真实任务。
</Card>
</CardGrid>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🌐 Web query:

List of valid built-in icon names in Astro Starlight components (Icon / Card icon prop)

💡 Result:

Built-in Starlight icon names valid for the Icon component name prop (and Card icon prop) are the union type StarlightIcon, documented as “one of Starlight’s built-in icons” [1][2]. Valid names (as listed in Starlight’s Icons Reference): down-caret, right-caret, left-caret, up-arrow, down-arrow, right-arrow, left-arrow, bars, pencil, pen, document, add-document, setting, external, download, cloud-download, moon, sun, clock, laptop, desktop, mobile-android, window, database, server, code-branch, open-book, notes, information, magnifier, forward-slash, close, error, warning, approve-check-circle, approve-check, question-circle, question, rocket, star, puzzle, list-format, analytics, random, padlock, comment, comment-alt, heart, github, gitlab, bitbucket, codePen, farcaster, discord, gitter, twitter, x.com, mastodon, codeberg, youtube, threads, rss, facebook, email, openCollective, blueSky, zulip, pinterest, tiktok, astro, solidjs, alpine, pnpm, biome, bun, mdx, apple, starlight, pkl, cloudflare, vercel, netlify, deno, jsr, backstage, confluence, jetbrains, zed, seti:folder, seti:bsl, seti:mdo, seti:salesforce, seti:asm, seti:bicep, seti:bazel, seti:, c-sharp, seti:json, seti:css, seti:csv, seti:xls, seti:yaml, seti:favicon, seti, seti:odata, seti:grails, seti:graphql, seti:hacklang, seti:ham, seti:mustache, seti:h, seti:haxe, seti:java, seti:javascript, seti:jinja, seti:dart, seti:ocaml, seti:stylus, seti:svelte, seti:swift, seti:db, seti:terraform, seti:tex, seti:default, seti:twig, seti:typescript, seti:css, seti:tsconfig, seti:vite, seti:vue, seti:wasm, seti:wat, seti:xml,:yml, seti:prolog, seti:zig, seti:zip, seti:wgt, seti:illustrator,:photoshop,:pdf, seti:font, seti:image, seti:svg,:sublime, code-search,:babel, seti:bower,:code-climate, seti:gulp, seti:ionic, seti:platformio, seti:stylelint, seti:yarn [1]. Notes: - The Icon component’s name prop is typed as StarlightIcon in the Icon component source [3], and Starlight’s Icons Reference page explains that the built-in icon names are those in the reference list [1]. - Card’s icon prop is also typed as StarlightIcon in the Card component source, meaning it must be one of the same built-in icon names [4].

Citations:


Fix Starlight Card icon prop values (invalid icon names)
Starlight’s Card icon prop must be one of the built-in StarlightIcon names from the Icons Reference; the snippet uses bolt, monitor, keyboard, wrench, key, and search, which are not valid. Replace with valid icons (e.g., use magnifier instead of search).

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/src/content/docs/index.mdx` around lines 29 - 48, The Card
components inside CardGrid are using invalid StarlightIcon names for the icon
prop (symbols: CardGrid, Card, icon); update each Card's icon prop to a valid
StarlightIcon name from the Icons Reference (replace bolt, monitor, keyboard,
wrench, key, search with valid icons such as lightning (or another valid name
for bolt), screen/monitor (if available), keyboard (if a valid name), tools (or
spanner) for wrench, lock/key-outline for key, and magnifier for search) so
every Card's icon prop matches a supported StarlightIcon identifier.

Comment thread apps/site/src/content/docs/settings/data-management.mdx Outdated
Comment thread apps/site/src/content/docs/settings/data-management.mdx Outdated

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 8

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (2)
apps/site/astro.config.mjs (1)

27-78: ⚠️ Potential issue | 🟠 Major

Fix broken nav target for display/visual-rendering

  • Sidebar includes display/visual-rendering, but there’s no corresponding content file under apps/site/src/content/docs/display/; apps/site/src/content/docs/settings/model-configuration.mdx still links to /display/visual-rendering/, so this route would 404.
  • No remaining internal references were found for the removed pages (FAQ/contact/feedback/MCP FAQ/visualization); the existing “反馈” content is under apps/site/src/content/docs/about/support.mdx.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/astro.config.mjs` around lines 27 - 78, The sidebar contains a
broken slug 'display/visual-rendering' (inside the sidebar array) but there is
no corresponding content file; either add the missing content at
apps/site/src/content/docs/display/visual-rendering.mdx or remove/replace that
sidebar entry and update any incoming links (notably the link in
settings/model-configuration.mdx) to point to an existing page (for example
about/support or the correct display page slug). Locate the sidebar entry
labelled '概览' and update the slug or create the missing MDX, then ensure
apps/site/src/content/docs/settings/model-configuration.mdx no longer references
'/display/visual-rendering/'.
apps/site/src/content/docs/getting-started/quickstart.mdx (1)

17-22: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Remove duplicate screenshot.

The same screenshot (quickstart-provider-settings.png) appears on both Line 17 and Line 22, which is redundant.

🔧 Proposed fix
 如果你需要详细配置说明,请查看[模型配置](/settings/model-configuration/)。
 
-![服务商与模型设置页面](/getting-started/quickstart/quickstart-provider-settings.png)
-
 ## 2. 发起第一次对话
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/src/content/docs/getting-started/quickstart.mdx` around lines 17 -
22, Remove the duplicate screenshot insertion of
quickstart-provider-settings.png in the quickstart.mdx content: locate the
repeated image reference (the second occurrence of
"![服务商与模型设置页面](/getting-started/quickstart/quickstart-provider-settings.png)")
and delete it so the image appears only once; ensure surrounding text and links
(the line referencing 模型配置) remain intact and spacing/line breaks are correct
after removal.
♻️ Duplicate comments (1)
apps/site/src/content/docs/getting-started/quickstart.mdx (1)

1-1: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Remove the BOM character.

The file still starts with a UTF-8 BOM (Byte Order Mark) character which can cause parsing issues.

🔧 Proposed fix
----
+---
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/src/content/docs/getting-started/quickstart.mdx` at line 1, The
file begins with a UTF-8 BOM (U+FEFF) before the frontmatter marker; remove the
leading BOM so the file starts directly with the first visible character (the
three dashes '---'). Open
apps/site/src/content/docs/getting-started/quickstart.mdx in a text editor or
IDE and re-save it as UTF-8 without BOM (or delete the invisible U+FEFF
character at the very start) so parsers no longer see the BOM.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@apps/site/astro.config.mjs`:
- Line 48: The navigation entry object { label: 'MCP 扩展', slug:
'extensions/mcp-tools' } creates a redundant label; update the label to a more
specific name (e.g., 'MCP 概述' or 'MCP 简介') so the menu item differs from the
parent section title, by editing the object with label 'MCP 扩展' and slug
'extensions/mcp-tools' to the chosen clearer label.

In `@apps/site/src/content/docs/about/announcement.mdx`:
- Around line 8-9: The two sentences "TouchAI 将于 **2026 年 6 月 1 日** 正式全量上线。" and
"即日起,您可以访问官网体验完整功能。" use conflicting tenses; change the announcement to past or
present-perfect tense so it is accurate both before and after the date. Replace
the first sentence with a past/present-perfect version such as "TouchAI 已于
**2026 年 6 月 1 日** 正式全量上线。" or "自 **2026 年 6 月 1 日** 起,TouchAI
已正式全量上线,您现在可以访问官网体验完整功能。" to ensure temporal consistency and avoid staleness.
- Around line 22-26: The announcement contains a fixed end date (2026-06-14) and
will become misleading after that date; update the announcement content in
announcement.mdx by either (A) adding a clear temporal note such as "活动已于 2026 年
6 月 14 日结束 — 以下为活动历史信息" and switching verbs to past tense for the event details
(活动时间/活动内容/参与方式), or (B) move the item into a dedicated "Past Events" or "历史活动"
section and retain the original wording but prepend a date-range header and an
"已结束" label so readers know it's archival. Ensure the change targets the
announcement block containing the Xiaomi MiMo promotion text.

In `@apps/site/src/content/docs/extensions/mcp-add-service.mdx`:
- Line 42: Fix the missing space in the sentence "在TouchAI 中,可以使用这个服务提供的能力。":
insert a space between "在" and "TouchAI" so the text reads "在 TouchAI
中,可以使用这个服务提供的能力。"; locate the exact string in
apps/site/src/content/docs/extensions/mcp-add-service.mdx and update it
accordingly.

In `@apps/site/src/content/docs/features/code-and-command.mdx`:
- Line 6: Remove the unnecessary leading space before "TouchAI" in the markdown
line that currently reads " TouchAI 通过 `apply_patch` 和 `bash`
两个工具,实现处理代码和本地任务。"; update the sentence to start with "TouchAI" (no leading
space) so the line begins "TouchAI 通过 `apply_patch` 和 `bash` 两个工具,实现处理代码和本地任务。".

In `@apps/site/src/content/docs/features/file-search.mdx`:
- Line 15: The sentence "首次 Everything" is incomplete and missing a verb; update
the text in the docs content (around the phrase "首次 Everything") to read "首次启动
Everything" so the sentence becomes complete and grammatically correct.

In `@apps/site/src/content/docs/settings/api-keys.mdx`:
- Line 2: The page frontmatter uses the title "title: 配置供应商" which focuses on
providers but the content is about obtaining API keys; update the frontmatter
title value to "获取 API Key" (or another phrase matching the content) by
replacing the existing "title: 配置供应商" entry so the page title aligns with the
API key–focused content.
- Around line 25-29: The XiaoMIMO promo block ("首发福利:TouchAI 携手 Xiaomi MiMo 限时免
Tokens" and image at /settings/api-keys/XiaoMIMO/xiaomimo-first-benefit.png)
contains hard-coded dates that will go stale; remove the fixed dates or replace
them with a dynamic expiry mechanism: add a frontmatter field like promoExpires
or promoActive to the MDX and change the rendering to conditionally show the
promo only when the current date is before promoExpires (or simply reword to
timeless phrasing such as “限时活动,详情请关注官方公告”); update the MDX content (or the docs
rendering component that reads the MDX frontmatter) to use that field so the
promo automatically hides after expiration.

---

Outside diff comments:
In `@apps/site/astro.config.mjs`:
- Around line 27-78: The sidebar contains a broken slug
'display/visual-rendering' (inside the sidebar array) but there is no
corresponding content file; either add the missing content at
apps/site/src/content/docs/display/visual-rendering.mdx or remove/replace that
sidebar entry and update any incoming links (notably the link in
settings/model-configuration.mdx) to point to an existing page (for example
about/support or the correct display page slug). Locate the sidebar entry
labelled '概览' and update the slug or create the missing MDX, then ensure
apps/site/src/content/docs/settings/model-configuration.mdx no longer references
'/display/visual-rendering/'.

In `@apps/site/src/content/docs/getting-started/quickstart.mdx`:
- Around line 17-22: Remove the duplicate screenshot insertion of
quickstart-provider-settings.png in the quickstart.mdx content: locate the
repeated image reference (the second occurrence of
"![服务商与模型设置页面](/getting-started/quickstart/quickstart-provider-settings.png)")
and delete it so the image appears only once; ensure surrounding text and links
(the line referencing 模型配置) remain intact and spacing/line breaks are correct
after removal.

---

Duplicate comments:
In `@apps/site/src/content/docs/getting-started/quickstart.mdx`:
- Line 1: The file begins with a UTF-8 BOM (U+FEFF) before the frontmatter
marker; remove the leading BOM so the file starts directly with the first
visible character (the three dashes '---'). Open
apps/site/src/content/docs/getting-started/quickstart.mdx in a text editor or
IDE and re-save it as UTF-8 without BOM (or delete the invisible U+FEFF
character at the very start) so parsers no longer see the BOM.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 71d26e38-b7a1-4b56-b92e-aef7a6e7a495

📥 Commits

Reviewing files that changed from the base of the PR and between eeb6ac9 and 71c3aec.

⛔ Files ignored due to path filters (24)
  • apps/site/public/extensions/mcp-add-service/mcp-add-service-form.png is excluded by !**/*.png
  • apps/site/public/extensions/mcp-add-service/mcp-find-service.png is excluded by !**/*.png
  • apps/site/public/extensions/mcp-add-service/mcp-new-service.png is excluded by !**/*.png
  • apps/site/public/extensions/mcp-add-service/mcp-open-tool-page.png is excluded by !**/*.png
  • apps/site/public/extensions/mcp-add-service/mcp-use-service.png is excluded by !**/*.png
  • apps/site/public/extensions/mcp-add-service/mcp-view-service-logs.png is excluded by !**/*.png
  • apps/site/public/extensions/mcp-add-service/mcp-view-service-tools.png is excluded by !**/*.png
  • apps/site/public/features/file-search/file-search.png is excluded by !**/*.png
  • apps/site/public/getting-started/installation/installation-overview.png is excluded by !**/*.png
  • apps/site/public/getting-started/quickstart/PixPin_2026-05-31_21-18-15.png is excluded by !**/*.png
  • apps/site/public/getting-started/quickstart/quickstart-provider-settings.png is excluded by !**/*.png
  • apps/site/public/getting-started/quickstart/quickstart-settings.png is excluded by !**/*.png
  • apps/site/public/getting-started/shortcuts/shortcuts-overview.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/OpenAI/openai-api-keys-page.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/OpenAI/openai-create-key-dialog.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/OpenAI/openai-fill-key-name.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/OpenAI/openai-fill-key.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/OpenAI/openai-platform-home.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/XiaoMIMO/xiaomimo-api-keys-page.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/XiaoMIMO/xiaomimo-console-login.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/XiaoMIMO/xiaomimo-create-key-dialog.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/XiaoMIMO/xiaomimo-fill-key-name.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/XiaoMIMO/xiaomimo-fill-key.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/XiaoMIMO/xiaomimo-first-benefit.png is excluded by !**/*.png
📒 Files selected for processing (15)
  • apps/site/astro.config.mjs
  • apps/site/src/content/docs/about/announcement.mdx
  • apps/site/src/content/docs/about/changelog.mdx
  • apps/site/src/content/docs/about/support.mdx
  • apps/site/src/content/docs/display/code-display.mdx
  • apps/site/src/content/docs/display/diagrams.mdx
  • apps/site/src/content/docs/extensions/mcp-add-service.mdx
  • apps/site/src/content/docs/extensions/mcp-popular-scenarios.mdx
  • apps/site/src/content/docs/extensions/mcp-tools.mdx
  • apps/site/src/content/docs/features/built-in-tools.mdx
  • apps/site/src/content/docs/features/code-and-command.mdx
  • apps/site/src/content/docs/features/file-search.mdx
  • apps/site/src/content/docs/getting-started/installation.mdx
  • apps/site/src/content/docs/getting-started/quickstart.mdx
  • apps/site/src/content/docs/settings/api-keys.mdx
💤 Files with no reviewable changes (3)
  • apps/site/src/content/docs/features/built-in-tools.mdx
  • apps/site/src/content/docs/display/diagrams.mdx
  • apps/site/src/content/docs/display/code-display.mdx
📜 Review details
🧰 Additional context used
🪛 LanguageTool
apps/site/src/content/docs/extensions/mcp-popular-scenarios.mdx

[uncategorized] ~34-~34: 动词的修饰一般为‘形容词(副词)+地+动词’。您的意思是否是:具体"地"修改
Context: ...汇总成结构化的结果 ## Git - 快速查看代码差异(Diff),理解具体的修改内容 - 自动梳理提交记录(Commit Log),还原开发脉络 - 读取项...

(wb4)


[uncategorized] ~37-~37: 动词的修饰一般为‘形容词(副词)+地+动词’。您的意思是否是:清晰"地"更新
Context: ... - 读取项目结构与配置文件,快速上手新仓库 - 辅助分析版本迭代变化,生成清晰的更新说明 ## 团队沟通工具 (如钉钉/飞书等) - 获取群组或私聊的最新消...

(wb4)


[uncategorized] ~49-~49: “张” 不能与 “数据表” 搭配,请更换量词。
Context: .../ 业务系统 - 无需编写 SQL,直接用对话查询数据库中的数据 - 自动拉取多张数据表,生成综合性的业务报表 - 基于历史业务数据,辅助进行简单的趋势预判与分析 - ...

(wa5)

🔇 Additional comments (9)
apps/site/astro.config.mjs (2)

56-56: Potential missing content for /display/visual-rendering
apps/site/astro.config.mjs registers the navigation slug display/visual-rendering, but no visual-rendering-named (or path-matching) md/mdx content exists under apps/site/src/content/docs/ (the only close match found is apps/site/src/content/docs/display/reasoning.mdx). Add the missing visual-rendering content page or update the slug/link to point to the intended existing page.


2-2: Check Astro 6 vs 5 breaking-change compatibility (config + starlight)

Astro 6 introduces breaking changes from Astro 5 around removed/changed internals (notably: legacy content collections support removed—e.g. legacy.collections, and the astro:ssr-manifest virtual module removed; plus deprecated adapter APIs like loadManifest/loadApp, and other runtime behavior changes). Ensure apps/site/astro.config.mjs (and any other Astro config) doesn’t rely on any of these removed APIs, and confirm @astrojs/[email protected] declares compatibility with Astro 6 (peerDependency/release notes), since the site is on Astro 6.3.1.

apps/site/src/content/docs/extensions/mcp-tools.mdx (1)

1-14: LGTM!

apps/site/src/content/docs/extensions/mcp-popular-scenarios.mdx (1)

1-58: LGTM!

apps/site/src/content/docs/getting-started/installation.mdx (1)

8-8: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Fix the malformed GitHub link.

The GitHub link is not properly formatted. It should use standard markdown link syntax.

🔧 Proposed fix
-请从官方 [GitHub](https://github.com/TouchAI-org/TouchAI)下载最新版本,开启你的 AI 桌面工作流。
+请从官方 [GitHub](https://github.com/TouchAI-org/TouchAI) 下载最新版本,开启你的 AI 桌面工作流。
			> Likely an incorrect or invalid review comment.
apps/site/src/content/docs/about/announcement.mdx (1)

10-18: LGTM!

apps/site/src/content/docs/about/changelog.mdx (1)

6-15: LGTM!

apps/site/src/content/docs/about/support.mdx (2)

20-23: LGTM!


12-13: GitHub support links respond OK; email domain still needs confirmation.

  • https://github.com/TouchAI-org/TouchAI and https://github.com/TouchAI-org/TouchAI/issues return 200 OK.
  • Confirm touch-ai.org has valid MX records (so [email protected] can receive mail); MX/DNS lookup wasn’t available in the current environment.

Comment thread apps/site/astro.config.mjs Outdated
Comment on lines +8 to +9
TouchAI 将于 **2026 年 6 月 1 日** 正式全量上线。即日起,您可以访问官网体验完整功能。

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Temporal inconsistency in launch announcement.

Line 8 uses future tense ("将于...正式全量上线" / "will officially launch") while line 9 uses present tense ("即日起,您可以访问" / "you can now access"). This creates confusion about whether the service has already launched. Additionally, the future tense will become stale for readers visiting after June 1st, 2026.

Consider rewriting to use past tense or present perfect tense for historical clarity.

📝 Suggested revision
-TouchAI 将于 **2026 年 6 月 1 日** 正式全量上线。即日起,您可以访问官网体验完整功能。
+TouchAI 已于 **2026 年 6 月 1 日** 正式全量上线。即日起,您可以访问官网体验完整功能。
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/src/content/docs/about/announcement.mdx` around lines 8 - 9, The
two sentences "TouchAI 将于 **2026 年 6 月 1 日** 正式全量上线。" and "即日起,您可以访问官网体验完整功能。"
use conflicting tenses; change the announcement to past or present-perfect tense
so it is accurate both before and after the date. Replace the first sentence
with a past/present-perfect version such as "TouchAI 已于 **2026 年 6 月 1 日**
正式全量上线。" or "自 **2026 年 6 月 1 日** 起,TouchAI 已正式全量上线,您现在可以访问官网体验完整功能。" to ensure
temporal consistency and avoid staleness.

Comment on lines +22 to +26
TouchAI 携手 **Xiaomi MiMo** 推出首发福利活动:

- **活动时间**:2026 年 6 月 1 日 - 2026 年 6 月 14 日
- **活动内容**:活动期间,**Xiaomi MiMo** 将为 TouchAI 用户提供全系 **限免 Tokens** 支持。
- **参与方式**:登录 TouchAI 即可直接使用,无需额外操作。

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Time-sensitive promotional content will become stale.

The joint promotion announcement includes a specific end date (2026-06-14). After this date, the information will be outdated and potentially misleading to users who read "活动期间" (during the event period) and expect the promotion to still be active.

Consider moving time-bound promotions to a separate section that can be easily archived or removed, or add clear temporal context indicating this is a past event.

💡 Suggested approach

Option 1: Add past-tense framing after expiry:

-TouchAI 携手 **Xiaomi MiMo** 推出首发福利活动:
+TouchAI 携手 **Xiaomi MiMo** 推出首发福利活动(已结束):

Option 2: Move to a dedicated "Past Events" section that maintains historical record.

📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
TouchAI 携手 **Xiaomi MiMo** 推出首发福利活动:
- **活动时间**:2026 年 6 月 1 日 - 2026 年 6 月 14 日
- **活动内容**:活动期间,**Xiaomi MiMo** 将为 TouchAI 用户提供全系 **限免 Tokens** 支持。
- **参与方式**:登录 TouchAI 即可直接使用,无需额外操作。
TouchAI 携手 **Xiaomi MiMo** 推出首发福利活动(已结束)
- **活动时间**:2026 年 6 月 1 日 - 2026 年 6 月 14 日
- **活动内容**:活动期间,**Xiaomi MiMo** 将为 TouchAI 用户提供全系 **限免 Tokens** 支持。
- **参与方式**:登录 TouchAI 即可直接使用,无需额外操作。
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/src/content/docs/about/announcement.mdx` around lines 22 - 26, The
announcement contains a fixed end date (2026-06-14) and will become misleading
after that date; update the announcement content in announcement.mdx by either
(A) adding a clear temporal note such as "活动已于 2026 年 6 月 14 日结束 — 以下为活动历史信息"
and switching verbs to past tense for the event details (活动时间/活动内容/参与方式), or (B)
move the item into a dedicated "Past Events" or "历史活动" section and retain the
original wording but prepend a date-range header and an "已结束" label so readers
know it's archival. Ensure the change targets the announcement block containing
the Xiaomi MiMo promotion text.

Comment thread apps/site/src/content/docs/extensions/mcp-add-service.mdx Outdated
Comment thread apps/site/src/content/docs/features/code-and-command.mdx Outdated
Comment thread apps/site/src/content/docs/features/file-search.mdx Outdated
@@ -0,0 +1,86 @@
---
title: 配置供应商

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick | 🔵 Trivial | 💤 Low value

Consider aligning title with content focus.

The title "配置供应商" (Configure Providers) focuses on provider setup, but the page content and description emphasize API key acquisition. Consider renaming to "获取 API Key" for better consistency.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/src/content/docs/settings/api-keys.mdx` at line 2, The page
frontmatter uses the title "title: 配置供应商" which focuses on providers but the
content is about obtaining API keys; update the frontmatter title value to "获取
API Key" (or another phrase matching the content) by replacing the existing
"title: 配置供应商" entry so the page title aligns with the API key–focused content.

Comment on lines +25 to +29
### 首发福利:TouchAI 携手 Xiaomi MiMo 限时免 Tokens
![XiaoMIMO 首发福利](/settings/api-keys/XiaoMIMO/xiaomimo-first-benefit.png)
- **活动时间**:2026 年 6 月 1 日 - 2026 年 6 月 14 日
- **活动权益**:活动期间,**Xiaomi MiMo** 将为 TouchAI 用户提供全系 **限免 Tokens** 支持。
- **参与方式**:登录 TouchAI 即可直接使用,无需额外操作。

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Time-sensitive promotional content will become outdated.

The XiaoMIMO promotional section contains hard-coded dates (June 1-14, 2026). This content will become stale after the promotion ends and should be either removed or updated with a mechanism to handle expiration.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/src/content/docs/settings/api-keys.mdx` around lines 25 - 29, The
XiaoMIMO promo block ("首发福利:TouchAI 携手 Xiaomi MiMo 限时免 Tokens" and image at
/settings/api-keys/XiaoMIMO/xiaomimo-first-benefit.png) contains hard-coded
dates that will go stale; remove the fixed dates or replace them with a dynamic
expiry mechanism: add a frontmatter field like promoExpires or promoActive to
the MDX and change the rendering to conditionally show the promo only when the
current date is before promoExpires (or simply reword to timeless phrasing such
as “限时活动,详情请关注官方公告”); update the MDX content (or the docs rendering component
that reads the MDX frontmatter) to use that field so the promo automatically
hides after expiration.

velga111 and others added 2 commits June 1, 2026 21:15
Clarify the docs site navigation and rewrite feature and settings pages
so key workflows are easier to scan.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
apps/site/src/content/docs/features/built-in-tools.mdx (1)

20-26: ⚠️ Potential issue | 🟠 Major | ⚡ Quick win

内置工具标识与实现不一致,需修正文档清单。

这里的工具名应与系统约定保持一致:VisualizeReadMe 与实际稳定 ID visualize_read_me 不一致,且缺少 setting。这会导致用户按文档核对工具时产生偏差。建议按 apps/desktop/src/services/BuiltInToolService/types.tsBuiltInToolId 更新该表。

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/src/content/docs/features/built-in-tools.mdx` around lines 20 - 26,
The docs table lists a tool named VisualizeReadMe which doesn't match the
system's stable ID and also omits the setting tool; update the table entries to
match the project's canonical BuiltInToolId values (e.g., replace
VisualizeReadMe with visualize_read_me and add the missing setting entry) so the
markdown list aligns exactly with the BuiltInToolId enum in
BuiltInToolService/types.ts.
♻️ Duplicate comments (3)
apps/site/src/content/docs/settings/api-keys.mdx (2)

2-3: 🧹 Nitpick | 🔵 Trivial | ⚡ Quick win

页面标题与正文重心不一致。

当前标题更像“供应商配置”,但正文是“API Key 获取步骤”;建议改成与内容一致的标题(如“获取 API Key”)。

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/src/content/docs/settings/api-keys.mdx` around lines 2 - 3, The
page frontmatter title currently reads as a vendor configuration label but the
body focuses on steps to obtain API keys; update the frontmatter "title" value
(the top-level title) to match the content, e.g. change the title to "获取 API
Key" (or an equivalent like "获取 API Key 的步骤") so the page heading aligns with
the document body.

25-29: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

促销日期为硬编码,文档会快速过期。

该活动时间是明确的短期区间(2026 年 6 月 1 日到 2026 年 6 月 14 日),到期后会变成陈旧信息。建议改成“限时活动请以官方公告为准”或加可控开关字段。

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/src/content/docs/settings/api-keys.mdx` around lines 25 - 29, The
promo dates are hard-coded in the "首发福利:TouchAI 携手 Xiaomi MiMo 限时免 Tokens"
section (and the associated image
/settings/api-keys/XiaoMIMO/xiaomimo-first-benefit.png); remove the fixed "2026
年 6 月 1 日 - 2026 年 6 月 14 日" line and either replace it with a generic
disclaimer like "限时活动请以官方公告为准" or add configurable frontmatter fields (e.g.,
promoStart, promoEnd, promoActive boolean) and render the date range only when
the flags indicate the promo is active so the content won't become stale.
apps/site/astro.config.mjs (1)

54-54: 🧹 Nitpick | 🔵 Trivial | ⚡ Quick win

Clarify the redundant navigation label.

The first item under the 'MCP 扩展' section is also labeled 'MCP 扩展', creating a confusing navigation hierarchy. Consider renaming to 'MCP 概述' or 'MCP 简介'.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/astro.config.mjs` at line 54, The navigation entry currently uses a
redundant label '{ label: 'MCP 扩展', slug: 'extensions/mcp-tools' }' which
duplicates the section heading; update that entry's label to a clearer name such
as 'MCP 概述' or 'MCP 简介' so the navigation under the MCP 扩展 section is not
confusing (locate the object with label 'MCP 扩展' and slug 'extensions/mcp-tools'
and change its label).
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@apps/site/src/content/docs/features/upgrade-model.mdx`:
- Line 22: The sentence in the docs currently reads
"如果当前模型不在升级链里,会尽量回到升级链中第一个合适的可用模型"; update this phrase to
"如果当前模型不在升级链里,会尽量回到升级链中第一个可用且合适的模型" to improve readability—locate this exact
string in apps/site/src/content/docs/features/upgrade-model.mdx and replace the
substring "第一个合适的可用模型" with "第一个可用且合适的模型".

---

Outside diff comments:
In `@apps/site/src/content/docs/features/built-in-tools.mdx`:
- Around line 20-26: The docs table lists a tool named VisualizeReadMe which
doesn't match the system's stable ID and also omits the setting tool; update the
table entries to match the project's canonical BuiltInToolId values (e.g.,
replace VisualizeReadMe with visualize_read_me and add the missing setting
entry) so the markdown list aligns exactly with the BuiltInToolId enum in
BuiltInToolService/types.ts.

---

Duplicate comments:
In `@apps/site/astro.config.mjs`:
- Line 54: The navigation entry currently uses a redundant label '{ label: 'MCP
扩展', slug: 'extensions/mcp-tools' }' which duplicates the section heading;
update that entry's label to a clearer name such as 'MCP 概述' or 'MCP 简介' so the
navigation under the MCP 扩展 section is not confusing (locate the object with
label 'MCP 扩展' and slug 'extensions/mcp-tools' and change its label).

In `@apps/site/src/content/docs/settings/api-keys.mdx`:
- Around line 2-3: The page frontmatter title currently reads as a vendor
configuration label but the body focuses on steps to obtain API keys; update the
frontmatter "title" value (the top-level title) to match the content, e.g.
change the title to "获取 API Key" (or an equivalent like "获取 API Key 的步骤") so the
page heading aligns with the document body.
- Around line 25-29: The promo dates are hard-coded in the "首发福利:TouchAI 携手
Xiaomi MiMo 限时免 Tokens" section (and the associated image
/settings/api-keys/XiaoMIMO/xiaomimo-first-benefit.png); remove the fixed "2026
年 6 月 1 日 - 2026 年 6 月 14 日" line and either replace it with a generic
disclaimer like "限时活动请以官方公告为准" or add configurable frontmatter fields (e.g.,
promoStart, promoEnd, promoActive boolean) and render the date range only when
the flags indicate the promo is active so the content won't become stale.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: c80a6ce5-3fe9-4790-8b30-353a5d7a8910

📥 Commits

Reviewing files that changed from the base of the PR and between b54ff0d and 6934b44.

⛔ Files ignored due to path filters (13)
  • apps/site/public/display/diagrams/diagram-example.png is excluded by !**/*.png
  • apps/site/public/features/code-and-command/code-and-command-example.png is excluded by !**/*.png
  • apps/site/public/features/file-search/file-search1.png is excluded by !**/*.png
  • apps/site/public/features/file-search/file-search2.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/Gemini/gemini-api-keys-page.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/Gemini/gemini-copy-api-key.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/Gemini/gemini-create-key-dialog.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/Gemini/gemini-create-key.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/Gemini/gemini-create-project.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/Gemini/gemini-fill-project-name.png is excluded by !**/*.png
  • apps/site/public/settings/api-keys/Gemini/gemini-project-home.png is excluded by !**/*.png
  • apps/site/src/assets/touchai-docs-logo-dark.svg is excluded by !**/*.svg
  • apps/site/src/assets/touchai-docs-logo-light.svg is excluded by !**/*.svg
📒 Files selected for processing (9)
  • apps/site/astro.config.mjs
  • apps/site/src/content/docs/extensions/mcp-add-service.mdx
  • apps/site/src/content/docs/extensions/mcp-tools.mdx
  • apps/site/src/content/docs/features/built-in-tools.mdx
  • apps/site/src/content/docs/features/code-and-command.mdx
  • apps/site/src/content/docs/features/file-search.mdx
  • apps/site/src/content/docs/features/upgrade-model.mdx
  • apps/site/src/content/docs/reference/example.md
  • apps/site/src/content/docs/settings/api-keys.mdx
💤 Files with no reviewable changes (1)
  • apps/site/src/content/docs/reference/example.md
📜 Review details
🧰 Additional context used
🪛 LanguageTool
apps/site/src/content/docs/features/upgrade-model.mdx

[uncategorized] ~22-~22: 动词的修饰一般为‘形容词(副词)+地+动词’。您的意思是否是:合适"地"可用
Context: ...它后面的下一档模型 2. 如果当前模型不在升级链里,会尽量回到升级链中第一个合适的可用模型 3. 如果当前模型已经在升级链末尾,或者链里没有更高一级模型,升级会失...

(wb4)

🔇 Additional comments (2)
apps/site/astro.config.mjs (2)

26-31: LGTM!


11-87: ⚡ Quick win

Verify Astro 6.3.1 + Starlight logo config compatibility

  • Astro 6.3.1 is a patch release with no general-user breaking changes surfaced, so the overall defineConfig(...)/Astro config shape should remain compatible.
  • The Starlight logo configuration here—logo: { light, dark, alt, replacesTitle: true }—matches Starlight’s documented LogoConfig options.

模型升级会优先按照你配置的升级链来切换:

1. 如果当前模型就在升级链里,会切到它后面的下一档模型
2. 如果当前模型不在升级链里,会尽量回到升级链中第一个合适的可用模型

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

建议优化文案可读性。

“第一个合适的可用模型”可改为“第一个可用且合适的模型”,读起来更自然。

🧰 Tools
🪛 LanguageTool

[uncategorized] ~22-~22: 动词的修饰一般为‘形容词(副词)+地+动词’。您的意思是否是:合适"地"可用
Context: ...它后面的下一档模型 2. 如果当前模型不在升级链里,会尽量回到升级链中第一个合适的可用模型 3. 如果当前模型已经在升级链末尾,或者链里没有更高一级模型,升级会失...

(wb4)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/src/content/docs/features/upgrade-model.mdx` at line 22, The
sentence in the docs currently reads "如果当前模型不在升级链里,会尽量回到升级链中第一个合适的可用模型"; update
this phrase to "如果当前模型不在升级链里,会尽量回到升级链中第一个可用且合适的模型" to improve readability—locate
this exact string in apps/site/src/content/docs/features/upgrade-model.mdx and
replace the substring "第一个合适的可用模型" with "第一个可用且合适的模型".

@coderabbitai coderabbitai Bot requested a review from hiqiancheng June 2, 2026 08:43

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

♻️ Duplicate comments (3)
apps/site/src/content/docs/getting-started/quickstart.mdx (1)

1-1: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Remove the UTF-8 BOM character.

The file starts with a UTF-8 BOM (Byte Order Mark) character  immediately before the frontmatter delimiter. This can cause parsing issues in some tools and editors. Save the file as UTF-8 without BOM.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/src/content/docs/getting-started/quickstart.mdx` at line 1, The
file begins with a UTF-8 BOM character immediately before the frontmatter
delimiter '---'; remove the BOM so the file starts directly with '---' (save the
file as UTF-8 without BOM) to avoid parser/editor issues when parsing
quickstart.mdx; ensure the leading invisible character is deleted and re-save
the file encoding without BOM.
apps/site/src/content/docs/index.mdx (1)

32-80: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Fix invalid Starlight icon names in Card components.

Multiple Card components use invalid icon prop values that are not part of Starlight's built-in icon set. The invalid icons include: bolt, monitor, keyboard, wrench, key, and search.

Replace these with valid Starlight icon names:

  • Use magnifier instead of search
  • Use setting instead of wrench
  • Use padlock instead of key
  • Consider rocket, star, or approve-check instead of bolt
  • Use laptop or desktop instead of monitor
  • Remove keyboard or use a generic icon like approve-check
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/src/content/docs/index.mdx` around lines 32 - 80, Several Card
components use invalid Starlight icon names; update the icon props on each Card
to valid names: change icon="search" to icon="magnifier" (Cards titled "扩展服务"
and any others using search), change icon="wrench" to icon="setting" (Card
titled "内置能力"), change icon="key" to icon="padlock" (Cards titled "2. 配置模型" and
"模型选择"), replace icon="bolt" with a valid choice like icon="rocket" or
icon="approve-check" (Cards titled "1. 安装 TouchAI" and "核心能力"), change
icon="monitor" to icon="desktop" or "laptop" (Card titled "当前上下文"), and remove
or swap icon="keyboard" to a generic valid icon such as "approve-check" (Card
titled "键盘优先"); search for the Card components by their title strings to locate
and edit the icon props.
apps/site/src/content/docs/features/upgrade-model.mdx (1)

22-22: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Improve word order for better readability.

The phrase "第一个合适的可用模型" reads awkwardly. Rearranging to "第一个可用且合适的模型" flows more naturally in Chinese.

🔧 Proposed fix
-2. 如果当前模型不在升级链里,会尽量回到升级链中第一个合适的可用模型
+2. 如果当前模型不在升级链里,会尽量回到升级链中第一个可用且合适的模型
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/src/content/docs/features/upgrade-model.mdx` at line 22, 在 docs
文档的该句中将措辞“第一个合适的可用模型”改为更通顺的“第一个可用且合适的模型”;定位到
apps/site/src/content/docs/features/upgrade-model.mdx 中包含该句的段落并直接替换该短语以改善语序和可读性。
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@apps/site/src/content/docs/features/built-in-tools.mdx`:
- Line 18: Change the inconsistent tool name by making the display name match
the code identifier: replace the PascalCase "ShowWidget" with the snake_case
"show_widget" in the table so the display text and the symbol show_widget align
with other entries; locate the table row that currently shows "ShowWidget
`show_widget`" and update the visible name to "show_widget `show_widget`" (or
alternatively change the code identifier to ShowWidget everywhere if you prefer
PascalCase, but be consistent across all tool entries).

In `@apps/site/src/content/docs/features/upgrade-model.mdx`:
- Line 11: The numbered headings like "### 1.配置升级链" (and similarly the one at
line 17) are missing a space after the period; update those headings to add a
space after the number and period (e.g., change "### 1.配置升级链" to "### 1. 配置升级链")
so numbered list markers follow the documentation style and improve readability.

---

Duplicate comments:
In `@apps/site/src/content/docs/features/upgrade-model.mdx`:
- Line 22: 在 docs 文档的该句中将措辞“第一个合适的可用模型”改为更通顺的“第一个可用且合适的模型”;定位到
apps/site/src/content/docs/features/upgrade-model.mdx 中包含该句的段落并直接替换该短语以改善语序和可读性。

In `@apps/site/src/content/docs/getting-started/quickstart.mdx`:
- Line 1: The file begins with a UTF-8 BOM character immediately before the
frontmatter delimiter '---'; remove the BOM so the file starts directly with
'---' (save the file as UTF-8 without BOM) to avoid parser/editor issues when
parsing quickstart.mdx; ensure the leading invisible character is deleted and
re-save the file encoding without BOM.

In `@apps/site/src/content/docs/index.mdx`:
- Around line 32-80: Several Card components use invalid Starlight icon names;
update the icon props on each Card to valid names: change icon="search" to
icon="magnifier" (Cards titled "扩展服务" and any others using search), change
icon="wrench" to icon="setting" (Card titled "内置能力"), change icon="key" to
icon="padlock" (Cards titled "2. 配置模型" and "模型选择"), replace icon="bolt" with a
valid choice like icon="rocket" or icon="approve-check" (Cards titled "1. 安装
TouchAI" and "核心能力"), change icon="monitor" to icon="desktop" or "laptop" (Card
titled "当前上下文"), and remove or swap icon="keyboard" to a generic valid icon such
as "approve-check" (Card titled "键盘优先"); search for the Card components by their
title strings to locate and edit the icon props.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 631cad88-e541-4160-b8e2-45a9176f1013

📥 Commits

Reviewing files that changed from the base of the PR and between 6934b44 and b56c9dd.

⛔ Files ignored due to path filters (11)
  • apps/site/public/extensions/mcp-add-service/mcp-add-service-form.png is excluded by !**/*.png
  • apps/site/public/extensions/mcp-add-service/mcp-use-service.png is excluded by !**/*.png
  • apps/site/public/extensions/mcp-add-service/mcp-view-service-logs.png is excluded by !**/*.png
  • apps/site/public/extensions/mcp-add-service/mcp-view-service-tools.png is excluded by !**/*.png
  • apps/site/public/features/file-search/file-search3.png is excluded by !**/*.png
  • apps/site/public/features/file-search/file-search4.png is excluded by !**/*.png
  • apps/site/public/features/upgrade-model/upgrade-model-success.png is excluded by !**/*.png
  • apps/site/public/features/upgrade-model/upgrade-model.png is excluded by !**/*.png
  • apps/site/public/getting-started/shortcuts/shortcuts-overview.png is excluded by !**/*.png
  • apps/site/src/assets/touchai-docs-logo-dark.svg is excluded by !**/*.svg
  • apps/site/src/assets/touchai-docs-logo-light.svg is excluded by !**/*.svg
📒 Files selected for processing (17)
  • apps/site/astro.config.mjs
  • apps/site/src/content.config.ts
  • apps/site/src/content/docs/about/changelog.mdx
  • apps/site/src/content/docs/extensions/mcp-add-service.mdx
  • apps/site/src/content/docs/extensions/mcp-popular-scenarios.mdx
  • apps/site/src/content/docs/extensions/mcp-tools.mdx
  • apps/site/src/content/docs/features/built-in-tools.mdx
  • apps/site/src/content/docs/features/code-and-command.mdx
  • apps/site/src/content/docs/features/file-search.mdx
  • apps/site/src/content/docs/features/upgrade-model.mdx
  • apps/site/src/content/docs/features/visualization.mdx
  • apps/site/src/content/docs/getting-started/quickstart.mdx
  • apps/site/src/content/docs/index.mdx
  • apps/site/src/content/docs/settings/api-keys.mdx
  • apps/site/src/content/docs/settings/model-configuration.mdx
  • apps/site/src/content/i18n/zh-CN.json
  • apps/site/src/pages/index.astro
💤 Files with no reviewable changes (1)
  • apps/site/src/pages/index.astro
📜 Review details
🧰 Additional context used
🪛 LanguageTool
apps/site/src/content/docs/features/upgrade-model.mdx

[uncategorized] ~22-~22: 动词的修饰一般为‘形容词(副词)+地+动词’。您的意思是否是:合适"地"可用
Context: ...它后面的下一档模型 2. 如果当前模型不在升级链里,会尽量回到升级链中第一个合适的可用模型 3. 如果当前模型已经在升级链末尾,或者链里没有更高一级模型,升级会失...

(wb4)

apps/site/src/content/docs/features/visualization.mdx

[uncategorized] ~19-~19: 动词的修饰一般为‘形容词(副词)+地+动词’。您的意思是否是:清晰"地"排版
Context: ...结构的任务 2. TouchAI 根据内容类型决定更适合用代码块、结构图或更清晰的排版来表达 3. 你先快速浏览结果,再继续追问细节、要求修改或补充说明 ###...

(wb4)

🔇 Additional comments (17)
apps/site/astro.config.mjs (2)

10-50: LGTM!


67-77: LGTM!

apps/site/src/content.config.ts (1)

2-3: LGTM!

Also applies to: 7-7

apps/site/src/content/i18n/zh-CN.json (1)

1-4: LGTM!

apps/site/src/content/docs/getting-started/quickstart.mdx (1)

6-80: LGTM!

apps/site/src/content/docs/settings/api-keys.mdx (2)

6-10: Remove or conditionalize the dated XiaoMIMO promo block.

This section is still hard-coded to 2026 年 6 月 1 日 - 2026 年 6 月 14 日, so the page will go stale as soon as the campaign ends. This was already raised on an earlier revision and is still unresolved.


71-71: LGTM!

apps/site/src/content/docs/settings/model-configuration.mdx (1)

6-6: LGTM!

Also applies to: 10-10, 38-38, 54-55

apps/site/src/content/docs/extensions/mcp-tools.mdx (1)

2-2: LGTM!

Also applies to: 6-8

apps/site/src/content/docs/extensions/mcp-add-service.mdx (1)

6-6: LGTM!

Also applies to: 10-14

apps/site/src/content/docs/extensions/mcp-popular-scenarios.mdx (1)

2-3: LGTM!

Also applies to: 6-49

apps/site/src/content/docs/about/changelog.mdx (3)

1-4: LGTM!


6-8: LGTM!


9-16: LGTM!

apps/site/src/content/docs/features/code-and-command.mdx (1)

1-31: LGTM!

apps/site/src/content/docs/features/file-search.mdx (1)

1-49: LGTM!

apps/site/src/content/docs/features/visualization.mdx (1)

33-33: Confirm visualization screenshot paths are correct

The /display/... image URLs in apps/site/src/content/docs/features/visualization.mdx (lines 33 and 45) resolve to existing assets under apps/site/public/display/. The /features/... prefix used by other feature docs also matches apps/site/public/features/, so the differing prefixes are consistent with the repo’s public asset structure.

| 读取内容`read` | 打开本地文件、图片或 PDF 内容 |
| 文件搜索`file_search` | 在本机快速定位文件与目录 |
| 网页抓取`web_fetch` | 获取网页内容并继续整理信息 |
| ShowWidget `show_widget` | 在聊天中以内联可交互的方式展示可视化结果 |

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Inconsistent capitalization for show_widget tool.

The display name "ShowWidget" uses PascalCase while the code identifier uses snake_case (show_widget). The other tools in the table consistently show either Chinese descriptions or use snake_case identifiers (e.g., 终端命令bash, 读取内容read).

Consider using a consistent format for all tool names in the table.

🔧 Proposed fix
-| ShowWidget `show_widget` | 在聊天中以内联可交互的方式展示可视化结果 |
+| 结果展示`show_widget` | 在聊天中以内联可交互的方式展示可视化结果 |

Or if you prefer to keep the English name:

-| ShowWidget `show_widget` | 在聊天中以内联可交互的方式展示可视化结果 |
+| `show_widget` | 在聊天中以内联可交互的方式展示可视化结果 |
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
| ShowWidget `show_widget` | 在聊天中以内联可交互的方式展示可视化结果 |
| 结果展示`show_widget` | 在聊天中以内联可交互的方式展示可视化结果 |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/src/content/docs/features/built-in-tools.mdx` at line 18, Change
the inconsistent tool name by making the display name match the code identifier:
replace the PascalCase "ShowWidget" with the snake_case "show_widget" in the
table so the display text and the symbol show_widget align with other entries;
locate the table row that currently shows "ShowWidget `show_widget`" and update
the visible name to "show_widget `show_widget`" (or alternatively change the
code identifier to ShowWidget everywhere if you prefer PascalCase, but be
consistent across all tool entries).


## 使用

### 1.配置升级链

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Add space after numbered list markers.

The section headings use numbered list format but are missing spaces after the period. Chinese documentation typically includes a space after numbered markers for better readability.

🔧 Proposed fix
-### 1.配置升级链
+### 1. 配置升级链
-### 2.模型自动切换
+### 2. 模型自动切换

Also applies to: 17-17

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/site/src/content/docs/features/upgrade-model.mdx` at line 11, The
numbered headings like "### 1.配置升级链" (and similarly the one at line 17) are
missing a space after the period; update those headings to add a space after the
number and period (e.g., change "### 1.配置升级链" to "### 1. 配置升级链") so numbered
list markers follow the documentation style and improve readability.

@CLAassistant

CLAassistant commented Jun 2, 2026

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

Align MCP, quickstart, and feature docs across Chinese and English.
Reorganize doc images so page assets live beside their corresponding docs.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
@velga111 velga111 force-pushed the feat/docs-site-clean branch from f6000f9 to 952a0df Compare June 2, 2026 17:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:frontend Frontend UI or view-layer changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants