## ADDED Requirements ### Requirement: OpenCode runs a web server The system SHALL configure OpenCode containers to run a web server accessible on port 3000. #### Scenario: OpenCode container starts - **GIVEN** an OpenCode tool instance - **WHEN** the container starts - **THEN** a web server is running on port 3000 inside the container - **AND** the server serves a web terminal interface - **AND** the container has `tmux` installed - **AND** the container has `ranger` installed ### Requirement: OpenCode exposes web interface The system SHALL mark OpenCode as having both terminal and web interfaces. #### Scenario: OpenCode instance created - **GIVEN** a new OpenCode instance - **WHEN** the instance list is displayed - **THEN** both "Open" and "Terminal" buttons are shown ### Requirement: OpenCode web terminal uses correct port The system SHALL use port 3000 when creating tunnels for OpenCode instances. #### Scenario: Tunnel created for OpenCode - **GIVEN** an OpenCode instance with `default_port: 3000` - **WHEN** the instance starts and creates a tunnel - **THEN** the tunnel targets `http://container-name:3000` ### Requirement: OpenCode web terminal displays properly The system SHALL serve a functional web terminal interface for OpenCode. #### Scenario: User opens OpenCode web UI - **GIVEN** a running OpenCode instance - **WHEN** the user clicks the "Open" button - **THEN** a new tab opens with the OpenCode web interface - **AND** the interface shows a terminal connected to the OpenCode process - **AND** the user can run `tmux` and `ranger` commands