<blockquote><p><em>What does </em><code>validateToken</code><em> actually return? I'd like to know before the agent gets there.</em></p></blockquote><p>You have three options, and none of them are good.</p><p>You can <strong>wait</strong>. Let the agent finish, then ask. By then you'll have forgotten the question, or the agent will already have made an assumption about <code>validateToken</code> you could have corrected ten minutes ago.</p><p>You can <strong>interrupt</strong>. Type the question now. The agent stops the refactor, answers, and now its context is muddied with a tangent it didn't need.</p><p>You can <strong>open a second terminal</strong>. Start a new Elyra session, ask there, switch back. Now you're juggling two terminals, and neither knows about the other.</p><p>The underlying problem is simple: a conversation is single-threaded. One question, one context. If your brain wants to branch, the tool can't follow.</p><h2><code>/btw</code> — a second thread that doesn't touch the first</h2><pre><code class="language-bash">elyra install npm:@elyracode/btw
</code></pre><p>Type <code>/btw</code> followed by a question, and it runs in a separate process with its own context. The main agent doesn't see it. The main agent doesn't stop. You get an answer while the refactor keeps moving.</p><pre><code>/btw what does validateToken return in src/auth/service.ts?
</code></pre><p>Elyra spawns an isolated sub-process with full tool access — it can read files, run commands, search code. A moment later:</p><pre><code>BTW response:

validateToken(token: string): boolean

Returns true if the JWT signature is valid and the token hasn't
expired. Checks against the JWT_SECRET env var. Does not verify user
existence in the database — that's handled by the auth middleware.
</code></pre><p>The main agent is still refactoring. It never saw the question. It never saw the answer. Its context window is untouched.</p><p>And now you know something the agent doesn't yet: <code>validateToken</code> doesn't check user existence. That matters. When the agent gets to that part of the refactor, you can steer it with that knowledge — or hand the BTW thread over directly.</p><h2>A thread, not a one-shot</h2><p>BTW remembers. Each question builds on the previous ones:</p><pre><code>/btw what does validateToken return?
</code></pre><p><em>...answer...</em></p><pre><code>/btw and where is it called from?
</code></pre><p><em>...answer, with context from the first question...</em></p><pre><code>/btw is there a test for the expired token case?
</code></pre><p><em>...answer...</em></p><p>You've built a small investigation on the side. Three questions, three answers, zero tokens spent in the main context. The main agent is none the wiser.</p><h2>Bringing it back</h2><p>Sometimes the side investigation produces something the main agent needs. There are two ways to hand it over.</p><p><code>/btw:inject</code> sends the full thread.</p><pre><code>/btw:inject refactor validateToken based on what we found
</code></pre><p>Your questions, the answers, and your instruction land in the main session as a single message. The agent gets the whole investigation and a clear next step. The BTW thread clears itself.</p><p>Use this when the details matter — when you want the agent to see the journey, not just the destination.</p><p><code>/btw:summarize</code> sends a condensed version.</p><pre><code>/btw:summarize
</code></pre><p>Elyra distills the thread into a few sentences and injects that. The main agent gets the conclusions without the back-and-forth.</p><p>Use this when only the takeaway matters. <em>"validateToken doesn't check user existence and has no test for expired tokens"</em> is cheaper than three rounds of Q&amp;A.</p><h2>The commands</h2><p>Command What it does <code>/btw &lt;question&gt;</code> Ask in a parallel side session <code>/btw:inject [instructions]</code> Send full thread to main agent <code>/btw:summarize [focus]</code> Summarize thread and inject <code>/btw:thread</code> Show the current BTW thread <code>/btw:clear</code> Clear the thread without injecting</p><h2>When you'll reach for it</h2><p><strong>Clarifying questions while the agent works.</strong> "What does this function return?" "How many tests cover this module?" "What's in the <code>.env</code> for the database?" The kind of quick lookups that would derail the main conversation if you asked them there.</p><p><strong>Pre-investigation before steering.</strong> Before telling the agent to "refactor the payment module," spend two minutes in BTW understanding what's actually there. Then inject what you found and give a precise instruction instead of a vague one. The difference between a good prompt and a great one is often just a few minutes of looking around first.</p><p><strong>Exploring alternatives without commitment.</strong> "How would this look with a strategy pattern instead?" Ask BTW. If the answer is promising, inject it. If not, clear it. The main agent never wastes tokens on a dead end.</p><p><strong>Checking the agent's work.</strong> It just edited five files. Before moving on: <code>/btw run npm test and tell me if anything broke</code>. You get the answer without the main agent spending a turn on verification.</p><h2>How it differs from <code>!!</code></h2><p>If you've used <code>!!command</code>, you know it runs a shell command privately — you see the output, the agent doesn't. BTW is in the same family, but it's different in three ways:</p><ol><li><p><strong>BTW thinks.</strong> It's a full LLM session, not just a shell command. It can read files, reason about code, and give you an analysis.</p></li><li><p><strong>BTW has continuity.</strong> It maintains a thread. <code>!!</code> is fire-and-forget.</p></li><li><p><strong>BTW can come back.</strong> You can inject the thread or a summary into the main session. <code>!!</code> output is gone once you've read it.</p></li></ol><p>Use <code>!!</code> when you need raw command output. Use <code>/btw</code> when you need the agent to think about something on the side.</p><h2>Get it</h2><pre><code class="language-bash">elyra update
elyra install npm:@elyracode/btw
</code></pre><p>Then the next time a "quick question" lands sideways while the agent is busy — type <code>/btw</code> instead of waiting.</p><hr><p><em>Elyra v0.7.15 — </em><a target="_blank" rel="noopener noreferrer nofollow" href="https://elyracode.com/changelog"><em>changelog</em></a></p>