Skip to content

feat: opt-in Antigravity CLI adapter for existing TUI delivery #85

Closed

Description

@abruption

목적

v0.9.0 선택적 베타 대상으로 Antigravity CLI 기존 TUI에 전달하는 내장 어댑터를 추가한다. #47 내부 adapter/transport 계약을 기반으로 하며 #69 릴레이와 별도로 개발한다. 기존 이슈 중복 없음(2026-09-17 확인).

실증 근거

agy 1.2.4 Mac/KR에서 TUI가 시작한 runtime-local bridge → 공식 agentapi send-message 경로로 유휴 수신을 확인했다. KR 7건 모두 SYSTEM 수신과 MODEL ACK를 확인: 유휴 2회(3.359/3.204초), 작업 중 후속 수신, 접수 후 SSH 단절, bridge 및 TUI 재시작. 두 ACK가 한 응답으로 묶일 수 있다. TUI 종료 시 socket 잔존 문제 발견.

구현 범위

  • agent: antigravity, antigravity:UUID target, list/doctor/local/SSH send 연결.
  • 사용자가 대상 TUI tool 환경에서 명시적으로 실행하는 bridge 등록/종료. 인증 환경 상속만 사용하고 토큰 추출/로그/외부 복사 금지.
  • 같은 OS UID, canonical home 및 UUID-specific presence FD, PID+starttime, registration generation 검증. 살아 있는 등록만 전송 가능; 원격 조회는 원격 사용자 기준.
  • private directory/socket, 요청 크기/시간/수명 제한, 중복 request ID 충돌 거절, 신호 종료 및 stale socket 복구.
  • submitted와 consumed 구분. 결과 불명확 시 재전송 금지. ACK/wait/wake 미지원 명시.
  • Linux/macOS 지원 범위를 코드와 테스트에 명확히 표현. 자동으로 다른 UID나 인증 환경을 추출하거나 기존 TUI를 새 writer로 열지 않음.

검증/완료 기준

fixture로 등록/대상 검증, PID 재사용, 세대 변경, 중복/충돌, 프레이밍/크기, 타임아웃/부분 실패, 신호 정리, 기존 어댑터 회귀 검증. KR 기존 TUI에서 opt-in bridge 등록 후 실제 list/send/ACK 및 종료 정리 확인. 설치/등록/제약 문서와 결과 보고서 작성.

현재 요청: 별도 격리 worktree에서 개발 및 테스트. 원격 push/PR/릴리스는 이번 요청 범위에 포함하지 않는다. 제품 버전은 개발 중 임의 변경하지 않는다.

Activity

  1. abruption commented on Sep 18, 2026

    @abruption
    OwnerAuthor

    Completed by PR #88, integrated into main through PR #90 and released in v0.9.0. The opt-in adapter, list/doctor/local/SSH delivery, registration and cleanup, bounded requests, duplicate/conflict handling, documented limitations, regression tests and live KR TUI ACK checks satisfy this issue. Validation is recorded in docs/validation/85-antigravity.md. PR #88 initially merged into a dependency branch, so its Closes #85 did not automatically close the issue; PR #90 referenced it without a closing keyword. Automatic sidecar startup, durable outbox, ACK/wait/wake and expanded live-platform coverage remain outside this initial experimental adapter scope.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions