🤖 feat: project plugin MCP servers, hooks and slash commands in remote checkouts
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 5/5
- 预计耗时
- 一周以上
- 新手友好度
- 35/100
- Issue 类型
- 功能
- 描述清晰度
- 基本清楚
- 活跃度
- 活跃
- 技术栈
- docker, typescript
调研方向
Start with hostCheckoutRoot in src/node/services/aiService.ts around line 971 and discoverAgentPlugins in src/node/services/agentPlugins/discovery.ts to trace how checkout plugins are found. Then read #6426 for the related remote plugin work. Define the trust, consent, and remote execution behavior for MCP servers, hooks, and slash commands, or decide to keep them host-only and document that; done means the chosen behavior is implemented and documented.
由索引模型根据 Issue 内容生成。
描述
Summary
Plugin MCP servers, hooks and slash commands from a project's own Agent Plugins (.xum/plugins, .agents/plugins) never load in SSH or Docker workspaces. Xum passes no host checkout root for those runtimes (hostCheckoutRoot is null for ssh and docker in src/node/services/aiService.ts, around line 971), and the plugin manifest scan (discoverAgentPlugins in src/node/services/agentPlugins/discovery.ts) reads only the host filesystem.
Why this is separate from #6426
#6426 loads the plugin skills and agents of trusted remote checkouts. Those are markdown files that Xum reads through the runtime. MCP servers, hooks and slash commands are different: they run code on the remote host. They need their own design:
- the consent flow (component consent, approved copies) for components that live on a remote host,
- the exec model (where a stdio MCP server or a hook process runs, its environment and credentials),
- trust and kill-switch behavior (
XUM_DISABLE_PROJECT_AUTOMATION), as for local checkouts.
Scope
Design and implement trust-gated loading of project plugin MCP servers, hooks and slash commands for SSH and Docker checkouts, or decide that they stay host-only and document that.
Refs #6426.
Generated with xum • Model: anthropic:claude-opus-5-5 • Thinking: high • Cost: $173.78
- 主要语言
- TypeScript
- 星标
- 2.1k
- 派生
- 139
- 平均合并
- 3 小时 40 分钟
- 30 天内合并 PR
- 948
环境准备
- 提供 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 没有贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
coder/xum 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 73/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 83/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复
相似的 Issue
-
area:plugins area:security area:skills bug has repro
难度 2/5 1-3 小时 新手友好度 76/100
anthropics/claude-code#105911 ·
维护者通常 1 天内回复
-
openspec-apply-change skill: when blocked, may select a ready artifact unrelated to missingArtifacts未关闭
难度 2/5 1-3 小时 新手友好度 72/100
Fission-AI/OpenSpec#2165 ·
维护者通常 1 天内回复
-
🐞 bug 🧐 unconfirmed
难度 2/5 1-3 小时 新手友好度 66/100
Tencent/tdesign-vue-next#7032 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
gnosis/gnosis_vpn#661 ·
维护者通常 1 天内回复
-
content-freshness: staleOwnedContent doc comments still say 'complete receipt' (follow-up to #7912)未关闭triage:bug-verified
难度 1/5 1 小时以内 新手友好度 92/100
维护者通常 1 天内回复