Coodeen
Architecture

Agent Tools

The tool calls you'll see inline in the chat.

Where Tools Come From

Coodeen doesn't define its own tools. The bundled opencode sidecar owns the agent loop and the tool catalog; Coodeen just streams the events and renders them.

What You'll See

Each tool invocation renders as an expandable block in the chat with its arguments and result. The exact set depends on the opencode version shipped in apps/desktop/resources/bin/; at a high level expect:

  • Read / write / edit — File I/O in the project directory.
  • Glob / grep — Find files or search contents.
  • List / stat — Directory listings.
  • Bash — Shell commands scoped to the project directory.
  • Web fetch — Fetch a URL's content.
  • Plan / todo — Structured planning and task tracking.

Consult opencode's release notes for the authoritative list at a given version.

Scoping

All tools run inside the session's project directory. The x-opencode-directory header + directory query param pin each request to the right instance, so tool calls can't escape the selected folder unless they themselves request an absolute path outside it.

Customizing

The opencode binary is shipped as-is. To pin a version for reproducibility:

OPENCODE_VERSION=0.x.y bun run --cwd apps/desktop fetch-opencode

See the Development guide.