01a0ef46c9
- Add startup_command field to ToolType model and API - Execute startup command before interactive shell in terminal sessions - Add tmux and ranger to OpenCode container spec - Update Tool Workshop UI with startup_command input for terminal types - Add backend tests for startup_command CRUD operations - Sync specs: tool-terminal, tool-types-definition, opencode-web-server - New spec: tool-terminal-startup-command Quality gates: Frontend typecheck/lint passed. Backend tests blocked by environment (Python/Docker not available). OpenSpec: terminal-startup-and-container-tools
1.0 KiB
1.0 KiB
MODIFIED Requirements
Requirement: WebSocket Terminal
The system SHALL provide terminal sessions via WebSocket.
Scenario: Open terminal with startup command
- GIVEN a running tool instance with a tool type that has
startup_commandset - WHEN the user opens the terminal
- THEN a WebSocket connection is established
- AND the startup command is executed before the interactive shell
- AND the shell is spawned in the container via
docker exec
Scenario: Open terminal without startup command
- GIVEN a running tool instance with a tool type that has no
startup_command - WHEN the user opens the terminal
- THEN a WebSocket connection is established
- AND the shell spawns directly without any startup execution
Requirement: Session Management
The system SHALL manage terminal sessions.
Scenario: Reset terminal session runs startup command
- GIVEN an active terminal session
- WHEN the user resets the session
- THEN a new shell is spawned
- AND the startup command executes before the new interactive shell