К основному содержанию
скилл Claude Code CX Codex Cursor GitHub Copilot

build-iterated-agentic-loop — скилл для Claude Code: что делает

Помогает превратить повторяющуюся задачу для агента в скилл внутри репозитория и workflow GitHub Actions, который запускает кодинг-агента по расписанию, вручную или и так, и так.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add humanlayer/skills --skill build-iterated-agentic-loop -a claude-code
Открыть на GitHub

Что делает build-iterated-agentic-loop

Скилл раскладывает повторяющуюся задачу на четыре файла в репозитории: SKILL.md с суждением агента, workflow .github/workflows/agent-<task-name>.yml, файл памяти .github/agent-memory/<task-name>.md для постоянных замечаний и, если нужно, шаблоны в references/. Образец, на который он ссылается, — скилл narrow-react-prop-types.

Сначала скилл читает репозиторий: существующие workflow, файлы пакетного менеджера, скрипты проверок. Потом задаёт вопросы, подставляя ответы из найденного. Кодинг-агент (Claude Code, Codex, OpenCode или CodeLayer), расписание, какие каталоги можно менять, какие команды должны проходить до коммита, метка и префикс PR, формат тела PR. Для выбранного агента нужен секрет в настройках репозитория — скилл называет его вместе с headless-командой.

Дальше главное решение. Цикл помечает свои PR меткой, а перед плановым запуском считает открытые через gh pr list --label <label> --state open, поэтому совет — один открытый PR на цикл. Без этого ограничения ежедневный прогон копит работу быстрее, чем её успевают смотреть. Ручной workflow_dispatch проверку обходит. Опция с комментариями /iterate ставит в репозиторий скрипт agent-iteration.ts.

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

  • превратить регулярную правку в скилл, который живёт в самом репозитории
  • поставить workflow, запускающий кодинг-агента по расписанию без ручной сборки YAML
  • задать агенту границы: что менять, а что только читать
  • не дать плановым прогонам открыть больше одного PR на цикл
  • собрать шаблон тела PR с результатами проверок и списком файлов

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

  • Примени скилл build-iterated-agentic-loop: хочу, чтобы агент по будням чинил упавшие тесты и открывал PR
  • build-iterated-agentic-loop, агент — Codex, запуск вручную, менять можно только `packages/api`
  • Настрой build-iterated-agentic-loop и включи обработку комментариев `/iterate`

Как установить build-iterated-agentic-loop

1Через Skills CLI (Vercel)

npx skills add humanlayer/skills --skill build-iterated-agentic-loop -a claude-code

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

~/.claude/skills/build-iterated-agentic-loop/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/build-iterated-agentic-loop/

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

Весь набор →
show-me humanlayer Объясняет код и архитектуру через схемы Mermaid, деревья вызовов, diff и HTML-файлы. Пригодится, когда нужно быстро увидеть логику или структуру вместо чтения полотен текста. Claude Code CX Codex Cursor +1 32 300установок visual-pr humanlayer Скилл автоматизирует описание pull request: читает дифф, собирает контекст и оформляет PR по шаблону так, чтобы ревьюеру было понятно, зачем нужна перемена и как она устроена. Claude Code CX Codex Cursor +1 3 000установок improve-claude-md humanlayer Переписывает файл CLAUDE.md с помощью блоков <important if="условие">. Это заставляет Claude Code точнее следовать правилам и не отбрасывать важные инструкции проекта. Claude Code CX Codex Cursor +1 2 500установок design-control-loop humanlayer Скилл проводит интервью и вместе с вами проектирует агентскую петлю контроля: уставка, датчик, контроллер, актуатор. Потом собирает её прямо в вашем репозитории. Claude Code CX Codex Cursor +1 1 500установок narrow-react-prop-types humanlayer Скилл сужает типы пропсов React-компонента до контракта, который реально используется в живом коде, и заставляет сторис и тесты подстроиться под него. Claude Code CX Codex Cursor +1 1 200установок

Похожие

