← 返回信息流
Agent SkillLINUX DO · AI·1 小时前

新Skill设计解决AI工具被PowerShell干扰

原标题:【学习请教贴】【漫谈】做了一个 skill 来解决 Codex 会被 PowerShell 插手,这对吗?

速览

学生在Reddit上分享了自己动手制作的Skill,针对ChatGPT Codex经常被PowerShell干扰的痛点,通过自定义AGENTS.md文件并搭配PowerShell 7实现有效解决。Skill内容包含一系列约束和指导,参考社区帖子后逐步完善,最终扩展至上千行,体现了Skill渐进式加载的实践价值。这对Agent开发初学者具有启发意义,展示了如何通过小技能提升AI使用体验,为未来Agent工程领域积累了实用经验。

AI 深度解读

## 背景

用户是一位学生,未来规划转向 Agent 开发方向,目前尚无上手经验,将 OpenAI Codex(简称 Codex)当作“许愿壶”。在 Linux.do · AI 社区的帖子中,用户分享了自己制作的一个 Skill 想法:针对 Codex 在 PowerShell 环境下容易被“插手”(如字符串转义、命令执行不兼容、终端命令解析错误等问题),通过自定义 Skill 让 Codex 正确使用 PowerShell 7。用户参考了相关帖子,并在与 Codex 深入交流后创建了 SKILL.md,扩展至上千行指令,打算用 Skill 机制渐进式加载,避免一次性加载导致上下文膨胀。

核心内容

用户首先观察到社区吐槽 Codex 在 Windows PowerShell 下经常被终端环境影响,导致执行命令时语法不匹配、转义问题或返回错误。用户尝试在全局 AGENTS.md 中注入 PowerShell 7 的约束指令(参考现有帖子),发现可以有效解决部分“插手”问题。接着,用户开始收集更多“约束”(用户自称此为约束),试图整合进 Codex 的指令系统。

整合过程中发现约束数量快速增加,越做越长,最终扩展到上千行。用户认为这不适合长期放在单一 AGENTS.md 中,会占用大量上下文,导致性能下降或模型忽略关键部分。于是提出新思路:用 Skill 来解决——Skill 设计为针对“教 Codex 如何正确使用 PowerShell”的专用模块,遵循 Skill 渐进式加载机制(仅当任务明确匹配时才加载 SKILL.md 中的完整指令)。

用户参考了部分相关帖子(具体未列出,但推测为关于 AGENTS.md 全局约束或 Skill 创建的讨论),并通过与 Codex 深度对话确认:“Codex 我有自己的节奏,听我的就好”。在进一步交互中,用户自己撰写了 SKILL.md。

帖子内附有点击展开的 AGENTS.md 和 SKILL.md 内容(实际为用户自定义的 Skill 目录结构与指令)。主要内容包括:

  • Skill 名称与描述(针对 PowerShell 正确使用约束)。
  • SKILL.md 前置元数据:name、description 及触发规则(何时激活 Skill)。
  • 完整指令体:列出所有 PowerShell 7 特定规则(如命令优先级、转义方式、禁止 Unix 工具、命令行解析约束等),并要求 Codex 在执行任何终端相关任务前优先扫描可用 Skill、读取 SKILL.md 再执行。
  • 回复格式强制:每次回复第一行必须严格为 “> Skill 匹配: <单一技能名>” 或 “> 无匹配 Skill”,禁止其他前缀符号。
  • 额外约束:禁止在 PowerShell 中使用某些 Unix 文本工具(如 sed/awk 等),强制使用 PowerShell 等价物;强调 Windows 环境(Windows 11 + PowerShell 7)下不猜测命令实现;上下文卫生规则(只加载必要部分,避免 bulk-load)。

整个 Skill 旨在让 Codex 建立“PowerShell 7 专家模式”,在 Agent 开发流程中(如测试、调试、部署)自动应用这些规则,避免重复人工约束 AGENTS.md。

关键要点

  • Skill 渐进式加载机制:仅当任务匹配 Skill 描述时才加载 SKILL.md 完整指令,避免 AGENTS.md 无限膨胀。
  • PowerShell 7 优先约束:所有终端命令必须使用 PowerShell 7 原生命令、语法和管道,不假设 Bash、GNU coreutils 或 WSL 存在。
  • 字符串转义与命令行解析:强制用单引号包裹字符串值,内部无需反斜杠转义;连续两个单引号表示单引号本身。
  • 工具映射强制:禁止使用 sed/awk/cut 等 Unix 工具,统一用 PowerShell 等价命令(如 Get-Content + Set-Content 等)。
  • 回复强制规范:每次回复必须以 “> Skill 匹配: …” 或 “> 无匹配 Skill” 开头,禁止其他符号。
  • 上下文卫生:仅加载 Skill 必要部分,参考相对路径时先解析 Skill 目录,避免 bulk-load 其他文件。
  • 用户动机:从“Codex 许愿壶”起步,通过小规模尝试走出第一步,未来准备做 Agent 开发;Skill 设计为“教模型怎么做”而非硬编码全局指令。

意义与影响

该帖子展示了用户在 Codex 生态内自发构建 Skill 的实践路径,体现了对 Agent 开发早期阶段的探索。Skill 作为 OpenAI Codex 官方支持的标准化能力(包括 SKILL.md 格式与渐进加载),可以显著提升模型在特定环境(如 PowerShell)下的可靠性和专业性,避免全局 AGENTS.md 成为“垃圾桶”。对用户而言,这借由小 Skill 走出第一步,为未来 Agent 开发奠定思路:先用 Skill 封装“约束”,再逐步整合为完整 Agent 工作流。

在社区层面,用户分享的思路值得参考——许多人因 AGENTS.md 过长而头疼,此类 Skill 方案提供了一种轻量、可维护的替代方案。长期来看,可能启发更多针对 Windows 环境、终端工具的专用 Skill,进一步标准化 Agent 跨平台使用。整个操作忠实于 Codex 当前的 Skill 机制(SKILL.md + AGENTS.md 路由),但尚未经过大规模验证或社区反馈,属于个人实验性质。

查看原文 →linux.do