diff options
| author | Adam Malczewski <[email protected]> | 2026-05-31 18:34:15 +0900 |
|---|---|---|
| committer | Adam Malczewski <[email protected]> | 2026-05-31 18:34:15 +0900 |
| commit | cb640f25b577a68ceea76b7c9a95a198e5e91441 (patch) | |
| tree | 35e5ae5741cb0ab3c573446ef13528aa6f4b242a /packages/frontend/src/lib | |
| parent | c59f7bad32bb8682acecfcf2209c6ad587544eda (diff) | |
| download | dispatch-cb640f25b577a68ceea76b7c9a95a198e5e91441.tar.gz dispatch-cb640f25b577a68ceea76b7c9a95a198e5e91441.zip | |
feat: implement user agents (top-level tabs via summon)
- agent parameter is now required on summon tool
- new top_level param spawns independent fire-and-forget user agent tabs
- gated by perm_user_agent permission (UI checkbox added)
- agent definition type validation (subagent vs user-agent slug mismatch)
- context-aware error messages when agent slug not found
- read_file_slice added to summon tool's allowed tools enum
- updated and expanded summon tests
Diffstat (limited to 'packages/frontend/src/lib')
| -rw-r--r-- | packages/frontend/src/lib/components/ToolPermissions.svelte | 5 | ||||
| -rw-r--r-- | packages/frontend/src/lib/settings.svelte.ts | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/packages/frontend/src/lib/components/ToolPermissions.svelte b/packages/frontend/src/lib/components/ToolPermissions.svelte index 7fdaad3..d64eaf9 100644 --- a/packages/frontend/src/lib/components/ToolPermissions.svelte +++ b/packages/frontend/src/lib/components/ToolPermissions.svelte @@ -23,6 +23,11 @@ const toolPermissions: ToolPermission[] = [ description: "Allow the AI to spawn child agents to work on tasks", }, { + id: "user_agent", + label: "Spawn user agents", + description: "Allow the AI to open new independent top-level tabs", + }, + { id: "web_search", label: "Web search", description: "Allow the AI to search the web via Firecrawl", diff --git a/packages/frontend/src/lib/settings.svelte.ts b/packages/frontend/src/lib/settings.svelte.ts index 29aca5e..11eb79c 100644 --- a/packages/frontend/src/lib/settings.svelte.ts +++ b/packages/frontend/src/lib/settings.svelte.ts @@ -8,6 +8,7 @@ let toolPerms = $state<Record<string, boolean>>({ edit: false, bash: false, summon: false, + user_agent: false, external_directory: false, web_search: false, youtube_transcribe: false, @@ -17,6 +18,7 @@ let savedToolPerms = $state<Record<string, boolean>>({ edit: false, bash: false, summon: false, + user_agent: false, external_directory: false, web_search: false, youtube_transcribe: false, |
