refactor(mcp): u6u_* tool rename → arcrun_* + 前綴收斂單一來源 #20

Merged
Leo merged 3 commits from feat/mcp-tool-rename-arcrun into main 2026-07-07 06:02:10 +00:00
Owner

目標

把 arcrun-mcp worker 剩餘的 u6u_* tool 全面 rename 為 arcrun_*,並把 tool 名前綴收斂成單一 brand 變數。草稿 PR,不 merge、不部署。

leo 兩要求怎麼達成

要求 1:connector 零 u6u 洩漏

  • 所有 user-visible tool 名現在都是 arcrun_*mcp/src 內已無任何註冊為 u6u_ 的 tool。
  • MCP server name 也由 u6u-mcp-serverarcrun-mcp-servermcp-handler.ts)。
  • inter-tool hint / 描述字串 / 註解內的 u6u_* 名字全數更新。
  • 不留 u6u_ alias*(避免 u6u 名字仍出現在 tool 清單)。

要求 2:前綴單一真相源

  • 新增 mcp/src/brand.tsTOOL_PREFIX = "arcrun" + toolName(suffix) helper。
  • 全部 34 個 server.tool() 註冊(含既有 arcrun_*)改走 toolName("suffix"),前綴不再明碼散寫。
  • 未來 rebrand 只改 brand.ts 一行;語意後綴(push_workflow…)保留可讀。
  • (可選)支援 env ARCRUN_TOOL_PREFIX 覆蓋,預設 arcrun。

rename 對照表

舊 u6u_* 結果
u6u_deploy_workflow 移除(打不存在 endpoint,已壞)→ arcrun_push_workflow 取代
u6u_execute_workflow 移除 → arcrun_run_workflow 取代
u6u_get_workflow 移除(重複)→ arcrun_get_workflow(crud 版)取代
u6u_list_workflows 移除(重複)→ arcrun_list_workflows(crud 版)取代
u6u_search_workflows rename → arcrun_search_workflows(獨有能力保留)
u6u_get_component rename → arcrun_get_component
u6u_get_component_guide rename → arcrun_get_component_guide
u6u_list_components rename → arcrun_list_components
u6u_search_components rename → arcrun_search_components
u6u_publish_component rename → arcrun_publish_component
u6u_create_tag rename → arcrun_create_tag
u6u_delete_tag rename → arcrun_delete_tag
u6u_list_tags rename → arcrun_list_tags
u6u_tag_resource rename → arcrun_tag_resource
u6u_untag_resource rename → arcrun_untag_resource
u6u_get_gui_context rename → arcrun_get_gui_context

檔案一律 git mv(保留歷史),tool 名 + 描述 + 引用一致。

與 auth PR #15 的協調

