К основному содержанию
скилл CX Codex

diff-scanning-with-aws-security-agent — скилл для Claude Code: скан

Скилл запускает быстрый скан AWS Security Agent только по изменённому коду с момента git-ссылки. Пригодится перед коммитом или пул-реквестом.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add aws/agent-toolkit-for-aws --skill diff-scanning-with-aws-security-agent -a claude-code
Открыть на GitHub

Что делает diff-scanning-with-aws-security-agent

Скилл берёт дифф рабочей копии или ветки и отправляет в AWS Security Agent только изменённые файлы. Полный скан для этого не нужен — находки приходят по дельте, поэтому проверка идёт быстрее.

Перед запуском скилл читает .security-agent/config.json с agent_space_id и region. Если файла нет, сначала выполняется воркфлоу setup-security-agent. Дальше агент спрашивает, с чем сравнивать: незакоммиченные изменения (BASE_REF=HEAD), ветка против main или своя ссылка. Дифф и zip воркспейса уезжают в S3, затем создаётся CodeReview и стартует job с --diff-source. Результаты складываются в .security-agent/findings-{scan_id}.md, история сканов — в scans.json.

Нужен настроенный доступ к AWS: роль SecurityAgentScanRole, бакет security-agent-scans-<account>-<region> и рабочий AWS CLI. Архив воркспейса ограничен 2 GB. Если дифф пустой, скилл останавливается и скан не запускает — это повод проверить, ту ли ссылку вы указали. Опрос статуса идёт раз в 2 минуты, чаще не стоит.

Какие задачи решает

  • просканировать только изменённый код перед коммитом
  • проверить ветку на уязвимости до открытия пул-реквеста
  • получить находки по диффу без полного скана репозитория
  • отследить историю сканов воркспейса в одном файле
  • остановиться, если изменений нет, вместо лишнего запуска

Примеры запросов агенту

  • просканируй изменения перед коммитом
  • запусти diff scan ветки против main
  • проверь, что изменилось, на проблемы безопасности

Как установить diff-scanning-with-aws-security-agent

1Через Skills CLI (Vercel)

npx skills add aws/agent-toolkit-for-aws --skill diff-scanning-with-aws-security-agent -a claude-code

2Вручную: положить файлы

~/.claude/skills/diff-scanning-with-aws-security-agent/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/diff-scanning-with-aws-security-agent/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о diff-scanning-with-aws-security-agent

Как установить diff-scanning-with-aws-security-agent в Claude?

Выполните npx skills add aws/agent-toolkit-for-aws --skill diff-scanning-with-aws-security-agent -a claude-code. Скилл появится в ~/.claude/skills/diff-scanning-with-aws-security-agent/SKILL.md.

Что делает diff-scanning-with-aws-security-agent?

Запускает скан AWS Security Agent только по коду, изменившемуся с указанной git-ссылки. Находки группируются по критичности и пишутся в .security-agent/findings-{scan_id}.md.

Что нужно для работы скилла?

Конфиг .security-agent/config.json с agent_space_id и region, роль SecurityAgentScanRole и бакет security-agent-scans-<account>-<region>. Если конфига нет, сначала запускается setup-security-agent.

Исходный текст

SKILL.md · Apache-2.0
---
name: diff-scanning-with-aws-security-agent
description: Run a fast AWS Security Agent diff scan on only the changed code since a git ref. Use when the user asks to scan changes, run a diff scan, check what changed for security issues, scan before committing, scan before PR, or any pre-commit/pre-push security check.
---

# AWS Security Agent — Diff Scan

Scan only the code that changed since a git ref. Faster than a full scan — focuses findings on the diff. No prior full scan needed.

## Local state

Read `.security-agent/config.json` for `agent_space_id` and `region`. If missing, run the `setup-security-agent` workflow inline first.

Track scans in `.security-agent/scans.json`.

### Resolving the values you need

| Placeholder | How to resolve |
|-------------|----------------|
| `<id>` (agent space) | `config.agent_space_id` |
| `<region>` | `config.region` (default `us-east-1`) |
| `<account>` | `aws sts get-caller-identity --query Account --output text` |
| `<role-arn>` | `arn:aws:iam::<account>:role/SecurityAgentScanRole` |
| `<bucket>` | `security-agent-scans-<account>-<region>` |
| `<WORKSPACE_ID>` | `printf '%s' "$(pwd)" \| md5sum \| cut -c1-12` |

---

## Workflow

1. **Pre-scan checks.** Same as full scan — read config, verify agent space, resolve values, generate workspace ID.

2. **Ask what to scan against:**
   - Uncommitted changes → `BASE_REF=HEAD` (default)
   - Branch vs main → `BASE_REF=main`
   - Custom ref → user provides

3. **Generate diff (fail fast if empty):**

   ```bash
   cd <absolute-workspace-path>
   if [ "$BASE_REF" = "HEAD" ]; then
     git diff HEAD > /tmp/diff.patch
   else
     git diff "$BASE_REF..HEAD" > /tmp/diff.patch
   fi
   [ -s /tmp/diff.patch ] || { echo "No changes vs $BASE_REF"; exit 1; }
   ```

4. **Zip the workspace** (same exclusions as full scan, 2 GB limit):

   ```bash
   cd <absolute-workspace-path>
   zip -r /tmp/source.zip . \
     -x ".git/*" -x ".security-agent/*" -x "node_modules/*" \
     -x "__pycache__/*" -x ".venv/*" -x "venv/*" \
     -x "dist/*" -x "build/*" -x "target/*" \
     -x ".mypy_cache/*" -x ".pytest_cache/*" -x ".tox/*" \
     -x ".next/*" -x "cdk.out/*" -x ".DS_Store" -x "*.pyc"
   ```

