gentle-shell
무엇인가
gentle-shell은 Pi를 실행 기반으로 삼는 터미널 개발 하네스다. 에이전트가 만든 변경, 작업 목록, 엔지니어링 워크플로를 하나의 워크스페이스 레이아웃에 모은다. 에이전트 실행 자체와 그 실행을 지휘·검사하는 계층을 함께 묶는다.
어떻게 동작하나
구성은 el Gentleman, focused agent, ODD 작업 문서, SDD/OpenSpec, native review로 나뉜다. el Gentleman은 persona mode와 라우팅을 맡아 의도를 범위·다음 단계·검토 가능한 증거로 바꾼다. focused agent는 패키지가 소유한 Pi 에이전트로, 코드베이스 매핑·제한된 변경 구현·검증을 나눠 맡고 부모 에이전트 하나가 범위와 결정, 최종 요약의 책임을 유지한다. 세션 간 알림은 orchestrator_session_id, orchestrator_list, orchestrator_send_message 세 도구가 로컬 프로필 기준으로 처리하며, 목록은 ID만 알리고 도달 가능성은 알리지 않는다. ODD 작업 문서는 odd/tasks/<이름>.md 한 파일에 목표·문제·이유, 범위·제약, 실행 가능한 작업, 증거, 진행, 다음 단계, 수용된 변경 근거를 담고, Engram이 프로젝트 범위 odd/<이름>/tasks 아래에 전체 문서를 미러링한다. TDD는 설정된 mode·source·정확한 runner를 따라 워커에 전달되고 재개 시 갱신된다. SDD를 고르면 proposal·spec·design·tasks·verification 아티팩트가 분리되고, Strict TDD는 apply 단계에서 RED → GREEN → TRIANGULATE → REFACTOR 증거를 기록한다. v2.6.0의 /gentle:changes는 현재 세션과 서브에이전트의 write/edit 변경을 묶어 보여주며 시작 시 저장소 스캔을 하지 않는다. Agents view는 오케스트레이터·세션 계층, 완료·중단·lost-exit 이력, 부모-자식 핸드오프, 모델·effort·사용량을 표시한다.
무엇과 다른가
기본 경로가 ODD이고 SDD는 선택 사항이라는 점이 다른 하네스와 갈린다. ODD는 proposal·spec·design·tasks를 별도 아티팩트로 쪼개지 않고 작업 문서 하나로 유지한다. SDD는 크기·모호성·위험을 이유로 자동 선택되지 않으며 사용자가 명시적으로 고를 때만 켜진다. TDD는 SDD 없이 ODD에서도 동작하고, 테스트 파일이 이미 있다는 사실만으로 활성화되지 않는다. native review는 움직이는 대상을 따라가지 않고 후보 변경 하나를 고정해 리스크 범위 증거를 반환하고 제한된 수정 경로를 제시한다. native RDD는 이 흐름과 분리되어 사용자가 소유한다.
어떻게 쓰나
실행은 터미널에서 이뤄지고 슬래시 명령으로 조작한다. /gentle:changes로 세션 변경을 보고, /gentle:profiles로 오케스트레이터 라우팅을 패키지·리뷰 역할과 독립적으로 원자적으로 교체한다. 작업 단위는 odd/tasks/<이름>.md 파일 하나이며, 수용된 변경은 의도와 영향받는 작업을 갱신하면서 완료된 작업은 보존한다. 장기 메모리 미러는 Engram을 별도로 설치해야 붙는다.
전제와 한계
Pi 런타임과 Pi 에이전트 패키지가 전제다. 세션 간 알림은 notification-and-ACK 전송만 제공한다. 교차 세션 조회, 오프라인 큐, 재시도, 브로드캐스트, 읽음·완료 보장이 없다. ACK는 상대가 전달을 수락했다는 뜻일 뿐 읽거나 끝냈다는 뜻이 아니다. Unix에서 presence 레코드는 프로필의 사설 전송 디렉터리에 남고, 소켓 엔드포인트는 시스템 임시 디렉터리 아래 프로필 해시 디렉터리를 쓰며 인코딩 길이가 100바이트를 넘지 않는다. 공용 임시 부모 디렉터리는 검증만 하고 점유·권한 변경·정리를 하지 않는다. Windows는 패키지 로컬 PowerShell 헬퍼로 이름 있는 파이프를 쓰고, 가용성과 전달은 헬퍼의 제한된 시작·파이프 검사에 달린다. Engram이 없으면 로컬 진행만 남고 미러는 명시적으로 pending 상태가 된다. TDD를 끈 상태에서도 기능 검사는 실행된다.
관련 논문 3
유사 도구
- open-multi-agent자체 호스팅 TypeScript 에이전트 런타임이다. 승인이 필요한 동작은 내구성 있는 승인 게이트에서 멈추고, 모든 실행은 오프라인에서 검증 가능한 기록을 남긴다.
- agentsysAI 에이전트 오케스트레이션 런타임이자 플러그인 마켓플레이스다. 작업 선택부터 PR·배포까지 단계 게이트로 묶고 세션 간 상태를 유지한다.
- opencode터미널에서 동작하는 오픈소스 AI 코딩 에이전트다. build와 plan 두 에이전트를 Tab 키로 전환하며 코드 편집과 탐색을 나눠 수행한다.
- little-coderpi 위에 확장과 스킬을 얹어 소형 로컬 모델에 맞춘 코딩 에이전트 CLI다. 콜드 스타트 컨텍스트를 7k 토큰 근처로 고정한다.
- DeepSeek-ReasonixDeepSeek에 맞춰 만든 터미널 코딩 에이전트다. 프리픽스 캐시 안정성을 중심으로 설계해 세션을 계속 켜 둘 수 있고, 하나의 로컬 엔진에 터미널·데스크톱·브라우저·편집기가 붙는다.
- continueCLI·VS Code 확장·JetBrains 플러그인으로 배포되는 오픈소스 코딩 에이전트다. 2.0.0을 끝으로 저장소가 읽기 전용으로 전환됐다.