ワンクリックで
codex-narp-runtime
当用户希望把 Codex 或 Codex CLI/SDK 作为 NextClaw 正式会话类型接入,尤其是通过 narp-stdio 配置、安装、修复、doctor 或真实冒烟时使用。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
当用户希望把 Codex 或 Codex CLI/SDK 作为 NextClaw 正式会话类型接入,尤其是通过 narp-stdio 配置、安装、修复、doctor 或真实冒烟时使用。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Use when implementing, refactoring, or designing source-level contracts in this repository, especially if a task touches frontend/backend i18n or user-facing copy, frontend base/display components, tool schemas, API/protocol parameters, shared contracts, compatibility paths, fallback-heavy logic, duplicate branches, weak abstractions, unclear file placement, ad-hoc helpers, or patch-style fixes that would turn into garbage code.
Create or update complete NextClaw lightweight apps, deciding whether the user needs a Panel App, a Service App, or a combined Panel + Service App. Use for NextClaw applets, small tools, dashboards, local file tools, AI-assisted UI tools, apps that may combine right-side UI with backend actions, or questions about what NextClaw/Panel apps can do and which app APIs/capabilities they can use.
当用户要求提交、收尾、统一 NPM 发布、GitHub release、changelog、release notes、版本更新说明、产品更新笔记、变更汇总,或担心并行会话导致发布内容靠记忆整理时使用。适用于需要进入用户可见发布说明的 NextClaw workspace 包变更、Changesets 聚合、AI 撰写版本更新笔记、可拉取结构化 release notes JSON,以及 update manifest releaseNotesUrl 闭环。
Use when building, verifying, or releasing NextClaw desktop installers, DMGs, update bundles, update manifests, or one-command desktop beta/stable release automation. Enforces the packaged update public key contract, the required verification commands, and the rule that raw electron-builder output is not enough.
当用户要求“发布 beta”“统一 beta 发版”“发一个新的 NPM beta 版本”“一键 beta release”或希望直接复用 NextClaw 的 beta 发布闭环时使用。适用于 nextclaw 及其相关 workspace 包的 beta 发布,也适用于需要同时闭合 npm registry 与 NPM runtime update channel 的场景。
Use when publishing NextClaw NPM packages or NPM runtime update channels, including beta/stable dist-tags, nextclaw@beta validation, runtime bundle manifests, packaged update public keys, and npm registry closure checks.
| name | codex-narp-runtime |
| description | 当用户希望把 Codex 或 Codex CLI/SDK 作为 NextClaw 正式会话类型接入,尤其是通过 narp-stdio 配置、安装、修复、doctor 或真实冒烟时使用。 |
| metadata | {"nextclaw":{"emoji":"C"}} |
使用这个 skill 时,目标不是让用户自己准备 PATH 或手改配置,而是把 Codex 接成 NextClaw 统一 runtime registry 里的正式会话类型。
首选产品路径固定为:
codexCodexnarp-stdioacpnextclaw-codex-narpNextClaw -> RuntimeRoute(model/apiBase/apiKey/headers) -> Codex NARP wrapper -> Codex SDK/CLI不要把 Codex 做成核心系统里的 provider 特判。NextClaw 核心、kernel、service 只感知 narp-stdio,不感知 codex。
始终区分三层:
@nextclaw/nextclaw-narp-runtime-codex-sdk,提供 nextclaw-codex-narp。安装这个 skill 不等于 Codex runtime 已经可用。skill 必须自己检测 launcher,缺失时安装或修复 wrapper,并生成 NextClaw 可稳定调用的绝对路径 shim。
nextclaw-codex-narp。${NEXTCLAW_HOME:-~/.nextclaw}/bin 下生成稳定 shim。agents.runtimes.entries.codex。nextclaw-codex-narp 放到 PATH 里”作为完成条件。config.json,除非当前 agent 没有文件写权限。当用户要求“接入 Codex”“安装 Codex runtime”“doctor Codex runtime”或类似目标时,按下面顺序执行。
先确定 NextClaw 数据目录:
NEXTCLAW_HOME="${NEXTCLAW_HOME:-$HOME/.nextclaw}"
需要写入:
$NEXTCLAW_HOME/bin/nextclaw-codex-narp$NEXTCLAW_HOME/config.json如果这是首次接入,先说明 Codex runtime 会读取本机工作区并可能执行本地工具;涉及删除、发送、提交、发布等外部可见动作时仍需用户确认。
按优先级解析真实 launcher:
packages/extensions/nextclaw-narp-runtime-codex-sdk/dist/controllers/codex-narp.controller.jspnpm --filter @nextclaw/nextclaw-narp-runtime-codex-sdk buildnextclaw-codex-narp,可作为真实 launcher 来源。mkdir -p "$NEXTCLAW_HOME/runtime/codex-narp-runtime"
npm install --prefix "$NEXTCLAW_HOME/runtime/codex-narp-runtime" @nextclaw/nextclaw-narp-runtime-codex-sdk@latest
安装后解析:
"$NEXTCLAW_HOME/runtime/codex-narp-runtime/node_modules/.bin/nextclaw-codex-narp" --help
如果包未发布、npm 不可用或安装失败,报告具体 blocker。不要退化成要求用户手动放 PATH。
把 runtime entry 的 command 固定成绝对 shim 路径,而不是裸命令名。
Unix shim 内容形态:
#!/usr/bin/env sh
exec "/absolute/path/to/nextclaw-codex-narp-or-js" "$@"
如果真实 launcher 是 .js 文件或没有执行位,则 shim 应改为:
#!/usr/bin/env sh
exec node "/absolute/path/to/codex-narp.controller.js" "$@"
写入后执行:
chmod +x "$NEXTCLAW_HOME/bin/nextclaw-codex-narp"
用 JSON parser 读写 $NEXTCLAW_HOME/config.json,保留现有配置,只补齐或修复 agents.runtimes.entries.codex:
{
"enabled": true,
"label": "Codex",
"icon": {
"kind": "image",
"src": "app://runtime-icons/codex-openai.svg",
"alt": "Codex"
},
"type": "narp-stdio",
"config": {
"wireDialect": "acp",
"processScope": "per-session",
"command": "/absolute/NEXTCLAW_HOME/bin/nextclaw-codex-narp",
"args": [],
"env": {},
"resetSessionMetadataOnPromptTimeout": ["codex_thread_id"],
"startupTimeoutMs": 10000,
"probeTimeoutMs": 3000,
"requestTimeoutMs": 120000
}
}
不要把 provider route、api key、model 写进 runtime entry。模型和 provider 仍由 NextClaw 的 provider/route 配置决定。
接入完成必须同时满足:
agents.runtimes.entries.codex.type 是 narp-stdio。wireDialect 是 acp。command 是可执行的绝对 shim 路径。Codex ready。开发仓库里优先使用已有 smoke 脚本或 NCP chat smoke;不在源码仓库时,使用当前 NextClaw 实例或 CLI 能提供的最近真实会话路径。验证不是看配置文件长得对,而是看真实会话返回。
能力验收至少分三档:
如果用户说“跑通”或“完成”,默认至少跑文本;如果用户明确要求工具/思考或这是 agent runtime 新接入,必须覆盖“思考 + 工具 + 最终文本”的同轮冒烟。
当用户要求 doctor 或报错时,按顺序检查:
$NEXTCLAW_HOME/config.json 是否存在且 JSON 可解析。agents.runtimes.entries.codex 是否存在、enabled 是否为 true。type、wireDialect、processScope 是否符合合同。command 是否是绝对路径、文件是否存在且可执行。--help 是否能启动。根据第一个失败点修复。不要在下游事件层伪造成功。
command_missing:重新生成 shim;如果真实 launcher 缺失,安装 wrapper 包。删除 runtime entry、shim 或 wrapper 安装目录属于破坏性配置变更。除非用户明确要求“移除 Codex runtime”,否则只做 disable/repair,不删除文件。
只有在以下条件全部满足后,才能说 Codex NARP runtime 已可用:
Codex 是统一 runtime registry 里的正式 session type。narp-stdio(acp) 接入。