docs: chat recall tutorial (#5975)

This commit is contained in:
dianed-square
2025-12-04 08:44:48 -08:00
committed by GitHub
parent 704546d53c
commit ea5d7ab28d
7 changed files with 131 additions and 27 deletions
@@ -31,13 +31,15 @@ goose includes several built-in extensions you can start using out of the box:
goose operates autonomously by default. Combined with the Developer extension's tools, this means goose can execute commands and modify files without your approval. If you want more control over this behavior, you can configure the [goose permission mode](/docs/guides/goose-permissions), [tool permissions](/docs/guides/managing-tools/tool-permissions), and [.gooseignore files](/docs/guides/using-gooseignore). See [Configuring Access Controls](/docs/mcp/developer-mcp#configuring-access-controls) for a brief overview.
:::
In addition, these platform extensions provide core goose functionality. They are also always available and enabled by default:
### Built-in Platform Extensions
- Chat Recall: Search conversation content across all your session history
- Extension Manager: Discover, enable, and disable extensions dynamically during sessions
Platform extensions are built-in extensions that provide global features like conversation search, task tracking, and extension management. These extensions are always available, enabled by default, and can be toggled on or off.
- [Chat Recall](/docs/mcp/chatrecall-mcp): Search conversation content across all your session history
- [Extension Manager](/docs/mcp/extension-manager-mcp): Discover, enable, and disable extensions dynamically during sessions
- [Todo](/docs/mcp/todo-mcp): Manage task lists and track progress across sessions
#### Toggling Built-in Extensions
### Toggling Built-in Extensions
<Tabs groupId="interface">
<TabItem value="ui" label="goose Desktop" default>
@@ -94,7 +96,6 @@ goose's built-in extensions are MCP servers in their own right. If you'd like
to use the MCP servers included with goose with any other agent, you are free to do so.
:::
## Discovering Extensions
goose provides a [central directory][extensions-directory] of extensions that you can install and use.
@@ -25,7 +25,7 @@ In a typical session, the interface spins up an instance of the agent, which the
Extensions expose their functionality to goose through tools. Tools are the functions that allow extensions to perform specific actions, such as running commands, or performing file operations. For example, the Google Drive extension includes a tool for searching documents. That tool is what gives goose the ability to perform that action.
goose comes with a set of [built-in extensions](/docs/getting-started/using-extensions#built-in-extensions), each designed to enhance your interaction. These include tools for development, web scraping, automation, memory, and integrations with JetBrains and Google Drive. goose also supports [connecting to external extensions](/docs/getting-started/using-extensions#adding-extensions) or [creating custom extensions](/docs/tutorials/custom-extensions) as MCP servers.
goose comes with a set of [built-in extensions](/docs/getting-started/using-extensions#built-in-extensions), each designed to enhance your interaction. These include tools for development, web scraping, automation, memory, and more. goose also supports [connecting to external extensions](/docs/getting-started/using-extensions#adding-extensions) or [creating custom extensions](/docs/tutorials/custom-extensions) as MCP servers.
To learn more about the design and implementation of extensions and tools, refer to the [Extensions Design Guide](/docs/goose-architecture/extensions-design#tools).
+91
View File
@@ -0,0 +1,91 @@
---
title: Chat Recall Extension
description: Search conversation history and load session summaries across all your goose sessions
---
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import { PlatformExtensionNote } from '@site/src/components/PlatformExtensionNote';
import GooseBuiltinInstaller from '@site/src/components/GooseBuiltinInstaller';
The Chat Recall extension helps goose remember past conversations by searching across your session history. When you need context from previous work, goose can search for relevant conversations or load summaries of specific sessions.
goose automatically uses Chat Recall when you reference past work or ask questions that require historical context.
## Configuration
<PlatformExtensionNote/>
<Tabs groupId="interface">
<TabItem value="ui" label="goose Desktop" default>
<GooseBuiltinInstaller
extensionName="Chatrecall"
description="Search conversation history across all your sessions"
/>
</TabItem>
<TabItem value="cli" label="goose CLI">
1. Run the `configure` command:
```sh
goose configure
```
2. Choose to `Toggle Extensions`
```sh
┌ goose-configure
◇ What would you like to configure?
│ Toggle Extensions
◆ Enable extensions: (use "space" to toggle and "enter" to submit)
// highlight-start
│ ● chatrecall
// highlight-end
└ Extension settings updated successfully
```
</TabItem>
</Tabs>
## Example Usage
Chat Recall can search across all sessions using keywords. Results are grouped by session and ordered by recency, and can be filtered by date. Alternatively, you can provide [session IDs](/docs/guides/goose-cli-commands#session-list-options) to load summaries of specific sessions.
Let's ask goose to find recent conversations about a topic:
### goose Prompt
```
What did we discuss about database migrations last week?
```
### goose Output
:::note Desktop
I found discussions about database migrations in your recent sessions. Here's what we covered:
**Database Migration Discussions - Last Week**
#### Session: Fix migration scripts (Nov 26, 2024)
**Working Dir:** /projects/myapp
We debugged a production database migration that was failing with a "column already exists" error. The key points were:
- The migration was trying to add a column that already existed in some environments
- We added conditional logic to check if the column exists before adding it
- Tested the fix locally and committed the changes
#### Session: Database schema updates (Nov 27, 2024)
**Working Dir:** /projects/myapp
We discussed adding email verification functionality:
- Planned to add a new `email_verified` column to the users table
- Discussed whether to make it nullable or default to false
- Created the migration script for the new column
Both sessions were focused on safely updating the database schema in production. Would you like me to load the full details from either of these sessions?
:::
:::info
Compacted sessions from goose versions prior to v1.14.0 may not be searchable due to a change in how conversation history is stored.
:::
@@ -5,6 +5,7 @@ description: Dynamically discover, enable, and disable extensions during goose s
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import { PlatformExtensionNote } from '@site/src/components/PlatformExtensionNote';
import GooseBuiltinInstaller from '@site/src/components/GooseBuiltinInstaller';
You don't always need to manually manage extensions. The Extension Manager extension enables goose to dynamically discover, enable, and disable extensions during active sessions. Based on the task you give it, goose recognizes when it needs a specific extension, enables it when required, and suggests disabling unused extensions if the bloat is eating up your context window.
@@ -13,9 +14,7 @@ Simply describe your task, and goose will handle the extension management automa
## Configuration
:::info
The Extension Manager extension is a built-in goose platform extension and is already enabled by default when goose is installed.
:::
<PlatformExtensionNote/>
<Tabs groupId="interface">
<TabItem value="ui" label="goose Desktop" default>
@@ -85,13 +84,13 @@ The resource tools (`list_resources` and `read_resource`) are only available whe
Let's enable an extension when we need it. In this example, we'll enable the GitHub extension to work with repositories.
#### goose Prompt
### goose Prompt
```
List all my GitHub repositories
```
#### goose Output
### goose Output
:::note Desktop
+14 -11
View File
@@ -40,26 +40,28 @@ Then click the link above to configure it in goose.
### goose Output
:::note Desktop
I'd be happy to consult the I Ching for guidance on your team's product roadmap decision. Let me cast a hexagram for you using the traditional three coins method.
─── cast_hexagram | iching ──────────────────────────
Now let me get a detailed interpretation of this reading for your situation:
─── interpret_reading | iching ──────────────────────────
changing_lines:
-
5
hexagram: 29
─── interpret_reading | iching ─────────────────────────
changing_lines:
&#45;
5
hexagram: 29
transformed_hexagram: 13
## I Ching Guidance for Your Product Roadmap Decision
#### I Ching Guidance for Your Product Roadmap Decision
The oracle has given you **Hexagram 29 - Darkness (The Abysmal)** with a changing line in the 5th position, transforming to **Hexagram 13 - Seeking Harmony (Fellowship with Men)**.
### Key Insights for Your Team's Situation:
**Key Insights for Your Team's Situation:**
**Current Challenge (Hexagram 29):**
- Your team is facing what the I Ching recognizes as a "repetition of danger" - this suggests you're in a challenging situation that requires careful navigation
@@ -77,7 +79,7 @@ The situation naturally evolves toward **Fellowship with Men** - suggesting that
- **Open collaboration** rather than closed-door decisions
- **Crossing the great water** - taking on significant challenges, but doing so together
### Practical Recommendations:
**Practical Recommendations:**
1. **Acknowledge the Difficulty**: Don't minimize the complexity of your roadmap decision. Accept that it's genuinely challenging.
@@ -87,4 +89,5 @@ The situation naturally evolves toward **Fellowship with Men** - suggesting that
4. **Focus on Execution**: Once you decide, commit fully. The hexagram emphasizes that success comes from thorough implementation, not perfect strategy.
The I Ching suggests this challenging decision will ultimately strengthen your team's unity and collaboration if approached with patience, sincerity, and collective wisdom.
The I Ching suggests this challenging decision will ultimately strengthen your team's unity and collaboration if approached with patience, sincerity, and collective wisdom.
:::
+4 -5
View File
@@ -1,10 +1,11 @@
---
title: Todo Extension
description: Use Todo MCP Server as a goose Extension for Task Management
description: Breaks complex work into trackable steps to help goose stay organized
---
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import { PlatformExtensionNote } from '@site/src/components/PlatformExtensionNote';
import GooseBuiltinInstaller from '@site/src/components/GooseBuiltinInstaller';
The Todo extension helps goose stay organized by breaking complex work into a series of steps and keeping you updated as it completes each step.
@@ -13,13 +14,11 @@ goose automatically knows to use the Todo extension if it has to do tasks that h
At the start of the task, goose will create an internal checklist, read and update progress as it works, and verify that all tasks are completed.
This tutorial will cover enabling and using the Todo MCP Server, which is a built-in goose extension.
This tutorial will cover enabling and using the Todo extension.
## Configuration
:::info
The Todo extension is already enabled by default when goose is installed.
:::
<PlatformExtensionNote/>
<Tabs groupId="interface">
<TabItem value="ui" label="goose Desktop" default>
@@ -0,0 +1,11 @@
import React from "react";
import Admonition from '@theme/Admonition';
export const PlatformExtensionNote = () => {
return (
<Admonition type="info" title="Platform Extension">
<p>This is a <a href="/goose/docs/getting-started/using-extensions#built-in-platform-extensions">built-in platform extension</a> that's enabled by default. Platform extensions provide core functionality and are used within goose just like MCP server extensions.</p>
</Admonition>
);
};