Give bots tools and MCP servers per bot and workspace, with status and tests
- Bots and workspaces get tools and MCP servers from their settings pages; bots also from chips under the chat composer, removable there - "Every bot" now gives one to every bot now and every new bot; each can still drop it (attach-every-bot-extensions.ts moves old installs over) - Status lines: MCP servers record whether they connect, tools whether their last run worked - Test connection in the MCP form and a Test panel in the tool form check the form as it is, without saving - Hide Google sign-in on the login form Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
+17
-1
@@ -21,7 +21,7 @@ import { AppData } from "@/src/data/app-data";
|
||||
import type { BUN_SQLITE_DatabaseSchemaType } from "@moduletrace/bun-sqlite/types";
|
||||
import { EnvParadigms } from "@/src/dict/env-dict";
|
||||
import { McpServerStatuses, McpTransports } from "@/src/dict/mcp-dict";
|
||||
import { CustomToolKinds } from "@/src/dict/custom-tool-dict";
|
||||
import { CustomToolKinds, CustomToolStatuses } from "@/src/dict/custom-tool-dict";
|
||||
|
||||
const schema: BUN_SQLITE_DatabaseSchemaType = {
|
||||
tables: [
|
||||
@@ -1827,6 +1827,22 @@ const schema: BUN_SQLITE_DatabaseSchemaType = {
|
||||
options: [0, 1],
|
||||
defaultValue: 1,
|
||||
},
|
||||
{
|
||||
fieldName: "status",
|
||||
fieldDescription: `How its last run went (a bot's call or a try). Reset to untested when it's edited`,
|
||||
dataType: "TEXT",
|
||||
options: CustomToolStatuses.map((s) => s.value),
|
||||
defaultValue: "untested",
|
||||
},
|
||||
{
|
||||
fieldName: "last_error",
|
||||
dataType: "TEXT",
|
||||
},
|
||||
{
|
||||
fieldName: "last_checked_at",
|
||||
fieldDescription: `Unix ms of its last run`,
|
||||
dataType: "INTEGER",
|
||||
},
|
||||
{
|
||||
fieldName: "user_id",
|
||||
fieldDescription: `Who created it. Not a foreign key: it belongs to the install`,
|
||||
|
||||
@@ -1132,6 +1132,15 @@ export type BUN_SQLITE_COBBLE_CUSTOM_TOOLS = {
|
||||
*/
|
||||
all_bots?: 0 | 1 | "";
|
||||
enabled?: 0 | 1 | "";
|
||||
/**
|
||||
* How its last run went (a bot's call or a try). Reset to untested when it's edited
|
||||
*/
|
||||
status?: "untested" | "ok" | "error" | "";
|
||||
last_error?: string;
|
||||
/**
|
||||
* Unix ms of its last run
|
||||
*/
|
||||
last_checked_at?: number | "";
|
||||
/**
|
||||
* Who created it. Not a foreign key: it belongs to the install
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user