## Context The current workbench shell owns the main navigation in `WorkbenchShell.tsx`, the app-center cards in `app-definitions.tsx`, and route rendering inside `renderRoute()`. Model selection is already implemented in Drawnix with runtime model discovery through `useSelectableModels('text')` and controlled model refs in `ModelSelector`. The user-provided plan defines "万象智枢 / Omni Intelligence Hub" as the upstream decision and content-sourcing center. Its first release should make the feature discoverable and actionable without requiring the whole long-term platform to be complete. Agent-Reach is an external project focused on agent access to external sources. It should be treated as a local capability provider rather than bundled frontend logic. ## Goals - Add a first-class workbench entry for Omni Intelligence Hub. - Let users start research from a question, topic, product name, webpage URL, video URL, or GitHub repository. - Reuse existing runtime-discovered text model selection instead of creating a separate model registry. - Bridge to Agent-Reach for retrieval/source access and expose health/diagnostics in the UI. - Keep the first implementation useful when Agent-Reach is unavailable by allowing draft setup, mode selection, model selection, and diagnostic guidance. ## Non-Goals - Do not implement every long-term submodule in full depth in the first release. - Do not vendor or copy Agent-Reach source code into the web app. - Do not replace existing image, video, audio, avatar, canvas, or asset workflows. - Do not introduce a new model configuration surface separate from the existing provider/runtime model system. ## Architecture ### Workbench UI - Add `/intelligence` as the top-level route. - Add a sidebar item labeled `智枢` or `万象智枢` using a lucide icon such as `Radar`, `SearchCheck`, or `BrainCircuit`. - Add an app-center definition with the product-plan description and route `/intelligence`. - Implement an `OmniIntelligencePage` component in the workbench layer. The first screen should be the usable research workspace, not a marketing landing page. ### Internal Navigation Represent the planned submodules as tab/segmented navigation: - 总览: 智枢首页 - 探索: 全域探索, 内容解析, 专题智研 - 洞察: 趋势雷达, 竞品战情 - 创作: 策源工坊 - 管理: 情报资产, 监控任务 The initial implementation may keep some tabs as structured empty states, but the main input, mode selection, model selector, Agent-Reach status, quick scenarios, and result preview must be functional. ### Model Selection - Use runtime-discovered text models via `useSelectableModels('text')`. - Reuse the existing controlled `ModelSelector` where practical. - Store both `modelId` and `modelRef` in the page state. - Include selected model metadata in Agent-Reach task submission so downstream summarization, verification, and content conversion use the chosen model. ### Agent-Reach Bridge Add a local bridge with these conceptual endpoints: - `GET /local-api/agent-reach/status`: returns installed/runnable/auth/source capability state and doctor output when available. - `POST /local-api/agent-reach/research`: submits a query, mode, model, source filters, depth, verification, and output options. - `POST /local-api/agent-reach/parse-link`: submits a URL for webpage/video/repository parsing. The bridge should execute Agent-Reach through a local runtime boundary and normalize responses into: - `summary` - `keyFindings` - `sources` - `conflicts` - `trendSignals` - `contentIdeas` - `scripts` - `storyboards` - `prompts` - `rawDiagnostics` If Agent-Reach is missing, the status endpoint should return `available: false` with setup guidance. The UI should show a clear status panel and keep non-network planning controls usable. ### Asset and Workflow Continuity Omni Intelligence Hub results should be shaped so later changes can save them as intelligence assets, insert markdown reports into canvas, or launch image/video/avatar/script workflows. The first implementation can expose CTA placeholders for these handoffs while preserving the result data model. ## Risks - Agent-Reach command/API shape may change. Keep the bridge isolated and normalize the contract at `/local-api/agent-reach/*`. - Authenticated community sources may require user login. Surface per-source capability and avoid treating missing auth as total failure. - Research tasks can be long-running. If the first release uses synchronous calls, keep timeouts and progress states explicit; prefer adding task queue integration when the bridge proves stable.