5. **Upload both source zip and diff patch:**

   ```bash
   SCAN_ID="diff-$(date +%s)-$(openssl rand -hex 3)"
   aws s3 cp /tmp/source.zip s3://<bucket>/security-scans/source/<WORKSPACE_ID>/source.zip --expected-bucket-owner <account>
   aws s3 cp /tmp/diff.patch s3://<bucket>/security-scans/diffs/${SCAN_ID}/diff.patch --expected-bucket-owner <account>
   ```

6. **Get or create per-workspace CodeReview** (same logic as full scan — lookup `config.json → code_reviews[<abs_path>]`, create if absent):

   ```bash
   aws securityagent create-code-review --agent-space-id <id> --title <title> \
     --service-role <role-arn> \
     --assets sourceCode=[{s3Location=s3://<bucket>/security-scans/source/<WORKSPACE_ID>/source.zip}]
   ```

7. **Start the diff job:**

   ```bash
   aws securityagent start-code-review-job --agent-space-id <id> --code-review-id <cr-id> \
     --diff-source s3Uri=s3://<bucket>/security-scans/diffs/${SCAN_ID}/diff.patch
   ```

   If `ResourceNotFoundException`: recreate CodeReview and retry.

8. Capture `codeReviewJobId`. Persist to `scans.json` with `scan_type: "DIFF"` and `base_ref`.

9. Tell user: "Diff scan started. Takes a few minutes. I'll check every 2 minutes — say 'stop polling' to opt out."

10. **Poll** every 2 minutes:

    ```bash
    aws securityagent batch-get-code-review-jobs --agent-space-id <id> --code-review-job-ids <job_id>
    ```

    Only respond when status changes. On COMPLETED → fetch findings.

11. **Findings:** same presentation as full scan — grouped by severity, report written to `.security-agent/findings-{scan_id}.md`.

---

## Rules

- Diff scans are standalone — no prior full scan needed
- Poll every 2 minutes, not faster
- Default to `BASE_REF=HEAD` if user doesn't specify
- Title: `diff-<git-branch>-<timestamp>` (no spaces)
- If diff is empty, tell user and stop — don't start a scan

© aws · Apache-2.0 · aws/agent-toolkit-for-aws

Похожие скиллы

Всё по теме «Безопасность» →
security-diff-scan официальный OpenAI Проверяет пулреквесты, коммиты и диффы рабочей копии на уязвимости. Помогает найти проблемы безопасности в изменённом коде до слияния веток. CX Codex GP ChatGPT 30установок aws-iam devops-skills Скилл для работы с AWS IAM: помогает писать политики, создавать роли и настраивать доступ по принципу least-privilege прямо из агента. CX Codex +1 333установок saas-security-posture devops-skills Скилл для аудита и ужесточения SaaS-инструментов компании: SSO, OAuth-гранты, теневой IT, админские аккаунты в Slack, GitHub, Google Workspace и AWS. CX Codex +1 314установок aws-penetration-testing zebbern Скилл ведёт агента по пентесту AWS: перечисление IAM, повышение привилегий, SSRF к metadata, разбор S3 и Lambda. CX Codex +1 ★ 4 676звёзд репо aws-well-architected-framework-review aws-samples Проводит полный аудит нагрузки по AWS Well-Architected Framework: разбирает код, IaC и конфиги, оценивает все 57 вопросов и выдаёт находки с приоритетами. CX Codex +1 311установок cloud-security Alireza Rezvani Ищет дыры в конфигурации AWS, Azure и GCP: пути эскалации привилегий в IAM, публичные бакеты, открытые порты в security group. Пригодится перед аудитом или при разборе IaC. 643установок

Из того же набора133

managing-amazon-kinesis-data-streams Скилл для работы с Amazon Kinesis Data Streams: настраивает доставку данных из потока в Iceberg-таблицы на S3 Tables или в обычные S3-бакеты. CX Codex +1 1 800установок aws-sms-voice Проводит агента по AWS End User Messaging: собирает брендированный RCS-агент или настраивает отправку кодов через Notify, а потом ведёт регистрацию. CX Codex +1 1 600установок coordinating-multi-space-devops-agent Разводит вопросы по нужному AgentSpace AWS DevOps Agent: prod, staging или knowledge. Пригодится, когда пространств несколько. CX Codex +1 1 500установок remediating-with-aws-security-agent Выгружает результаты сканирования AWS Security Agent и помогает закрыть найденные уязвимости. Пригодится, когда нужно разобрать отчёт пентеста прямо в репозитории. CX Codex +1 1 500установок investigating-incidents-with-aws-devops-agent Запускает глубокий поиск первопричины инцидента в AWS DevOps Agent и стримит прогресс, пока агент копается в логах и трейсах. CX Codex +1 1 500установок scanning-with-aws-security-agent Запускает аудит репозитория через AWS Security Agent, загружая архив в S3. Возвращает проверенный список уязвимостей с рекомендациями по исправлению. CX Codex +1 1 500установок setup Скилл запускает настройку подключений к AWS DevOps Agent и AWS Security Agent. Нужен, когда MCP-инструменты не отвечают или вы только начинаете работу с тулкитом. CX Codex +1 1 500установок setup-security-agent Скилл готовит рабочую область к проверкам AWS Security Agent: настраивает агент-спейс, IAM-роль и корзину S3. CX Codex +1 1 500установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой