Coodeen
Features

Chat Panel

The primary interface — drive the agent and watch tool calls stream.

Overview

The chat panel occupies the left pane. It talks to the local opencode sidecar via session.prompt and renders events streamed from the sidecar's global event bus.

Composer

  • Multiline input with Enter to send.
  • Attach file references with the @-style file picker button — each reference carries a path and optional line range and is sent to the agent as context.
  • Attach element screenshots from the preview (see Screenshots).

The composer's status row shows the agent mode ("Agent"), the active model, and the project directory.

Streaming

The sidecar emits events (message.part.updated, tool call lifecycles, status changes) to /global/event. The app subscribes to that stream and applies each event to its chat store, so text, tool calls, and their outputs appear incrementally.

Tool Calls

Every tool invocation renders inline with its arguments and result. Opencode's built-in tools include read / write / edit, glob and grep, bash, plan, and todo tracking. Expand any call to inspect inputs and outputs.

Sessions

  • New session: open the session drawer (sidebar icon, top-left) and click New, or press Cmd+N.
  • Switch — pick a session from the drawer; its project directory and preview URL are restored.
  • Delete — removes it from opencode's store.

New chats receive an auto-generated title based on the first prompt (first ~60 chars).

Model

Pick the model from the model button under the composer. It lists every model from the providers you've connected in Settings. Each session remembers its model, and new sessions start with the last model you picked.