inline-assistant.md

 1# Inline Assistant
 2
 3## Usage Overview
 4
 5Use `ctrl-enter` to open the Inline Assistant nearly anywhere you can enter text: editors, text threads, the rules library, channel notes, and even within the terminal panel.
 6
 7The Inline Assistant allows you to send the current selection (or the current line) to a language model and modify the selection with the language model's response.
 8
 9You can also perform multiple generation requests in parallel by pressing `ctrl-enter` with multiple cursors, or by pressing the same binding with a selection that spans multiple excerpts in a multibuffer.
10
11## Context
12
13Give the Inline Assistant context the same way you can in [the Agent Panel](./agent-panel.md), allowing you to provide additional instructions or rules for code transformations with @-mentions.
14
15A useful pattern here is to create a thread in the Agent Panel, and then mention that thread with `@thread` in the Inline Assistant to include it as context.
16
17## Prefilling Prompts
18
19To create a custom keybinding that prefills a prompt, you can add the following format in your keymap:
20
21```json [keymap]
22[
23  {
24    "context": "Editor && mode == full",
25    "bindings": {
26      "ctrl-shift-enter": [
27        "assistant::InlineAssist",
28        { "prompt": "Build a snake game" }
29      ]
30    }
31  }
32]
33```