用 Claude Code Skill 加载 Ansible 开发上下文:/context 技能与 AGENTS.md 指引体系全解析 用 Claude Code Skill 加载 Ansible 开发上下文/context 技能与 AGENTS.md 指引体系全解析【免费下载链接】ansibleAnsible is a radically simple IT automation platform that makes your applications and systems easier to deploy and maintain. Automate everything from code deployment to network configuration to cloud management, in a language that approaches plain English, using SSH, with no agents to install on remote systems. https://docs.ansible.com.项目地址: https://gitcode.com/GitHub_Trending/ans/ansible在 Ansibleansible-core仓库中进行贡献开发时测试命令、许可证约束、PR 评审流程等约定分散在多个文档中。本文以 .claude/skills/context/SKILL.md 为主体讲解这个/context技能如何一键把 AGENTS.md 中的完整开发规范加载进 AI 助手上下文并结合仓库内 context/ 目录的配套文档说明该技能背后所承载的测试、CI 排障与 PR 评审知识体系帮助你在主仓库之外的环境中也能遵循一致的 Ansible 开发规范。技能定位一个纯信息型的上下文加载器.claude/skills/context/SKILL.md 是仓库内置的 Claude Code 技能Skill定义文件其 frontmatter 声明如下--- name: context description: Load Ansible project development guidelines, testing conventions, PR review processes, and code structure reference into context user-invocable: true ---其中user-invocable: true表示该技能可以由用户通过斜杠命令直接触发使用方式为/context该技能的核心行为只有一条被调用时从仓库根目录读取 AGENTS.md 文件技能内部用相对路径../../../AGENTS.md指向该文件并把其全部内容加载进上下文。随后向用户确认上下文已就绪可用于回答问题或指导开发工作。两点设计细节值得注意纯信息型无副作用。技能文档明确声明 This skill is informational only - it loads comprehensive Ansible development knowledge into context but performs no actions它只加载知识不执行任何变更操作缺失兜底。如果找不到 AGENTS.md技能会提示用户并建议当前目录可能不是完整的 ansible-core 仓库。技能加载的核心AGENTS.md 的结构与关键约定AGENTS.md 是仓库根目录下的 AI 助手指引文件供 Claude Code 等 agentic 工具使用人类开发者则参考官方的 Ansible Developer Guide。/context技能加载的正是这份文件它的内容结构如下启动前的强制检查流程AGENTS.md 开头要求开始任何 PR 评审或开发任务之前——先完整阅读该文件不要凭记忆或假设工作阅读所有 context 目录下的文件掌握项目的编码约定与政策使用 TodoWrite 建立任务清单系统性跟踪进度按相关流程章节中的编号步骤执行在 context/running-tests.md、context/ci.md 等文档中查询正确命令与模式。许可证红线AGENTS.md 将许可证要求标注为 CRITICAL并指向 context/licensing.mdansible-core 主体代码必须为GPLv3 兼容lib/ansible/module_utils/默认采用更宽松的BSD-2-Clause外部依赖只能使用与上述许可证兼容的库拿不准时主动询问许可证兼容性而不是默认放行。文件明确要求任何违反许可证要求的代码都不得被建议、推荐或批准因为许可证违规会给项目带来严重的法律风险。评审原则与署名要求不要重复机器能做的检查评审代码时不要标记ansible-test sanity已经能自动捕获的问题把评审精力集中在自动检查无法验证的地方Agent 署名AI 助手参与贡献时应披露自身参与推荐使用Assisted-by:commit trailer 标明辅助的 AI 工具。CI 失败诊断工作流ansibot、gh pr 与 /azp-logsAGENTS.md 中最具实战价值的部分是帮助开发者处理 CI 失败的完整工作流/context技能加载后AI 助手即可按此流程协助排障第一步查看 ansibot 评论gh pr view number --comments关注来自ansibot的评论其中通常包含具体的测试失败详情、出错文件路径与行号、以及指向 sanity 测试文档的说明链接。第二步获取 CI 检查状态gh pr checks number该命令返回整体 CI 状态通过/失败与耗时、Azure DevOps 构建结果链接、以及各子任务Sanity Test 1/2、Docker 测试、Units 等的单独结果。第三步按序分析先看 ansibot 评论获取即时错误详情再用gh pr checks拿到 Azure Pipelines URL 查看详细日志聚焦标记为fail的 jobsanity 测试失败的信息通常直接指明需要修复的位置其他测试失败则用ansible-test在本地复现调试。深入分析下载完整日志。当评论和 Web UI 信息不足时可配合仓库内置的另一个技能/azp-logs定义见 .claude/skills/azp-logs/SKILL.md/azp-logs pr_number # 自动定位最新构建 /azp-logs build_id # 直接使用构建 ID /azp-logs https://dev.azure.com/.../_build/results?buildId12345 # 完整 URL该技能底层调用 hacking/azp/download.py把控制台日志下载到以构建 ID 命名的目录中并支持精细过滤# 只下载名称匹配特定 job 的日志 ./hacking/azp/download.py build_id --console-logs --match-job-name Sanity.* # 连 artifacts 和元数据一起下载 ./hacking/azp/download.py build_id --all下载后按 AGENTS.md 给出的模式检索失败信号grep -r FAILED\|ERROR\|Traceback build_id/PR 评审标准流程与检查清单AGENTS.md 定义了每一步都必须执行的 PR 评审检查清单Checklist□ 为评审步骤创建 TodoWrite 清单 □ Step 1: gh pr view number 获取 PR 详情 □ Step 2: gh pr diff number 获取完整 diff □ Step 3: 检查必备组件changelog、tests □ Step 4: gh pr checkout number 切换到 PR 分支 □ Step 5: gh pr view number --comments 查看既有反馈 □ Step 6: 验证所有问题均已解决 □ Step 7: 指出仍未处理的评审意见 □ 每完成一步即在 TodoWrite 中标记完成其中检查必备组件有两项硬性标准分别由配套文档支撑Changelog fragment 必须存在且分区结构要符合 changelogs/config.yaml 的定义要求详见 context/documentation-standards.md。仓库中 changelogs/fragments/ 目录存放着各 PR 对应的 fragment 文件是这一约定的直接体现测试必须覆盖改动路径单元测试应为 pytest 风格且偏功能化不能与 mock 强耦合几乎每个插件改动都需要集成测试期望值详见 context/writing-tests.md。仓库内 .claude/skills/review/SKILL.md 把上述流程封装成了可直接调用的/review pr_number技能并补充了一条评审纪律单轮评审的反馈项不应超过 20 条。技能加载后的知识范围与适用场景按照 SKILL.md 的 What This Skill Does 部分/context调用后后续所有响应都可访问以下六类知识测试命令、PR 评审流程与检查清单、许可证要求、代码风格约定、仓库结构、CI 工作流。适用场景包括四类在主仓库之外开发 Ansible 相关代码、在插件市场等无法访问 AGENTS.md 的环境中运行的技能、快速查阅 Ansible 测试与 PR 约定、以及确保团队内 Ansible 开发方式的一致性。/context技能之所以有价值关键在于它背后是 context/ 目录这套对人与 Agent 同等适用的文档体系见 context/README.md各文档分工如下文档覆盖内容context/contributing.md向 ansible-core 贡献变更的规范context/licensing.mdGPLv3 / BSD-2-Clause 许可证要求context/dev-environment.md开发环境搭建context/code-structure.md目录布局、关键组件、import 限制与插件策略context/coding-style.mdPython 版本、依赖、格式与语法约定context/error-handling.md错误与异常处理模式context/data-tagging.md数据标签data tags的使用context/public-api.md公共 API 面与默认内部约定context/documentation-standards.md模块/插件文档与 changelog 要求context/running-tests.mdansible-test各类测试的运行方式context/writing-tests.mdPR 的测试期望context/deprecation.md向后兼容与弃用流程context/ci.mdCI 常见失败模式sanity、集成、单元以测试为例context/running-tests.md 给出了技能加载后可直接使用的命令基线# Sanity 测试无需 --docker ansible-test sanity -v ansible-test sanity -v --test pep8 --test pylint ansible-test sanity -v lib/ansible/modules/command.py # 指定文件 ansible-test sanity -v --docker # 容器内全量覆盖 # 单元测试 ansible-test units -v --docker test/units/modules/test_command.py # 集成测试使用发行版容器而非 default ansible-test integration -v --docker ubuntu ping并强调容器选择规则sanity/unit 用--docker默认default容器集成测试必须用--docker ubuntu、--docker fedora等发行版容器base/default容器仅适用于 sanity/unit。这些命令约定与 AGENTS.md 中 不要重复 sanity 已覆盖的检查 的评审原则互为表里。小结三层结构如何让 AI 协作开发保持规范从源码结构看仓库把 AI 协作开发的知识组织成了清晰的三层入口层AGENTS.md 作为总纲规定启动流程、许可证红线、快速命令参考与评审纪律技能层.claude/skills/ 下的四个技能context、review、azp-logs、creating-backports把高频动作封装为一键调用其中/context负责加载上下文是其余技能的知识底座细则层context/ 目录下的 13 篇文档提供各主题的完整细则且声明对人与 Agent 同等适用保证人类开发者与 AI 助手依据同一套规范工作。这套设计的核心收益是无论是在 ansible-core 主仓库内、还是插件市场等受限环境中调用一次/context即可让 AI 助手获得与主仓库完全一致的测试命令、许可证检查清单与 PR 评审流程从而保证贡献行为的一致性与可审计性。【免费下载链接】ansibleAnsible is a radically simple IT automation platform that makes your applications and systems easier to deploy and maintain. Automate everything from code deployment to network configuration to cloud management, in a language that approaches plain English, using SSH, with no agents to install on remote systems. https://docs.ansible.com.项目地址: https://gitcode.com/GitHub_Trending/ans/ansible创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考