> ## Documentation Index
> Fetch the complete documentation index at: https://hitspec.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# hitspec studio

> Use the interactive terminal app to build, run, and debug HTTP requests

hitspec studio is a keyboard-first interactive terminal app for working with hitspec files. It uses the same parser, runner, history store, stress engine, mock server, recorder, and import/export code as the CLI.

<Tip>
  studio edits normal `.http` / `.hitspec` files on disk. There is no separate project format, and saved files stay version-control friendly.
</Tip>

## Start the app

```bash theme={null}
hitspec studio
hitspec studio ./tests/api/
hitspec studio ./tests/api/users.http
```

It runs directly in the terminal — no browser, no port. When you need the REST/WebSocket API for integrations, use the server instead:

```bash theme={null}
hitspec serve --api-only --port 4000 --cors
```

## Keyboard Workflow

| Key                 | Action                            |
| ------------------- | --------------------------------- |
| `Ctrl+P`            | Open the command palette          |
| `1` - `9`           | Navigate between screens          |
| `Tab` / `Shift+Tab` | Move focus between panes          |
| `Enter`             | Open the selected file or command |
| `e`                 | Edit the active file inline       |
| `Ctrl+S`            | Save source changes               |
| `r`                 | Run the selected request          |
| `R`                 | Run every request in the file     |
| `Ctrl+R`            | Refresh workspace data            |
| `?`                 | Toggle expanded help              |
| `q`                 | Quit                              |

## Workspace

The workspace screen is compact and responsive:

* File list with search/filter from the Bubbles list component
* Parsed request table with method and URL
* Inline source editor powered by Bubbles textarea
* Response viewport with body, errors, timings, and assertion status
* Headers and assertions tables
* Bottom status bar with environment, progress, and help

Wide terminals show file, source, and response panes together. Medium terminals keep the file list plus one main pane. Narrow terminals switch to a single-pane tabbed workflow through focus changes.

## Secondary Screens

studio maps the former manager routes to terminal screens:

* **Stress**: quick-start load tests, live RPS/error/latency metrics, and profile persistence
* **Mock**: start/stop the mock server and inspect registered routes
* **Contract**: verify selected contract files against a provider URL
* **Record**: start/stop the recording proxy, inspect captured traffic, and export recordings
* **History**: browse persistent SQLite-backed runs and request results
* **Import**: convert cURL, Insomnia, OpenAPI, and Postman input into hitspec content
* **Cookies**: inspect the local cookie store captured from responses; cookies are not injected automatically
* **Settings**: edit config and environment values that persist to `hitspec.yaml`

## API-Only Mode

`hitspec serve --api-only` keeps the REST API and WebSocket endpoints for scripts and integrations. The web SPA is no longer served; non-API browser routes are not part of `serve`.

```bash theme={null}
hitspec serve --api-only --host localhost --port 4000
```

The API remains under `/api/v1/*`, with realtime events at `/api/v1/ws`.
