UNPKG

article-writer-cn

Version:

AI 驱动的智能写作系统 - 专注公众号/自媒体文章创作

330 lines (233 loc) 7.53 kB
# Codex 平台问题排查和修复指南 ## 问题描述 用户报告在 Codex 平台无法识别 slash commands,显示错误: ``` Unrecognized command '/content-specify' ``` ## 问题分析 ### 1. 平台识别混淆 经过调查发现存在**两个不同的 "Codex"**#### A. OpenAI Codex CLI (官方产品) - **官方网站**: https://developers.openai.com/codex/ - **类型**: 命令行工具 (Terminal-based coding agent) - **Slash Commands**: 使用 `/model`, `/resume` 等命令 - **配置目录**: 使用 `~/.codex/` 配置 - **特点**: 在终端运行,类似 Aider、Cursor CLI #### B. 未知的 "Codex" AI 编辑器 - **类型**: 可能是某个 AI 代码编辑器或插件 - **Slash Commands 目录**: `.codex/prompts/` - **命令格式**: `/content-specify`, `/content-research`- **特点**: 集成在编辑器中,类似 Cursor、Windsurf ### 2. Article Writer 的 Codex 支持 Article Writer 项目中的 "Codex" 配置指向的是 **方案 B**(某个AI编辑器),但该平台的官方文档和信息非常有限。 #### 当前配置 ```bash # scripts/build/generate-commands.sh:272 codex) mkdir -p "$base_dir/.codex/prompts" generate_commands codex md "\$ARGUMENTS" "$base_dir/.codex/prompts" "$script" "content-" "none" ;; ``` **生成的命令**: - 目录: `.codex/prompts/` - 命名格式: `content-{命令名}.md` - 示例: `content-specify.md`, `content-research.md`, `content-write.md` - Frontmatter: `none` (不包含 YAML frontmatter) --- ## 可能的原因 ### 原因 1: Codex 平台不支持自定义 prompts 如果用户使用的 "Codex" 是基于某个特定编辑器的扩展,可能该平台: - ❌ 不支持 `.codex/prompts/` 目录 - ❌ 不支持自定义 slash commands - ❌ 有不同的命令格式要求 ### 原因 2: 命令格式不正确 Codex 可能要求: - 不同的命令前缀(如 `/``/codex-`、不需要前缀等) - 不同的文件格式(JSON、YAML、纯文本等) - 特定的 frontmatter 结构 ### 原因 3: 配置未生效 用户可能: - 未重启编辑器 - 未安装 article-writer-cn 到正确位置 - 配置文件路径不正确 --- ## 测试步骤 ### 步骤 1: 确认 Codex 平台类型 **请用户提供以下信息**: 1. 你使用的 "Codex" 是什么? - [ ] OpenAI Codex CLI (命令行工具) - [ ] 某个 AI 代码编辑器(请提供名称和版本) - [ ] VSCode 扩展(请提供扩展名称) - [ ] 其他(请描述) 2. 如何访问 slash commands? - [ ] 在终端输入 - [ ] 在编辑器命令面板输入 - [ ] 在聊天窗口输入 - [ ] 其他方式 3. Codex 是否支持自定义 prompts/commands? - [ ] 是(请提供文档链接) - [ ] 否 - [ ] 不确定 ### 步骤 2: 检查配置文件 ```bash # 检查是否正确安装 cd /path/to/your/project ls -la .codex/prompts/ # 应该看到: # content-specify.md # content-research.md # content-write.md # ... 等 14 个文件 ``` ### 步骤 3: 检查命令内容 ```bash # 查看命令文件内容 cat .codex/prompts/content-specify.md | head -20 # 检查是否: # - 文件存在 # - 内容完整 # - 格式正确(纯 Markdown,无 frontmatter) ``` ### 步骤 4: 测试简单命令 尝试在 Codex 中执行: ``` # 测试 1: 使用完整前缀 /content-specify 帮我写一篇文章 # 测试 2: 不使用前缀 /specify 帮我写一篇文章 # 测试 3: 查看可用命令 /help / ``` --- ## 修复方案 ### 方案 A: 确认 Codex 不支持自定义 prompts **如果 Codex 平台不支持自定义 slash commands**,则需要: 1. **从 Article Writer 移除 Codex 支持** ```bash # 更新 scripts/build/generate-commands.sh # 注释掉或删除 Codex 相关配置 ``` 2. **在文档中说明** ```markdown ## 不支持的平台 以下平台由于技术限制,暂不支持 Article Writer: - Codex (不支持自定义 slash commands) ``` 3. **建议用户使用其他平台** - Claude Code (完全支持) - Cursor (支持) - Windsurf (支持) - Gemini (支持) ### 方案 B: 修复命令格式 **如果 Codex 支持但格式不对**,需要根据官方文档调整: 1. **调整命令前缀** ```bash # 可能需要改为: # - 无前缀: specify.md # - 不同前缀: codex-specify.md ``` 2. **调整文件格式** ```bash # 可能需要: # - 添加 frontmatter # - 转换为 JSON # - 使用特定的 metadata ``` 3. **调整目录结构** ```bash # 可能需要: # - .codex/commands/ 而不是 .codex/prompts/ # - 其他目录名称 ``` ### 方案 C: 提供降级方案 **如果 Codex 不支持 slash commands**,提供手动使用方式: ```markdown ## Codex 平台使用指南 由于 Codex 不支持自定义 slash commands,请使用以下方式: ### 方式 1: 手动复制 prompt 1. 打开 `.codex/prompts/content-specify.md` 2. 复制全部内容 3. 粘贴到 Codex 聊天窗口 4. 添加你的需求 ### 方式 2: 使用 bash 脚本 ```bash # 创建快捷脚本 echo '#!/bin/bash' > codex-specify.sh echo 'cat .codex/prompts/content-specify.md' >> codex-specify.sh chmod +x codex-specify.sh # 使用 ./codex-specify.sh | pbcopy # macOS ./codex-specify.sh | xclip # Linux ``` ### 方式 3: 切换到支持的平台 推荐使用以下平台以获得完整的 slash commands 体验: - **Claude Code** (推荐) - 完全支持 WebSearch、MCP 工具 - **Cursor** - 支持基础功能 - **Windsurf** - 支持基础功能 ``` --- ## 需要用户提供的信息 为了准确诊断问题,请用户提供: ### 1. 截图 - [ ] Codex 的主界面截图 - [ ] 输入 slash command 时的截图 - [ ] 错误消息的完整截图 ### 2. 环境信息 ```bash # 请运行并提供输出: pwd ls -la .codex/ cat .codex/prompts/content-specify.md | head -5 ``` ### 3. Codex 版本信息 - Codex 版本号: ___________ - 安装方式: ( ) npm ( ) brew ( ) 其他: ___________ - 操作系统: ( ) macOS ( ) Linux ( ) Windows ### 4. Article Writer 版本 ```bash npm list -g article-writer-cn # 或 content --version ``` --- ## 临时解决方案 在问题修复前,用户可以: ### 1. 使用支持的平台 **最快的解决方案**: 切换到 Claude Code ```bash # 安装 Claude Code # https://claude.com/claude-code # 使用 Article Writer cd your-project content init --workspace wechat # 在 Claude Code 中使用 slash commands /content.specify 帮我写一篇文章 ``` ### 2. 手动使用 prompts`.codex/prompts/content-*.md` 的内容手动复制到 Codex 中使用。 ### 3. 使用 bash 脚本 ```bash # 创建快捷命令 alias codex-specify='cat .codex/prompts/content-specify.md' alias codex-research='cat .codex/prompts/content-research.md' alias codex-write='cat .codex/prompts/content-write.md' # 使用 codex-specify | pbcopy # 然后粘贴到 Codex ``` --- ## 下一步 1. **等待用户反馈** - 确认使用的是哪个 "Codex" 2. **查找官方文档** - 如果有官方文档,根据文档调整格式 3. **决定是否继续支持** - 如果技术上不可行,从支持列表中移除 4. **更新文档** - 明确说明支持的平台和限制 --- ## 相关链接 - [OpenAI Codex CLI 官方文档](https://developers.openai.com/codex/) - [Article Writer MCP 工具集成指南](../advanced/mcp-tools-integration.md) - [支持的 AI 平台列表](../../README.md#支持的ai平台) --- ## 更新日志 - **2025-10-28**: 创建问题排查文档 - **待定**: 等待用户反馈后更新修复方案