---
title: "Publish TUI event"
method: POST
path: "/tui/publish"
---

# Publish TUI event

`POST /tui/publish`

Publish a TUI event

## Query parameters

- `directory` string
- `workspace` string

## Request body

- union
  - EventTuiPromptAppend
    - `type` 'tui.prompt.append', required
    - `properties` object, required
      - `text` string, required
  - EventTuiCommandExecute
    - `type` 'tui.command.execute', required
    - `properties` object, required
      - `command` union, required
        - 'session.list' | 'session.new' | 'session.share' | 'session.interrupt' | 'session.compact' | 'session.page.up' | 'session.page.down' | 'session.line.up' | 'session.line.down' | 'session.half.page.up' | 'session.half.page.down' | 'session.first' | 'session.last' | 'prompt.clear' | 'prompt.submit' | 'agent.cycle'
        - string
  - EventTuiToastShow
    - `type` 'tui.toast.show', required
    - `properties` object, required
      - `title` string
      - `message` string, required
      - `variant` 'info' | 'success' | 'warning' | 'error', required
      - `duration` number — Duration in milliseconds
  - EventTuiSessionSelect
    - `type` 'tui.session.select', required
    - `properties` object, required
      - `sessionID` string, required — Session ID to navigate to

## Response `200`

Event published successfully

- boolean

## Other responses

- `400` — Bad request

## Changes

- **2026-05-06** `067d03067fb2` — 1 info
  - the `duration` request property default value `5000` was removed
- **2026-04-25** `0a2d50cb4204` — 1 warning, 3 info
  - changed the pattern of the request property `anyOf[#/components/schemas/Event.tui.session.select]/properties/sessionID` from `^ses` to `^ses.*`
  - added the new optional `query` request parameter `workspace`
  - added the new `session.line.down` enum value to the request property `anyOf[#/components/schemas/Event.tui.command.execute]/properties/command/anyOf[subschema #1]/`
  - added the new `session.line.up` enum value to the request property `anyOf[#/components/schemas/Event.tui.command.execute]/properties/command/anyOf[subschema #1]/`
- **2026-01-15** `101bbaa394c4` — 1 info
  - added `#/components/schemas/Event.tui.session.select` to the request body `anyOf` list
- **2025-12-16** `dc065d96c390` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/kaaass/apis/opencode/changes/tui/publish/post.md)

---

[API](https://skmtc.dev/kaaass/apis/opencode.md) · [All operations](https://skmtc.dev/kaaass/apis/opencode/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/kaaass/opencode/revisions/8bb9a15bd144/schema)
