forked from boos/BoosAPI
feat: add desktop agent workbench
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
# Desktop Agent Workbench integration
|
||||
|
||||
## Goal
|
||||
|
||||
Add a first usable Agent Workbench entry to the desktop client so users can start from the same creator-style surface used in the BoosAPI web UI: choose a creation mode, select a model, attach references, and type a prompt.
|
||||
|
||||
## Requirements
|
||||
|
||||
- Add an Agent Workbench page to the desktop navigation without disrupting existing Chat, Drawing, Skills, Knowledge, Memory, Gateway, Files, or Settings flows.
|
||||
- The first screen should match the creator-composer direction: centered prompt, large input surface, upload affordance, creation mode selector, auto toggle, model selector, skills button, subject button, and submit button.
|
||||
- Creation modes must include at least Agent, image generation, video generation, music generation, voice generation, digital human, and action imitation. Unsupported modes may show “coming soon” copy but must remain selectable.
|
||||
- Agent mode should expose a conversation model selector populated from existing enabled desktop provider models where possible, with a custom model fallback.
|
||||
- Upload affordance should accept local reference files, display removable attachment chips, and pass attachments into existing Agent chat flow when Agent mode submits.
|
||||
- The page must follow the desktop app’s existing React/Ant Design/Zustand conventions and be reachable from the sidebar.
|
||||
- The implementation must avoid new backend schema. Existing Tauri commands may be reused.
|
||||
- The Workbench skills menu should expose a JianYing/剪映 automation entry that installs/enables `luoluoluo22/jianying-editor-skill` through the existing Desktop skills system and primes the Agent prompt.
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
- [x] Sidebar contains an Agent Workbench entry and selecting it renders the new page.
|
||||
- [x] Agent Workbench page has a centered creator composer with mode dropdown, model control, upload button, `@` subject popover, and submit button.
|
||||
- [x] Available chat models are derived from existing enabled desktop providers/models, with a custom model option.
|
||||
- [x] Selecting a mode updates the composer label and mode-specific model controls where applicable.
|
||||
- [x] Local file selection displays attachment chips and supports removing them.
|
||||
- [x] Agent mode creates an Agent conversation/session and sends the prompt plus attachments through the existing Agent stream flow.
|
||||
- [x] Skills menu can install/enable the JianYing editor skill and insert a matching Agent prompt prefix.
|
||||
- [x] Unsupported submit paths do not crash; they show a clear in-page result/status.
|
||||
- [x] `bun run typecheck` and `bun run build` pass in `/root/metapi/desktop`.
|
||||
|
||||
## Notes
|
||||
|
||||
- Keep `prd.md` focused on requirements, constraints, and acceptance criteria.
|
||||
- Lightweight tasks can remain PRD-only.
|
||||
- For complex tasks, add `design.md` for technical design and `implement.md` for execution planning before `task.py start`.
|
||||
Reference in New Issue
Block a user