# OSCODE Web CLI · 0.19.0

Run in your project with Node.js 22 or later:

```sh
npx @choijinwon/oscode@0.19.0 --web
# Optional no-key demo that reads the real project file list
npx @choijinwon/oscode@0.19.0 --web --demo
```

Add `--cwd /path/to/project` to choose a project. Keep the terminal running and open its local URL. Existing CLI model settings, environment variables and saved credentials are reused. API keys are not sent to the browser. The demo is not a coding model.

## Chat and tasks

Enter sends a request; Shift+Enter inserts a newline. Up to eight conversations can be created. Submit additional requests while work runs to queue them. Each request receives an `OSC-…` ID, with copy and navigation to the associated conversation. Filter all tasks, approvals, upcoming work or finished tasks.

File changes and commands require per-action approval; existing deny permissions remain effective. Shell commands can affect files outside the project: this is not an operating-system sandbox. Approved, rejected and expired requests are recorded against the task.

Use the time selector above the composer to schedule a task in your local timezone. This is the earliest possible start, not a guaranteed deadline. One project task runs at a time. Pending tasks can be cancelled; active tasks can be stopped. A completed response means the agent turn ended, not that the business outcome or artifact quality was verified.

Open task details for a two-column timeline: tool steps on the left, actual inputs, change previews, outputs and duration on the right. Duration includes approval waits. At most the latest 100 tool records per conversation are retained. Long output can be truncated by existing tool limits.

## Live browser

Open the live browser using the left rail and enter your development URL. An isolated Chromium window is captured roughly once per second. Manual control supports clicking, wheel scrolling, text input through the bottom field, supported keys, back and reload.

Hand control to the agent before asking it to use `browser_live`. Every agent browser action uses the existing approval flow. Return to chat to approve it. Taking control back requests cancellation of a linked task; an already started action may finish. Stop closes the browser; closing its panel only hides the view.

If Chromium cannot start:

```sh
npx playwright install chromium
```

Personal cookies and logins are not shared. A single 1280×800 tab is supported. Popups, downloads, uploads, native browser dialogs and full desktop control are not included. The model receives bounded page text and controls, not the screenshot stream. Opening a page makes network requests to the target site. Browser state is discarded when closed.

## Persistence and limits

This server is local only. Do not share its capability URL or expose it with a public proxy. Up to 100 tasks per server. Task lists, schedules and approval records live in memory and are not restored after restart. Conversations and tool execution records are saved in `.oscode`; past-session selection after restart is not available in this UI yet.

A connected browser is required for the queue to run. After 30 seconds without one, active work receives a cancellation request. Pending tasks resume when the browser reconnects. Browser timer throttling may cause cancellation in long-hidden tabs. Server shutdown cancels pending reservations. Recurring schedules, calendars and external event triggers are not supported.

Full CLI slash-command parity, MCP configuration, attachments and changing models through the web interface are not yet available. Configure the model through the existing CLI and restart the server. Some interface labels remain Korean.