browser-mcp-agent antibrow Даёт агенту настоящий браузер через вызовы MCP: переходы, клики, формы, скриншоты, JS. Профиль сохраняется, и логин живёт между запусками. Claude Code CX Codex Cursor +1 105 700установок cli-anything-shotcut HKUDS Скилл даёт агенту командную строку для Shotcut: таймлайн, фильтры, рендер — всё через MLT XML, без графического интерфейса. Claude Code CX Codex Cursor +1 500установок ccf-common mikubaka88 Предстартовый модуль для связки навыков CCFA. Фиксирует каталоги артефактов, роли агентов и правила передачи задач перед работой профильных специалистов. Claude Code CX Codex Cursor +1 2 000установок clean-architecture wondelai Скилл держит бизнес-правила отдельно от фреймворка и базы: исходники зависят только от внутренних слоёв, и это проверяется по чек-листу. Claude Code CX Codex Cursor +1 7 200установок svelte-core-bestpractices sveltejs Скилл объясняет агенту, как писать код на Svelte с рунами: $state, $derived, события, стили. Пригодится, когда агент правит компоненты в проекте на Svelte. Claude Code CX Codex Cursor +1 10 700установок stripe-directory stripe Скилл подключает агента к каталогу Stripe Directory: находит провайдера под задачу и показывает документированный способ с ним расплатиться, подписаться или развернуть ресурс. Claude Code CX Codex Cursor +1 4 200установок setup-matt-pocock-skills Matt Pocock Скилл настраивает репозиторий для инженерных скиллов Matt Pocock: задаёт трекер задач, метки триажа и расположение доменной документации. Запустите его перед первым использованием остальных скиллов. Claude Code 1 052 851установок to-tickets Matt Pocock Разбивает план, спецификацию или переписку на небольшие сквозные задачи и отмечает, какие из них блокируют остальные. Пригодится, когда нужно согласовать порядок работы до публикации задач в трекере. Claude Code 711 230установок

Вопросы о build-iterated-agentic-loop

Как установить build-iterated-agentic-loop в Claude Code?

Выполните npx skills add humanlayer/skills --skill build-iterated-agentic-loop -a claude-code.

Что делает build-iterated-agentic-loop?

Собирает скилл в .claude/skills/<skill-name>/SKILL.md, workflow GitHub Actions с промптом под ваш репозиторий и файл памяти агента. Дополнительно кладёт шаблоны в references/, если скиллу нужны примеры.

Зачем скилл советует ограничить число открытых PR?

Плановый прогон перед стартом смотрит открытые PR по метке цикла и пропускается, если их уже столько же или больше. Так агент не копит правки быстрее, чем их успевают просматривать. Ручной workflow_dispatch это ограничение обходит.

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

SKILL.md · MIT
---
name: build-iterated-agentic-loop
description: build a repo-local skill and install a matching iterated coding-agent GitHub Actions workflow, prompt, memory file, and reference templates
---

# Build Iterated Agentic Loop

Use this skill when the user wants to turn a repeatable agent task into a repo-local skill plus a GitHub Actions workflow that runs a coding agent on a schedule, manually, or both.

The target shape is an iterated agentic loop: a focused skill defines the agent's judgement, a workflow invokes a coding agent with a repo-specific prompt, an agent-memory file carries standing feedback between runs, and each workflow labels its PRs so only one open PR exists per loop. The `narrow-react-prop-types` skill is the concrete reference pattern.

## Outputs

Create or update these files in the target repo:

- `.claude/skills/<skill-name>/SKILL.md` for the repo-local agent behavior.
- `.github/workflows/agent-<task-name>.yml` for the recurring coding-agent automation.
- `.github/agent-memory/<task-name>.md` for stable feedback and scope constraints.
- Optional references under `.claude/skills/<skill-name>/references/` when the skill needs templates, examples, or long supporting material.

## Workflow

### 1. Explore the target repo

Read before asking setup questions:

- Existing `.github/workflows/*.yml` and `.github/actions/**` to understand runner, checkout, dependency install, cache, and PR patterns.
- Package manager files such as `package.json`, `bun.lock`, `pnpm-lock.yaml`, `yarn.lock`, `package-lock.json`, `pyproject.toml`, `go.mod`, or `Cargo.toml`, or other package management-related files
- Existing validation scripts, especially typecheck, lint, test, quality, format, and package-scoped commands.
- Existing `.claude/skills` and `.agents/skills` to avoid duplicating conventions.

Completion criterion: you can name the repo's package manager, install command, likely validation commands, and existing workflow conventions.

### 2. Ask setup questions

Walk the user through these decisions. Recommend defaults from repo evidence instead of presenting a blank form.

1. **Coding Agent**: Claude Code, Codex, OpenCode, or CodeLayer. Explain the required secret and headless command for the recommended choice. Use `references/agent-runner-templates.md`. CodeLayer is Humanlayer's ultra-lightweight agent harness.
2. **Cadence**: daily, weekly, weekdays, monthly, manual-only, or custom cron. Recommend a cadence based on task risk and review burden - most likely weekdays, daily, or weekly. 
3. **Task**: What task should the agent loop accomplish?
  - Are there existing skills for doing this? (you can do research before asking the user this)
  - Ask the user if you should look at recent PRs, git history, or other particular parts of the codebase for reference.
