← 返回 Skills 市场
1929
总下载
3
收藏
15
当前安装
1
版本数
在 OpenClaw 中安装
/install ansible
功能描述
Avoid common Ansible mistakes — YAML syntax traps, variable precedence, idempotence failures, and handler gotchas.
使用说明 (SKILL.md)
YAML Syntax Traps
- Jinja2 in value needs quotes —
"{{ variable }}"not{{ variable }} :in string needs quotes —msg: "Note: this works"notmsg: Note: this- Boolean strings:
yes,no,true,falseparsed as bool — quote if literal string - Indentation must be consistent — 2 spaces standard, tabs forbidden
Variable Precedence
- Extra vars (
-e) override everything — highest precedence - Host vars beat group vars — more specific wins
vars:in playbook beats inventory vars — order: inventory \x3C playbook \x3C extra vars- Undefined variable fails — use
{{ var | default('fallback') }}
Idempotence
command/shellmodules aren't idempotent — always "changed", usecreates:or specific module- Use
apt,yum,copyetc. — designed for idempotence changed_when: falsefor commands that don't change state — like queriescreates:/removes:for command idempotence — skips if file exists/doesn't
Handlers
- Handlers only run if task reports changed — not on "ok"
- Handlers run once at end of play — not immediately after notify
- Multiple notifies to same handler = one run — deduplicated
--force-handlersto run even on failure — ormeta: flush_handlers
Become (Privilege Escalation)
become: yesto run as root —become_user:for specific userbecome_method: sudois default — usesuordoasif needed- Password needed for sudo —
--ask-become-passor in ansible.cfg - Some modules need become at task level — even if playbook has
become: yes
Conditionals
when:without Jinja2 braces —when: ansible_os_family == "Debian"notwhen: "{{ ... }}"- Multiple conditions use
and/or— or list for implicitand is defined,is not definedfor optional vars —when: my_var is defined- Boolean variables:
when: my_bool— don't compare== true
Loops
loop:is modern,with_items:is legacy — both work, loop preferredloop_control.loop_varfor nested loops — avoids variable collisionitemis the loop variable — useloop_control.labelfor cleaner outputuntil:for retry loops —until: result.rc == 0 retries: 5 delay: 10
Facts
gather_facts: nospeeds up play — but can't useansible_*variables- Facts cached with
fact_caching— persists across runs - Custom facts in
/etc/ansible/facts.d/*.fact— JSON or INI, available asansible_local
Common Mistakes
register:captures output even on failure — checkresult.rcorresult.failedignore_errors: yescontinues but doesn't change result — task still "failed" in registerdelegate_to: localhostfor local commands — butlocal_actionis cleaner- Vault password for encrypted files —
--ask-vault-passor vault password file --check(dry run) not supported by all modules —command,shellalways skip
安全使用建议
This skill appears to be a safe, read-only Ansible best-practices reference. Before installing, confirm you actually want an agent-accessible reference (the agent could invoke it when answering Ansible questions). Ensure the system where the agent runs has a trusted 'ansible' binary if the skill will trigger command execution later; if you do not want the agent to run commands on your machine, keep model/tool invocation restrictions in place. If future versions add an install step, code, or requests for credentials (vault passwords, cloud keys, etc.), reassess — that would change this assessment.
功能分析
Type: OpenClaw Skill
Name: ansible
Version: 1.0.0
The skill bundle is benign. The `_meta.json` file contains standard metadata. The `SKILL.md` file is purely informational, providing best practices and common pitfalls for using Ansible. It does not contain any executable commands, prompt injection attempts against the agent, or instructions for data exfiltration, malicious execution, or persistence. The content is descriptive and educational, aligning with a benign purpose.
能力评估
Purpose & Capability
Name/description promise (Ansible pitfalls and best practices) matches the content and requirements: the only declared runtime dependency is the 'ansible' binary, which is appropriate for this topic.
Instruction Scope
SKILL.md is a static list of guidance and examples (YAML/Ansible tips). It does not instruct the agent to read files, access environment variables, call external endpoints, or execute commands — no scope creep detected.
Install Mechanism
No install spec and no code files are present. Being instruction-only means nothing is written to disk or fetched at install time — lowest-risk installation profile.
Credentials
No environment variables, credentials, or config paths are requested. The lack of secrets or unrelated env requirements is proportionate to the stated purpose.
Persistence & Privilege
always:false (default) and normal model invocation allowed. The skill does not request persistent presence or elevated privileges beyond being user-invocable — appropriate for a reference/guide skill.
如何使用
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install ansible - 安装完成后,直接呼叫该 Skill 的名称或使用
/ansible触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
Initial release
元数据
常见问题
Ansible 是什么?
Avoid common Ansible mistakes — YAML syntax traps, variable precedence, idempotence failures, and handler gotchas. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 1929 次。
如何安装 Ansible?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install ansible」即可一键安装,无需额外配置。
Ansible 是免费的吗?
是的,Ansible 完全免费(开源免费),可自由下载、安装和使用。
Ansible 支持哪些平台?
Ansible 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(linux, darwin)。
谁开发了 Ansible?
由 Iván(@ivangdavila)开发并维护,当前版本 v1.0.0。
推荐 Skills