gito/agent-roadmap/phase/agent-shell-iop-execution/milestones/agent-shell-runtime-channel.md

2.1 KiB

Milestone: Agent Shell Runtime Channel

위치

  • Roadmap: agent-roadmap/ROADMAP.md
  • Phase: agent-roadmap/phase/agent-shell-iop-execution/PHASE.md

목표

agent-shell이 runner machine에서 outbound proto-socket으로 control plane에 연결하고, heartbeat, capability registration, command dispatch, log stream을 처리한다. control plane은 연결된 shell에 workspace operation을 배정할 수 있어야 한다.

상태

[계획]

승격 조건

  • 없음

구현 잠금

  • 상태: 해제
  • 결정 필요: 없음

범위

  • agent-shell identity와 capability model
  • outbound proto-socket 연결
  • heartbeat와 runner 상태 event
  • command dispatch request/response shape
  • stdout/stderr log stream shape

기능

Epic: [shell-channel] Shell channel

agent-shell과 control plane 사이의 runtime channel을 만든다.

  • [identity] GITO_SHELL_ID와 runner capability registration model을 확정한다.
  • [heartbeat] shell heartbeat와 disconnect 상태를 operation event로 투영한다. 검증: fake shell disconnect가 runner offline event를 남긴다.
  • [dispatch] command dispatch proto-socket action 후보를 구현한다. 검증: test shell이 no-op command request를 받고 response를 반환한다.
  • [logs] stdout/stderr chunk stream shape를 정의하고 event stream에 연결한다.

완료 리뷰

  • 상태: 없음
  • 요청일: 없음
  • 완료 근거: 없음
  • 리뷰 필요:
    • 사용자가 완료 결과를 확인했다
    • archive 이동을 승인했다
  • 리뷰 코멘트: 없음

범위 제외

  • IOP CLI invocation 세부
  • provider API 호출
  • Flutter runner management UX
  • remote shell installation 자동화

작업 컨텍스트

  • 관련 경로: services/core/internal/agentshell/, services/core/internal/controlplane/, services/core/internal/events/, packages/contracts/notes/gito-control-plane.md
  • 표준선(선택): runner는 가능하면 outbound connection으로 control plane에 붙는다.
  • 선행 작업: Operation Event Outbox
  • 후속 작업: IOP Agent Run Bridge
  • 확인 필요: 없음