• Will Chen's avatar
    Web search (#2099) · 5acadeff
    Will Chen 提交于
    <!-- CURSOR_SUMMARY -->
    > [!NOTE]
    > Introduces real-time web search in chat with streaming results and a
    richer UI.
    > 
    > - Adds `web_search` tool (`tools/web_search.ts`) with zod schema,
    consent prompt, SSE parsing, and streaming via
    `onXmlStream`/`onXmlComplete` (requires Dyad Pro API key; respects
    `DYAD_ENGINE_URL`)
    > - Registers tool in `TOOL_DEFINITIONS`
    > - Updates markdown parser to pass `query` and `state` into
    `dyad-web-search`
    > - Enhances `DyadWebSearch` component: expandable/collapsible card,
    loading spinner while `pending`, keyboard/ARIA support, and displays
    query preview + results
    > 
    > <sup>Written by [Cursor
    Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
    53c9c7b65eb8dee07d8320837b39d72bf5b42b92. This will update automatically
    on new commits. Configure
    [here](https://cursor.com/dashboard?tab=bugbot).</sup>
    <!-- /CURSOR_SUMMARY -->
    
    <!-- This is an auto-generated description by cubic. -->
    ---
    ## Summary by cubic
    Adds web search to chat with live streaming results from Dyad Engine.
    The Web Search card shows the query, a loading state, and
    expand/collapse for details.
    
    - **New Features**
    - New web_search tool that streams SSE results and writes partial
    updates via onXmlStream, final via onXmlComplete.
      - Registered tool in TOOL_DEFINITIONS with consent and zod schema.
    - DyadWebSearch UI: accepts query/state, shows spinner when pending, and
    toggles preview/details.
      - Markdown parser now passes query and state to DyadWebSearch.
    
    - **Migration**
    - Requires Dyad Pro API key in settings (providerSettings.auto.apiKey).
    - Optional: set DYAD_ENGINE_URL; defaults to https://engine.dyad.sh/v1.
    
    <sup>Written for commit 53c9c7b65eb8dee07d8320837b39d72bf5b42b92.
    Summary will update on new commits.</sup>
    
    <!-- End of auto-generated description by cubic. -->
    5acadeff
名称
最后提交
最后更新
.claude 正在载入提交数据...
.cursor/rules 正在载入提交数据...
.devcontainer 正在载入提交数据...
.github 正在载入提交数据...
.husky 正在载入提交数据...
assets 正在载入提交数据...
docs 正在载入提交数据...
drizzle 正在载入提交数据...
e2e-tests 正在载入提交数据...
packages/@dyad-sh 正在载入提交数据...
scaffold 正在载入提交数据...
scripts 正在载入提交数据...
shared 正在载入提交数据...
src 正在载入提交数据...
testing 正在载入提交数据...
tools 正在载入提交数据...
worker 正在载入提交数据...
workers/tsc 正在载入提交数据...
.cursorignore 正在载入提交数据...
.env.example 正在载入提交数据...
.eslintrc.json 正在载入提交数据...
.gitattributes 正在载入提交数据...
.gitignore 正在载入提交数据...
.oxlintrc.json 正在载入提交数据...
.prettierignore 正在载入提交数据...
.prettierrc 正在载入提交数据...
AGENTS.md 正在载入提交数据...
CONTRIBUTING.md 正在载入提交数据...
LICENSE 正在载入提交数据...
README.md 正在载入提交数据...
SECURITY.md 正在载入提交数据...
biome.json 正在载入提交数据...
components.json 正在载入提交数据...
drizzle.config.ts 正在载入提交数据...
forge.config.ts 正在载入提交数据...
forge.env.d.ts 正在载入提交数据...
index.html 正在载入提交数据...
merge.config.ts 正在载入提交数据...
package-lock.json 正在载入提交数据...
package.json 正在载入提交数据...
playwright.config.ts 正在载入提交数据...
tsconfig.app.json 正在载入提交数据...
tsconfig.json 正在载入提交数据...
tsconfig.node.json 正在载入提交数据...
vite.main.config.mts 正在载入提交数据...
vite.preload.config.mts 正在载入提交数据...
vite.renderer.config.mts 正在载入提交数据...
vite.worker.config.mts 正在载入提交数据...
vitest.config.ts 正在载入提交数据...