Back to the main page

SKILL.md for Ansible project in Codex

C:\Users\zdudic\.codex\skills\Ansible\SKILL.md

I have Codex installed in Windows Pro 11 system, this is the Skills for Ansible project: file C:\Users\zdudic\.codex\skills\Ansible\SKILL.md.

---
name: Ansible
description: Use for general Ansible playbook, role, inventory, linting, and compatibility work.
---

# Ansible General Skill

## Gathered facts

- Access gathered facts through `ansible_facts[...]`.
- Do not rely on injected top-level facts such as:
  - `ansible_pkg_mgr`
  - `ansible_distribution`
  - `ansible_distribution_major_version`
  - `ansible_os_family`
  - `ansible_hostname`
  - `ansible_python_version`
- Use forms such as:
  - `ansible_facts['pkg_mgr']`
  - `ansible_facts['distribution']`
  - `ansible_facts['distribution_major_version']`
  - `ansible_facts['os_family']`
  - `ansible_facts['hostname']`
  - `ansible_facts['python_version']`
- Assume `INJECT_FACTS_AS_VARS` may be disabled.
- Do not create custom variables with the reserved `ansible_` prefix.

## Implementation

- Do not over engineer, simplicity is great.
- Prefer idempotent, purpose-built `ansible.builtin` or installed collection modules.
- Use `raw`, `shell`, or `command` only when no appropriate module is available.
- When using those modules, explain why they are necessary and handle change reporting and check mode appropriately.
- Follow the repository's existing YAML and module naming conventions.


## Review

- Inspect changed files for injected top-level gathered facts.
- Convert only confirmed gathered facts to `ansible_facts[...]`.
- Leave magic, connection, inventory, and user-defined variables unchanged.
- Preserve each file's existing line endings.
- Do not normalize or convert CRLF/LF.
- If a diff shows the whole file changed only because of line-ending
  conversion, restore its original line endings and keep only the intended
  content changes.

## Validation

Follow the active workspace `AGENTS.md` for supported Ansible versions,
controller paths, lint commands, test commands, inventories, and Git
authorization boundaries.

Back to the main page