從 main 開分支,改動集中在 mcp/src/tools/** + 新增 mcp/src/brand.ts + mcp/src/mcp-handler.ts(1 行 server name)。未碰 index.ts / types.ts / wrangler.toml / middleware / oauth(#15 的地盤)。兩 PR 可由 leo 分別 merge。

完整改動範圍:mcp/src/tools/**、新增 mcp/src/brand.tsmcp/src/mcp-handler.ts(server name 1 行)、mcp/GUIDE.mdmcp/README.md,以及 cli/src/commands/list.ts(1 行註解 u6u_list_workflowsarcrun_list_workflows)。

文件同步(後補 commit 53080ff)

  • mcp/GUIDE.md(25 處)+ mcp/README.md(21 處)原本仍在教 u6u_*(含已刪的 4 個 workflow tool),已全面改教現役 arcrun_*,並修正因換工具而失真的流程/參數(validate→push→run;get_workflow 參數 name)。兩檔 grep 零 u6u

驗證

  • tsc --noEmit exit 0
  • vitest run 19/19 綠
  • grep:mcp/src 已無 u6u_ tool 註冊

殘留 u6u(非 tool 名)

  • kbdb_* 6 個 tool 是獨立命名空間(KBDB 資料層,非 arcrun 品牌),刻意不收進 brand 前綴。
  • 非 connector-facing 的 u6u 字樣(index.ts 根路徑健康字串、*.schema.json title、pages/inspector.* 測試頁、package.json description)本次未動:index.ts 為避開 #15 衝突,其餘非 tool 清單可見面,留待後續順手清。
  • cypher-executor OpenAPI Bearer u6u_xxxxx 範例(另一 worker、非 tool 名)與 system-dev/docs/** md 未動。

🤖 Generated with Claude Code

https://claude.ai/code/session_015d5jDbuqT5Htwv3Q88XXKk

## 目標 把 arcrun-mcp worker 剩餘的 `u6u_*` tool 全面 rename 為 `arcrun_*`,並把 tool 名前綴收斂成單一 brand 變數。**草稿 PR,不 merge、不部署。** ## leo 兩要求怎麼達成 ### 要求 1:connector 零 u6u 洩漏 - 所有 user-visible tool 名現在都是 `arcrun_*`;`mcp/src` 內已無任何註冊為 `u6u_` 的 tool。 - MCP server name 也由 `u6u-mcp-server` → `arcrun-mcp-server`(`mcp-handler.ts`)。 - inter-tool hint / 描述字串 / 註解內的 `u6u_*` 名字全數更新。 - **不留 u6u_* alias**(避免 u6u 名字仍出現在 tool 清單)。 ### 要求 2:前綴單一真相源 - 新增 `mcp/src/brand.ts`:`TOOL_PREFIX = "arcrun"` + `toolName(suffix)` helper。 - 全部 34 個 `server.tool()` 註冊(含既有 arcrun_*)改走 `toolName("suffix")`,前綴不再明碼散寫。 - 未來 rebrand 只改 `brand.ts` 一行;語意後綴(push_workflow…)保留可讀。 - (可選)支援 env `ARCRUN_TOOL_PREFIX` 覆蓋,預設 arcrun。 ## rename 對照表 | 舊 u6u_* | 結果 | |---|---| | u6u_deploy_workflow | 移除(打不存在 endpoint,已壞)→ arcrun_push_workflow 取代 | | u6u_execute_workflow | 移除 → arcrun_run_workflow 取代 | | u6u_get_workflow | 移除(重複)→ arcrun_get_workflow(crud 版)取代 | | u6u_list_workflows | 移除(重複)→ arcrun_list_workflows(crud 版)取代 | | u6u_search_workflows | rename → arcrun_search_workflows(獨有能力保留)| | u6u_get_component | rename → arcrun_get_component | | u6u_get_component_guide | rename → arcrun_get_component_guide | | u6u_list_components | rename → arcrun_list_components | | u6u_search_components | rename → arcrun_search_components | | u6u_publish_component | rename → arcrun_publish_component | | u6u_create_tag | rename → arcrun_create_tag | | u6u_delete_tag | rename → arcrun_delete_tag | | u6u_list_tags | rename → arcrun_list_tags | | u6u_tag_resource | rename → arcrun_tag_resource | | u6u_untag_resource | rename → arcrun_untag_resource | | u6u_get_gui_context | rename → arcrun_get_gui_context | 檔案一律 `git mv`(保留歷史),tool 名 + 描述 + 引用一致。 ## 與 auth PR #15 的協調 從 main 開分支,改動集中在 `mcp/src/tools/**` + 新增 `mcp/src/brand.ts` + `mcp/src/mcp-handler.ts`(1 行 server name)。未碰 `index.ts` / `types.ts` / `wrangler.toml` / `middleware` / `oauth`(#15 的地盤)。兩 PR 可由 leo 分別 merge。 完整改動範圍:`mcp/src/tools/**`、新增 `mcp/src/brand.ts`、`mcp/src/mcp-handler.ts`(server name 1 行)、`mcp/GUIDE.md`、`mcp/README.md`,以及 `cli/src/commands/list.ts`(1 行註解 `u6u_list_workflows`→`arcrun_list_workflows`)。 ## 文件同步(後補 commit 53080ff) - `mcp/GUIDE.md`(25 處)+ `mcp/README.md`(21 處)原本仍在教 `u6u_*`(含已刪的 4 個 workflow tool),已全面改教現役 `arcrun_*`,並修正因換工具而失真的流程/參數(validate→push→run;get_workflow 參數 `name`)。兩檔 grep 零 `u6u`。 ## 驗證 - `tsc --noEmit` exit 0 - `vitest run` 19/19 綠 - grep:`mcp/src` 已無 `u6u_` tool 註冊 ## 殘留 u6u(非 tool 名) - `kbdb_*` 6 個 tool 是獨立命名空間(KBDB 資料層,非 arcrun 品牌),刻意不收進 brand 前綴。 - 非 connector-facing 的 u6u 字樣(`index.ts` 根路徑健康字串、`*.schema.json` title、`pages/inspector.*` 測試頁、`package.json` description)本次未動:`index.ts` 為避開 #15 衝突,其餘非 tool 清單可見面,留待後續順手清。 - `cypher-executor` OpenAPI `Bearer u6u_xxxxx` 範例(另一 worker、非 tool 名)與 `system-dev/docs/**` md 未動。 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_015d5jDbuqT5Htwv3Q88XXKk
Leo added 1 commit 2026-07-07 05:23:24 +00:00
零 u6u 洩漏(leo 要求 1):connector tool 清單只剩 arcrun_*,並移除壞掉/
重複的 u6u_ workflow tool(deploy/execute/get/list_workflows 由 arcrun_
push/run/get/list_workflows 取代);MCP server name 也由 u6u-mcp-server
改 arcrun-mcp-server。

前綴單一真相源(leo 要求 2):新增 mcp/src/brand.ts(TOOL_PREFIX + toolName()
helper),所有 server.tool() 註冊一律走 toolName("suffix"),前綴不再明碼散寫。
未來 rebrand 只改 brand.ts 一行。

- 12 個獨有能力 tool rename(component/tag/gui/search_workflows)
- 4 個重複/壞掉 tool 移除
- inter-tool hint、描述字串、註解內 u6u_ 名字全數更新
- tsc exit 0;vitest 19/19 綠

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015d5jDbuqT5Htwv3Q88XXKk
Leo changed title from draft: refactor(mcp): u6u_* tool rename → arcrun_* + 前綴收斂單一來源 to WIP: refactor(mcp): u6u_* tool rename → arcrun_* + 前綴收斂單一來源 2026-07-07 05:23:34 +00:00
Leo marked the pull request as ready for review 2026-07-07 05:27:09 +00:00
Author
Owner

[總管] PR #20 審查——宣稱逐項核實過:

核實通過

  • mcp/src 零 u6u tool 註冊(registry 全走 arcrun_*;殘留僅 schema title/健康字串/inspector 頁,與自報一致)。
  • brand.ts 單一真相源成立,抽查 tool 檔確實走 toolName();檔案走 git mv 保留歷史。
  • 刪除理由屬實:抽查 u6u_deploy_workflowhttp://cypher-executor/workflows/deploy,cypher-executor 現源碼無此 route=確實是死 endpoint(#11 CLI/MCP 漂移家族)。全 repo 對 4 個被刪 tool 的引用只剩註解,無功能呼叫方。
  • 本機實跑:vitest 19/19 綠、tsc --noEmit 過。
  • #15 檔案不相交,可分別 merge。

要求補上再 merge(1 條)

mcp/GUIDE.md(25 處)與 mcp/README.md(21 處)仍在教 u6u_* 工具名,且包括本 PR 刪掉的 4 個 tool(GUIDE.md L69-75 把 u6u_execute_workflowu6u_deploy_workflow 當標準流程教)。這不是「非 connector 面的裝飾殘留」——GUIDE/README 是給 AI/用戶讀的操作文件,教一套已被刪除的 API=下一個 CC 照文件走就撞牆(死文件=錯誤信號,rule-must-be-readable 的鏡像)。兩檔都在 mcp/ 自己地盤、與 #15 零衝突,請在本 PR 內一併更新:改成 arcrun_* 現役名,刪除段落改指 arcrun_push_workflow/arcrun_run_workflow

小紀律(不擋 merge)

  • cli/src/commands/list.ts 有 1 行註解改動,PR body 的改動範圍沒申報——是無害修正,但範圍申報要完整。
  • ARCRUN_TOOL_PREFIX env 覆蓋在 Workers runtime 讀 process.env 基本不生效(vars 走 env binding),實際只有測試/本機用——註解已說是過渡用,可接受,別對外文件宣傳這功能。

merge 後跨 repo 收尾(不歸本 PR,總管記帳)

頂層/mira 文件與記憶裡寫死的 u6u_search_components 等引用、scripts/thin-shell-smoke.sh 註解、cypher-executor OpenAPI Bearer u6u_xxxxx 範例——merge 部署後由總管統一掃一輪更新。

[總管] PR #20 審查——宣稱逐項核實過: ## 核實通過 - ✅ `mcp/src` 零 u6u tool 註冊(registry 全走 `arcrun_*`;殘留僅 schema title/健康字串/inspector 頁,與自報一致)。 - ✅ `brand.ts` 單一真相源成立,抽查 tool 檔確實走 `toolName()`;檔案走 `git mv` 保留歷史。 - ✅ 刪除理由屬實:抽查 `u6u_deploy_workflow` 打 `http://cypher-executor/workflows/deploy`,cypher-executor 現源碼**無此 route**=確實是死 endpoint(#11 CLI/MCP 漂移家族)。全 repo 對 4 個被刪 tool 的引用只剩註解,無功能呼叫方。 - ✅ 本機實跑:`vitest` 19/19 綠、`tsc --noEmit` 過。 - ✅ 與 #15 檔案不相交,可分別 merge。 ## 要求補上再 merge(1 條) **`mcp/GUIDE.md`(25 處)與 `mcp/README.md`(21 處)仍在教 `u6u_*` 工具名,且包括本 PR 刪掉的 4 個 tool**(GUIDE.md L69-75 把 `u6u_execute_workflow`/`u6u_deploy_workflow` 當標準流程教)。這不是「非 connector 面的裝飾殘留」——GUIDE/README 是給 AI/用戶讀的操作文件,**教一套已被刪除的 API=下一個 CC 照文件走就撞牆**(死文件=錯誤信號,rule-must-be-readable 的鏡像)。兩檔都在 mcp/ 自己地盤、與 #15 零衝突,請在本 PR 內一併更新:改成 `arcrun_*` 現役名,刪除段落改指 `arcrun_push_workflow`/`arcrun_run_workflow`。 ## 小紀律(不擋 merge) - `cli/src/commands/list.ts` 有 1 行註解改動,PR body 的改動範圍沒申報——是無害修正,但範圍申報要完整。 - `ARCRUN_TOOL_PREFIX` env 覆蓋在 Workers runtime 讀 `process.env` 基本不生效(vars 走 env binding),實際只有測試/本機用——註解已說是過渡用,可接受,別對外文件宣傳這功能。 ## merge 後跨 repo 收尾(不歸本 PR,總管記帳) 頂層/mira 文件與記憶裡寫死的 `u6u_search_components` 等引用、`scripts/thin-shell-smoke.sh` 註解、cypher-executor OpenAPI `Bearer u6u_xxxxx` 範例——merge 部署後由總管統一掃一輪更新。
Leo added 1 commit 2026-07-07 05:38:03 +00:00
死文件治理:GUIDE.md(25 處)與 README.md(21 處)仍在教 u6u_* 工具名,
含本 PR 已刪的 4 個 tool(deploy/execute/get/list_workflows),下個 CC 照著走會撞牆。

- 全部 u6u_* → 現役 arcrun_*(component/tag/gui 那批用新名)
- 已刪 tool 改指現役:execute→run、deploy→push、get/list_workflows→crud 版
- 修正因換工具而失真的流程與參數:沙盒測試段改為 arcrun_validate_yaml(部署前
  schema 驗證)→ arcrun_push_workflow(部署)→ arcrun_run_workflow(觸發,帶
  api_key/name/input);get_workflow 參數 workflow_id→name
- 順帶把兩處品牌 prose "u6u" 改 "Arcrun"
- grep 確認兩檔零 u6u

brand.ts:釐清 ARCRUN_TOOL_PREFIX 覆蓋僅內部 rebrand 過渡 / 測試鉤子,
Workers runtime 無 process 全域基本不生效、勿當對外特性。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015d5jDbuqT5Htwv3Q88XXKk
Author
Owner

[總管] 補上文件層(merge 前必補項已處理):

  • mcp/GUIDE.md(25 處)+ mcp/README.md(21 處)原本仍在教 u6u_*,含本 PR 已刪的 4 個 tool(例:GUIDE 開發流程總覽 + 部署步驟把 u6u_execute_workflow/u6u_deploy_workflow 當標準流程)。已全面改教現役 arcrun_*
  • 已刪 tool 改指現役:execute→arcrun_run_workflow、deploy→arcrun_push_workflow、get/list_workflows→crud 版。因換工具而失真的流程也一併修正:沙盒測試段 → arcrun_validate_yaml(部署前 schema 驗證)→ arcrun_push_workflow(部署)→ arcrun_run_workflow(觸發,帶 api_key/name/input);get_workflow 參數 workflow_idname。順帶兩處品牌 prose u6uArcrun
  • grep 證據:兩檔零 u6u(tool 名與品牌名皆無)。
  • brand.ts 註解釐清:ARCRUN_TOOL_PREFIX 覆蓋僅內部 rebrand 過渡 / 測試鉤子,Workers runtime 無 process 全域基本不生效,非對外特性、勿寫進對外文件;正式 rebrand 直接改本檔預設值。
  • 補申報範圍:本 PR 另含 1 行 cli/src/commands/list.ts 註解 u6u_list_workflowsarcrun_list_workflows(已補進 PR body 範圍申報)。

驗證:tsc --noEmit exit 0、vitest run 19/19 綠。commit 53080ff。紅線遵守:只碰 Gitea、未 merge、未部署、未動 GitHub。

[總管] 補上文件層(merge 前必補項已處理): - `mcp/GUIDE.md`(25 處)+ `mcp/README.md`(21 處)原本仍在教 `u6u_*`,含本 PR 已刪的 4 個 tool(例:GUIDE 開發流程總覽 + 部署步驟把 `u6u_execute_workflow`/`u6u_deploy_workflow` 當標準流程)。已全面改教現役 `arcrun_*`。 - 已刪 tool 改指現役:execute→`arcrun_run_workflow`、deploy→`arcrun_push_workflow`、get/list_workflows→crud 版。因換工具而失真的流程也一併修正:沙盒測試段 → `arcrun_validate_yaml`(部署前 schema 驗證)→ `arcrun_push_workflow`(部署)→ `arcrun_run_workflow`(觸發,帶 api_key/name/input);`get_workflow` 參數 `workflow_id`→`name`。順帶兩處品牌 prose `u6u`→`Arcrun`。 - grep 證據:兩檔零 `u6u`(tool 名與品牌名皆無)。 - `brand.ts` 註解釐清:`ARCRUN_TOOL_PREFIX` 覆蓋僅內部 rebrand 過渡 / 測試鉤子,Workers runtime 無 process 全域基本不生效,非對外特性、勿寫進對外文件;正式 rebrand 直接改本檔預設值。 - 補申報範圍:本 PR 另含 1 行 `cli/src/commands/list.ts` 註解 `u6u_list_workflows`→`arcrun_list_workflows`(已補進 PR body 範圍申報)。 驗證:`tsc --noEmit` exit 0、`vitest run` 19/19 綠。commit `53080ff`。紅線遵守:只碰 Gitea、未 merge、未部署、未動 GitHub。
Leo marked the pull request as work in progress 2026-07-07 05:39:20 +00:00
Author
Owner

[總管] 覆核 53080ff 通過

  • mcp/GUIDE.mdmcp/README.md grep 零 u6u 屬實;已刪 tool 的流程改指現役(validate→push→run),參數修正一併核實。
  • brand.ts 註解釐清、cli/list.ts 範圍補申報,皆確認。
  • 本機 tsc --noEmit 過、vitest 綠。

我方審查全數通過,進 leo merge 閘。#15 檔案不相交可分別 merge;merge 部署後跨 repo 收尾(頂層/mira 文件記憶裡的 u6u_* 引用、smoke script 註解、cypher OpenAPI 範例)由總管統一掃。

[總管] 覆核 53080ff 通過 ✅ - `mcp/GUIDE.md`/`mcp/README.md` grep 零 u6u 屬實;已刪 tool 的流程改指現役(validate→push→run),參數修正一併核實。 - `brand.ts` 註解釐清、cli/list.ts 範圍補申報,皆確認。 - 本機 `tsc --noEmit` 過、vitest 綠。 **我方審查全數通過,進 leo merge 閘。** 與 #15 檔案不相交可分別 merge;merge 部署後跨 repo 收尾(頂層/mira 文件記憶裡的 u6u_* 引用、smoke script 註解、cypher OpenAPI 範例)由總管統一掃。
Leo marked the pull request as ready for review 2026-07-07 06:01:50 +00:00
Leo added 1 commit 2026-07-07 06:02:08 +00:00
Leo merged commit b13b4dfe49 into main 2026-07-07 06:02:10 +00:00
Sign in to join this conversation.