Add bot schedules (routines), open Activity, add Help and a Desktop computer view

Bots create, list, update and delete schedules (cron_jobs, Bun.cron in UTC);
a per-minute cron queues due runs as tasks. Routines, Activity (super admins)
and Help get their own rail aside. Help covers familiar problems, starting
with signing in to Google through Cookie-Editor over the new Desktop (noVNC)
view.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
2026-10-19 10:52:32 +01:00
co-authored by Claude Opus 5.5
parent f24c0d7e82
commit c44048dbab
62 changed files with 1904 additions and 78 deletions
+10 -1
View File
@@ -1,6 +1,10 @@
import type { BUN_SQLITE_COBBLE_COMPUTERS } from "@/db/types/db";
import type { HarnessTool } from "../../types";
import createScheduleTool from "./create-schedule-tool";
import deleteScheduleTool from "./delete-schedule-tool";
import listSchedulesTool from "./list-schedules-tool";
import setWorkspaceComputerTool from "./set-workspace-computer-tool";
import updateScheduleTool from "./update-schedule-tool";
import updateInstructionsTool from "./update-instructions-tool";
import updateMemoryTool from "./update-memory-tool";
@@ -20,7 +24,8 @@ type Params = {
/**
* The tools a bot works with on every run, bound to that bot and where it
* works.
* works: its memory and instructions, its schedules, and in a workspace
* with several computers switching the default one.
*/
export default function grabBotTools({
user_id,
@@ -31,6 +36,10 @@ export default function grabBotTools({
return [
updateMemoryTool({ user_id, bot_id, workspace_id }),
updateInstructionsTool({ user_id, bot_id, workspace_id }),
createScheduleTool({ user_id, bot_id, workspace_id, computers }),
listSchedulesTool({ user_id, bot_id }),
updateScheduleTool({ user_id, bot_id }),
deleteScheduleTool({ user_id, bot_id }),
...(workspace_id && computers.length > 1
? [setWorkspaceComputerTool({ user_id, workspace_id, computers })]
: []),