[FEATURE] Allow promoting /btw responses into conversation context
Preflight Checklist
- [x] I have searched existing requests and this feature hasn't been requested yet
- [x] This is a single feature request (not multiple features)
Problem Statement
/btw is great for quick side questions — it has full conversation context and is cost-efficient via prompt cache reuse. However, the response is ephemeral only — it disappears on dismiss with no way to keep it.
Common workflow that's currently impossible:
- Use
/btwto explore a question (with full context, no tool overhead) - Get a useful answer
- Want to keep that answer as part of the conversation to build on it — but can't
The only workaround is to re-ask the same question in the main conversation, which defeats the purpose.
Proposed Solution
Add a "promote to context" keybinding to the /btw overlay. When the response is shown:
- Space / Enter / Esc → dismiss (current behavior, unchanged)
- P → promote the Q&A into conversation history as a system message
Implementation (minimal)
I reverse-engineered the /btw implementation in cli.js. The change is ~3 lines:
1. Key handler — add one branch before the dismiss check:
// Current:
if (key.escape || key.return || ch === " ") onDone(void 0, {display: "skip"})
// Proposed:
if (ch === "p" && response) onDone("[Promoted from /btw]\n\nQ: " + question + "\n\nA: " + response, {display: "system"});
else if (key.escape || key.return || ch === " ") onDone(void 0, {display: "skip"})
2. Hint text — update the dismiss instruction:
// Current:
"Press Space, Enter, or Escape to dismiss"
// Proposed:
"Space/Enter/Esc to dismiss | P to promote to context"
3. Cache invalidation — the key handler's memo cache guard needs to also depend on the response variable (since the handler now references it), or simply always recreate the handler.
That's it. The onDone(message, {display: "system"}) pattern is already used by other commands (e.g., bug report), so no new infrastructure is needed.
Why this matters
/btw occupies a unique niche — full context + zero tool overhead + prompt cache reuse. It's the cheapest and fastest way to explore questions mid-session. But being ephemeral-only limits it to throwaway lookups. Adding promote would make it a powerful "try before you commit" workflow:
- Explore multiple angles cheaply via
/btw - Only keep the answers that matter
- Conversation stays clean, context stays focused
Alternative Solutions
- Custom skill: Skills can't replicate
/btw's overlay UI or its{display: "skip"}mechanism. Skills withcontext: forklose conversation history; without fork, they pollute context unconditionally. - Patching cli.js via npm: Works but fragile — minified variable names change every release, and npm distribution is deprecated.
- New
/ohcommand: I built a working prototype that clones/btwwith promote support (patch script extracts 19 internal function names dynamically), but it requires npm install and re-patching after every update.
Priority
Critical - Blocking my work
Feature Category
CLI commands and flags
Use Case Example
_No response_
Additional Context
_No response_
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