4. **Scope**: which directories/packages the loop may change and which it may only inspect
5. **Validation**: which commands must pass before the agent commits (You should propose this to the user based on your earlier research and ask them to confirm)
6. **PR bounding**: Ask if scheduled runs should no-op when open PRs from this agent already exist, and if so, how many open PRs to allow before blocking new runs.
  - **Recommended: Yes, bound to 1 open PR per agent loop.** This prevents the agent from creating unbounded work that piles up faster than humans can review. Without bounding, a daily agent could generate 5+ unreviewed PRs in a week, creating review fatigue and merge conflicts.
  - The workflow uses a label (e.g., `agent-<task-slug>`) to identify PRs from each agent loop. Scheduled runs check `gh pr list --label <label> --state open` and skip if the count meets or exceeds the bound.
  - Manual `workflow_dispatch` runs bypass the bound check, allowing forced runs when needed.
7. **PR metadata**: label name, PR title prefix, and branch prefix.
  - Suggest `[MM/DD][Agent: <Agent Name>]: <Concise Description>` as a template, e.g. `[6/23][Agent: Effect Migrator]: Migrate XYZ module`
8. **Response format**: How should the CI agent format its final response (which becomes the PR body)?
  - Show the user `references/response-template.md` for examples (fix/migration, generation, refactor).
  - Ask what information reviewers need: summary stats, risk levels, verification steps, file lists, etc.
  - Create a customized response template that the generated skill will reference in its `references/` directory
9. **Iteration behavior**: whether `/iterate` comments should update the existing PR.
  - If enabled, install `references/agent-iteration.ts` to the repo. Ask the user's preferred location: `.github/scripts/`, `ci-scripts/`, or `scripts/`.
  - The script has two modes: `footer` (adds the PR body marker) and `prompt` (builds the iteration prompt from PR context).
  - If disabled, remove the `issue_comment` trigger and iteration-only steps from the workflow.

Completion criterion: every placeholder in the workflow, prompt, and memory template has a chosen value or an explicit default.

### 3. Define the agent job

Extract the smallest repeatable job the agent should perform. Work through these three questions with the user:

**What are we finding?** How does the agent identify targets for this run?
- A CLI tool that reports issues (e.g., `bunx react-doctor`, `eslint --format json`)
- A search pattern (e.g., files matching `*.test.ts` without coverage, components using deprecated APIs)
- A diff or changelog (e.g., new dependencies since last release, changed files in a PR)
- An old pattern that should be replaced with a new pattern or migrated to a new framework
- A flaky test based on previous CI runs 

**What are we changing?** What transformation does the agent apply to each target?
- Fix: resolve a reported issue in place
- Migrate: update code from one pattern to another
- Generate: create new files based on existing sources
- Refactor: restructure without changing behavior

**How do we validate?** What proves the change is correct?
- Build/typecheck passes
- Tests pass (or a specific subset)
- The same tool that found the issue now reports it resolved
- Linting or formatting checks pass

Completion criterion: you can state the job in one sentence, e.g., "Find 5 react-doctor violations, fix them, and verify typecheck and quality pass."

### 4. Write the skill

Write a repo-local skill that captures the agent's judgement for this task. The skill can include repo-specific paths, package names, and conventions since it lives in this repository.

Use these skill-writing rules:

- Put ordered behavior in `SKILL.md` in the skill directory (`.claude/skill-slug-here` or `.agents/skill-slug-here` depending on repo patterns and user preferences) steps with checkable completion criteria  
- Move long templates and examples into sibling reference files, then point to them from `SKILL.md`.
- Keep one source of truth for each rule; do not repeat the same guidance in the skill, prompt, and memory file.
- Include a response template as a reference file (e.g., `references/response-template.md` under the skill directory) that defines how the CI agent should format its final output. The skill should instruct the agent to read and follow this template when formatting its final response which will be used as the PR body.
- Use the skill template in `references/skill-template.md`. An EXAMPLE skill can be found in `references/example-skill.md`
- You may refer to https://agentskills.io/specification to understand skill specification. 

**IMPORTANT**: the `name` field in the `SKILL.md` frontmatter must match the skill slug - e.g. a skill with name `fix-eslint-issues` must be in `.claude/skills/fix-eslint-issues/SKILL.md` or `.agents/skills/fix-eslint-issues/SKILL.md`



Completion criterion: the skill explains how to do the job clearly enough that the agent can follow it without additional prompting, including how to format the final response.

### 5. Write the workflow prompt

Put repo-specific targeting in the GitHub Actions prompt, not in the generic skill. Include:

- `Begin by using the <skill-name> skill.`
- Scope: directories/packages the agent may change and may inspect.
- Instructions: the reviewable unit of work, what to avoid, and how to validate.
- Validation commands in fenced bash if applicable
- Agent memory interpolation from `.github/agent-memory/<task-name>.md`.
- Finishing requirements: validate, commit, push, and return a PR-ready summary.

