Remove deprecated Claude 3.5 models (#4590)
This commit is contained in:
@@ -40,7 +40,7 @@ jobs:
|
|||||||
mkdir -p ~/.config/goose
|
mkdir -p ~/.config/goose
|
||||||
cat <<EOF > ~/.config/goose/config.yaml
|
cat <<EOF > ~/.config/goose/config.yaml
|
||||||
GOOSE_PROVIDER: openrouter
|
GOOSE_PROVIDER: openrouter
|
||||||
GOOSE_MODEL: "anthropic/claude-3.5-sonnet"
|
GOOSE_MODEL: "anthropic/claude-sonnet-4"
|
||||||
keyring: false
|
keyring: false
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -138,7 +138,7 @@ docker-compose run --rm goose session
|
|||||||
The Docker image accepts all standard Goose environment variables:
|
The Docker image accepts all standard Goose environment variables:
|
||||||
|
|
||||||
- `GOOSE_PROVIDER`: LLM provider (openai, anthropic, google, etc.)
|
- `GOOSE_PROVIDER`: LLM provider (openai, anthropic, google, etc.)
|
||||||
- `GOOSE_MODEL`: Model to use (gpt-4o, claude-3-5-sonnet, etc.)
|
- `GOOSE_MODEL`: Model to use (gpt-4o, claude-sonnet-4, etc.)
|
||||||
- Provider-specific API keys (OPENAI_API_KEY, ANTHROPIC_API_KEY, etc.)
|
- Provider-specific API keys (OPENAI_API_KEY, ANTHROPIC_API_KEY, etc.)
|
||||||
|
|
||||||
### Persistent Configuration
|
### Persistent Configuration
|
||||||
|
|||||||
@@ -61,7 +61,7 @@ Benchmark configuration is provided through a JSON file. Here's a sample configu
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"provider": "databricks",
|
"provider": "databricks",
|
||||||
"name": "claude-3-5-sonnet",
|
"name": "claude-sonnet-4",
|
||||||
"parallel_safe": true,
|
"parallel_safe": true,
|
||||||
"tool_shim": null
|
"tool_shim": null
|
||||||
},
|
},
|
||||||
@@ -232,7 +232,7 @@ Example of creating a config to re-run failed evaluations:
|
|||||||
"models": [
|
"models": [
|
||||||
{
|
{
|
||||||
"provider": "databricks",
|
"provider": "databricks",
|
||||||
"name": "claude-3-5-sonnet",
|
"name": "claude-sonnet-4",
|
||||||
"parallel_safe": false
|
"parallel_safe": false
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ impl Default for BenchRunConfig {
|
|||||||
},
|
},
|
||||||
BenchModel {
|
BenchModel {
|
||||||
provider: "databricks".to_string(),
|
provider: "databricks".to_string(),
|
||||||
name: "goose-claude-3-5-sonnet".to_string(),
|
name: "goose-claude-4-sonnet".to_string(),
|
||||||
parallel_safe: true,
|
parallel_safe: true,
|
||||||
tool_shim: None,
|
tool_shim: None,
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -610,7 +610,7 @@ enum Command {
|
|||||||
#[arg(
|
#[arg(
|
||||||
long = "model",
|
long = "model",
|
||||||
value_name = "MODEL",
|
value_name = "MODEL",
|
||||||
help = "Specify the model to use (e.g., 'gpt-4o', 'claude-3.5-sonnet')",
|
help = "Specify the model to use (e.g., 'gpt-4o', 'claude-sonnet-4-20250514')",
|
||||||
long_help = "Override the GOOSE_MODEL environment variable for this run. The model must be supported by the specified provider."
|
long_help = "Override the GOOSE_MODEL environment variable for this run. The model must be supported by the specified provider."
|
||||||
)]
|
)]
|
||||||
model: Option<String>,
|
model: Option<String>,
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ impl ProviderConfig {
|
|||||||
static PROVIDER_CONFIGS: LazyLock<Vec<ProviderConfig>> = LazyLock::new(|| {
|
static PROVIDER_CONFIGS: LazyLock<Vec<ProviderConfig>> = LazyLock::new(|| {
|
||||||
vec![
|
vec![
|
||||||
ProviderConfig::simple("openai", "gpt-4o"),
|
ProviderConfig::simple("openai", "gpt-4o"),
|
||||||
ProviderConfig::simple("anthropic", "claude-3-5-sonnet-20241022"),
|
ProviderConfig::simple("anthropic", "claude-sonnet-4-20250514"),
|
||||||
ProviderConfig {
|
ProviderConfig {
|
||||||
name: "azure_openai",
|
name: "azure_openai",
|
||||||
model_name: "gpt-4o",
|
model_name: "gpt-4o",
|
||||||
@@ -58,7 +58,7 @@ static PROVIDER_CONFIGS: LazyLock<Vec<ProviderConfig>> = LazyLock::new(|| {
|
|||||||
},
|
},
|
||||||
ProviderConfig {
|
ProviderConfig {
|
||||||
name: "aws_bedrock",
|
name: "aws_bedrock",
|
||||||
model_name: "anthropic.claude-3-5-sonnet-20241022-v2:0",
|
model_name: "anthropic.claude-sonnet-4-20250514:0",
|
||||||
required_env_vars: &["AWS_ACCESS_KEY_ID", "AWS_SECRET_ACCESS_KEY"],
|
required_env_vars: &["AWS_ACCESS_KEY_ID", "AWS_SECRET_ACCESS_KEY"],
|
||||||
env_modifications: None,
|
env_modifications: None,
|
||||||
skip_reason: Some("No valid keys around"),
|
skip_reason: Some("No valid keys around"),
|
||||||
@@ -67,12 +67,12 @@ static PROVIDER_CONFIGS: LazyLock<Vec<ProviderConfig>> = LazyLock::new(|| {
|
|||||||
ProviderConfig::simple("groq", "llama-3.3-70b-versatile"),
|
ProviderConfig::simple("groq", "llama-3.3-70b-versatile"),
|
||||||
ProviderConfig::simple_skip(
|
ProviderConfig::simple_skip(
|
||||||
"openrouter",
|
"openrouter",
|
||||||
"anthropic/claude-3.5-sonnet",
|
"anthropic/claude-sonnet-4",
|
||||||
Some("Key is no longer valid"),
|
Some("Key is no longer valid"),
|
||||||
),
|
),
|
||||||
ProviderConfig::simple_skip(
|
ProviderConfig::simple_skip(
|
||||||
"claude-code",
|
"claude-code",
|
||||||
"claude-3-5-sonnet",
|
"claude-sonnet-4-20250514",
|
||||||
Some("No keys available"),
|
Some("No keys available"),
|
||||||
),
|
),
|
||||||
ProviderConfig::simple_skip("cursor-agent", "gpt-5", Some("No keys available")),
|
ProviderConfig::simple_skip("cursor-agent", "gpt-5", Some("No keys available")),
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"c848f22f273e158c32435d3e72cc999c046dc1a9afdc3efda68ff451f833a185": {
|
"c848f22f273e158c32435d3e72cc999c046dc1a9afdc3efda68ff451f833a185": {
|
||||||
"input": {
|
"input": {
|
||||||
"system": "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-07-28 12:04:16.\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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
"system": "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-07-28 12:04:16.\n\nGoose uses LLM providers with tool calling capability. You can be used with different language models (gpt-4o, claude-sonnet-4, 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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
||||||
"messages": [
|
"messages": [
|
||||||
{
|
{
|
||||||
"id": null,
|
"id": null,
|
||||||
@@ -242,7 +242,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"usage": {
|
"usage": {
|
||||||
"model": "claude-3-5-sonnet-20241022",
|
"model": "claude-sonnet-4-20250514",
|
||||||
"usage": {
|
"usage": {
|
||||||
"input_tokens": 2560,
|
"input_tokens": 2560,
|
||||||
"output_tokens": 111,
|
"output_tokens": 111,
|
||||||
@@ -253,7 +253,7 @@
|
|||||||
},
|
},
|
||||||
"78cc474ff2d51b9a24df8c35e5c75f256dafb67ff5489af30fcec95cd87790b8": {
|
"78cc474ff2d51b9a24df8c35e5c75f256dafb67ff5489af30fcec95cd87790b8": {
|
||||||
"input": {
|
"input": {
|
||||||
"system": "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-07-28 12:04:16.\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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
"system": "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-07-28 12:04:16.\n\nGoose uses LLM providers with tool calling capability. You can be used with different language models (gpt-4o, claude-sonnet-4, 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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
||||||
"messages": [
|
"messages": [
|
||||||
{
|
{
|
||||||
"id": null,
|
"id": null,
|
||||||
@@ -525,7 +525,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"usage": {
|
"usage": {
|
||||||
"model": "claude-3-5-sonnet-20241022",
|
"model": "claude-sonnet-4-20250514",
|
||||||
"usage": {
|
"usage": {
|
||||||
"input_tokens": 3053,
|
"input_tokens": 3053,
|
||||||
"output_tokens": 82,
|
"output_tokens": 82,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"1bc400a528c54b25f4f1f609481e98e44222b3deaf7eee2c9e640e6345c73861": {
|
"1bc400a528c54b25f4f1f609481e98e44222b3deaf7eee2c9e640e6345c73861": {
|
||||||
"input": {
|
"input": {
|
||||||
"system": "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-07-28 12:04:16.\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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
"system": "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-07-28 12:04:16.\n\nGoose uses LLM providers with tool calling capability. You can be used with different language models (gpt-4o, claude-sonnet-4, 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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
||||||
"messages": [
|
"messages": [
|
||||||
{
|
{
|
||||||
"id": null,
|
"id": null,
|
||||||
@@ -239,7 +239,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"usage": {
|
"usage": {
|
||||||
"model": "claude-3-5-sonnet-20241022",
|
"model": "claude-sonnet-4-20250514",
|
||||||
"usage": {
|
"usage": {
|
||||||
"input_tokens": 2562,
|
"input_tokens": 2562,
|
||||||
"output_tokens": 76,
|
"output_tokens": 76,
|
||||||
@@ -250,7 +250,7 @@
|
|||||||
},
|
},
|
||||||
"d51c15f1ede58b5496bba746a4bdffd8ce84526749ce0021969d6ed6f2538a6d": {
|
"d51c15f1ede58b5496bba746a4bdffd8ce84526749ce0021969d6ed6f2538a6d": {
|
||||||
"input": {
|
"input": {
|
||||||
"system": "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-07-28 12:04:16.\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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
"system": "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-07-28 12:04:16.\n\nGoose uses LLM providers with tool calling capability. You can be used with different language models (gpt-4o, claude-sonnet-4, 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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
||||||
"messages": [
|
"messages": [
|
||||||
{
|
{
|
||||||
"id": null,
|
"id": null,
|
||||||
@@ -519,7 +519,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"usage": {
|
"usage": {
|
||||||
"model": "claude-3-5-sonnet-20241022",
|
"model": "claude-sonnet-4-20250514",
|
||||||
"usage": {
|
"usage": {
|
||||||
"input_tokens": 2663,
|
"input_tokens": 2663,
|
||||||
"output_tokens": 29,
|
"output_tokens": 29,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"1b998117eba523901ae6a4dbf8caa81a95ea88ef7a84d0434c9b41a26164a2b9": {
|
"1b998117eba523901ae6a4dbf8caa81a95ea88ef7a84d0434c9b41a26164a2b9": {
|
||||||
"input": {
|
"input": {
|
||||||
"system": "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-07-28 12:04:16.\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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
"system": "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-07-28 12:04:16.\n\nGoose uses LLM providers with tool calling capability. You can be used with different language models (gpt-4o, claude-sonnet-4, 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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
||||||
"messages": [
|
"messages": [
|
||||||
{
|
{
|
||||||
"id": null,
|
"id": null,
|
||||||
@@ -226,7 +226,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"usage": {
|
"usage": {
|
||||||
"model": "claude-3-5-sonnet-20241022",
|
"model": "claude-sonnet-4-20250514",
|
||||||
"usage": {
|
"usage": {
|
||||||
"input_tokens": 2556,
|
"input_tokens": 2556,
|
||||||
"output_tokens": 97,
|
"output_tokens": 97,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"21e33b98670d23e1bad3f21da667502d0930b42e34431395e266a4c524620cf1": {
|
"21e33b98670d23e1bad3f21da667502d0930b42e34431395e266a4c524620cf1": {
|
||||||
"input": {
|
"input": {
|
||||||
"system": "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-07-28 12:05:28.\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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
"system": "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-07-28 12:05:28.\n\nGoose uses LLM providers with tool calling capability. You can be used with different language models (gpt-4o, claude-sonnet-4, 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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
||||||
"messages": [
|
"messages": [
|
||||||
{
|
{
|
||||||
"id": null,
|
"id": null,
|
||||||
@@ -277,7 +277,7 @@
|
|||||||
},
|
},
|
||||||
"1bc400a528c54b25f4f1f609481e98e44222b3deaf7eee2c9e640e6345c73861": {
|
"1bc400a528c54b25f4f1f609481e98e44222b3deaf7eee2c9e640e6345c73861": {
|
||||||
"input": {
|
"input": {
|
||||||
"system": "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-07-28 12:05:28.\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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
"system": "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-07-28 12:05:28.\n\nGoose uses LLM providers with tool calling capability. You can be used with different language models (gpt-4o, claude-sonnet-4, 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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
||||||
"messages": [
|
"messages": [
|
||||||
{
|
{
|
||||||
"id": null,
|
"id": null,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"1b998117eba523901ae6a4dbf8caa81a95ea88ef7a84d0434c9b41a26164a2b9": {
|
"1b998117eba523901ae6a4dbf8caa81a95ea88ef7a84d0434c9b41a26164a2b9": {
|
||||||
"input": {
|
"input": {
|
||||||
"system": "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-07-28 12:05:25.\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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
"system": "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-07-28 12:05:25.\n\nGoose uses LLM providers with tool calling capability. You can be used with different language models (gpt-4o, claude-sonnet-4, 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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
||||||
"messages": [
|
"messages": [
|
||||||
{
|
{
|
||||||
"id": null,
|
"id": null,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"1b998117eba523901ae6a4dbf8caa81a95ea88ef7a84d0434c9b41a26164a2b9": {
|
"1b998117eba523901ae6a4dbf8caa81a95ea88ef7a84d0434c9b41a26164a2b9": {
|
||||||
"input": {
|
"input": {
|
||||||
"system": "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-07-28 12:05:27.\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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
"system": "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-07-28 12:05:27.\n\nGoose uses LLM providers with tool calling capability. You can be used with different language models (gpt-4o, claude-sonnet-4, 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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
||||||
"messages": [
|
"messages": [
|
||||||
{
|
{
|
||||||
"id": null,
|
"id": null,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"09dddf56be462d1861d5a56de6ec2d79b76e1b6f8f8ba9da8d837aae55c7e70b": {
|
"09dddf56be462d1861d5a56de6ec2d79b76e1b6f8f8ba9da8d837aae55c7e70b": {
|
||||||
"input": {
|
"input": {
|
||||||
"system": "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-07-28 12:05:31.\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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
"system": "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-07-28 12:05:31.\n\nGoose uses LLM providers with tool calling capability. You can be used with different language models (gpt-4o, claude-sonnet-4, 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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
||||||
"messages": [
|
"messages": [
|
||||||
{
|
{
|
||||||
"id": null,
|
"id": null,
|
||||||
@@ -277,7 +277,7 @@
|
|||||||
},
|
},
|
||||||
"1bc400a528c54b25f4f1f609481e98e44222b3deaf7eee2c9e640e6345c73861": {
|
"1bc400a528c54b25f4f1f609481e98e44222b3deaf7eee2c9e640e6345c73861": {
|
||||||
"input": {
|
"input": {
|
||||||
"system": "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-07-28 12:05:31.\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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
"system": "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-07-28 12:05:31.\n\nGoose uses LLM providers with tool calling capability. You can be used with different language models (gpt-4o, claude-sonnet-4, 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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
||||||
"messages": [
|
"messages": [
|
||||||
{
|
{
|
||||||
"id": null,
|
"id": null,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"1b998117eba523901ae6a4dbf8caa81a95ea88ef7a84d0434c9b41a26164a2b9": {
|
"1b998117eba523901ae6a4dbf8caa81a95ea88ef7a84d0434c9b41a26164a2b9": {
|
||||||
"input": {
|
"input": {
|
||||||
"system": "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-07-28 12:05:29.\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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
"system": "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-07-28 12:05:29.\n\nGoose uses LLM providers with tool calling capability. You can be used with different language models (gpt-4o, claude-sonnet-4, 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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
||||||
"messages": [
|
"messages": [
|
||||||
{
|
{
|
||||||
"id": null,
|
"id": null,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"c848f22f273e158c32435d3e72cc999c046dc1a9afdc3efda68ff451f833a185": {
|
"c848f22f273e158c32435d3e72cc999c046dc1a9afdc3efda68ff451f833a185": {
|
||||||
"input": {
|
"input": {
|
||||||
"system": "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-07-28 12:05:24.\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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
"system": "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-07-28 12:05:24.\n\nGoose uses LLM providers with tool calling capability. You can be used with different language models (gpt-4o, claude-sonnet-4, 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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
||||||
"messages": [
|
"messages": [
|
||||||
{
|
{
|
||||||
"id": null,
|
"id": null,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"e546a32d4a2c9d41338b6725f317c4d4f462ce7cc04c79f3f24dd47a1a32a795": {
|
"e546a32d4a2c9d41338b6725f317c4d4f462ce7cc04c79f3f24dd47a1a32a795": {
|
||||||
"input": {
|
"input": {
|
||||||
"system": "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-07-28 12:05:24.\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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
"system": "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-07-28 12:05:24.\n\nGoose uses LLM providers with tool calling capability. You can be used with different language models (gpt-4o, claude-sonnet-4, 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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
||||||
"messages": [
|
"messages": [
|
||||||
{
|
{
|
||||||
"id": null,
|
"id": null,
|
||||||
@@ -277,7 +277,7 @@
|
|||||||
},
|
},
|
||||||
"1bc400a528c54b25f4f1f609481e98e44222b3deaf7eee2c9e640e6345c73861": {
|
"1bc400a528c54b25f4f1f609481e98e44222b3deaf7eee2c9e640e6345c73861": {
|
||||||
"input": {
|
"input": {
|
||||||
"system": "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-07-28 12:05:24.\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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
"system": "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-07-28 12:05:24.\n\nGoose uses LLM providers with tool calling capability. You can be used with different language models (gpt-4o, claude-sonnet-4, 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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
||||||
"messages": [
|
"messages": [
|
||||||
{
|
{
|
||||||
"id": null,
|
"id": null,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"1b998117eba523901ae6a4dbf8caa81a95ea88ef7a84d0434c9b41a26164a2b9": {
|
"1b998117eba523901ae6a4dbf8caa81a95ea88ef7a84d0434c9b41a26164a2b9": {
|
||||||
"input": {
|
"input": {
|
||||||
"system": "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-07-28 12:05:24.\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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
"system": "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-07-28 12:05:24.\n\nGoose uses LLM providers with tool calling capability. You can be used with different language models (gpt-4o, claude-sonnet-4, 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# Extensions\n\nExtensions allow other applications to provide context to Goose. Extensions connect Goose to different data sources and tools.\nYou are capable of dynamically plugging into new extensions and learning how to use them. You solve higher level problems using the tools in these extensions, and can interact with multiple at once.\nUse the search_available_extensions tool to find additional extensions to enable to help with your task. To enable extensions, use the enable_extension tool and provide the extension_name. You should only enable extensions found from the search_available_extensions tool.\n\n\nBecause you dynamically load extensions, your conversation history may refer\nto interactions with extensions that are not currently active. The currently\nactive extensions are below. Each of these extensions provides tools that are\nin your tool specification.\n\n\n## weather_extension\n\n\n\n\n\n\n\n# Suggestion\n\"\"\n\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\nRight now you are *NOT* in the chat only mode and have access to tool use and system.",
|
||||||
"messages": [
|
"messages": [
|
||||||
{
|
{
|
||||||
"id": null,
|
"id": null,
|
||||||
|
|||||||
@@ -806,7 +806,7 @@ fn normalize_model_name(model: &str) -> String {
|
|||||||
result = re_date.replace(&result, "").to_string();
|
result = re_date.replace(&result, "").to_string();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Convert version numbers like -3-5- to -3.5- (e.g., claude-3-5-haiku -> claude-3.5-haiku)
|
// Convert version numbers like -3-7- to -3.7- (e.g., claude-3-7-sonnet -> claude-3.7-sonnet)
|
||||||
let re_version = Regex::new(r"-(\d+)-(\d+)-").unwrap();
|
let re_version = Regex::new(r"-(\d+)-(\d+)-").unwrap();
|
||||||
if re_version.is_match(&result) {
|
if re_version.is_match(&result) {
|
||||||
result = re_version.replace(&result, "-$1.$2-").to_string();
|
result = re_version.replace(&result, "-$1.$2-").to_string();
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ export GOOSE_EDITOR_MODEL="gpt-4o"
|
|||||||
```bash
|
```bash
|
||||||
export GOOSE_EDITOR_API_KEY="sk-ant-..."
|
export GOOSE_EDITOR_API_KEY="sk-ant-..."
|
||||||
export GOOSE_EDITOR_HOST="https://api.anthropic.com/v1"
|
export GOOSE_EDITOR_HOST="https://api.anthropic.com/v1"
|
||||||
export GOOSE_EDITOR_MODEL="claude-3-5-sonnet-20241022"
|
export GOOSE_EDITOR_MODEL="claude-sonnet-4-20250514"
|
||||||
```
|
```
|
||||||
|
|
||||||
**Morph:**
|
**Morph:**
|
||||||
|
|||||||
@@ -875,7 +875,7 @@ mod tests {
|
|||||||
},
|
},
|
||||||
CompleteModelConfig {
|
CompleteModelConfig {
|
||||||
provider: "anthropic".to_string(),
|
provider: "anthropic".to_string(),
|
||||||
model: "claude-3-5-sonnet".to_string(),
|
model: "claude-sonnet-4-20250514".to_string(),
|
||||||
role: "helper".to_string(),
|
role: "helper".to_string(),
|
||||||
rules: Rules {
|
rules: Rules {
|
||||||
triggers: TriggerRules {
|
triggers: TriggerRules {
|
||||||
@@ -1229,7 +1229,7 @@ mod tests {
|
|||||||
},
|
},
|
||||||
CompleteModelConfig {
|
CompleteModelConfig {
|
||||||
provider: "anthropic".to_string(),
|
provider: "anthropic".to_string(),
|
||||||
model: "claude-3-5-sonnet".to_string(),
|
model: "claude-sonnet-4-20250514".to_string(),
|
||||||
role: "helper".to_string(),
|
role: "helper".to_string(),
|
||||||
rules: Rules {
|
rules: Rules {
|
||||||
triggers: TriggerRules {
|
triggers: TriggerRules {
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ You are a general-purpose AI agent called Goose, created by Block, the parent co
|
|||||||
|
|
||||||
The current date is {{current_date_time}}.
|
The current date is {{current_date_time}}.
|
||||||
|
|
||||||
Goose 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).
|
Goose uses LLM providers with tool calling capability. You can be used with different language models (gpt-4o, claude-sonnet-4, o1, llama-3.2, deepseek-r1, etc).
|
||||||
These 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.
|
These 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.
|
||||||
|
|
||||||
# Extensions
|
# Extensions
|
||||||
|
|||||||
@@ -31,8 +31,6 @@ const ANTHROPIC_KNOWN_MODELS: &[&str] = &[
|
|||||||
"claude-opus-4-20250514",
|
"claude-opus-4-20250514",
|
||||||
"claude-3-7-sonnet-latest",
|
"claude-3-7-sonnet-latest",
|
||||||
"claude-3-7-sonnet-20250219",
|
"claude-3-7-sonnet-20250219",
|
||||||
"claude-3-5-sonnet-latest",
|
|
||||||
"claude-3-5-haiku-latest",
|
|
||||||
"claude-3-opus-latest",
|
"claude-3-opus-latest",
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -552,17 +552,17 @@ mod tests {
|
|||||||
assert_eq!(model, Some("gpt-4o".to_string()));
|
assert_eq!(model, Some("gpt-4o".to_string()));
|
||||||
|
|
||||||
// Change the model
|
// Change the model
|
||||||
set_current_model("claude-3.5-sonnet");
|
set_current_model("claude-sonnet-4-20250514");
|
||||||
|
|
||||||
// Get the updated model and verify
|
// Get the updated model and verify
|
||||||
let model = get_current_model();
|
let model = get_current_model();
|
||||||
assert_eq!(model, Some("claude-3.5-sonnet".to_string()));
|
assert_eq!(model, Some("claude-sonnet-4-20250514".to_string()));
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_provider_metadata_context_limits() {
|
fn test_provider_metadata_context_limits() {
|
||||||
// Test that ProviderMetadata::new correctly sets context limits
|
// Test that ProviderMetadata::new correctly sets context limits
|
||||||
let test_models = vec!["gpt-4o", "claude-3-5-sonnet-latest", "unknown-model"];
|
let test_models = vec!["gpt-4o", "claude-sonnet-4-20250514", "unknown-model"];
|
||||||
let metadata = ProviderMetadata::new(
|
let metadata = ProviderMetadata::new(
|
||||||
"test",
|
"test",
|
||||||
"Test Provider",
|
"Test Provider",
|
||||||
@@ -582,9 +582,9 @@ mod tests {
|
|||||||
// gpt-4o should have 128k limit
|
// gpt-4o should have 128k limit
|
||||||
assert_eq!(*model_info.get("gpt-4o").unwrap(), 128_000);
|
assert_eq!(*model_info.get("gpt-4o").unwrap(), 128_000);
|
||||||
|
|
||||||
// claude-3-5-sonnet-latest should have 200k limit
|
// claude-sonnet-4-20250514 should have 200k limit
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
*model_info.get("claude-3-5-sonnet-latest").unwrap(),
|
*model_info.get("claude-sonnet-4-20250514").unwrap(),
|
||||||
200_000
|
200_000
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@@ -25,10 +25,8 @@ pub const BEDROCK_DOC_LINK: &str =
|
|||||||
|
|
||||||
pub const BEDROCK_DEFAULT_MODEL: &str = "anthropic.claude-sonnet-4-20250514-v1:0";
|
pub const BEDROCK_DEFAULT_MODEL: &str = "anthropic.claude-sonnet-4-20250514-v1:0";
|
||||||
pub const BEDROCK_KNOWN_MODELS: &[&str] = &[
|
pub const BEDROCK_KNOWN_MODELS: &[&str] = &[
|
||||||
"anthropic.claude-3-5-sonnet-20240620-v1:0",
|
|
||||||
"anthropic.claude-3-5-sonnet-20241022-v2:0",
|
|
||||||
"anthropic.claude-3-7-sonnet-20250219-v1:0",
|
|
||||||
"anthropic.claude-sonnet-4-20250514-v1:0",
|
"anthropic.claude-sonnet-4-20250514-v1:0",
|
||||||
|
"anthropic.claude-3-7-sonnet-20250219-v1:0",
|
||||||
"anthropic.claude-opus-4-20250514-v1:0",
|
"anthropic.claude-opus-4-20250514-v1:0",
|
||||||
"anthropic.claude-opus-4-1-20250805-v1:0",
|
"anthropic.claude-opus-4-1-20250805-v1:0",
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -16,8 +16,8 @@ use crate::impl_provider_default;
|
|||||||
use crate::model::ModelConfig;
|
use crate::model::ModelConfig;
|
||||||
use rmcp::model::Tool;
|
use rmcp::model::Tool;
|
||||||
|
|
||||||
pub const CLAUDE_CODE_DEFAULT_MODEL: &str = "claude-3-5-sonnet-latest";
|
pub const CLAUDE_CODE_DEFAULT_MODEL: &str = "claude-sonnet-4-20250514";
|
||||||
pub const CLAUDE_CODE_KNOWN_MODELS: &[&str] = &["sonnet", "opus", "claude-3-5-sonnet-latest"];
|
pub const CLAUDE_CODE_KNOWN_MODELS: &[&str] = &["sonnet", "opus", "claude-sonnet-4-20250514"];
|
||||||
|
|
||||||
pub const CLAUDE_CODE_DOC_URL: &str = "https://claude.ai/cli";
|
pub const CLAUDE_CODE_DOC_URL: &str = "https://claude.ai/cli";
|
||||||
|
|
||||||
@@ -525,7 +525,7 @@ mod tests {
|
|||||||
let provider = ClaudeCodeProvider::default();
|
let provider = ClaudeCodeProvider::default();
|
||||||
let config = provider.get_model_config();
|
let config = provider.get_model_config();
|
||||||
|
|
||||||
assert_eq!(config.model_name, "claude-3-5-sonnet-latest");
|
assert_eq!(config.model_name, "claude-sonnet-4-20250514");
|
||||||
// Context limit should be set by the ModelConfig
|
// Context limit should be set by the ModelConfig
|
||||||
assert!(config.context_limit() > 0);
|
assert!(config.context_limit() > 0);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -692,7 +692,7 @@ mod tests {
|
|||||||
"type": "text",
|
"type": "text",
|
||||||
"text": "Hello! How can I assist you today?"
|
"text": "Hello! How can I assist you today?"
|
||||||
}],
|
}],
|
||||||
"model": "claude-3-5-sonnet-latest",
|
"model": "claude-sonnet-4-20250514",
|
||||||
"stop_reason": "end_turn",
|
"stop_reason": "end_turn",
|
||||||
"stop_sequence": null,
|
"stop_sequence": null,
|
||||||
"usage": {
|
"usage": {
|
||||||
@@ -962,7 +962,7 @@ mod tests {
|
|||||||
"type": "text",
|
"type": "text",
|
||||||
"text": "Based on the cached context, here's my response."
|
"text": "Based on the cached context, here's my response."
|
||||||
}],
|
}],
|
||||||
"model": "claude-3-5-sonnet-latest",
|
"model": "claude-sonnet-4-20250514",
|
||||||
"stop_reason": "end_turn",
|
"stop_reason": "end_turn",
|
||||||
"stop_sequence": null,
|
"stop_sequence": null,
|
||||||
"usage": {
|
"usage": {
|
||||||
|
|||||||
@@ -73,14 +73,8 @@ pub enum GcpVertexAIModel {
|
|||||||
/// Represents available versions of the Claude model for Goose.
|
/// Represents available versions of the Claude model for Goose.
|
||||||
#[derive(Debug, Clone, PartialEq, Eq)]
|
#[derive(Debug, Clone, PartialEq, Eq)]
|
||||||
pub enum ClaudeVersion {
|
pub enum ClaudeVersion {
|
||||||
/// Claude 3.5 Sonnet initial version
|
|
||||||
Sonnet35,
|
|
||||||
/// Claude 3.5 Sonnet version 2
|
|
||||||
Sonnet35V2,
|
|
||||||
/// Claude 3.7 Sonnet
|
/// Claude 3.7 Sonnet
|
||||||
Sonnet37,
|
Sonnet37,
|
||||||
/// Claude 3.5 Haiku
|
|
||||||
Haiku35,
|
|
||||||
/// Claude Sonnet 4
|
/// Claude Sonnet 4
|
||||||
Sonnet4,
|
Sonnet4,
|
||||||
/// Claude Opus 4
|
/// Claude Opus 4
|
||||||
@@ -116,10 +110,7 @@ impl fmt::Display for GcpVertexAIModel {
|
|||||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||||
let model_id = match self {
|
let model_id = match self {
|
||||||
Self::Claude(version) => match version {
|
Self::Claude(version) => match version {
|
||||||
ClaudeVersion::Sonnet35 => "claude-3-5-sonnet@20240620",
|
|
||||||
ClaudeVersion::Sonnet35V2 => "claude-3-5-sonnet-v2@20241022",
|
|
||||||
ClaudeVersion::Sonnet37 => "claude-3-7-sonnet@20250219",
|
ClaudeVersion::Sonnet37 => "claude-3-7-sonnet@20250219",
|
||||||
ClaudeVersion::Haiku35 => "claude-3-5-haiku@20241022",
|
|
||||||
ClaudeVersion::Sonnet4 => "claude-sonnet-4@20250514",
|
ClaudeVersion::Sonnet4 => "claude-sonnet-4@20250514",
|
||||||
ClaudeVersion::Opus4 => "claude-opus-4@20250514",
|
ClaudeVersion::Opus4 => "claude-opus-4@20250514",
|
||||||
ClaudeVersion::Generic(name) => name,
|
ClaudeVersion::Generic(name) => name,
|
||||||
@@ -160,10 +151,7 @@ impl TryFrom<&str> for GcpVertexAIModel {
|
|||||||
fn try_from(s: &str) -> Result<Self, Self::Error> {
|
fn try_from(s: &str) -> Result<Self, Self::Error> {
|
||||||
// Known models
|
// Known models
|
||||||
match s {
|
match s {
|
||||||
"claude-3-5-sonnet@20240620" => Ok(Self::Claude(ClaudeVersion::Sonnet35)),
|
|
||||||
"claude-3-5-sonnet-v2@20241022" => Ok(Self::Claude(ClaudeVersion::Sonnet35V2)),
|
|
||||||
"claude-3-7-sonnet@20250219" => Ok(Self::Claude(ClaudeVersion::Sonnet37)),
|
"claude-3-7-sonnet@20250219" => Ok(Self::Claude(ClaudeVersion::Sonnet37)),
|
||||||
"claude-3-5-haiku@20241022" => Ok(Self::Claude(ClaudeVersion::Haiku35)),
|
|
||||||
"claude-sonnet-4@20250514" => Ok(Self::Claude(ClaudeVersion::Sonnet4)),
|
"claude-sonnet-4@20250514" => Ok(Self::Claude(ClaudeVersion::Sonnet4)),
|
||||||
"claude-opus-4@20250514" => Ok(Self::Claude(ClaudeVersion::Opus4)),
|
"claude-opus-4@20250514" => Ok(Self::Claude(ClaudeVersion::Opus4)),
|
||||||
"gemini-1.5-pro-002" => Ok(Self::Gemini(GeminiVersion::Pro15)),
|
"gemini-1.5-pro-002" => Ok(Self::Gemini(GeminiVersion::Pro15)),
|
||||||
@@ -360,10 +348,8 @@ mod tests {
|
|||||||
#[test]
|
#[test]
|
||||||
fn test_model_parsing() -> Result<()> {
|
fn test_model_parsing() -> Result<()> {
|
||||||
let valid_models = [
|
let valid_models = [
|
||||||
"claude-3-5-sonnet@20240620",
|
"claude-sonnet-4-20250514",
|
||||||
"claude-3-5-sonnet-v2@20241022",
|
|
||||||
"claude-3-7-sonnet@20250219",
|
"claude-3-7-sonnet@20250219",
|
||||||
"claude-3-5-haiku@20241022",
|
|
||||||
"claude-sonnet-4@20250514",
|
"claude-sonnet-4@20250514",
|
||||||
"gemini-1.5-pro-002",
|
"gemini-1.5-pro-002",
|
||||||
"gemini-2.0-flash-001",
|
"gemini-2.0-flash-001",
|
||||||
@@ -385,10 +371,8 @@ mod tests {
|
|||||||
#[test]
|
#[test]
|
||||||
fn test_default_locations() -> Result<()> {
|
fn test_default_locations() -> Result<()> {
|
||||||
let test_cases = [
|
let test_cases = [
|
||||||
("claude-3-5-sonnet@20240620", GcpLocation::Ohio),
|
("claude-sonnet-4-20250514", GcpLocation::Ohio),
|
||||||
("claude-3-5-sonnet-v2@20241022", GcpLocation::Ohio),
|
|
||||||
("claude-3-7-sonnet@20250219", GcpLocation::Ohio),
|
("claude-3-7-sonnet@20250219", GcpLocation::Ohio),
|
||||||
("claude-3-5-haiku@20241022", GcpLocation::Ohio),
|
|
||||||
("claude-sonnet-4@20250514", GcpLocation::Ohio),
|
("claude-sonnet-4@20250514", GcpLocation::Ohio),
|
||||||
("gemini-1.5-pro-002", GcpLocation::Iowa),
|
("gemini-1.5-pro-002", GcpLocation::Iowa),
|
||||||
("gemini-2.0-flash-001", GcpLocation::Iowa),
|
("gemini-2.0-flash-001", GcpLocation::Iowa),
|
||||||
|
|||||||
@@ -373,7 +373,7 @@ mod tests {
|
|||||||
"type": "text",
|
"type": "text",
|
||||||
"text": "Hello! How can I assist you today?"
|
"text": "Hello! How can I assist you today?"
|
||||||
}],
|
}],
|
||||||
"model": "claude-3-5-sonnet",
|
"model": "claude-4-sonnet",
|
||||||
"stop_reason": "end_turn",
|
"stop_reason": "end_turn",
|
||||||
"stop_sequence": null,
|
"stop_sequence": null,
|
||||||
"usage": {
|
"usage": {
|
||||||
@@ -410,7 +410,7 @@ mod tests {
|
|||||||
"name": "calculator",
|
"name": "calculator",
|
||||||
"input": {"expression": "2 + 2"}
|
"input": {"expression": "2 + 2"}
|
||||||
}],
|
}],
|
||||||
"model": "claude-3-5-sonnet",
|
"model": "claude-4-sonnet",
|
||||||
"stop_reason": "end_turn",
|
"stop_reason": "end_turn",
|
||||||
"stop_sequence": null,
|
"stop_sequence": null,
|
||||||
"usage": {
|
"usage": {
|
||||||
@@ -513,13 +513,13 @@ mod tests {
|
|||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_parse_streaming_response() -> Result<()> {
|
fn test_parse_streaming_response() -> Result<()> {
|
||||||
let sse_data = r#"data: {"id":"a9537c2c-2017-4906-9817-2456168d89fa","model":"claude-3-5-sonnet","choices":[{"delta":{"type":"text","content":"I","content_list":[{"type":"text","text":"I"}],"text":"I"}}],"usage":{}}
|
let sse_data = r#"data: {"id":"a9537c2c-2017-4906-9817-2456168d89fa","model":"claude-sonnet-4-20250514","choices":[{"delta":{"type":"text","content":"I","content_list":[{"type":"text","text":"I"}],"text":"I"}}],"usage":{}}
|
||||||
|
|
||||||
data: {"id":"a9537c2c-2017-4906-9817-2456168d89fa","model":"claude-3-5-sonnet","choices":[{"delta":{"type":"text","content":"'ll help you check Nvidia's current","content_list":[{"type":"text","text":"'ll help you check Nvidia's current"}],"text":"'ll help you check Nvidia's current"}}],"usage":{}}
|
data: {"id":"a9537c2c-2017-4906-9817-2456168d89fa","model":"claude-sonnet-4-20250514","choices":[{"delta":{"type":"text","content":"'ll help you check Nvidia's current","content_list":[{"type":"text","text":"'ll help you check Nvidia's current"}],"text":"'ll help you check Nvidia's current"}}],"usage":{}}
|
||||||
|
|
||||||
data: {"id":"a9537c2c-2017-4906-9817-2456168d89fa","model":"claude-3-5-sonnet","choices":[{"delta":{"type":"tool_use","tool_use_id":"tooluse_FB_nOElDTAOKa-YnVWI5Uw","name":"get_stock_price","content_list":[{"tool_use_id":"tooluse_FB_nOElDTAOKa-YnVWI5Uw","name":"get_stock_price"}],"text":""}}],"usage":{}}
|
data: {"id":"a9537c2c-2017-4906-9817-2456168d89fa","model":"claude-sonnet-4-20250514","choices":[{"delta":{"type":"tool_use","tool_use_id":"tooluse_FB_nOElDTAOKa-YnVWI5Uw","name":"get_stock_price","content_list":[{"tool_use_id":"tooluse_FB_nOElDTAOKa-YnVWI5Uw","name":"get_stock_price"}],"text":""}}],"usage":{}}
|
||||||
|
|
||||||
data: {"id":"a9537c2c-2017-4906-9817-2456168d89fa","model":"claude-3-5-sonnet","choices":[{"delta":{"type":"tool_use","input":"{\"symbol\":\"NVDA\"}","content_list":[{"input":"{\"symbol\":\"NVDA\"}"}],"text":""}}],"usage":{"prompt_tokens":397,"completion_tokens":65,"total_tokens":462}}
|
data: {"id":"a9537c2c-2017-4906-9817-2456168d89fa","model":"claude-sonnet-4-20250514","choices":[{"delta":{"type":"tool_use","input":"{\"symbol\":\"NVDA\"}","content_list":[{"input":"{\"symbol\":\"NVDA\"}"}],"text":""}}],"usage":{"prompt_tokens":397,"completion_tokens":65,"total_tokens":462}}
|
||||||
"#;
|
"#;
|
||||||
|
|
||||||
let message = parse_streaming_response(sse_data)?;
|
let message = parse_streaming_response(sse_data)?;
|
||||||
@@ -550,7 +550,7 @@ data: {"id":"a9537c2c-2017-4906-9817-2456168d89fa","model":"claude-3-5-sonnet","
|
|||||||
use crate::conversation::message::Message;
|
use crate::conversation::message::Message;
|
||||||
use crate::model::ModelConfig;
|
use crate::model::ModelConfig;
|
||||||
|
|
||||||
let model_config = ModelConfig::new_or_fail("claude-3-5-sonnet");
|
let model_config = ModelConfig::new_or_fail("claude-4-sonnet");
|
||||||
|
|
||||||
let system = "You are a helpful assistant that can use tools to get information.";
|
let system = "You are a helpful assistant that can use tools to get information.";
|
||||||
let messages = vec![Message::user().with_text("What is the stock price of Nvidia?")];
|
let messages = vec![Message::user().with_text("What is the stock price of Nvidia?")];
|
||||||
@@ -573,7 +573,7 @@ data: {"id":"a9537c2c-2017-4906-9817-2456168d89fa","model":"claude-3-5-sonnet","
|
|||||||
let request = create_request(&model_config, system, &messages, &tools)?;
|
let request = create_request(&model_config, system, &messages, &tools)?;
|
||||||
|
|
||||||
// Check basic structure
|
// Check basic structure
|
||||||
assert_eq!(request["model"], "claude-3-5-sonnet");
|
assert_eq!(request["model"], "claude-4-sonnet");
|
||||||
|
|
||||||
let messages_array = request["messages"].as_array().unwrap();
|
let messages_array = request["messages"].as_array().unwrap();
|
||||||
assert_eq!(messages_array.len(), 2); // system + user message
|
assert_eq!(messages_array.len(), 2); // system + user message
|
||||||
@@ -618,7 +618,7 @@ data: {"id":"a9537c2c-2017-4906-9817-2456168d89fa","model":"claude-3-5-sonnet","
|
|||||||
"input": {"expression": "2 + 2"}
|
"input": {"expression": "2 + 2"}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"model": "claude-3-5-sonnet",
|
"model": "claude-4-sonnet",
|
||||||
"usage": {
|
"usage": {
|
||||||
"input_tokens": 10,
|
"input_tokens": 10,
|
||||||
"output_tokens": 15
|
"output_tokens": 15
|
||||||
@@ -659,7 +659,7 @@ data: {"id":"a9537c2c-2017-4906-9817-2456168d89fa","model":"claude-3-5-sonnet","
|
|||||||
use crate::conversation::message::Message;
|
use crate::conversation::message::Message;
|
||||||
use crate::model::ModelConfig;
|
use crate::model::ModelConfig;
|
||||||
|
|
||||||
let model_config = ModelConfig::new_or_fail("claude-3-5-sonnet");
|
let model_config = ModelConfig::new_or_fail("claude-4-sonnet");
|
||||||
let system = "Reply with only a description in four words or less";
|
let system = "Reply with only a description in four words or less";
|
||||||
let messages = vec![Message::user().with_text("Test message")];
|
let messages = vec![Message::user().with_text("Test message")];
|
||||||
let tools = vec![Tool::new(
|
let tools = vec![Tool::new(
|
||||||
|
|||||||
@@ -444,10 +444,7 @@ impl Provider for GcpVertexAIProvider {
|
|||||||
Self: Sized,
|
Self: Sized,
|
||||||
{
|
{
|
||||||
let model_strings: Vec<String> = vec![
|
let model_strings: Vec<String> = vec![
|
||||||
GcpVertexAIModel::Claude(ClaudeVersion::Sonnet35),
|
|
||||||
GcpVertexAIModel::Claude(ClaudeVersion::Sonnet35V2),
|
|
||||||
GcpVertexAIModel::Claude(ClaudeVersion::Sonnet37),
|
GcpVertexAIModel::Claude(ClaudeVersion::Sonnet37),
|
||||||
GcpVertexAIModel::Claude(ClaudeVersion::Haiku35),
|
|
||||||
GcpVertexAIModel::Claude(ClaudeVersion::Sonnet4),
|
GcpVertexAIModel::Claude(ClaudeVersion::Sonnet4),
|
||||||
GcpVertexAIModel::Claude(ClaudeVersion::Opus4),
|
GcpVertexAIModel::Claude(ClaudeVersion::Opus4),
|
||||||
GcpVertexAIModel::Gemini(GeminiVersion::Pro15),
|
GcpVertexAIModel::Gemini(GeminiVersion::Pro15),
|
||||||
@@ -597,7 +594,7 @@ mod tests {
|
|||||||
fn test_url_construction() {
|
fn test_url_construction() {
|
||||||
use url::Url;
|
use url::Url;
|
||||||
|
|
||||||
let model_config = ModelConfig::new_or_fail("claude-3-5-sonnet-v2@20241022");
|
let model_config = ModelConfig::new_or_fail("claude-sonnet-4-20250514");
|
||||||
let context = RequestContext::new(&model_config.model_name).unwrap();
|
let context = RequestContext::new(&model_config.model_name).unwrap();
|
||||||
let api_model_id = context.model.to_string();
|
let api_model_id = context.model.to_string();
|
||||||
|
|
||||||
@@ -629,7 +626,8 @@ mod tests {
|
|||||||
.iter()
|
.iter()
|
||||||
.map(|m| m.name.clone())
|
.map(|m| m.name.clone())
|
||||||
.collect();
|
.collect();
|
||||||
assert!(model_names.contains(&"claude-3-5-sonnet-v2@20241022".to_string()));
|
assert!(model_names.contains(&"claude-3-7-sonnet@20250219".to_string()));
|
||||||
|
assert!(model_names.contains(&"claude-sonnet-4@20250514".to_string()));
|
||||||
assert!(model_names.contains(&"gemini-1.5-pro-002".to_string()));
|
assert!(model_names.contains(&"gemini-1.5-pro-002".to_string()));
|
||||||
assert!(model_names.contains(&"gemini-2.5-pro".to_string()));
|
assert!(model_names.contains(&"gemini-2.5-pro".to_string()));
|
||||||
// Should contain the original 2 config keys plus 4 new retry-related ones
|
// Should contain the original 2 config keys plus 4 new retry-related ones
|
||||||
|
|||||||
@@ -30,11 +30,11 @@ pub const GITHUB_COPILOT_KNOWN_MODELS: &[&str] = &[
|
|||||||
"o1",
|
"o1",
|
||||||
"o3-mini",
|
"o3-mini",
|
||||||
"claude-3.7-sonnet",
|
"claude-3.7-sonnet",
|
||||||
"claude-3.5-sonnet",
|
"claude-sonnet-4-20250514",
|
||||||
];
|
];
|
||||||
|
|
||||||
pub const GITHUB_COPILOT_STREAM_MODELS: &[&str] =
|
pub const GITHUB_COPILOT_STREAM_MODELS: &[&str] =
|
||||||
&["gpt-4.1", "claude-3.7-sonnet", "claude-3.5-sonnet"];
|
&["gpt-4.1", "claude-3.7-sonnet", "claude-sonnet-4-20250514"];
|
||||||
|
|
||||||
const GITHUB_COPILOT_DOC_URL: &str =
|
const GITHUB_COPILOT_DOC_URL: &str =
|
||||||
"https://docs.github.com/en/copilot/using-github-copilot/ai-models";
|
"https://docs.github.com/en/copilot/using-github-copilot/ai-models";
|
||||||
|
|||||||
@@ -16,14 +16,15 @@ use crate::model::ModelConfig;
|
|||||||
use crate::providers::formats::openai::{create_request, get_usage, response_to_message};
|
use crate::providers::formats::openai::{create_request, get_usage, response_to_message};
|
||||||
use rmcp::model::Tool;
|
use rmcp::model::Tool;
|
||||||
|
|
||||||
pub const OPENROUTER_DEFAULT_MODEL: &str = "anthropic/claude-3.5-sonnet";
|
pub const OPENROUTER_DEFAULT_MODEL: &str = "anthropic/claude-sonnet-4";
|
||||||
pub const OPENROUTER_MODEL_PREFIX_ANTHROPIC: &str = "anthropic";
|
pub const OPENROUTER_MODEL_PREFIX_ANTHROPIC: &str = "anthropic";
|
||||||
|
|
||||||
// OpenRouter can run many models, we suggest the default
|
// OpenRouter can run many models, we suggest the default
|
||||||
pub const OPENROUTER_KNOWN_MODELS: &[&str] = &[
|
pub const OPENROUTER_KNOWN_MODELS: &[&str] = &[
|
||||||
"anthropic/claude-3.5-sonnet",
|
|
||||||
"anthropic/claude-3.7-sonnet",
|
|
||||||
"anthropic/claude-sonnet-4",
|
"anthropic/claude-sonnet-4",
|
||||||
|
"anthropic/claude-opus-4.1",
|
||||||
|
"anthropic/claude-opus-4",
|
||||||
|
"anthropic/claude-3.7-sonnet",
|
||||||
"google/gemini-2.5-pro",
|
"google/gemini-2.5-pro",
|
||||||
"deepseek/deepseek-r1-0528",
|
"deepseek/deepseek-r1-0528",
|
||||||
"qwen/qwen3-coder",
|
"qwen/qwen3-coder",
|
||||||
|
|||||||
@@ -333,7 +333,7 @@ pub async fn get_all_pricing() -> HashMap<String, HashMap<String, PricingInfo>>
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Convert OpenRouter model ID to provider/model format
|
/// Convert OpenRouter model ID to provider/model format
|
||||||
/// e.g., "anthropic/claude-3.5-sonnet" -> ("anthropic", "claude-3.5-sonnet")
|
/// e.g., "anthropic/claude-sonnet-4-20250514" -> ("anthropic", "claude-sonnet-4-20250514")
|
||||||
pub fn parse_model_id(model_id: &str) -> Option<(String, String)> {
|
pub fn parse_model_id(model_id: &str) -> Option<(String, String)> {
|
||||||
let parts: Vec<&str> = model_id.splitn(2, '/').collect();
|
let parts: Vec<&str> = model_id.splitn(2, '/').collect();
|
||||||
if parts.len() == 2 {
|
if parts.len() == 2 {
|
||||||
@@ -373,8 +373,11 @@ mod tests {
|
|||||||
#[test]
|
#[test]
|
||||||
fn test_parse_model_id() {
|
fn test_parse_model_id() {
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
parse_model_id("anthropic/claude-3.5-sonnet"),
|
parse_model_id("anthropic/claude-sonnet-4-20250514"),
|
||||||
Some(("anthropic".to_string(), "claude-3.5-sonnet".to_string()))
|
Some((
|
||||||
|
"anthropic".to_string(),
|
||||||
|
"claude-sonnet-4-20250514".to_string()
|
||||||
|
))
|
||||||
);
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
parse_model_id("openai/gpt-4"),
|
parse_model_id("openai/gpt-4"),
|
||||||
@@ -384,8 +387,11 @@ mod tests {
|
|||||||
|
|
||||||
// Test the specific model causing issues
|
// Test the specific model causing issues
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
parse_model_id("anthropic/claude-sonnet-4"),
|
parse_model_id("anthropic/claude-sonnet-4-20250514"),
|
||||||
Some(("anthropic".to_string(), "claude-sonnet-4".to_string()))
|
Some((
|
||||||
|
"anthropic".to_string(),
|
||||||
|
"claude-sonnet-4-20250514".to_string()
|
||||||
|
))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -404,7 +410,7 @@ mod tests {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Test lookup for the specific model
|
// Test lookup for the specific model (use the name that actually exists in cache)
|
||||||
let pricing = get_model_pricing("anthropic", "claude-sonnet-4").await;
|
let pricing = get_model_pricing("anthropic", "claude-sonnet-4").await;
|
||||||
|
|
||||||
println!(
|
println!(
|
||||||
|
|||||||
@@ -15,8 +15,8 @@ use crate::impl_provider_default;
|
|||||||
use crate::model::ModelConfig;
|
use crate::model::ModelConfig;
|
||||||
use rmcp::model::Tool;
|
use rmcp::model::Tool;
|
||||||
|
|
||||||
pub const SNOWFLAKE_DEFAULT_MODEL: &str = "claude-3-7-sonnet";
|
pub const SNOWFLAKE_DEFAULT_MODEL: &str = "claude-4-sonnet";
|
||||||
pub const SNOWFLAKE_KNOWN_MODELS: &[&str] = &["claude-3-7-sonnet", "claude-3-5-sonnet"];
|
pub const SNOWFLAKE_KNOWN_MODELS: &[&str] = &["claude-4-sonnet", "claude-3-7-sonnet"];
|
||||||
|
|
||||||
pub const SNOWFLAKE_DOC_URL: &str =
|
pub const SNOWFLAKE_DOC_URL: &str =
|
||||||
"https://docs.snowflake.com/user-guide/snowflake-cortex/aisql#choosing-a-model";
|
"https://docs.snowflake.com/user-guide/snowflake-cortex/aisql#choosing-a-model";
|
||||||
|
|||||||
@@ -29,8 +29,7 @@ use rmcp::model::Tool;
|
|||||||
pub const TETRATE_KNOWN_MODELS: &[&str] = &[
|
pub const TETRATE_KNOWN_MODELS: &[&str] = &[
|
||||||
"claude-opus-4-1",
|
"claude-opus-4-1",
|
||||||
"claude-3-7-sonnet-latest",
|
"claude-3-7-sonnet-latest",
|
||||||
"claude-3-5-sonnet-latest",
|
"claude-sonnet-4-20250514",
|
||||||
"claude-3-5-haiku-latest",
|
|
||||||
"gemini-2.5-pro",
|
"gemini-2.5-pro",
|
||||||
"gemini-2.0-flash",
|
"gemini-2.0-flash",
|
||||||
"gemini-2.0-flash-lite",
|
"gemini-2.0-flash-lite",
|
||||||
|
|||||||
@@ -349,24 +349,24 @@ data: [DONE]
|
|||||||
assert_eq!(choice.finish_reason, "stop");
|
assert_eq!(choice.finish_reason, "stop");
|
||||||
}
|
}
|
||||||
const CLAUDE_STREAM: &str = r#"
|
const CLAUDE_STREAM: &str = r#"
|
||||||
data: {"choices":[{"index":0,"delta":{"content":"I","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-3.5-sonnet"}
|
data: {"choices":[{"index":0,"delta":{"content":"I","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-sonnet-4-20250514"}
|
||||||
data: {"choices":[{"index":0,"delta":{"content":"'ll","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-3.5-sonnet"}
|
data: {"choices":[{"index":0,"delta":{"content":"'ll","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-sonnet-4-20250514"}
|
||||||
data: {"choices":[{"index":0,"delta":{"content":" help","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-3.5-sonnet"}
|
data: {"choices":[{"index":0,"delta":{"content":" help","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-sonnet-4-20250514"}
|
||||||
data: {"choices":[{"index":0,"delta":{"content":" you examine","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-3.5-sonnet"}
|
data: {"choices":[{"index":0,"delta":{"content":" you examine","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-sonnet-4-20250514"}
|
||||||
data: {"choices":[{"index":0,"delta":{"content":" the most","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-3.5-sonnet"}
|
data: {"choices":[{"index":0,"delta":{"content":" the most","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-sonnet-4-20250514"}
|
||||||
data: {"choices":[{"index":0,"delta":{"content":" recent commit using","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-3.5-sonnet"}
|
data: {"choices":[{"index":0,"delta":{"content":" recent commit using","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-sonnet-4-20250514"}
|
||||||
data: {"choices":[{"index":0,"delta":{"content":" the shell","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-3.5-sonnet"}
|
data: {"choices":[{"index":0,"delta":{"content":" the shell","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-sonnet-4-20250514"}
|
||||||
data: {"choices":[{"index":0,"delta":{"content":" comman","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-3.5-sonnet"}
|
data: {"choices":[{"index":0,"delta":{"content":" comman","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-sonnet-4-20250514"}
|
||||||
data: {"choices":[{"index":0,"delta":{"content":"d `git show HEAD","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-3.5-sonnet"}
|
data: {"choices":[{"index":0,"delta":{"content":"d `git show HEAD","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-sonnet-4-20250514"}
|
||||||
data: {"choices":[{"index":0,"delta":{"content":"`.","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-3.5-sonnet"}
|
data: {"choices":[{"index":0,"delta":{"content":"`.","role":"assistant"}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-sonnet-4-20250514"}
|
||||||
data: {"choices":[{"index":0,"delta":{"content":null,"tool_calls":[{"function":{"name":"developer__shell"},"id":"tooluse_9eC8o8MvTN-KOWuDGXgq1Q","index":0,"type":"function"}]}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-3.5-sonnet"}
|
data: {"choices":[{"index":0,"delta":{"content":null,"tool_calls":[{"function":{"name":"developer__shell"},"id":"tooluse_9eC8o8MvTN-KOWuDGXgq1Q","index":0,"type":"function"}]}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-sonnet-4-20250514"}
|
||||||
data: {"choices":[{"index":0,"delta":{"content":null,"tool_calls":[{"function":{"arguments":""},"index":0,"type":"function"}]}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-3.5-sonnet"}
|
data: {"choices":[{"index":0,"delta":{"content":null,"tool_calls":[{"function":{"arguments":""},"index":0,"type":"function"}]}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-sonnet-4-20250514"}
|
||||||
data: {"choices":[{"index":0,"delta":{"content":null,"tool_calls":[{"function":{"arguments":"{\"command"},"index":0,"type":"function"}]}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-3.5-sonnet"}
|
data: {"choices":[{"index":0,"delta":{"content":null,"tool_calls":[{"function":{"arguments":"{\"command"},"index":0,"type":"function"}]}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-sonnet-4-20250514"}
|
||||||
data: {"choices":[{"index":0,"delta":{"content":null,"tool_calls":[{"function":{"arguments":"\": "},"index":0,"type":"function"}]}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-3.5-sonnet"}
|
data: {"choices":[{"index":0,"delta":{"content":null,"tool_calls":[{"function":{"arguments":"\": "},"index":0,"type":"function"}]}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-sonnet-4-20250514"}
|
||||||
data: {"choices":[{"index":0,"delta":{"content":null,"tool_calls":[{"function":{"arguments":"\"git show H"},"index":0,"type":"function"}]}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-3.5-sonnet"}
|
data: {"choices":[{"index":0,"delta":{"content":null,"tool_calls":[{"function":{"arguments":"\"git show H"},"index":0,"type":"function"}]}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-sonnet-4-20250514"}
|
||||||
data: {"choices":[{"index":0,"delta":{"content":null,"tool_calls":[{"function":{"arguments":"EAD"},"index":0,"type":"function"}]}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-3.5-sonnet"}
|
data: {"choices":[{"index":0,"delta":{"content":null,"tool_calls":[{"function":{"arguments":"EAD"},"index":0,"type":"function"}]}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-sonnet-4-20250514"}
|
||||||
data: {"choices":[{"index":0,"delta":{"content":null,"tool_calls":[{"function":{"arguments":"\"}"},"index":0,"type":"function"}]}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-3.5-sonnet"}
|
data: {"choices":[{"index":0,"delta":{"content":null,"tool_calls":[{"function":{"arguments":"\"}"},"index":0,"type":"function"}]}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","model":"claude-sonnet-4-20250514"}
|
||||||
data: {"choices":[{"finish_reason":"tool_calls","index":0,"delta":{"content":null}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","usage":{"completion_tokens":56,"prompt_tokens":2594,"prompt_tokens_details":{"cached_tokens":0},"total_tokens":2650},"model":"claude-3.5-sonnet"}
|
data: {"choices":[{"finish_reason":"tool_calls","index":0,"delta":{"content":null}}],"created":1747613682,"id":"938bb8e2-6276-4a58-bca3-c675cfe7f2f5","usage":{"completion_tokens":56,"prompt_tokens":2594,"prompt_tokens_details":{"cached_tokens":0},"total_tokens":2650},"model":"claude-sonnet-4-20250514"}
|
||||||
data: [DONE]
|
data: [DONE]
|
||||||
"#;
|
"#;
|
||||||
#[test]
|
#[test]
|
||||||
|
|||||||
@@ -244,21 +244,11 @@ mod tests {
|
|||||||
.await
|
.await
|
||||||
}
|
}
|
||||||
|
|
||||||
#[tokio::test]
|
|
||||||
async fn test_agent_with_anthropic() -> Result<()> {
|
|
||||||
run_test_with_config(TestConfig {
|
|
||||||
provider_type: ProviderType::Anthropic,
|
|
||||||
model: "claude-3-5-haiku-latest",
|
|
||||||
context_window: 200_000,
|
|
||||||
})
|
|
||||||
.await
|
|
||||||
}
|
|
||||||
|
|
||||||
#[tokio::test]
|
#[tokio::test]
|
||||||
async fn test_agent_with_bedrock() -> Result<()> {
|
async fn test_agent_with_bedrock() -> Result<()> {
|
||||||
run_test_with_config(TestConfig {
|
run_test_with_config(TestConfig {
|
||||||
provider_type: ProviderType::Bedrock,
|
provider_type: ProviderType::Bedrock,
|
||||||
model: "anthropic.claude-3-5-sonnet-20241022-v2:0",
|
model: "anthropic.claude-sonnet-4-20250514:0",
|
||||||
context_window: 200_000,
|
context_window: 200_000,
|
||||||
})
|
})
|
||||||
.await
|
.await
|
||||||
@@ -278,7 +268,7 @@ mod tests {
|
|||||||
async fn test_agent_with_databricks_bedrock() -> Result<()> {
|
async fn test_agent_with_databricks_bedrock() -> Result<()> {
|
||||||
run_test_with_config(TestConfig {
|
run_test_with_config(TestConfig {
|
||||||
provider_type: ProviderType::Databricks,
|
provider_type: ProviderType::Databricks,
|
||||||
model: "claude-3-5-sonnet-2",
|
model: "claude-sonnet-4",
|
||||||
context_window: 200_000,
|
context_window: 200_000,
|
||||||
})
|
})
|
||||||
.await
|
.await
|
||||||
@@ -338,7 +328,7 @@ mod tests {
|
|||||||
async fn test_agent_with_gcpvertexai() -> Result<()> {
|
async fn test_agent_with_gcpvertexai() -> Result<()> {
|
||||||
run_test_with_config(TestConfig {
|
run_test_with_config(TestConfig {
|
||||||
provider_type: ProviderType::GcpVertexAI,
|
provider_type: ProviderType::GcpVertexAI,
|
||||||
model: "claude-3-5-sonnet-v2@20241022",
|
model: "claude-sonnet-4-20250514",
|
||||||
context_window: 200_000,
|
context_window: 200_000,
|
||||||
})
|
})
|
||||||
.await
|
.await
|
||||||
|
|||||||
@@ -18,11 +18,11 @@ async fn test_pricing_cache_performance() {
|
|||||||
|
|
||||||
// Test fetching pricing for common models (using actual model names from OpenRouter)
|
// Test fetching pricing for common models (using actual model names from OpenRouter)
|
||||||
let models = vec![
|
let models = vec![
|
||||||
("anthropic", "claude-3.5-sonnet"),
|
("anthropic", "claude-sonnet-4"),
|
||||||
("openai", "gpt-4o"),
|
("openai", "gpt-4o"),
|
||||||
("openai", "gpt-4o-mini"),
|
("openai", "gpt-4o-mini"),
|
||||||
("google", "gemini-flash-1.5"),
|
("google", "gemini-flash-1.5"),
|
||||||
("anthropic", "claude-sonnet-4"),
|
("anthropic", "claude-opus-4"),
|
||||||
];
|
];
|
||||||
|
|
||||||
// First fetch (potentially uncached or cache warming)
|
// First fetch (potentially uncached or cache warming)
|
||||||
@@ -153,7 +153,7 @@ async fn run_pricing_refresh_test() -> Result<(), String> {
|
|||||||
.map_err(|e| format!("Failed to initialize pricing cache: {}", e))?;
|
.map_err(|e| format!("Failed to initialize pricing cache: {}", e))?;
|
||||||
|
|
||||||
// Get initial pricing (using a model that actually exists)
|
// Get initial pricing (using a model that actually exists)
|
||||||
let initial_pricing = get_model_pricing("anthropic", "claude-3.5-sonnet").await;
|
let initial_pricing = get_model_pricing("anthropic", "claude-sonnet-4").await;
|
||||||
if initial_pricing.is_none() {
|
if initial_pricing.is_none() {
|
||||||
return Err("Expected initial pricing but got None".to_string());
|
return Err("Expected initial pricing but got None".to_string());
|
||||||
}
|
}
|
||||||
@@ -167,7 +167,7 @@ async fn run_pricing_refresh_test() -> Result<(), String> {
|
|||||||
println!("Pricing refresh took: {:?}", refresh_duration);
|
println!("Pricing refresh took: {:?}", refresh_duration);
|
||||||
|
|
||||||
// Get pricing after refresh
|
// Get pricing after refresh
|
||||||
let refreshed_pricing = get_model_pricing("anthropic", "claude-3.5-sonnet").await;
|
let refreshed_pricing = get_model_pricing("anthropic", "claude-sonnet-4").await;
|
||||||
if refreshed_pricing.is_none() {
|
if refreshed_pricing.is_none() {
|
||||||
return Err("Expected pricing after refresh but got None".to_string());
|
return Err("Expected pricing after refresh but got None".to_string());
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ These are the minimum required variables to get started with Goose.
|
|||||||
| Variable | Purpose | Values | Default |
|
| Variable | Purpose | Values | Default |
|
||||||
|----------|---------|---------|---------|
|
|----------|---------|---------|---------|
|
||||||
| `GOOSE_PROVIDER` | Specifies the LLM provider to use | [See available providers](/docs/getting-started/providers#available-providers) | None (must be [configured](/docs/getting-started/providers#configure-provider)) |
|
| `GOOSE_PROVIDER` | Specifies the LLM provider to use | [See available providers](/docs/getting-started/providers#available-providers) | None (must be [configured](/docs/getting-started/providers#configure-provider)) |
|
||||||
| `GOOSE_MODEL` | Specifies which model to use from the provider | Model name (e.g., "gpt-4", "claude-3.5-sonnet") | None (must be configured) |
|
| `GOOSE_MODEL` | Specifies which model to use from the provider | Model name (e.g., "gpt-4", "claude-sonnet-4-20250514") | None (must be configured) |
|
||||||
| `GOOSE_TEMPERATURE` | Sets the [temperature](https://medium.com/@kelseyywang/a-comprehensive-guide-to-llm-temperature-%EF%B8%8F-363a40bbc91f) for model responses | Float between 0.0 and 1.0 | Model-specific default |
|
| `GOOSE_TEMPERATURE` | Sets the [temperature](https://medium.com/@kelseyywang/a-comprehensive-guide-to-llm-temperature-%EF%B8%8F-363a40bbc91f) for model responses | Float between 0.0 and 1.0 | Model-specific default |
|
||||||
|
|
||||||
**Examples**
|
**Examples**
|
||||||
@@ -25,7 +25,7 @@ These are the minimum required variables to get started with Goose.
|
|||||||
```bash
|
```bash
|
||||||
# Basic model configuration
|
# Basic model configuration
|
||||||
export GOOSE_PROVIDER="anthropic"
|
export GOOSE_PROVIDER="anthropic"
|
||||||
export GOOSE_MODEL="claude-3.5-sonnet"
|
export GOOSE_MODEL="claude-sonnet-4-20250514"
|
||||||
export GOOSE_TEMPERATURE=0.7
|
export GOOSE_TEMPERATURE=0.7
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -54,7 +54,7 @@ These variables configure a [lead/worker model pattern](/docs/tutorials/lead-wor
|
|||||||
|
|
||||||
| Variable | Purpose | Values | Default |
|
| Variable | Purpose | Values | Default |
|
||||||
|----------|---------|---------|---------|
|
|----------|---------|---------|---------|
|
||||||
| `GOOSE_LEAD_MODEL` | **Required to enable lead mode.** Name of the lead model | Model name (e.g., "gpt-4o", "claude-3.5-sonnet") | None |
|
| `GOOSE_LEAD_MODEL` | **Required to enable lead mode.** Name of the lead model | Model name (e.g., "gpt-4o", "claude-sonnet-4-20250514") | None |
|
||||||
| `GOOSE_LEAD_PROVIDER` | Provider for the lead model | [See available providers](/docs/getting-started/providers#available-providers) | Falls back to `GOOSE_PROVIDER` |
|
| `GOOSE_LEAD_PROVIDER` | Provider for the lead model | [See available providers](/docs/getting-started/providers#available-providers) | Falls back to `GOOSE_PROVIDER` |
|
||||||
| `GOOSE_LEAD_TURNS` | Number of initial turns using the lead model before switching to the worker model | Integer | 3 |
|
| `GOOSE_LEAD_TURNS` | Number of initial turns using the lead model before switching to the worker model | Integer | 3 |
|
||||||
| `GOOSE_LEAD_FAILURE_THRESHOLD` | Consecutive failures before fallback to the lead model | Integer | 2 |
|
| `GOOSE_LEAD_FAILURE_THRESHOLD` | Consecutive failures before fallback to the lead model | Integer | 2 |
|
||||||
@@ -89,7 +89,7 @@ These variables control Goose's [planning functionality](/docs/guides/creating-p
|
|||||||
| Variable | Purpose | Values | Default |
|
| Variable | Purpose | Values | Default |
|
||||||
|----------|---------|---------|---------|
|
|----------|---------|---------|---------|
|
||||||
| `GOOSE_PLANNER_PROVIDER` | Specifies which provider to use for planning mode | [See available providers](/docs/getting-started/providers#available-providers) | Falls back to GOOSE_PROVIDER |
|
| `GOOSE_PLANNER_PROVIDER` | Specifies which provider to use for planning mode | [See available providers](/docs/getting-started/providers#available-providers) | Falls back to GOOSE_PROVIDER |
|
||||||
| `GOOSE_PLANNER_MODEL` | Specifies which model to use for planning mode | Model name (e.g., "gpt-4", "claude-3.5-sonnet")| Falls back to GOOSE_MODEL |
|
| `GOOSE_PLANNER_MODEL` | Specifies which model to use for planning mode | Model name (e.g., "gpt-4", "claude-sonnet-4-20250514")| Falls back to GOOSE_MODEL |
|
||||||
|
|
||||||
**Examples**
|
**Examples**
|
||||||
|
|
||||||
@@ -258,7 +258,7 @@ These variables configure [AI-powered code editing](/docs/guides/enhanced-code-e
|
|||||||
|----------|---------|---------|---------|
|
|----------|---------|---------|---------|
|
||||||
| `GOOSE_EDITOR_API_KEY` | API key for the code editing model | API key string | None |
|
| `GOOSE_EDITOR_API_KEY` | API key for the code editing model | API key string | None |
|
||||||
| `GOOSE_EDITOR_HOST` | API endpoint for the code editing model | URL (e.g., "https://api.openai.com/v1") | None |
|
| `GOOSE_EDITOR_HOST` | API endpoint for the code editing model | URL (e.g., "https://api.openai.com/v1") | None |
|
||||||
| `GOOSE_EDITOR_MODEL` | Model to use for code editing | Model name (e.g., "gpt-4o", "claude-3-5-sonnet") | None |
|
| `GOOSE_EDITOR_MODEL` | Model to use for code editing | Model name (e.g., "gpt-4o", "claude-sonnet-4") | None |
|
||||||
|
|
||||||
**Examples**
|
**Examples**
|
||||||
|
|
||||||
@@ -273,7 +273,7 @@ export GOOSE_EDITOR_MODEL="gpt-4o"
|
|||||||
# Anthropic configuration (via OpenAI-compatible proxy)
|
# Anthropic configuration (via OpenAI-compatible proxy)
|
||||||
export GOOSE_EDITOR_API_KEY="sk-ant-..."
|
export GOOSE_EDITOR_API_KEY="sk-ant-..."
|
||||||
export GOOSE_EDITOR_HOST="https://api.anthropic.com/v1"
|
export GOOSE_EDITOR_HOST="https://api.anthropic.com/v1"
|
||||||
export GOOSE_EDITOR_MODEL="claude-3-5-sonnet-20241022"
|
export GOOSE_EDITOR_MODEL="claude-sonnet-4-20250514"
|
||||||
|
|
||||||
# Local model configuration
|
# Local model configuration
|
||||||
export GOOSE_EDITOR_API_KEY="your-key"
|
export GOOSE_EDITOR_API_KEY="your-key"
|
||||||
|
|||||||
@@ -213,7 +213,7 @@ The `settings` field allows you to configure the AI model and provider settings
|
|||||||
```yaml
|
```yaml
|
||||||
settings:
|
settings:
|
||||||
goose_provider: "anthropic"
|
goose_provider: "anthropic"
|
||||||
goose_model: "claude-3-5-sonnet-latest"
|
goose_model: "claude-sonnet-4-20250514"
|
||||||
temperature: 0.7
|
temperature: 0.7
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -459,7 +459,7 @@ extensions:
|
|||||||
|
|
||||||
settings:
|
settings:
|
||||||
goose_provider: "anthropic"
|
goose_provider: "anthropic"
|
||||||
goose_model: "claude-3-5-sonnet-latest"
|
goose_model: "claude-sonnet-4-20250514"
|
||||||
temperature: 0.7
|
temperature: 0.7
|
||||||
|
|
||||||
retry:
|
retry:
|
||||||
|
|||||||
@@ -208,7 +208,7 @@ Note that you'll need [Node.js](https://nodejs.org/) installed on your system to
|
|||||||
Let's use the AgentQL extension to gather and structure tech conference data to help plan speaking engagements.
|
Let's use the AgentQL extension to gather and structure tech conference data to help plan speaking engagements.
|
||||||
|
|
||||||
:::info LLM
|
:::info LLM
|
||||||
Anthropic's Claude 3.5 Sonnet was used for this task.
|
Anthropic's Claude 4 Sonnet was used for this task.
|
||||||
:::
|
:::
|
||||||
|
|
||||||
### Goose Prompt
|
### Goose Prompt
|
||||||
|
|||||||
@@ -193,7 +193,7 @@ This tutorial covers how to add the Browserbase MCP Server as a Goose extension
|
|||||||
Let's use the Browserbase extension to gather information about trending MCP-related repositories on GitHub.
|
Let's use the Browserbase extension to gather information about trending MCP-related repositories on GitHub.
|
||||||
|
|
||||||
:::info LLM
|
:::info LLM
|
||||||
Claude 3.5 Sonnet was used for this task.
|
Claude 4 Sonnet was used for this task.
|
||||||
:::
|
:::
|
||||||
|
|
||||||
### Goose Prompt
|
### Goose Prompt
|
||||||
|
|||||||
@@ -132,7 +132,7 @@ Choose one or more servers based on your needs. Here are the most popular config
|
|||||||
Let's use the Observability server to debug performance issues with a Workers application:
|
Let's use the Observability server to debug performance issues with a Workers application:
|
||||||
|
|
||||||
:::info LLM
|
:::info LLM
|
||||||
Anthropic's Claude 3.5 Sonnet was used for this task.
|
Anthropic's Claude 4 Sonnet was used for this task.
|
||||||
:::
|
:::
|
||||||
|
|
||||||
#### Goose Prompt
|
#### Goose Prompt
|
||||||
|
|||||||
@@ -98,7 +98,7 @@ Let Goose complete its tasks without interruption - avoid using your mouse or ke
|
|||||||
In this example, I'll show you how Goose can multitask, handling everything from system controls and music playback to web research and data organization.
|
In this example, I'll show you how Goose can multitask, handling everything from system controls and music playback to web research and data organization.
|
||||||
|
|
||||||
:::info LLM
|
:::info LLM
|
||||||
Anthropic's Claude 3.5 Sonnet was used for this task.
|
Anthropic's Claude 4 Sonnet was used for this task.
|
||||||
:::
|
:::
|
||||||
|
|
||||||
<Tabs groupId="interface">
|
<Tabs groupId="interface">
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ The Developer extension is already enabled by default when Goose is installed.
|
|||||||
In this example, I'm going to have Goose automate setting up my JavaScript developer environment with Express, Mongoose, Nodemon, Dotenv and initialize Git.
|
In this example, I'm going to have Goose automate setting up my JavaScript developer environment with Express, Mongoose, Nodemon, Dotenv and initialize Git.
|
||||||
|
|
||||||
:::info LLM
|
:::info LLM
|
||||||
Anthropic's Claude 3.5 Sonnet was used for this task.
|
Anthropic's Claude 4 Sonnet was used for this task.
|
||||||
:::
|
:::
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -131,7 +131,7 @@ This tutorial covers how to add the JetBrains extension to integrate with any Je
|
|||||||
In this example, I'm going to upgrade a Java project to the latest LTS version.
|
In this example, I'm going to upgrade a Java project to the latest LTS version.
|
||||||
|
|
||||||
:::info LLM
|
:::info LLM
|
||||||
Anthropic's Claude 3.5 Sonnet was used for this task.
|
Anthropic's Claude 4 Sonnet was used for this task.
|
||||||
:::
|
:::
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -182,7 +182,7 @@ Let's use Goose with the Playwright extension to create a cross-browser testing
|
|||||||
3. Capture screenshots for visual comparison
|
3. Capture screenshots for visual comparison
|
||||||
|
|
||||||
:::info LLM
|
:::info LLM
|
||||||
Anthropic's Claude 3.5 Sonnet was used for this task.
|
Anthropic's Claude 4 Sonnet was used for this task.
|
||||||
:::
|
:::
|
||||||
|
|
||||||
### Goose Prompt
|
### Goose Prompt
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ You can also specify which AI provider and model to use for a specific recipe:
|
|||||||
```yaml
|
```yaml
|
||||||
settings:
|
settings:
|
||||||
goose_provider: "anthropic"
|
goose_provider: "anthropic"
|
||||||
goose_model: "claude-3-5-sonnet-latest"
|
goose_model: "claude-sonnet-4-20250514"
|
||||||
temperature: 0.8
|
temperature: 0.8
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -19,7 +19,7 @@ This script runs Goose benchmarks across multiple provider:model pairs and analy
|
|||||||
|
|
||||||
#### Options
|
#### Options
|
||||||
|
|
||||||
- `-p, --provider-models`: Comma-separated list of provider:model pairs (e.g., 'openai:gpt-4o,anthropic:claude-3-5-sonnet')
|
- `-p, --provider-models`: Comma-separated list of provider:model pairs (e.g., 'openai:gpt-4o,anthropic:claude-sonnet-4')
|
||||||
- `-s, --suites`: Comma-separated list of benchmark suites to run (e.g., 'core,small_models')
|
- `-s, --suites`: Comma-separated list of benchmark suites to run (e.g., 'core,small_models')
|
||||||
- `-o, --output-dir`: Directory to store benchmark results (default: './benchmark-results')
|
- `-o, --output-dir`: Directory to store benchmark results (default: './benchmark-results')
|
||||||
- `-d, --debug`: Use debug build instead of release build
|
- `-d, --debug`: Use debug build instead of release build
|
||||||
@@ -29,7 +29,7 @@ This script runs Goose benchmarks across multiple provider:model pairs and analy
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Run with release build (default)
|
# Run with release build (default)
|
||||||
./scripts/run-benchmarks.sh --provider-models 'openai:gpt-4o,anthropic:claude-3-5-sonnet' --suites 'core,small_models'
|
./scripts/run-benchmarks.sh --provider-models 'openai:gpt-4o,anthropic:claude-sonnet-4' --suites 'core,small_models'
|
||||||
|
|
||||||
# Run with debug build
|
# Run with debug build
|
||||||
./scripts/run-benchmarks.sh --provider-models 'openai:gpt-4o' --suites 'core' --debug
|
./scripts/run-benchmarks.sh --provider-models 'openai:gpt-4o' --suites 'core' --debug
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ function show_usage() {
|
|||||||
echo "Usage: $0 [options]"
|
echo "Usage: $0 [options]"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Options:"
|
echo "Options:"
|
||||||
echo " -p, --provider-models Comma-separated list of provider:model pairs (e.g., 'openai:gpt-4o,anthropic:claude-3-5-sonnet')"
|
echo " -p, --provider-models Comma-separated list of provider:model pairs (e.g., 'openai:gpt-4o,anthropic:claude-sonnet-4')"
|
||||||
echo " -s, --suites Comma-separated list of benchmark suites to run (e.g., 'core,small_models')"
|
echo " -s, --suites Comma-separated list of benchmark suites to run (e.g., 'core,small_models')"
|
||||||
echo " -o, --output-dir Directory to store benchmark results (default: './benchmark-results')"
|
echo " -o, --output-dir Directory to store benchmark results (default: './benchmark-results')"
|
||||||
echo " -d, --debug Use debug build instead of release build"
|
echo " -d, --debug Use debug build instead of release build"
|
||||||
@@ -17,7 +17,7 @@ function show_usage() {
|
|||||||
echo " -h, --help Show this help message"
|
echo " -h, --help Show this help message"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Example:"
|
echo "Example:"
|
||||||
echo " $0 --provider-models 'openai:gpt-4o,anthropic:claude-3-5-sonnet' --suites 'core,small_models'"
|
echo " $0 --provider-models 'openai:gpt-4o,anthropic:claude-sonnet-4' --suites 'core,small_models'"
|
||||||
}
|
}
|
||||||
|
|
||||||
# Parse command line arguments
|
# Parse command line arguments
|
||||||
|
|||||||
Reference in New Issue
Block a user