From dd01e8380657e78aac1eda79dd62bb6906a331d1 Mon Sep 17 00:00:00 2001 From: Ebony Louis <55366651+EbonyLouis@users.noreply.github.com> Date: Tue, 28 Jan 2025 09:25:13 -0500 Subject: [PATCH] architecture guide (#818) --- .../docs/assets/guides/interactive-loop.png | Bin 0 -> 136871 bytes .../goose-architecture/extensions-design.md | 3 +- .../goose-architecture/goose-architecture.md | 68 ++++++++++++++++++ 3 files changed, 70 insertions(+), 1 deletion(-) create mode 100644 documentation/docs/assets/guides/interactive-loop.png create mode 100644 documentation/docs/goose-architecture/goose-architecture.md diff --git a/documentation/docs/assets/guides/interactive-loop.png b/documentation/docs/assets/guides/interactive-loop.png new file mode 100644 index 0000000000000000000000000000000000000000..a2cc63b645dd27d574d80288875dab1d1af95b09 GIT binary patch literal 136871 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
  • 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�A`py*VYsa;}ttyY&Du5du)%YS(cx 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 D6#>5r literal 0 HcmV?d00001 diff --git a/documentation/docs/goose-architecture/extensions-design.md b/documentation/docs/goose-architecture/extensions-design.md index 976d4db48c..76ef60d6aa 100644 --- a/documentation/docs/goose-architecture/extensions-design.md +++ b/documentation/docs/goose-architecture/extensions-design.md @@ -1,6 +1,7 @@ --- -sidebar_position: 1 +sidebar_position: 2 --- + # Extensions Design This document describes the design and implementation of the [Extensions framework](/docs/getting-started/using-extensions) in Goose, which enables AI agents to interact with different extensions through a unified tool-based interface. diff --git a/documentation/docs/goose-architecture/goose-architecture.md b/documentation/docs/goose-architecture/goose-architecture.md new file mode 100644 index 0000000000..5905d3729b --- /dev/null +++ b/documentation/docs/goose-architecture/goose-architecture.md @@ -0,0 +1,68 @@ +--- +title: Goose Architecture +sidebar_position: 1 +--- + +# Goose Architecture + +Goose, an open source AI Agent, builds upon the basic interaction framework of Large Language Models (LLMs), which primarily functions as a text-based conversational interface. It processes text input and generates text output. This "text in, text out" approach is enhanced with tool integrations, which allows the AI agent to complete task, creating Goose. + +## Goose Components +Goose operates using three main components, the **interface**, the **agent**, and the **connected [extensions](/docs/getting-started/using-extensions)**. + +1. **Interface**: This is the desktop application or CLI that the user is using to run Goose. It collects input from the user and displays outputs to the user +2. **Agent**: The agent runs Goose's core logic, managing the interactive loop. +3. **Extensions**: Extensions are components that provide specific tools and capabilities for the agent to use. These tools enable Goose to perform actions such as running commands and managing files. + +In a typical session, the interface spins up an instance of the agent, which then connects to one or more extensions simultaneously. The interface can also create multiple agents to handle different tasks concurrently. Extensions and the interactive loop are important parts of Goose's functionality. The next sections will explain how Goose connects to extensions and processes user requests. + +## Interoperability with Extensions +[Model Context Protocol (MCP)](https://modelcontextprotocol.io/) is an open standard that allows for interoperability between data sources and AI agents. Goose utilizes MCP to connect to [MCP systems/servers](https://github.com/modelcontextprotocol/servers?tab=readme-ov-file#model-context-protocol-servers). In Goose, these systems/servers are referred to as extensions. + + +Extensions expose their funtionality to Goose through tools. Tools are the functions that allow extensions to perfrom 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/configuration/managing-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/guides/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). + +## Interactive Loop +![interactive loop](../assets/guides/interactive-loop.png) + +Lets take a closer look at the interactive loop shown above. + +1. **Human Request** +The process begins and ends with you. Once you give Goose a request, question, command, or problem to solve, the flow begins. + +2. **Provider Chat** +Goose sends your request along with a list of available tools to the [LLM provider](/docs/getting-started/providers) you've connected. The provider processes it, and if necesarry, creates a tool call as part of its response. + +3. **Model Extension Call** +The LLM is capable of creating a tool call request but not able to execute it, that's when Goose steps in. Goose takes the tool call which is formattted in JSON, runs it, and gathers the results. + +4. **Response to Model** +After executing the tool call, Goose sends the results back to the model. If more extensions are needed, those steps will repeat. + +5. **Context Revision** +Goose will remove any old or irrelevant information, ensuring the LLM focuses solely on the information that matters the most. This helps with token management. + +6. **Model Response** +Once all the tool calls are done, the LLM sends a final response back to you and restarts the loop once you respond. + +## Error Handling in Goose + +As opposed to allowing an error to break the flow, Goose captures and handles traditional errors along with execution errors. Errors such as invalid JSON, missing tools, etc. are sent back to the model as tool responses giving the LLM the information it needs to resolve the error and continue. + +For more details on how Goose handles errors, refer to the [Error Handling in Goose](/docs/goose-architecture/error-handling) Guide. + + +## Context Revision: Token Management + +While Goose is free and open source, there is typically a cost associated with LLM token usage. Everything competes for token usage including messages, tool requests, resources, file content, instructions, etc. This is where Content Revision comes into play to help reduce some of those costs. There are a few things that are done to assist with this: +* Goose summarizes with faster and smaller LLMs +* Goose includes everything versus a semantic search +* Goose uses algorithims to delete old or irrelevant content +* Goose will use find and replace instead of rewriting large files, use ripgrep to skip system files, and summarize verbose command outputs + +