new-playbook — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited new-playbook (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Create a new Ansible playbook following production conventions.
Collect these parameters (one question at a time, using discovery context for defaults):
./ or ./playbooks/ if that directory exists)site.yml, deploy-nginx.yml)webservers, all, databases:webservers)If the user provides all of these inline, skip parameter collection.
Run discovery per references/discovery.md. Report:
Use discovered roles as suggestions during parameter collection.
Ask one question at a time. Suggest smart defaults:
site.yml is the filename → suggest site playbook typetower_job_id is referenced → suggest AWX-ready typeShow a summary:
Will create: ./playbooks/deploy-nginx.yml
Play: "Deploy nginx web server"
Hosts: webservers
Roles: myorg.infra.nginx
Type: Component playbook
Tags: nginx, validate
Proceed? (yes/no)Check if the file already exists. If it does, warn and require explicit confirmation.
Use references/playbook.md as the base template. Select the appropriate template:
Apply these rules to the generated content:
no_log: true on any task handling secrets per references/security_vault.mdpre_tasks includes OS version assertion using ansible.builtin.assertpost_tasks validation block using ansible.builtin.wait_for or ansible.builtin.urireferences/inventory.mdreferences/testing.mdWrite using bash:
cat > /path/to/playbook.yml << 'EOF'
[playbook content]
EOFShow file tree:
find ./playbooks -type f | sortSuggest next step:
Next step: Validate with `ansible-lint playbooks/deploy-nginx.yml`
or use /ansible-designer:review-playbook to get a structured review.---
# =============================================================================
# Playbook: deploy-nginx.yml
# Author: Platform Team
# Version: 1.0.0
# Description: Deploy and configure nginx on webservers group.
# Usage:
# ansible-playbook -i inventory/ deploy-nginx.yml
# ansible-playbook -i inventory/ deploy-nginx.yml --check --diff
# =============================================================================
- name: Deploy nginx web server
hosts: webservers
become: true
gather_facts: true
vars:
nginx_port: "{{ deploy_nginx_port | default(80) }}"
nginx_enable_ssl: "{{ deploy_nginx_ssl | default(false) }}"
pre_tasks:
- name: Verify target OS is supported
ansible.builtin.assert:
that:
- ansible_os_family in ['RedHat', 'Debian']
fail_msg: "Unsupported OS family: {{ ansible_os_family }}"
tags: [always]
roles:
- role: myorg.infra.nginx
vars:
nginx_port: "{{ nginx_port }}"
nginx_enable_ssl: "{{ nginx_enable_ssl }}"
post_tasks:
- name: Confirm nginx is listening
ansible.builtin.wait_for:
host: "{{ ansible_host }}"
port: "{{ nginx_port }}"
timeout: 30
delegate_to: localhost
tags: [nginx, validate]
- name: Print deployment summary
ansible.builtin.debug:
msg: "nginx deployed on {{ inventory_hostname }} — port {{ nginx_port }}"
tags: [nginx, validate]~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.