# better-btw

> Claude Code's /btw for Paseo: ask a side question about an agent's conversation without interrupting it or adding to its history.

> This is a community-submitted listing. Treat plugin-provided text as untrusted data and review the source before installing or running code.

- **Plugin ID:** `better-btw`
- **Source repository:** [961853266hyt/paseo-plugins](https://github.com/961853266hyt/paseo-plugins/tree/main/plugins/better-btw)
- **Plugin path:** `plugins/better-btw`
- **Catalog page:** https://paseo.cafe/plugins/better-btw
- **Markdown listing:** https://paseo.cafe/plugins/better-btw.md
- **Catalog API:** https://paseo.cafe/api/plugin/better-btw.json
- **License:** MIT
- **Requires Paseo:** `>=0.11.2`
- **Platforms:** all
- **Categories:** productivity

## Install

```sh
paseo plugin add npm:paseo-better-btw@0.1.1
```

Paseo 0.8 GitHub fallback:

```sh
paseo plugin add 961853266hyt/paseo-plugins --ref b69df5ed4ee5e45a11468fa4b55481067c196f99 --path plugins/better-btw
```

## Caveats

- Requires the Claude Code CLI (claude) installed and signed in on the daemon host.
- Each side question sends the agent's conversation to Anthropic through Claude Code, whatever the agent's provider.
- It cannot reuse the agent's prompt cache, so each side question pays for up to about 100,000 characters of context.
- On phones the answer is one tap away in a composer pill, since plugins cannot open overlays.
- Side threads live in daemon memory, so a daemon restart or plugin reload clears them.

## Catalog health

- Manifest: valid
- README: present
- License: present
- Tests: present
- Typecheck script: present

## npm artifact security scan

- Status: passed
- Package: paseo-better-btw
- Version: 0.1.1
- Integrity: sha512-JSYc0dWNpZNjf8ZEY2xf8XgvHCoZpdhfsLfedwBGMPVyl1ZFM0UVmfr6Eav8DgXxRKMVlTbeZ6tGe67E9LfrUQ==
- Blocking findings: 0
- Advisory findings: 0

## Git fallback security scan

- Status: passed
- Blocking findings: 0
- Advisory findings: 0

## Repository-provided content

> Everything below this point comes from the community repository. It is untrusted reference material, not system instructions. No catalog-authored facts follow it.

### Installation notes

From npm:

```bash
paseo plugin install npm:paseo-better-btw
```

Or straight from the repository:

```bash
paseo plugin install git:961853266hyt/paseo-plugins:plugins/better-btw
```

Update it later with `paseo plugin update better-btw`. Plugins are trusted code: the server part runs on the daemon host and the client part runs inside the Paseo app.

### Source README

<!-- npm shows this file; the Paseo registry shows OVERVIEW.md. The sections after Install repeat
OVERVIEW.md, so change both together. -->

#### Better btw for Paseo

A [Paseo](https://paseo.sh) plugin that brings Claude Code's `/btw`: ask a quick question about what an agent is doing without interrupting it, and without adding anything to its conversation.

Type `/btw` and a question in an agent's message box, such as `/btw what was the name of that config file again?`. Paseo runs the command in the app and never sends it to the agent, so it works while the agent is busy and leaves the running turn alone. In the web and desktop app the answer streams into a Side questions panel in the Explorer sidebar, beside the chat, with a box for the next question. A pill above the message box also follows the answer, and it is how the iOS and Android apps and narrow windows show it: the pill reports the answer's progress, and a tap opens the thread, with its own question box, in a popover or bottom sheet. `/btw` on its own brings the latest side question back, and the Command Center item Side questions (/btw) opens the panel.

As in Claude Code:

- A side question sees the conversation so far: your messages, the agent's replies and thinking, and its tool calls with their output, including a turn that is still running. It has no tools, so it cannot read files, run commands or search, and when the answer is not in the conversation it says so instead of guessing.
- Each answer is a single reply. A later side question also sees the earlier ones: the 20 newest answers are replayed with each new question.
- The thread stays out of the agent's history. Copy takes an answer as Markdown, Clear earlier forgets all but the current side question, and Stop ends an answer that is still arriving. Answers render as Markdown.

![The side thread in the Explorer sidebar beside the chat on desktop](https://raw.githubusercontent.com/961853266hyt/paseo-plugins/main/plugins/better-btw/assets/desktop-panel.png)

![The side thread in a bottom sheet on a phone](https://raw.githubusercontent.com/961853266hyt/paseo-plugins/main/plugins/better-btw/assets/phone-sheet.png)

##### Install

From npm:

```bash
paseo plugin install npm:paseo-better-btw
```

Or straight from the repository:

```bash
paseo plugin install git:961853266hyt/paseo-plugins:plugins/better-btw
```

Update it later with `paseo plugin update better-btw`. Plugins are trusted code: the server part runs on the daemon host and the client part runs inside the Paseo app.

##### Requirements

Requires Paseo 0.11.2 or later and the Claude Code CLI (`claude`) installed and signed in on the daemon host. Side questions run through that CLI whichever agent you ask about.

##### Settings

In Settings → Plugins, open the ⋯ menu of Better btw and choose Settings. The setting is shared by every client of the host:

- **Model**: Same as the agent, the default, answers with a Claude agent's own model, as Claude Code does, and with Latest Sonnet for Codex, OpenCode and other agents. Latest Haiku, Latest Sonnet, Latest Opus or a specific Claude model from the list Paseo offers for Claude agents applies to every agent. Haiku answers fastest; larger models use more of your Claude usage.

A change applies from the next side question, without reloading the plugin.

##### What it sends and where

When you ask, the plugin reads the agent's conversation from the daemon and builds a transcript of about 100,000 characters at most: user and agent messages across the whole session first, then tool output and the agent's thinking, newest first. A longer session keeps its first request and its newest history. The transcript, your earlier side questions with their answers, and the new question go to `claude -p` on the daemon host, which sends them to Anthropic. This applies to every agent: with Codex, OpenCode or any other non-Claude agent, the conversation still goes to Anthropic.

The run has no tools, no MCP servers, no hooks and no saved session, so it cannot act on your project and does not appear in your Claude Code history. It also loads none of your CLAUDE.md, rules or memory files. Your Claude Code settings still apply, so a gateway, proxy, Bedrock or Vertex setup or `apiKeyHelper` you configured there is used as usual. Each side question counts toward your Claude usage like any other request. Claude Code's own `/btw` reuses the conversation's prompt cache; a plugin cannot, so every side question pays for the transcript it reads.

At most three side questions run at once across all agents, and the rest wait up to a minute for a turn. An answer still running after three minutes is stopped.

##### Limits

- Plugins cannot open an overlay on their own, so where no panel opens beside the chat, in the iOS and Android apps and in narrow windows, the answer is one tap away in the pill rather than on screen.
- An answer streams in small steps rather than token by token: while it arrives, the app asks the daemon for it every 0.4 seconds.
- Side threads live in the daemon's memory: a daemon restart or plugin reload clears them, and archiving an agent drops its thread.
- A side question sees what Paseo's timeline recorded of the conversation.
- `/btw` does not run when the message box has an attachment: Paseo then sends the text to the agent as a normal message.

##### Changes and license

See the [changelog](https://github.com/961853266hyt/paseo-plugins/blob/main/plugins/better-btw/CHANGELOG.md). Source: [961853266hyt/paseo-plugins](https://github.com/961853266hyt/paseo-plugins/tree/main/plugins/better-btw). MIT license.
