## ADDED Requirements

### Requirement: File tree as primary view
The mobile Repo Workspace SHALL display the file tree as the primary view with repository and branch selectors at the top.

#### Scenario: Viewing file tree
- **WHEN** user navigates to a project's workspace on mobile
- **THEN** a file tree is displayed showing folders and files in the repository

#### Scenario: Repository selection
- **WHEN** user taps the repository selector dropdown
- **THEN** a list of available repositories is shown for selection

#### Scenario: Branch selection
- **WHEN** user taps the branch selector dropdown
- **THEN** a list of branches is shown for selection

### Requirement: File tree interactions
The file tree SHALL support folder expansion, file opening, and git status indicators.

#### Scenario: Expanding folder
- **WHEN** user taps a folder in the tree
- **THEN** the folder expands to show its contents, or collapses if already expanded

#### Scenario: Opening file
- **WHEN** user taps a file in the tree
- **THEN** the file opens in the editor view

#### Scenario: Git status indicators
- **WHEN** files have git status (modified, staged, untracked)
- **THEN** visual indicators (colors/icons) are shown next to affected files

### Requirement: Bottom tab navigation
The mobile workspace SHALL provide bottom tabs for switching between File Tree, Editor, Git, and Terminal views.

#### Scenario: Switching to Editor tab
- **WHEN** user taps the "Editor" tab
- **THEN** the editor view is shown with the currently selected file (or empty state)

#### Scenario: Switching to Git tab
- **WHEN** user taps the "Git" tab
- **THEN** the git view is shown with status, commit form, and file lists

#### Scenario: Switching to Terminal tab
- **WHEN** user taps the "Terminal" tab
- **THEN** the terminal view is shown for the current repository

### Requirement: Editor view
The editor view SHALL provide a full-screen code editing experience with syntax highlighting.

#### Scenario: Editing file
- **WHEN** user opens a file and modifies it
- **THEN** syntax highlighting is applied and changes can be saved

#### Scenario: Editor toolbar
- **WHEN** viewing the editor
- **THEN** a toolbar shows file name, save button, undo/redo buttons

### Requirement: Git view
The git view SHALL show repository status and allow committing changes.

#### Scenario: Viewing git status
- **WHEN** user opens the Git tab
- **THEN** modified, staged, and untracked files are listed separately

#### Scenario: Staging files
- **WHEN** user toggles a file's checkbox
- **THEN** the file is staged or unstaged accordingly

#### Scenario: Committing changes
- **WHEN** user enters a commit message and taps "Commit"
- **THEN** staged files are committed with the provided message

### Requirement: Terminal view
The terminal view SHALL provide a full-screen terminal for the repository's tool instance.

#### Scenario: Terminal for repository
- **WHEN** user opens the Terminal tab
- **THEN** a terminal is shown connected to the repository's active tool instance

#### Scenario: No active instance
- **WHEN** no tool instance is running for the repository
- **THEN** a message is shown with a button to start a new session
