--- ui_doc_type: component component_id: activity-rail status: 구현됨 source_evidence: - type: code path: apps/client/lib/src/app/nomadcode_workbench_shell.dart notes: _WorkbenchActivityRail과 _RailButton 구현. - type: docs path: apps/client/README.md notes: right-side activity rail과 IOP entry 위치 설명. - type: user path: null notes: agent-ui 생성 요청. --- # Activity Rail Component ID: `activity-rail` Status: `구현됨` ## Source Evidence | Type | Path | Notes | |------|------|-------| | code | `apps/client/lib/src/app/nomadcode_workbench_shell.dart` | _WorkbenchActivityRail과 _RailButton 구현. | | docs | `apps/client/README.md` | right-side activity rail과 IOP entry 위치 설명. | | user | 없음 | agent-ui 생성 요청. | ## Purpose Workbench 우측에서 Agent dock toggle과 주요 product section 전환을 제공한다. ## Used By - `workbench-shell`: `workbench-shell.activity-rail` ## Anatomy - Agent toggle button - Product section buttons: Workspace, Workflow, Terminal, Review, Web Context - Bottom utility buttons: Settings, IOP - Tooltip labels - Selected visual state ## Variants - default: 60px fixed-width rail ## States - default - selected - agent-open - loading: 없음 - empty: 없음 - error: 없음 - disabled: 없음 ## Rules - Agent button은 section selection과 별도 상태를 갖는다. - section button 선택 시 중앙 content를 전환하고 Agent dock을 닫는다. - IOP entry는 rail 하단에 유지한다. ## Decision History - 2026-06-24: workbench shell의 구현된 activity rail을 component로 등록했다.