Use `references/workflow-template.yml` as the base template. Use `references/prompt-template.md` when drafting the embedded prompt.

Completion criterion: the prompt contains all repo-specific constraints needed for an unattended run.

### 6. Install the memory file

Create `.github/agent-memory/<task-name>.md` using `references/memory-template.md` as a starting point. The memory file carries standing feedback that should affect future runs. Keep it short.

Good memory entries:

- Permanent scope exclusions.
- Known false-positive areas.
- Review feedback that should change future agent selection.

Bad memory entries:

- One-off task instructions.
- Validation output from a single run.
- Rules already stated in the skill.

Completion criterion: deleting the memory file would lose useful future-run context, not just history.

### 7. Create the workflow

Create `.github/workflows/agent-<task-name>.yml` from `references/workflow-template.yml` and replace every placeholder.

Required customizations:

- Workflow name, cron, branch prefix, workflow id, agent label, PR title.
- Runner label and setup steps for the repo.
- Dependency install command.
- Coding-agent install, secret, and headless run command (from `references/agent-runner-templates.md`).
- Response extraction step: each agent outputs differently (JSON, stream-json, plain text). Use the agent-specific extraction from `references/agent-runner-templates.md` to get the final response into `/tmp/pr-body.md` for the PR body.
- Skill name, scope, validation commands, and memory path.
- PR bounding gate: the workflow checks for open PRs with the agent label before running. Configure the bound based on the user's choice from step 2 (default: 1). The gate uses `gh pr list --label "$AGENT_LABEL" --state open` and compares the count. If bounding is disabled, remove the gate step entirely.
- If `/iterate` is enabled: install `references/agent-iteration.ts` to the user's preferred location and update the workflow paths to match. The script handles both PR footer generation and iteration prompt building. This file can be run with the user's preferred typescript toolchain (node with type-stripping, **Bun (recommended)**, Deno, tsx, etc) or can at the user's request be rewritten into another language.

If `/iterate` is disabled, remove the `issue_comment` trigger, the iteration-only steps, and skip installing `agent-iteration.ts`.

Completion criterion: the workflow can run from `workflow_dispatch` without relying on files that do not exist.

### 8. Validate and verify

**Validate workflow YAML:** Before committing, parse the workflow file to catch syntax errors early. Use one of:

```bash
# Node.js / bun (js-yaml)
bunx js-yaml .github/workflows/agent-<task-name>.yml > /dev/null && echo "Valid YAML"

# Python
python -c "import yaml; yaml.safe_load(open('.github/workflows/agent-<task-name>.yml'))"

# yq (if installed)
yq eval '.name' .github/workflows/agent-<task-name>.yml
```

If the parser fails, fix the YAML syntax before proceeding.

**Verify references and paths:** Check that every path named by the skill, workflow, and memory file exists or is intentionally created by this task.

Completion criterion: the workflow YAML parses without errors and all referenced files exist.

### 9. Dry-run the workflow

GitHub Actions workflows cannot be manually dispatched via `workflow_dispatch` until they have run at least once. To bootstrap the workflow:

1. Temporarily add a `push` trigger for the current branch (if not main):
   ```yaml
   on:
     push:
       branches:
         - <current-branch-name>  # Remove after first run
     schedule:
       - cron: "0 13 * * *"
     workflow_dispatch:
       # ...
   ```

2. Commit and push all the new files (workflow, skill, memory file, scripts).

3. The workflow will trigger on push. Watch the Actions tab to verify it runs successfully.

4. After the first successful run, remove the temporary `push` trigger and push again. The workflow can now be dispatched manually via the Actions UI or `gh workflow run`.

5. If the dry-run creates a PR, review it to verify the agent behavior, then close or merge as appropriate.

Completion criterion: the workflow appears in the Actions tab and can be triggered via `workflow_dispatch`.

## Reference Files

- `references/workflow-template.yml` - coding-agent GitHub Actions workflow skeleton.
- `references/agent-runner-templates.md` - headless commands and secrets for Claude Code, Codex, OpenCode, and CodeLayer.
- `references/agent-iteration.ts` - helper script for `/iterate` support (PR footer and iteration prompt building). Install to `.github/scripts/`, `ci-scripts/`, or `scripts/` based on user preference.
- `references/prompt-template.md` - embedded prompt structure for the workflow.
- `references/memory-template.md` - agent-memory file skeleton.
- `references/skill-template.md` - skill skeleton for the generated task skill.
- `references/response-template.md` - examples for how the CI agent should format its final response (PR body).
- `references/example-skill.md` - example skill

© humanlayer · MIT · humanlayer/skills

Смотрите также

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

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