Stream Chain 명령
개요
stream-chain 명령은 stream-json 형식을 통해 여러 Claude 인스턴스를 연결하여 문맥을 끊김 없이 유지하는 강력한 다중 에이전트 워크플로우를 구성합니다. 이 명령은 포그라운드와 백그라운드 실행을 모두 지원하므로, 다른 작업을 진행하면서도 복잡한 체인을 실행할 수 있습니다.
설치
stream-chain 명령은 Claude Flow에 포함되어 있으며 명령 레지스트리에 등록되어 있습니다:
# stream-chain 명령에 접근합니다
npx claude-flow stream-chain help
# 로컬 CLI로 실행합니다
./claude-flow stream-chain help
명령 구조
stream-chain 명령은 다음과 같은 구조를 따릅니다:
stream-chain <subcommand> [options]
하위 명령
run - 사용자 지정 Stream Chain 실행
연결된 Claude 인스턴스를 통해 일련의 프롬프트를 실행합니다:
stream-chain run "prompt1" "prompt2" "prompt3" [...]
요구 사항:
- 최소 두 개의 프롬프트가 필요합니다
- 각 프롬프트는 순차적으로 실행됩니다
- 각 단계의 출력은 다음 단계의 입력으로 전달됩니다
예시:
./claude-flow stream-chain run \
"Analyze the user authentication system" \
"Identify security vulnerabilities" \
"Generate fixes for the vulnerabilities"
demo - 데모 체인 실행
미리 구성된 3단계 데모를 실행합니다:
stream-chain demo [options]
데모 체인은 다음을 수행합니다:
- todo 리스트 애플리케이션 요구 사항 분석
- 데이터 모델 및 API 엔드포인트 설계
- 핵심 기능 구현
예시:
# 포그라운드에서 데모를 실행합니다
./claude-flow stream-chain demo
# 백그라운드에서 데모를 실행합니다
./claude-flow stream-chain demo --background
pipeline - 사전 정의된 파이프라인 실행
일반적인 개발 작업을 위한 특화 파이프라인을 실행합니다:
stream-chain pipeline <type> [options]
사용 가능한 파이프라인 유형:
| 파이프라인 | 설명 | 단계 |
|---|---|---|
analysis |
코드 분석 파이프라인 | 1. 코드베이스를 읽고 분석합니다 2. 개선 사항을 식별합니다 3. 보고서를 생성합니다 |
refactor |
리팩터링 파이프라인 | 1. 리팩터링 기회를 분석합니다 2. 리팩터링 계획을 수립합니다 3. 변경 사항을 적용합니다 |
test |
테스트 생성 파이프라인 | 1. 코드 커버리지를 분석합니다 2. 누락된 테스트를 식별합니다 3. 테스트를 생성합니다 |
optimize |
성능 최적화 | 1. 성능을 프로파일링합니다 2. 병목을 식별합니다 3. 최적화를 적용합니다 |
예시:
# 분석 파이프라인을 실행합니다
./claude-flow stream-chain pipeline analysis
# 백그라운드에서 리팩터링 파이프라인을 실행합니다
./claude-flow stream-chain pipeline refactor --bg
# 자세한 출력과 함께 테스트 생성을 실행합니다
./claude-flow stream-chain pipeline test --verbose
test - 스트림 연결 테스트
스트림 체인이 올바르게 동작하는지 확인합니다:
stream-chain test [options]
두 가지 테스트를 수행합니다:
- 단순 에코 테스트
- 스트림 체인 테스트
예시:
./claude-flow stream-chain test --verbose
monitor - 백그라운드 체인 모니터링
모든 백그라운드 stream chain과 상태를 확인합니다:
stream-chain monitor
출력 항목:
- 프로세스 ID(예:
stream_1234567890) - 원본 명령
- 시스템 PID
- 시작 시간
- 현재 상태 (🟢 Running / 🔴 Stopped)
예시:
$ ./claude-flow stream-chain monitor
📊 Background Stream Chains
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔗 stream_1755021020133
Command: npx claude-flow stream-chain demo
PID: 366567
Started: 2025-08-12T17:50:20.135Z
Status: 🟢 Running
kill - 백그라운드 체인 종료
특정 백그라운드 stream chain을 중지합니다:
stream-chain kill <process_id>
예시:
./claude-flow stream-chain kill stream_1755021020133
옵션
전역 옵션
| 옵션 | 단축 | 설명 |
|---|---|---|
--background |
--bg |
stream chain을 백그라운드에서 실행합니다 |
--verbose |
실행 중 상세 출력을 표시합니다 | |
--json |
최종 출력을 JSON 형식으로 유지합니다 | |
--timeout <sec> |
각 단계의 타임아웃(초)을 설정합니다 |
백그라운드 실행
--background 또는 --bg 플래그를 사용하면 모든 stream chain을 백그라운드에서 실행할 수 있습니다:
# 모든 명령을 백그라운드에서 실행합니다
stream-chain run "task1" "task2" --background
stream-chain demo --bg
stream-chain pipeline analysis --background
백그라운드 기능:
- 프로세스가 터미널과 분리되어 실행됩니다
- 고유한 프로세스 ID가 생성됩니다(예:
stream_1234567890) - 프로세스 정보가
.claude-flow/stream-chains.json에 저장됩니다 - 터미널을 닫은 뒤에도 계속 실행됩니다
stream-chain monitor로 모니터링합니다stream-chain kill <id>로 종료합니다
Stream-JSON 형식
stream chain은 통신에 줄 단위 JSON(NDJSON)을 사용합니다:
{"type":"init","session_id":"abc123","timestamp":"2024-01-01T00:00:00Z"}
{"type":"message","role":"assistant","content":[{"type":"text","text":"Processing..."}]}
{"type":"tool_use","name":"Bash","input":{"command":"ls -la"}}
{"type":"tool_result","output":"total 64\ndrwxr-xr-x 10 user staff 320"}
{"type":"result","status":"success","duration_ms":1234}
메시지 유형:
init- 세션 초기화message- 어시스턴트/사용자 메시지tool_use- 도구 호출tool_result- 도구 실행 결과result- 최종 완료 상태
성능 특성
| 지표 | 값 | 설명 |
|---|---|---|
| Latency | <100ms | 에이전트 간 핸드오프 지연 |
| Context Preservation | 100% | 전체 대화 기록 유지 |
| Memory Usage | O(1) | 스트리밍을 통한 일정 메모리 사용 |
| Speed Improvement | 40-60% | 파일 기반 접근 방식 대비 향상 |
백그라운드 명령과 통합
stream-chain 명령은 Claude Code의 백그라운드 명령 시스템과 완전히 통합됩니다:
/bashes 명령과 함께 사용
백그라운드 stream chain은 /bashes 대화형 메뉴에 표시됩니다:
# Claude Code 대화형 모드에서
/bashes
# stream chain을 포함한 모든 백그라운드 프로세스를 표시합니다
Background Bash Shells
Select a shell to view details
1. npm run dev (running)
2. stream_1234567890: stream-chain demo (running)
3. docker-compose up (running)
프로그래밍 방식 제어
Claude를 통해 프로그래밍 방식으로 stream chain을 제어할 수 있습니다:
# 백그라운드에서 stream chain 분석 파이프라인을 실행해 달라고 요청합니다
"Run a stream chain analysis pipeline in the background"
# Claude가 실행합니다:
./claude-flow stream-chain pipeline analysis --background
# 백그라운드 stream chain 상태를 확인해 달라고 요청합니다
"Check the status of background stream chains"
# Claude가 실행합니다:
./claude-flow stream-chain monitor
실전 예시
예시 1: 전체 개발 파이프라인
# 완전한 개발 워크플로우를 생성합니다
./claude-flow stream-chain run \
"Analyze the requirements in docs/requirements.md" \
"Design the system architecture based on requirements" \
"Generate the API specification" \
"Create implementation plan" \
"Write the initial code structure" \
--background
# 진행 상황을 모니터링합니다
./claude-flow stream-chain monitor
예시 2: 자동화된 코드 리뷰
# 백그라운드에서 코드 리뷰 파이프라인을 실행합니다
./claude-flow stream-chain run \
"Analyze code quality in src/" \
"Identify code smells and anti-patterns" \
"Suggest refactoring improvements" \
"Generate code review report" \
--bg --verbose
# 완료되면 확인합니다
./claude-flow stream-chain monitor
예시 3: 테스트 주도 개발
# TDD 워크플로우
./claude-flow stream-chain run \
"Write test specifications for user authentication" \
"Generate unit tests based on specifications" \
"Implement code to pass the tests" \
"Refactor for code quality" \
--timeout 60
예시 4: 문서 생성
# 포괄적인 문서를 생성합니다
./claude-flow stream-chain pipeline analysis --background
# 분석이 완료된 후 문서를 생성합니다
./claude-flow stream-chain run \
"Based on the codebase analysis, create API documentation" \
"Generate user guide based on features" \
"Create developer setup guide" \
--bg
파일 및 저장소
프로세스 추적 파일
백그라운드 프로세스는 다음 파일에 기록됩니다:
.claude-flow/stream-chains.json
파일 구조:
{
"stream_1234567890": {
"command": "npx claude-flow stream-chain demo",
"pid": 12345,
"startTime": "2025-08-12T17:50:20.135Z",
"status": "running"
},
"stream_9876543210": {
"command": "npx claude-flow stream-chain pipeline analysis",
"pid": 67890,
"startTime": "2025-08-12T18:00:00.000Z",
"status": "killed",
"endTime": "2025-08-12T18:05:00.000Z"
}
}
오류 처리
stream-chain 명령은 포괄적인 오류 처리를 제공합니다:
일반 오류와 해결책
| 오류 | 원인 | 해결 방법 |
|---|---|---|
| "Stream chain requires at least 2 prompts" | run을 프롬프트 2개 미만으로 실행함 |
최소 두 개의 프롬프트를 제공합니다 |
| "Unknown pipeline: [type]" | 잘못된 파이프라인 유형 | analysis, refactor, test, optimize 중 하나를 사용합니다 |
| "Process [id] not found" | 존재하지 않는 프로세스를 종료하려 함 | monitor로 올바른 ID를 확인합니다 |
| "Failed to kill process: kill ESRCH" | 프로세스가 이미 중지됨 | 추가 조치가 필요 없습니다 |
| Command timeout | Claude CLI가 없거나 느림 | Claude CLI를 설치하거나 더 짧은 타임아웃을 사용합니다 |
모범 사례
1. 긴 체인은 백그라운드로 실행
3단계 이상이거나 실행 시간이 30초를 넘길 것으로 예상되는 체인에는 다음과 같이 백그라운드를 사용하세요:
stream-chain run "step1" "step2" "step3" "step4" --background
2. 중요 체인 모니터링
중요한 워크플로우는 적극적으로 모니터링합니다:
# 중요 체인을 시작합니다
stream-chain pipeline refactor --bg
# 다른 터미널에서 모니터링합니다
watch -n 5 './claude-flow stream-chain monitor'
3. 적절한 타임아웃 설정
타임아웃으로 체인이 멈추지 않도록 방지합니다:
# 단계별 30초 타임아웃
stream-chain run "analyze" "implement" --timeout 30
4. 오래된 프로세스 정리
정기적으로 중지된 프로세스를 확인하고 정리합니다:
# 모든 프로세스를 확인합니다
stream-chain monitor
# 중지된 프로세스를 종료합니다
stream-chain kill stream_xxx
5. 디버깅에는 verbose 사용
체인이 실패할 때는 verbose 모드로 원인을 파악합니다:
stream-chain test --verbose
stream-chain run "task1" "task2" --verbose
고급 사용법
다른 Claude Flow 기능과 결합
Hive Mind와 함께 사용
# hive mind 조정을 시작합니다
npx claude-flow hive-mind spawn "coordinator"
# hive가 관리하는 stream chain을 실행합니다
./claude-flow stream-chain run \
"Coordinate with hive mind for task distribution" \
"Execute distributed tasks" \
"Aggregate results" \
--background
Training Pipeline과 함께 사용
# 먼저 에이전트를 학습합니다
./claude-flow train-pipeline run
# 학습한 에이전트를 stream chain에서 사용합니다
./claude-flow stream-chain run \
"Apply conservative strategy from training" \
"Apply balanced strategy from training" \
"Apply aggressive optimization" \
--bg
MCP 도구와 함께 사용
# MCP로 스웜을 초기화합니다
npx claude-flow swarm init --topology mesh
# 스웜 조정을 사용하여 stream chain을 실행합니다
./claude-flow stream-chain run \
"Initialize swarm agents" \
"Distribute tasks across swarm" \
"Collect and synthesize results" \
--background
문제 해결
체인이 시작되지 않음
증상: 명령이 멈추거나 바로 타임아웃됩니다
점검 사항:
- Claude CLI가 설치되어 있는지 확인합니다:
which claude - Claude가 인증되었는지 확인합니다:
claude --version - 더 짧은 타임아웃으로 시도합니다:
--timeout 5 - 테스트 명령을 실행합니다:
stream-chain test
백그라운드 프로세스를 찾을 수 없음
증상: monitor에 예상한 프로세스가 표시되지 않습니다
점검 사항:
- 프로세스 파일이 존재하는지 확인합니다:
ls -la .claude-flow/stream-chains.json - 프로세스가 시작되었는지 확인합니다: 터미널 출력에서 프로세스 ID를 확인합니다
- 시스템 프로세스를 확인합니다:
ps aux | grep claude-flow
체인이 예기치 않게 중지됨
증상: 체인이 조기에 "Stopped"로 표시됩니다
점검 사항:
- 시스템 리소스를 확인합니다:
top또는htop - 타임아웃 설정을 검토합니다
- Claude CLI 로그를 확인합니다
- 자세한 정보를 위해 verbose 플래그로 실행합니다
성능 최적화
더 빠른 체인을 위한 팁
- 컨텍스트 최소화: 프롬프트를 간결하게 유지합니다
- 구체적인 지시 사용: 모호한 프롬프트를 피합니다
- 가능하면 병렬화: 독립적인 체인은 동시에 실행합니다
- 결과 캐싱: 중간 결과를 저장해 재사용합니다
- 성능 프로파일링: 느린 단계를 파악하려면
--verbose를 사용합니다
리소스 관리
# 동시에 실행할 체인 수를 제한합니다
MAX_CHAINS=3
CURRENT=$(./claude-flow stream-chain monitor | grep "🟢 Running" | wc -l)
if [ $CURRENT -lt $MAX_CHAINS ]; then
./claude-flow stream-chain demo --background
else
echo "Maximum chains running, waiting..."
fi
관련 문서
버전 기록
| 버전 | 날짜 | 변경 사항 |
|---|---|---|
| 1.0.0 | 2025-08-12 | 초기 구현 |
| 1.1.0 | 2025-08-12 | 백그라운드 실행 지원 추가 |
| 1.2.0 | 2025-08-12 | monitor 및 kill 명령 추가 |
기여 방법
stream-chain 명령에 기여하려면 다음을 수행합니다:
- 리포지토리를 포크합니다
- 기능 브랜치를 생성합니다:
git checkout -b feature/stream-chain-enhancement /src/cli/simple-commands/stream-chain.js를 수정합니다- 테스트와 문서를 업데이트합니다
- Pull Request를 제출합니다
지원
문제나 질문이 있다면 다음을 참고하세요:
- GitHub Issues: claude-flow/issues
- Documentation: Stream Chaining Docs
- Wiki: Claude Flow Wiki
마지막 업데이트: 2025년 8월 Claude Flow 버전: Alpha 89