Skip to content

Conversation

@yingjiehe-xyz
Copy link
Contributor

@yingjiehe-xyz yingjiehe-xyz commented Mar 5, 2025

We may not need the tool call in the chat mode, goose will provide misleading message to users. Removing the tool call can reduce the cost as well.

Sample payload:

payload Object {"messages": Array [Object {"content": String("You are a general-purpose AI agent called Goose, created by Block, the parent company of Square, CashApp, and Tidal. Goose is being developed as an open-source software project.\n\nThe current date is 2025-03-05 18:14:21.\n\nGoose uses LLM providers with tool calling capability. You can be used with different language models (gpt-4o, claude-3.5-sonnet, o1, llama-3.2, deepseek-r1, etc).\nThese models have varying knowledge cut-off dates depending on when they were trained, but typically it's between 5-10 months prior to the current date.\n\n\n\n# Response Guidelines\n\n- Use Markdown formatting for all responses.\n- Follow best practices for Markdown, including:\n  - Using headers for organization.\n  - Bullet points for lists.\n  - Links formatted correctly, either as linked text (e.g., [this is linked text](https://example.com)) or automatic links using angle brackets (e.g., <http://example.com/>).\n- For code examples, use fenced code blocks by placing triple backticks (` ``` `) before and after the code. Include the language identifier after the opening backticks (e.g., ` ```python `) to enable syntax highlighting.\n- Ensure clarity, conciseness, and proper formatting to enhance readability and usability.\n\n# Additional Instructions:\n\nYou are being accessed through the Goose Desktop application.\n\nThe user is interacting with you through a graphical user interface with the following features:\n- A chat interface where messages are displayed in a conversation format\n- Support for markdown formatting in your responses\n- Support for code blocks with syntax highlighting\n- Tool use messages are included in the chat but outputs may need to be expanded\n\nThe user can add extensions for you through the \"Settings\" page, which is available in the menu\non the top right of the window. There is a section on that page for extensions, and it links to\nthe registry.\n\nSome extensions are builtin, such as Developer and Memory, while\n3rd party extensions can be browsed at https://block.github.io/goose/v1/extensions/.\n"), "role": String("system")}, Object {"content": String("can you help me write a test.txt file in my current dir"), "role": String("user")}], "model": String("goose")}

Test:
UI
image
CLI:
image

@yingjiehe-xyz yingjiehe-xyz marked this pull request as ready for review March 5, 2025 18:31

/// Get the extension prompt including client instructions
pub async fn get_system_prompt(&self) -> String {
pub async fn get_system_prompt(&self, goose_mode: &str) -> String {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: would rather import config than pass goose_mode as an arg i think

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah, sg, previous I thought both agents will read goose mode, no need to read it again in capabilities.rs

Copy link

@wendytang wendytang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why is {% if (extensions is defined) and extensions %} added twice?

@yingjiehe-xyz yingjiehe-xyz merged commit 09cae6e into main Mar 5, 2025
6 checks passed
@yingjiehe-xyz yingjiehe-xyz deleted the yingjiehe/chat branch March 5, 2025 20:36
michaelneale added a commit that referenced this pull request Mar 7, 2025
* main:
  bugfix: refactor workdirs to be async-safe, and simpler (#1558)
  feat: split required_extensions in bench to builtin/external (#1547)
  fix: continue to use resumed session after confirmation is cancelled (#1548)
  feat: add image tool to developer mcp (#1515)
  docs: using gooseignore (#1554)
  ci: use cargo update --workspace to ensure Cargo.lock is updated (#1539)
  fix: respond to interrupted tool calls with a ToolResponseMessageContent (#1557)
  fix: get tool def back to chat mode (#1538)
  ui: add default icon (#1553)
  fix: fix summarize agent, use session_id and add provider fn (#1552)
  feat(agent): memory condensation for longer context (#1457)
  docs: goose tips blog (#1550)
  docs: update to provider view (#1546)
  docs: resuming sessions (#1543)
  feat: goose bench framework for functional and regression testing
  feat: use refresh_tokens from databricks api (#1517)
  feat: use Ctrl/Cmd + ↑/↓ to navigate message history (#1501)
  feat: remove tools from chat mode (#1533)
  feat: use dropdown for goose selection (#1531)
  docs: goosehints in desktop (#1529)
lily-de pushed a commit that referenced this pull request Mar 7, 2025
ahau-square pushed a commit that referenced this pull request May 2, 2025
cbruyndoncx pushed a commit to cbruyndoncx/goose that referenced this pull request Jul 20, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants