Add explicit tool feed states and approval metadata, improve tool resolution, and refactor UI components.
- Add ToolFeedState and ToolApprovalMetadata types and update FeedItem to include state and optional approval metadata.
- Implement latestToolKeyByTurnAndName tracking and resolveToolItem logic to reconcile synthetic/evolving tool keys across stream updates.
- Handle new model stream update kinds and transitions: input-streaming, input-available, approval-requested, output-available/error/denied; create synthetic feed items for approval requests and preserve args/state across key migrations.
- Refactor prompt input into smaller forwardRef components (PromptInputRoot/Form/Body/Footer/Tools/Textarea/Submit), introduce PromptInputStatus and update ChatView to use the new pieces and props.
- Update many UI primitives: add data-slot/data-size/data-variant attributes, consolidate utility imports to '@/lib/utils', adjust icon sizing via data-icon/size classes, and improve button/select/checkbox/card/dialog/select/textarea styles and accessibility.
- Add apps/desktop/components.json and alias '@' in electron.vite.config.ts to map to app src.
- Minor style variables and other small fixes; add new src/utils/coworkHome.ts and update tests to match behavior changes.
These changes centralize tool state handling for richer UI feedback and streamline component APIs for consistent styling and automation.