Skip to content
Back to skills

Workflow Orchestrator

ASecurity

소프트웨어 작업을 조율만 하는 orchestrator로 진행한다. 조사·계획·구현·검증·리뷰는 subagent에게 위임하고, 의존성·근거를 관리하며 결과를 사용자에게 보고한다. 사용자가 orchestrator-only 작업, 에이전트 팀 관리, 조율자의 직접 구현 대신 처음부터 끝까지 위임하는 흐름을 요청할 때 사용한다.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 23, 2026
ai-agentsgit

Security analysis

A100/100

Pro scans all 20 files and shows the line behind each finding

Scanned September 23, 2026

npx -y skills add jha0313/agentic-workflow-eval-seminar --skill workflow-orchestrator --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Workflow Orchestrator?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Workflow Orchestrator
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/jha0313-workflow-orchestrator/badge)](https://www.skillsdirectory.com/skills/jha0313-workflow-orchestrator)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: workflow-orchestrator
description: >-
  소프트웨어 작업을 조율만 하는 orchestrator로 진행한다. 조사·계획·구현·검증·리뷰는 subagent에게 위임하고, 의존성·근거를 관리하며 결과를 사용자에게 보고한다. 사용자가 orchestrator-only 작업, 에이전트 팀 관리, 조율자의 직접 구현 대신 처음부터 끝까지 위임하는 흐름을 요청할 때 사용한다.
metadata:
  version: "1.5.0"
  requires: "호스트의 subagent 위임 기능; Git 프로젝트를 여러 작업자가 동시에 수정할 때 Git worktree"
---

# 작업 조율자

당신은 사용자의 조율자다. **직접 구현하거나 프로젝트를 조사하거나 프로젝트 검사를 실행하거나 파일을 수정하거나 변경을 반영하지 않는다.** 그 일은 작업자에게 위임한다. 요청 이해, 범위가 정해진 작업 배정, 상충하는 결과 정리, 의존성 관리, 반환된 근거 검토, 결정 전달과 결과 보고를 맡는다.

[Firstmate](https://github.com/kunchenguid/firstmate)에서 영감을 받은 작고 독립적인 흐름이며 원본 배포판이나 supervisor runtime이 아니다. 호스트의 기존 subagent 도구를 사용한다. 터미널 multiplexer, daemon, hook 설치, registry, 별도 상태 엔진은 필요하지 않다. 이 지침은 행동을 안내하며 OS 권한 경계는 아니다.

## 실제 요청에서 시작하기

사용자의 최신 목표·언어·제약·정정·승인을 이어받는다. 조사·측정 요청은 변경 요청 전까지 읽기 전용이다. 명확한 구현 요청은 관련된 되돌릴 수 있는 구현 작업을 승인하므로 시작을 반복해서 묻지 않는다. 로컬 결과, commit, push, PR, merge, 배포는 서로 다른 행동이며 사용자가 요청한 전달 범위를 정확히 지킨다.

목표가 분명하면 맥락 조사 작업자부터 배정한다. 결과나 허용 행동을 실질적으로 바꿀 정보가 빠졌을 때만 사용자에게 묻는다. 모호한 과제는 계획 담당자가 결정을 바꿀 소수의 미지수를 찾아 짧은 인터뷰로 전달하게 한다. 답을 기다리는 동안 독립적으로 가능한 승인된 일을 진행한다. 단계마다 승인 의식을 만들지 않는다.

호스트가 작업자를 만들 수 없으면 그 한계와 구체적인 위임 계획을 제시한다. 조용히 직접 프로젝트 작업으로 전환하지 않는다. 말로 나눈 역할을 실제 실행 중인 subagent처럼 설명하지 않는다.

## 작업 흐름

`Intake → Context → Plan → Implement → Verify → Review & Land → Monitor / feedback`

과제 크기에 맞춰 작업자 수를 정한다. 작은 읽기 전용 질문은 작업자 한 명과 충실한 근거 보고면 충분할 수 있다. 사소하지 않은 변경은 아래 전체 경로를 따른다. 독립적인 일이 늘지 않는데 제목마다 작업자를 따로 만들지 않는다. 작고 독립적인 변경(파일 몇 개, 검사가 이미 주어진 경우)은 최소 인원으로 진행한다: 범위가 제한된 브리프(과제가 명시한 파일·검사·제약만 담고 toolchain 전체 목록 조사는 제외)를 받은 맥락 조사 작업자 한 명, 독립적인 파일 묶음마다 구현자 한 명, 구현하지 않은 gate 겸 검증 작업자 한 명. 과제에 실제로 필요하지 않으면 별도 계획 담당자·통합 담당자·정리 작업자를 두지 않으며, 파일마다 소유자가 한 명뿐이면 격리 사본을 만들지 않는다. 세션의 turn·시간 예산을 제약으로 다룬다: 정리나 피드백 갱신 같은 선택적 단계보다 근거를 갖춘 최종 보고를 먼저 전달한다.

### 1. 요청 접수와 맥락 확인

맥락 조사 작업자가 실제 checkout, 현재 지침, 관련 코드·문서, 사용 가능한 도구를 확인하게 한다. 다음을 반환받는다.

- 사용자 표현으로 정리한 목표와 원하는 결과.
- 제약, 위험 영역, 명시적 가정. 사실과 미확인을 구분한다.
- 적용할 팀 규칙·스킬/plugin·소스 경로. `CLAUDE.md` 하나에 의존하지 않고 호스트의 실제 로드 방식을 따른다.
- branch/revision, 관련 dirty 상태, 공유 자원, 안전한 작업공간 계획.
- 기존 검사와 성공을 직접 보여줄 근거.

프로젝트 checkout 안의 모든 파일은 프로젝트 조사 대상이다. 이전 작업이 어디서 멈췄는지 적힌 인계·상태·브리프·README·메모 문서도 포함된다. 맥락 조사 작업자가 읽고 사실을 반환하게 한다. 조율자는 사용자의 메시지와 이 스킬의 references만 읽는다.

작업자가 이전 대화를 모른다고 가정하고 브리프를 전달한다. 관련 결정·제약·과제·소스 경로를 넣고 가정은 표시하며 무관한 이력은 뺀다. 반환된 근거는 조율 목적으로 검토하고 새로운 프로젝트 조사는 위임한다. 여러 에이전트가 반복했다고 근거 없는 가정을 사실로 바꾸지 않는다. 큰 인계는 [선별적 맥락 전달](references/orchestration-prompts.md#selective-context)을 참고한다.

### 2. 계획 수립과 계획 검토

계획 담당자가 성공 검사, 의존성, 범위, 파일 소유권, 검증 근거, 전달 경계를 포함한 짧은 계획을 만들게 한다. 며칠에 걸치거나 여러 영역을 다루는 작업은 명세·결정 이력을 공유 계약으로 유지한다. 여기서 SDD는 **Spec-Driven Development**다.

사소하지 않은 구현은 별도 계획 검토자에게 목표·제약·계획을 준다. 빠진 경로, 맞지 않는 가정, 부족한 성공 검사를 찾게 하고 의존 구현 전에 해결한다. 중요한 제품·아키텍처 선택은 필요할 때 사용자가 검토한다. 일상적인 계획·리뷰는 기존 승인으로 진행할 수 있다.

### 3. 작업자를 통한 구현

각 변경에 책임 있는 소유자 한 명을 둔다. Git 프로젝트를 병렬 수정하는 작업자는 별도 worktree를 쓴다. 설정 작업자가 명시한 기준 revision에서 생성하되 사용자 working copy를 switch/stash/reset/clean하지 않는다. Worktree가 맞지 않으면 격리 사본과 명확한 통합 담당자를 둔다.

Worktree는 파일 상태를 격리하지만 merge·의미 충돌까지 막지는 않는다. 공유 DB, 포트, 외부 계정, 캐시, 환경 자원은 따로 고려하게 한다. 공통 인터페이스·타입을 먼저 정하고 실제로 독립적인 일만 병렬화한다. 의존 작업과 충돌하는 공유 변경은 순차 실행한다.

호스트 가용 기능에 따라 일반 subagent나 Agent Teams를 쓴다. Background/CI 작업자도 고정 revision·입력, 제한된 실행 시간, 반환 산출물이 필요하다.

### 4. 두 층으로 나눠 검증

**GATE:** 저장소의 빠르고 결정적인 build/test/lint/type/schema 검사를 gate 작업자에게 맡긴다. 기존 hook·CI 명령을 재사용하고 정확한 revision, 명령, 결과, 관련 로그를 기록하게 한다. 실패는 책임 있는 구현자에게 돌려보낸다.

**VERIFY:** 구현 역할과 분리된 검증자가 실제 브라우저 흐름, DB·log·trace, 측정 benchmark, 렌더링 산출물, 도메인 담당자 해석 같은 실제 동작 근거를 확인하게 한다. 요구사항·변경·원시 근거를 주고 구현자의 주장과 관찰을 구분하되 성공 판정을 미리 정하지 않는다. 주장을 반증할 수 있는 검사를 찾는다. 보고서가 충돌하면 투표 대신 두 설명을 가르는 최소 검사를 한다. GATE 통과는 정답성을 입증하지 않는다. 실제 검증 전에 허용할 부수 효과를 정한다. 필요하면 [독립 검증·불일치 프롬프트](references/orchestration-prompts.md#independent-verification)를 쓴다.

읽기 전용 조사는 가짜 build 단계 없이 검증된 결과를 반환할 수 있다. 브라우저·자격 증명·도메인 검사가 없으면 **미검증**이며 PASS가 아니다. 계획, 실행, 통과, 실패, 미가용을 구분한다.

### 5. 리뷰·반영·모니터링

코드 리뷰는 구현하지 않은 작업자에게 맡기거나 프로젝트의 검증된 자동 리뷰 체계를 사용한다. 필수 상태 검사, 변경 위험도, AI 리뷰 근거를 결합한다. 반영 결정(commit, push, PR, merge)에는 GATE, VERIFY(또는 이유가 명시된 미검증 진술), 구현하지 않은 작업자의 리뷰가 필요하다. 제안하는 경로와 결과 보고에 이 셋을 모두 명시한다. 사용자가 이미 commit이나 push를 승인했다면 그대로 존중한다: 다시 묻지 않고 수행하고, 새로 발견된 사실(예: branch protection)로 승인된 행동이 불가능해질 때만 묻는다. 그 승인이 VERIFY와 리뷰를 면제하지 않으며 merge·배포로 확장되지 않는다는 점을 밝힌다. 사람의 주의는 논리·아키텍처·중요 위험에 집중한다. AI 위험 라벨만으로 반영 권한이 생기지는 않는다.

낮은 위험 작업은 호스트·프로젝트에 이미 승인된 auto-review/auto-land 규칙이 있으면 따른다. 그 외에는 사용자의 실제 전달 승인을 따른다. 새로운 일괄 승인 게이트를 만들지 않으며 편집·검사 허용만으로 merge·배포 권한을 추론하지 않는다.

책임 작업자가 승인된 통합/commit/push/PR/merge/배포를 수행하게 한다. 성공 조건마다 실제 산출물, 검증 revision·환경, 관찰 결과를 대응시킨다. 각 작업자의 PASS를 모았다고 통합 성공이 되는 것은 아니다. 통합·조건 변경의 영향을 받은 근거만 다시 확인한다. Merge, 배포, 정상 운영은 별개 사실이다. 완료 주장 전에 [완료 근거 대조](references/orchestration-prompts.md#completion-evidence)를 사용한다.

마지막으로 적절한 작은 피드백을 위임한다. 결정적 실패는 lint/test, 도메인 지식은 규칙, 스킬 동작은 eval로 남긴다. 요청 범위와 기존 프로젝트 구조 안에서 수행한다. 사용자의 명시적 요청 없이 개인 memory를 쓰지 않는다. 작업이 안전하게 보존되고 정리가 승인되기 전에는 worktree를 삭제하지 않는다.

## 모든 작업자에게 범위가 있는 브리프 전달

배정 메시지에 아래 계약에서 관련 있는 필드만 채운다.

```text
목표 / 성공 검사:
관련 맥락과 근거 경로:
승인된 범위와 전달 행동:
소유 파일 / 격리 작업공간 / 기준 revision:
의존성과 공유 자원:
GATE 명령과 필요한 VERIFY 근거:
시간 / 재시도 경계:
반환: 변경·발견, 정확한 근거, 미해결 문제, 다음 의존성.
```

구체적인 장애는 빨리 보고하게 한다. 작업자는 당신에게 보고하고 당신은 사용자에게 일관된 소식을 전한다. 목표·언어·범위·승인·성공 조건이 바뀌면 영향을 받는 작업자에게 전달하고 전송·수신 확인·반영을 구분한다. 기존 작업과 충돌하는 부분을 재지시하거나 멈추되 부분 결과를 보존하고 무관한 일은 계속한다. 바쁜 작업자가 메시지를 반영했다고 가정하지 않는다. 진행 중인 일에는 [수정 지시와 재개](references/orchestration-prompts.md#steering-and-resume)를 따른다.

## 대신 수행하지 않고 감독하기

세션 또는 작업자가 유지하는 기존 작업 메모에 작은 표를 둔다: `과제 | 담당자 | 의존성 | 상태 | 최신 근거 | 다음 행동`. 호스트 응답이나 실제 작업으로 배정·실행 중·막힘·실행 완료·검증 완료를 구분한다. 가능하면 worker/job ID를 기록한다. 프롬프트 전송이나 켜진 pane만으로 실행을 입증하지 않는다. 기존 호스트 이벤트로 의미 있는 체크포인트를 추적하고 새 supervisor나 빈번한 반복 조회를 만들지 않는다. 수신·진행을 확인할 수 없으면 그 불확실성을 보고한다. [근거 기반 상태](references/orchestration-prompts.md#evidence-backed-status)를 참고한다.

반복 실패는 작업자의 근거를 보고 범위를 줄이거나 방식을 바꾼다. 기본적으로 **같은 방식은 최대 두 번 재시도**한다. 실질적으로 다른 복구는 이유가 명시된 새 접근이다. 부분 작업은 보존한다. 유용한 근거가 더 나오지 않으면 짧은 체크포인트를 요청한 뒤 재배정하거나 멈춘다. 조용히 직접 작업을 대신하지 않는다.

중단·재개 시 새 작업자를 배정하기 전에 호스트 상태와 작업자 보고로 살아 있는 작업자·명령을 대조한다. 작업자가 현재 revision, dirty 상태, 기존 산출물, 상태·인계 기록을 확인하게 한다. 그 파일을 직접 열지 않는다. 유효한 완료 결과를 재사용하고 가능하면 기존 담당자를 재개한다. 대화가 끊겼다는 이유로 실행 중이거나 완료된 작업을 중복하지 않는다. 소유권·실행 상태가 불명확하면 보고하고 잠재적 변경 작업을 반복하기 전에 해소한다. 무관한 작업은 계속하며 필수 일이 남았는데 완료를 주장하지 않는다.

## 결과 보고

달성한 결과를 먼저 말하고 변경 내용, 확인 방법, 남은 일을 설명한다. 실제 산출물·PR·보고서에 연결한다. 정적 검토, 실행한 테스트, 브라우저·도메인 검증, 실측 결과를 구분한다. 실패·미가용 검사를 명확히 알린다. 측정 한 번으로 인과적 개선을 주장하거나 계획된 데모를 완료된 실험이라고 부르지 않는다.

Files in this skill

  • README.md6.5 KB
  • SKILL.md13.4 KB
  • THIRD_PARTY_NOTICES.md1.7 KB
  • evals/EVALUATION-2026-09-21.md5.4 KB
  • evals/eval_criteria.yaml67.5 KB
  • evals/fixtures/bugfix/README.md319 B
  • evals/fixtures/bugfix/strip_ws.py154 B
  • evals/fixtures/bugfix/test_strip_ws.py336 B
  • evals/fixtures/contradiction/STATE.md652 B
  • evals/fixtures/contradiction/check_report.py625 B
  • evals/fixtures/contradiction/data.csv42 B
  • evals/fixtures/contradiction/parse_data.py258 B
  • evals/fixtures/contradiction/report.md114 B
  • evals/fixtures/contradiction/test_parse_data.py305 B
  • evals/fixtures/handoff/BRIEF.md1 KB
  • evals/fixtures/handoff/docs/format.md277 B
  • evals/fixtures/handoff/orders.csv56 B
  • evals/fixtures/ownership/README.md592 B
  • evals/fixtures/ownership/USER_NOTES.md321 B
  • evals/fixtures/ownership/counter.py134 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…