3.3 KiB
3.3 KiB
CLI Automation Runtime 안정화
목표
CLI Agent와 도구 실행을 안정적인 Automation runtime으로 정리한다. 현재 구현된 CLI adapter baseline을 바탕으로 one-shot, persistent terminal, opencode SSE, codex exec 같은 실행 모드를 같은 adapter execution 모델 안에서 안정화한다.
단계
Automation Runtime과 Bridge 확장
상태
완료
구현 잠금
- 상태: 해제
- 이유: 완료된 Milestone이며 완료 기준과 완료 근거가 문서화되어 있다. 후속 확장은 별도 Milestone에서 다룬다.
- 해제 조건:
- 완료 기준과 완료 근거가 문서화됨
- 후속 확장은 별도 Milestone에서 다룸
- 잠금 중 금지:
- 해당 없음
범위
- CLI profile 설정과 output format 처리 안정화
- persistent logical session lifecycle 관리
- command/status/capability/session list 응답 정리
- usage/status parser와 terminal screen parser 신뢰성 강화
- Node local execution history와 Edge event aggregation 경계 정리
- 이미 동작하는 CLI adapter 기능을 재구현하지 않고 hardening, 경계 정리, 검증 기준 보강에 집중
필수 기능
- [profile-modes] CLI adapter는 profile별 실행 모드를
node.Node분기 없이 adapter 내부에서 처리한다. - [output-parsing] output format별 파싱은
lineEmitter또는 모드별 구현으로 분리한다. - [persistent-session] persistent terminal profile은 idle timeout, completion marker, cancel drain 기준을 명확히 가진다.
- [command-path]
NodeCommandRequest경로는 실행 요청과 분리된 조회/제어 명령으로 유지한다. - [ops-command] 운영 명령 응답과 검증 기준을 마무리한다.
- [ops-payload]
SESSION_LIST,USAGE_STATUS,TRANSPORT_STATUS응답 payload를 운영자가 읽기 쉬운 필드로 정리한다. - [ops-smoke] 대상 패키지 테스트와 field smoke 절차로 운영 명령 응답을 검증한다.
- [ops-payload]
- [history-boundary] Node local execution history와 Edge event aggregation의 책임 경계를 확인한다.
- [profile-smoke] 주요 CLI profile별 field smoke 결과를 수집하고 마일스톤 종료 여부를 결정한다.
완료 기준
- 주요 CLI profile이 동일한
RunRequest/RunEvent흐름으로 실행된다. - session list, usage status, transport status가 운영자가 이해할 수 있는 응답을 제공한다.
- CLI adapter 변경 시 대상 패키지 테스트와 field smoke 기준이 함께 맞는다.
범위 제외
- 모든 외부 자동화 도구를
iop-node하위 프로세스로 흡수 - OTO 같은 specialized domain agent를 CLI adapter profile로 대체
- CLI adapter 내부에 Control Plane 책임 추가
작업 컨텍스트
- 관련 앱:
apps/node - 관련 패키지:
apps/node/internal/adapters/cli,apps/node/internal/runtime,apps/node/internal/node - 관련 문서:
apps/node/README.md - 방향성 메모: OpenCode, Aider, Cline, Claude Code, Gemini CLI, Codex CLI 등은 NomadCode 전용 구현이 아니라 IOP CLI adapter/profile 후보로 본다.
- 최근 근거: 2026-05-23에
go test ./..., mock./scripts/e2e-smoke.sh,IOP_E2E_PROFILE=codex|opencode|antigravity|claude|claude-tui ./scripts/e2e-smoke.sh를 통과했다. - 다음 작업: 완료됨. 후속 후보는
원격 터미널 브리지 POC이다.