# Context and prompting **Status:** Implemented · **Code:** `Scripts/main.js` ## Asking | Command | Shortcut | Context attached | | --- | --- | --- | | `claudenova.ask` | ⌘⇧L | The active editor's selection, if any | | `claudenova.askAboutSelection` | ⌃⌘L | Required — warns when nothing is selected | | `claudenova.addFileContext` | — | The active file's path | | `claudenova.addFiles` | — | Files/folders chosen from `showFileChooser` | | `claudenova.plan` | ⌘⇧P | As `ask`, in plan mode | A context object is `{label, content(question)}`. The label appears in the transcript under the user turn and in the input palette's title; `content()` wraps the question with the attachment. ## Selection payload `selectionContext()` computes 1-based line numbers by counting newlines before the selection, and fences the text with the document's syntax name: ``` From `src/parser.js` lines 10–24: ```javascript ``` ``` Controlled by `claudenova.includeSelection`. ## Prompting `showInputPalette` (not `showInputPanel`) — it is the palette-style single-line field, consistent with Nova's other quick entry points. Nova has no multi-line input available to extensions; for long-form input the pattern used elsewhere in this extension is to open a scratch document instead (see [plan mode](plan-mode.md)).