Skip to main content

In-Session Actions

Goose provides features you can use to manage conversations and share information during sessions.

Edit Message

Edit your previously sent messages to refine conversations and correct course.

Editing any message in the session gives you complete control over the conversation history by overwriting all the context that follows the edited message. Your change can be as simple as fixing a path in your last message or completely starting over from a given point.

This is useful when:

  • You realize a prompt you sent was unclear or incomplete
  • Goose misunderstood your intent and went in the wrong direction
  • You want to try different approaches to a problem without starting a new session
  1. Hover over any of your previous messages to reveal the edit button
  2. Click the edit button that appears
  3. Make your changes in the inline editor
  4. Click Save to save your changes and reprompt Goose (or use Cmd+Enter (macOS) or Ctrl+Enter (Windows/Linux))

Goose removes all conversation history after the edited message and responds contextually from that point.

Deleted Context

Subsequent conversation history is permanently deleted from the session and removed from Goose's context. Edit a message only if you don't need Goose to remember the context that follows it.

Example Message Flow

Your original conversation has five messages. After editing message 3, the conversation continues from that point, and all message and response context from messages 4 and 5 is deleted.

┌─────┐    ┌─────┐    ┌─────┐    ┌─────┐    ┌─────┐
│ 1 │ -> │ 2 │ -> │ 3 │ -> │ 4 │ -> │ 5 │
└─────┘ └─────┘ └─────┘ └─────┘ └─────┘

Edit here

┌─────┐ ┌─────┐ ┌─────┐ conversation
│ 1 │ -> │ 2 │ -> │ 3 │ -> continues
└─────┘ └─────┘ └─────┘ from here

Editing Scenario Tips

  • Iterative Prompt Refinement: Start with a basic prompt, then edit and refine based on Goose's response. This often works better than trying to craft the perfect prompt from the start.
  • When to Edit vs. Interrupt: Editing earlier messages when a conversation has gone off track can be more effective than trying to correct course using new messages or interruptions. By editing messages, you rewrite history. With interruptions, you only affect the conversation from the current message onwards.

Queue Messages

Queue messages while Goose is processing a task to manage your workflow. This is useful when:

  • You want to prepare next steps while Goose is working
  • You have a sequence of related tasks to complete
  • You're using voice dictation and need to capture thoughts quickly
tip

Goose may perform better when complex tasks are split into subtasks, a technique called prompt chaining. This structured approach can both improve accuracy and give you more control over the process.

Add a message to the queue:

  1. While Goose is processing a response, type your next message
  2. Press Enter to add it to the queue (or interrupts if using interruption keywords)

Queued messages appear as numbered cards showing the queue order. The first message in the queue is automatically sent when Goose finishes each response.

Related Features
  • In general, pressing Enter while Goose is processing a task queues the message, but clicking Send sends the task immediately and interrupts the task
  • When you type common interrupt keywords like "stop", "wait", or "hold on" in a queued message, Goose pauses until you enter or send the next message and then continues processing the queue

Queue Management Controls

Queued messages run automatically in order as Goose finishes each task, but you can manage the queue:

  • Edit a message: Click the message text to reveal the edit controls, then type your change and click Save
  • Reorder messages: Hover over the message card to reveal the button, then grab it and drag the message up or down
  • Send a message: Click the button to send a message immediately and interrupt the current task
  • Delete a message: Click the button to delete the message
  • Clear the queue: Click Clear All on the Message Queue card
  • Collapse or expand the queue: Click the or button on the Message Queue card

Example Message Flow

Without queuing:

You send: "Can you refactor our authentication code to support OAuth 2.0 and add proper error handling? Also include unit tests for the OAuth flow, update the API documentation to reflect these changes, and create a migration script to help existing users transition to the new system."

This approach might lead to overwhelming responses where important details get missed or tasks are handled superficially. Even sending a single prompt with clear sequential steps doesn't allow Goose to focus on each task individually or build context progressively.

