feat: add copyable Codex MCP setup prompt

This commit is contained in:
陈煜 committed 2026-10-04 02:32:14 +08:00
1 parent 06bee32863
commit df40fccfe1
4 files changed
+79 -3

No files matched your search

+68 -3
View File
@@ -100,6 +100,28 @@ function instructions(url: string) {
].join('\n\n');
}
function codexSetupPrompt(url: string, level: string) {
const selected = level === 'read' ? 'read' : 'read,' + level;
return [
'请直接在这台电脑上为我配置 WorthPath MCP,不要只给我命令或方案。我授权你新增或更新名为 worthpath 的 MCP 连接,使用 Streamable HTTP 与 OAuth;仅修改这条连接,保留其他 MCP 和 Codex 配置。',
'服务地址:' +
url +
'。申请权限:' +
selected +
'。不申请隐藏账户权限;最终授权由我在 WorthPath 网页审核完成。不要让我把密码或个人令牌发送到聊天里,也不要替我点击授权确认。',
'先检查本机 codex 命令是否可用,并核对 mcp add/login 的帮助。只检查 WorthPath 相关配置,不输出凭据、Authorization 头或其他秘密。如果你运行在云端或另一台电脑,无法访问此 localhost 地址,请如实说明,不要声称已连接。',
'使用 codex mcp add worthpath --url ' +
url +
' 添加连接;已有同名、同地址且启用的 OAuth 连接时跳过添加。若同名连接指向不同服务,请先说明冲突,不覆盖它。若这条连接使用旧 Bearer 认证,将本连接切换为 OAuth 并移除其静态 Authorization 或 bearer_token_env_var,保留其余配置,不展示旧令牌。',
'执行 codex mcp login worthpath --scopes ' +
selected +
' --oauth-client-registration dcr 发起网页登录。我会自行登录并确认权限。等待回调时保留登录进程;需要等待我完成网页步骤时,明确告诉我当前状态。',
'授权后检查连接配置与真实工具可用性。能调用时先 tools/list,再 connection_info 核对权限;若当前会话不会重新加载工具,请告诉我重启客户端或新建本机会话后继续验证。只有配置、OAuth 成功和工具调用成功都验证后才能说已可用,不把 codex mcp list 或网页登录成功当作工具调用成功。',
'配置期间不要创建、修改或删除我的账目。后续资产查询、转账和还款优先使用 WorthPath MCP;工具或权限不可用时如实说明。',
...instructions(url).split('\n\n').slice(3),
].join('\n\n');
}
export function AgentConnections() {
const [data, setData] = useState<Management | null>(null),
[error, setError] = useState(''),
@@ -112,6 +134,7 @@ export function AgentConnections() {
[tokenHiddenRead, setTokenHiddenRead] = useState(false),
[tokenHiddenWrite, setTokenHiddenWrite] = useState(false),
[agentView, setAgentView] = useState('connect'),
[codexPermission, setCodexPermission] = useState('draft'),
[consentLevel, setConsentLevel] = useState('read'),
[consentHiddenRead, setConsentHiddenRead] = useState(false),
[consentHiddenWrite, setConsentHiddenWrite] = useState(false);
@@ -202,7 +225,7 @@ export function AgentConnections() {
</button>
</div>
<p className="muted">
先在客户端添加 MCP 连接并完成授权。复制下面的操作说明到聊天不会建立连接。
首次接入可使用下方 Codex 配置提示词。仅复制后续操作说明不会建立连接。
</p>
<details className="agent-details">
<summary>查看连接步骤</summary>
@@ -233,10 +256,52 @@ export function AgentConnections() {
</li>
</ol>
</details>
<h4>第一步:让本机 Codex 帮你配置连接</h4>
<p className="muted">
选择权限,复制提示词并发送给本机 Codex。它会执行配置和发起 OAuth 登录;你只需在
WorthPath 网页完成登录授权,无需手动输入命令。
</p>
<label>
申请连接权限
<select
value={codexPermission}
onChange={(e) => setCodexPermission(e.target.value)}
>
<option value="read">只读查询</option>
<option value="draft">查询与草稿修改(网页确认)</option>
<option value="write">查询与直接普通写入</option>
</select>
</label>
<button
className="primary"
type="button"
onClick={() =>
void copy(
codexSetupPrompt(data.mcpUrl, codexPermission),
'Codex 配置提示词已复制',
)
}
>
复制 Codex 配置提示词
</button>
<details className="agent-details">
<summary>预览 Codex 配置提示词</summary>
<textarea
className="agent-tutorial"
aria-label="Codex 配置提示词"
readOnly
value={codexSetupPrompt(data.mcpUrl, codexPermission)}
rows={8}
/>
</details>
<p className="muted">
适用于有本机命令执行能力的
Codex。网页授权和必要的客户端重启仍需你完成;云端聊天不能直接连接本机 localhost。
</p>
<div className="agent-copy-row">
<h4>可直接复制给 Agent 的教程</h4>
<h4>已连接?复制后续操作说明</h4>
<button
className="primary"
className="secondary"
type="button"
onClick={() => void copy(instructions(data.mcpUrl), 'Agent 使用教程已复制')}
>
+4
View File
@@ -27,3 +27,7 @@
本次没有数据库模型或业务服务变更,无新增迁移。没有重复运行此前 REST/MySQL 全业务回归;此前结果见更新记录。本次尚未验证 Codex 桌面会话直接工具调用、其他商业客户端或公网 HTTPS 部署。CLI 登录测试与 SDK 工具调用测试不等于这些验证。
具体接入步骤见 [MCP 文档](mcp.md)。没有部署或推送。
## 页面配置提示词(2026-10-04 02:32 UTC+8)
新增复制 Codex 配置提示词入口与只读、草稿、普通写入三档申请权限,默认 read,draft。提示词授权本机 Codex 执行连接配置和 OAuth 登录,仅修改 worthpath 连接并保留其他配置;网页确认由用户完成,配置阶段不修改账目。浏览器实际验证三种选项的剪贴板内容、正确资源地址与 scopes;前端类型检查和构建通过,临时账号已清理。没有启动新的真实用户 OAuth 授权,也没有验证外部 Codex 自动执行整段提示词;底层 CLI OAuth 路径沿用本页已有实际验证。
+6
View File
@@ -26,6 +26,12 @@ OAuth 使用发现元数据、动态注册的公开客户端、授权码、S256
旧连接有 write 时,现在直接执行普通修改;旧全局策略不再阻止它。只想创建草稿时,撤销旧连接并重新授权 read draft。历史策略行保留但不参与任何权限判断;旧敏感工具草稿不可提交。
## 页面复制提示词配置
在「设置与备份 → 连接 Agent → 开始连接」选择申请权限(默认 read,draft),点击「复制 Codex 配置提示词」,发送给运行在本机、能够执行命令的 Codex。提示词明确授权它仅配置 worthpath 连接、使用 OAuth、保留其他配置并核对实际工具加载;命令由 Codex 执行,用户无需手动输入。用户仍须完成 WorthPath 网页登录和权限确认,当前会话无法加载新增工具时须重启客户端或新建会话。提示词不包含个人令牌,也不会修改账目。
权限选择只改变申请内容,不会立即改变现有连接授权;最终以网页确认和 connection_info 为准。这是可执行的配置指令,不是浏览器一键注册客户端;客户端缺少本机执行能力时需如实说明限制。
## 本机 Codex OAuth 接入
以下命令已核对本机 Codex CLI 0.160.0 帮助和[官方 MCP 文档](https://learn.chatgpt.com/docs/extend/mcp?surface=cli)。在 WorthPath 所在电脑的 PowerShell 执行;已有名为 worthpath 的连接时跳过 add。CLI 与桌面/IDE 的配置共享不代表当前会话已经加载工具,授权后重启客户端或新建会话,并检查工具发现。
+1
View File
@@ -90,3 +90,4 @@
账户转账与估价验收完成:2026-10-03 18:56。35 项单元检查、17 项真实 MySQL 集成检查、类型检查和生产构建通过;最终估值去重另通过 4 项专项回归。17 个迁移已应用,10 张表与 106 个字段注释完整。计入开关、黄金/白银估价、ZIP v8 和第三方接口清单详见 [更新说明](docs/update-inclusion-metals-2026-10-03.md) 与 [README](README.md#第三方接口与外部素材来源)。复查未发现新增未完成要求。
- ~~修改提示框,全部提示直接在右上角出现弹出提示框~~ — 已完成并通过浏览器成功/认证错误反馈验证:2026-10-04 02:23(UTC+8)
- ~~修正 MCP 接入教程误导,补充已验证的 Codex OAuth 配置和 localhost 限制~~ — 已完成:2026-10-04 02:23(UTC+8);CLI 0.160.0 OAuth/DCR 登录及官方 SDK 39 工具发现通过,桌面会话内调用尚未验证。
- ~~在连接 Agent 页面提供可直接发送给 Codex 执行配置的提示词,无需用户输入命令~~ — 已完成并通过三档权限复制、前端类型检查与构建:2026-10-04 02:32(UTC+8);网页登录授权由用户完成。