Recipe config to limit tool availability (#4020)

This commit is contained in:
Jarrod Sibbison
2025-08-18 16:14:23 +10:00
committed by GitHub
parent c8d9578c3a
commit 43211803a9
13 changed files with 313 additions and 10 deletions
+36
View File
@@ -1632,6 +1632,12 @@
"type"
],
"properties": {
"available_tools": {
"type": "array",
"items": {
"type": "string"
}
},
"bundled": {
"type": "boolean",
"description": "Whether this extension is bundled with Goose",
@@ -1687,6 +1693,12 @@
"type": "string"
}
},
"available_tools": {
"type": "array",
"items": {
"type": "string"
}
},
"bundled": {
"type": "boolean",
"description": "Whether this extension is bundled with Goose",
@@ -1734,6 +1746,12 @@
"type"
],
"properties": {
"available_tools": {
"type": "array",
"items": {
"type": "string"
}
},
"bundled": {
"type": "boolean",
"description": "Whether this extension is bundled with Goose",
@@ -1774,6 +1792,12 @@
"type"
],
"properties": {
"available_tools": {
"type": "array",
"items": {
"type": "string"
}
},
"bundled": {
"type": "boolean",
"description": "Whether this extension is bundled with Goose",
@@ -1828,6 +1852,12 @@
"type"
],
"properties": {
"available_tools": {
"type": "array",
"items": {
"type": "string"
}
},
"bundled": {
"type": "boolean",
"description": "Whether this extension is bundled with Goose",
@@ -1866,6 +1896,12 @@
"type"
],
"properties": {
"available_tools": {
"type": "array",
"items": {
"type": "string"
}
},
"code": {
"type": "string",
"description": "The Python code to execute"
+6
View File
@@ -159,6 +159,7 @@ export type ExtendPromptResponse = {
* Represents the different types of MCP extensions that can be added to the manager
*/
export type ExtensionConfig = {
available_tools?: Array<string>;
/**
* Whether this extension is bundled with Goose
*/
@@ -175,6 +176,7 @@ export type ExtensionConfig = {
uri: string;
} | {
args: Array<string>;
available_tools?: Array<string>;
/**
* Whether this extension is bundled with Goose
*/
@@ -190,6 +192,7 @@ export type ExtensionConfig = {
timeout?: number | null;
type: 'stdio';
} | {
available_tools?: Array<string>;
/**
* Whether this extension is bundled with Goose
*/
@@ -203,6 +206,7 @@ export type ExtensionConfig = {
timeout?: number | null;
type: 'builtin';
} | {
available_tools?: Array<string>;
/**
* Whether this extension is bundled with Goose
*/
@@ -221,6 +225,7 @@ export type ExtensionConfig = {
type: 'streamable_http';
uri: string;
} | {
available_tools?: Array<string>;
/**
* Whether this extension is bundled with Goose
*/
@@ -239,6 +244,7 @@ export type ExtensionConfig = {
tools: Array<Tool>;
type: 'frontend';
} | {
available_tools?: Array<string>;
/**
* The Python code to execute
*/