ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

vibe-kanban 的 Codex `/init` 提示词模板解析:用 AI 自动生成仓库贡献指南 AGENTS.md

vibe-kanban 的 Codex `/init` 提示词模板解析:用 AI 自动生成仓库贡献指南 AGENTS.md vibe-kanban 的 Codex/init提示词模板解析用 AI 自动生成仓库贡献指南 AGENTS.md【免费下载链接】vibe-kanbanGet 10X more out of Claude Code, Codex or any coding agent项目地址: https://gitcode.com/GitHub_Trending/vi/vibe-kanban导读crates/executors/src/executors/codex/init_prompt.md是 vibe-kanban 为 OpenAI Codex 执行器内置的斜杠命令/init准备的提示词模板当你在 Workspace 中对 Codex 会话输入/init时vibe-kanban 会将该模板原样注入给 Codex让 Codex 充当“仓库文档编辑助手”在当前目录自动生成一份名为AGENTS.md的仓库贡献指南。读完本文你将掌握这份模板的完整结构、每一段的编写意图、它在 vibe-kanban 中的实际调用链路从斜杠命令解析到 JSON-RPC 会话启动以及如何把它迁移复用到你自己的项目或编码 Agent 工作流中。模板定位Codex 执行器的初始化文档生成器vibe-kanban 是一个把 Claude Code、Codex 等编码 Agent 接入可视化看板/工作区的编排平台。在 Codex 执行器这一侧init_prompt.md不是给人类阅读的产品文档而是发送给 Codex 模型的系统级任务指令。它的用途与 Claude 执行器侧的 CLAUDE.md 初始化、以及其他 Agent 的 project doc 初始化功能相对应让 Agent 在开工前先生成一份自描述、自导航的仓库指南。代码层面的证据非常明确在 crates/executors/src/executors/codex/slash_commands.rs 中模板通过include_str!在编译期被嵌入二进制并与默认文件名常量并列const CODEX_INIT_PROMPT: str include_str!(init_prompt.md); const DEFAULT_PROJECT_DOC_FILENAME: str AGENTS.md;同时在 crates/executors/src/executors/codex.rs 中Codex 执行器向外界声明的能力清单SlashCommandDescription把/init描述为create an AGENTS.md file with instructions for Codex而官方文档 docs/workspaces/slash-commands.mdx 在 “OpenAI Codex” 一节也明确列出/init→ “Generate an AGENTS.md scaffold in the current directory”。/init的完整调用链路从用户输入/init到 AGENTS.md 落盘vibe-kanban 的执行路径可以分为三个阶段全部可以在源码中逐步对应第一步斜杠命令解析CodexSlashCommand::parsecrates/executors/src/executors/codex/slash_commands.rs把输入的 prompt 文本与内置命令名做匹配init被解析为CodexSlashCommand::Init。Codex 侧一共支持init、compact、status、mcp、fast五个命令其中compact/status/mcp/fast需要与 Codex App Server 通过 JSON-RPC 交互而init走的是独立分支。第二步存在性检查防止覆盖spawn_slash_commandcrates/executors/src/executors/codex/slash_commands.rs对Init分支做了关键的幂等保护先检查当前目录下AGENTS.md是否已存在。CodexSlashCommand::Init { let init_target current_dir.join(DEFAULT_PROJECT_DOC_FILENAME); if init_target.exists() { let message format!( {DEFAULT_PROJECT_DOC_FILENAME} already exists. Skipping /init to avoid overwriting it. ); self.return_static_reply(current_dir, Ok(message)).await } else { self.spawn_agent_with_prompt(current_dir, CODEX_INIT_PROMPT, session_id, env).await } }也就是说如果目标仓库已经有 AGENTS.mdvibe-kanban 会直接返回一条静态提示不会覆盖已有内容只有不存在时才真正把CODEX_INIT_PROMPT作为任务发给 Codex。这保证了/init是可安全重复执行的。第三步模板注入并启动 Codex 会话当需要真正生成时spawn_agent_with_promptcrates/executors/src/executors/codex/slash_commands.rs把模板作为 prompt 拼入会话动作let combined_prompt self.append_prompt.combine_prompt(prompt); let action super::CodexSessionAction::Chat { prompt: combined_prompt };随后会话经由 crates/executors/src/executors/codex/client.rs 中的thread_start/turn_start_with_mode等 JSON-RPC 方法交给 Codex App Server 执行Codex 完成文件写入后日志与文件变更会通过 crates/executors/src/executors/codex/normalize_logs.rs 归一化成 vibe-kanban 看板可展示的事件流。模板内容逐段拆解init_prompt.md的核心要求是让 Codex 扮演一名仓库贡献指南编写者产出一份 200400 词的 AGENTS.md。以下逐段说明其编写意图与落地要点。任务总述生成 AGENTS.md 贡献指南模板开头直接定义任务Generate a file named AGENTS.md that serves as a contributor guide for this repository. Your goal is to produce a clear, concise, and well-structured document with descriptive headings and actionable explanations for each section. Follow the outline below, but adapt as needed — add sections if relevant, and omit those that do not apply to this project.三个关键词值得注意contributor guide目标读者是未来的贡献者包括未来的编码 Agent 和人类协作者因此内容必须能让一个从未接触该仓库的智能体快速定位代码、运行构建、遵守规范。clear, concise, well-structured强调结构化和可扫描性符合大模型阅读长文档时的注意力特性。adapt as needed模板给的是“推荐骨架”而非“强制清单”允许 Codex 根据仓库实际形态增删章节。这避免了为纯前端项目硬套服务端章节之类的机械错误。文档硬性要求模板用列表明确了成文约束标题必须为 “Repository Guidelines”使用 Markdown 标题#、##等组织结构保持简洁200400 词为最优解释要短、直接、且与本仓库具体相关在有用处给出示例命令、目录路径、命名模式保持专业、指导性的语气。其中 200400 词的篇幅上限是刻意设计AGENTS.md 的作用是“引导”而非“百科全书”过长的文件反而会稀释 Agent 在上下文窗口中对关键信息的注意力而“specific to this repository”则要求示例必须是仓库里真实存在的命令与路径杜绝泛泛而谈。推荐章节骨架模板给出了五个推荐章节并留出可选的扩展空间章节要求要点Project Structure Module Organization说明项目结构包括源码、测试、资产assets分别位于哪里Build, Test, and Development Commands列出构建、测试、本地运行的命令如npm test、make build并简述每个命令的作用Coding Style Naming Conventions指明缩进规则、语言风格偏好与命名模式以及用到的格式化/静态检查工具Testing Guidelines指明测试框架与覆盖率要求说明测试命名约定及如何运行测试Commit Pull Request Guidelines总结 Git 历史中的提交信息约定列出 PR 要求描述、关联 issue、截图等可选其他Security Configuration Tips、Architecture Overview、Agent-Specific Instructions 等这套骨架本身就是一份高质量的 Agent 语境Agent Context清单结构解决“代码在哪”命令解决“怎么跑”风格解决“怎么写”测试解决“怎么验证”提交规范解决“怎么合入”安全与架构补充解决“边界在哪”。在 vibe-kanban 中的实际应用方式/init最常见的落地场景是在一个新建 Workspace / 新拉取的仓库里用户对 Codex 会话输入/initvibe-kanban 检查无 AGENTS.md 后把模板交给 CodexCodex 阅读仓库通常还会配合ls、find、git log等工具后生成 AGENTS.md。之后每次在该仓库中启动 Codex 会话时这份 AGENTS.md 都会进入上下文成为 Codex 行为的默认约束效果类似于 vibe-kanban 为 Claude 提供的 CLAUDE.md 机制。如果你要复用到自己的项目可以直接把init_prompt.md的内容作为一次性的 agent prompt 使用例如生成一份 AGENTS.md作为本仓库的贡献指南 1. 标题为 Repository Guidelines使用 Markdown 结构 2. 全文 200400 词解释简短、具体 3. 必须包含项目结构与模块组织、构建/测试/开发命令、代码风格与命名约定、测试指南、提交与 PR 规范 4. 所有示例命令、路径、命名必须来自本仓库真实内容 5. 保持专业、指导性语气可酌情增减章节。也可以用任意支持“以文件内容作为系统提示词”的编码 Agent 框架把模板文件作为注入资源实现与 vibe-kanban 相同的/init语义。设计亮点与边界说明幂等安全AGENTS.md已存在时/init直接跳过见 slash_commands.rs杜绝了误覆盖仓库文档的风险。可适配骨架模板明确允许“增删章节”从机制上避免 Agent 生成与仓库无关的模板化内容。篇幅约束200400 词的目标让生成物保持在上下文友好、人类可读的区间。适用范围本文描述的是当前仓库 crates/executors/src/executors/codex 中 Codex 执行器的实现行为vibe-kanban 对其他编码 AgentClaude Code、Cursor、OpenCode 等的初始化文档机制各有对应实现入口见 crates/executors/src/executors 目录。延伸阅读模板本体crates/executors/src/executors/codex/init_prompt.md斜杠命令解析与/init分支crates/executors/src/executors/codex/slash_commands.rsCodex JSON-RPC 客户端thread/turn 生命周期crates/executors/src/executors/codex/client.rsCodex 执行器能力声明/init描述crates/executors/src/executors/codex.rs事件归一化管道crates/executors/src/executors/codex/normalize_logs.rs官方文档中的斜杠命令说明docs/workspaces/slash-commands.mdxvibe-kanban 自身的 AGENTS.md 示例docs/AGENTS.md【免费下载链接】vibe-kanbanGet 10X more out of Claude Code, Codex or any coding agent项目地址: https://gitcode.com/GitHub_Trending/vi/vibe-kanban创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表