With queuing:

  1. You send: "Refactor the authentication code to support OAuth 2.0"
  2. While Goose is working, you queue the following messages:
    • "And add proper error handling"
    • "Add unit tests for the OAuth flow"
    • "Update the API documentation"
    • "Create migration script for existing users"

Each task builds on the previous one.

Interrupt Task

Interrupt Goose while it's processing a task to take control of the conversation. This is useful when:

  • Goose is heading in the wrong direction
  • You realize you need to add important context
  • You want to switch to a completely different task

There are two ways to interrupt a task:

Send interruption keyword

  1. Type a prompt that includes common interruption keywords like stop, wait, hold on, actually, or instead. Using keywords alone or at the beginning of sentences works best for reliable detection.
  2. Click Send

Goose stops processing the current task and asks for more information.

Provide immediate redirection

  1. Type a prompt with more context and clarification or that changes direction. For example:
    • "I forgot to mention this is for a mobile app"
    • "Let's focus on React instead of TypeScript"
  2. Click Send

Goose stops processing the current task and pivots to the new request context.

Related features
  • Clicking Send while Goose is processing a task interrupts the task but pressing Enter queues the message
  • Typing a stop or pause keyword in a queued message also stops Goose from processing the current task
  • You can also edit a sent message to provide more context and clarification or change direction during a session
Interruption Keywords List

High-priority keywords (interrupt in any context):

stop, halt, cease, quit, end, abort, cancel, wait, hold, pause, hold on, wait up, hold up

Medium-priority keywords (interrupt only as exact matches or at beginning of sentences):

no, nope, nah, wrong, incorrect, not right, actually, instead, rather, better idea, change of plans, nevermind, never mind, forget it, ignore that, disregard

Detection Rules:

  • Exact match (100% confidence): Word/phrase matches exactly and always interrupts
  • Beginning of sentence (very high confidence): Word/phrase starts your message and always interrupts
  • Short messages only (high confidence): In messages ≤20 characters, only high-priority keywords interrupt
  • Case insensitive: All detection is case-insensitive

Examples:

  • ✅ "stop" interrupts (exact match)
  • ✅ "Wait, I meant something else" interrupts (beginning of sentence)
  • ✅ "no" interrupts (short message, high-priority)
  • ❌ "actually" in short message doesn't interrupt (medium-priority in short message)
  • ✅ "Actually, let's try React instead" interrupts (beginning of sentence)

Voice Dictation

Speak to Goose directly instead of typing your prompts.

To enable voice dictation:

  1. Click the button in the top-left to open the sidebar
  2. Click Settings in the sidebar
  3. Click Chat
  4. Under Voice Dictation, toggle Enable Voice Dictation on
  5. Choose between OpenAI Whisper or ElevenLabs as your dictation provider
  6. Enter your API key for the provider you chose

To use voice dictation:

  1. Return to the chat interface (click Chat in the sidebar)
  2. Click the microphone on the right of the chat box and begin speaking

The first time you use voice dictation, Goose will request access to your microphone. While recording, you'll see a live waveform of your audio in the input field, a timer, and the current size of your recording. Click the microphone button again to finish recording.

If you don't see the microphone, check the models you have configured. ElevenLabs can be used as a dictation provider alongside any LLM, but OpenAI Whisper requires that you have an OpenAI model configured in Goose, even if using another LLM provider for chat.

Important Notes

  • You can record up to 10 minutes or 25MB of audio
  • The audio is processed by your chosen provider (OpenAI or ElevenLabs)
  • Voice input is appended to any existing text in the text input field, so you can combine typing and speaking your prompts
  • Recordings are not stored locally after transcription

Share Files in Session

Provide Goose with context from your codebase, documents, and other files to get more relevant and accurate assistance.

Share files with Goose in several ways:

  1. Drag and Drop: Simply drag files from your computer's file explorer/finder and drop them anywhere in the chat window. The file paths will be automatically added to your message.

  2. File Browser: Click the button at the bottom of the app to open your system's file browser and select files

  3. Manual Path: Type or paste the file path directly into the chat input

  4. Quick File Search: Use the @ shortcut key to quickly find and include files