Commit Graph
100 Commits
Author SHA1 Message Date
HouYunFei 1291dd08c3 feat(agent): enhance canvas content summary to display detailed node and connection counts 2026-07-30 13:15:43 +08:00
HouYunFei f2757baf20 feat(agent): optimize initial message handling to clear input and display user messages immediately 2026-07-30 13:11:03 +08:00
HouYunFei 45addead96 feat(agent): enhance dynamic tool call handling to display specific tool names and accurate execution status 2026-07-30 13:07:47 +08:00
HouYunFei 2002dff78a feat(agent): add support for image generation type in event handling and messaging 2026-07-29 17:32:06 +08:00
HouYunFei 2afe2f3898 feat(agent): implement local image handling and enhance generated image integration in canvas 2026-07-29 17:19:20 +08:00
HouYunFei 7a48f441cf feat(agent): optimize agent panel header and functionality layout for improved space efficiency 2026-07-29 17:08:17 +08:00
HouYunFei 8babf7faa0 feat(agent): add local file reveal functionality in system file manager 2026-07-29 17:03:41 +08:00
HouYunFei fe1ba781d1 feat(agent): standardize approval policy and sandbox naming conventions in Codex settings 2026-07-29 16:50:51 +08:00
HouYunFei b926feeb14 feat(agent): implement permission mode handling for Codex threads and approvals 2026-07-29 16:44:51 +08:00
HouYunFei bd8cf318f7 feat(agent): enhance Codex reasoning summary with Markdown rendering and improve message history merging 2026-07-29 16:34:44 +08:00
HouYunFei a9243b6c2e feat(agent): enhance reasoning and command summaries with compact collapsible design and real-time updates 2026-07-29 16:10:05 +08:00
HouYunFei b628b742d5 fix(agent): update button styles for tool confirmation mode in chat input 2026-07-29 15:50:45 +08:00
HouYunFei d76594a7e7 feat(agent): implement tool confirmation mode in chat input with automatic confirmation by default 2026-07-29 15:44:56 +08:00
HouYunFei fa58ec4715 feat(agent): update image message display to compact thumbnails with click-to-zoom preview 2026-07-29 15:26:26 +08:00
HouYunFei 5a607bea6c fix(agent): ensure image attachments retain thumbnails after history sync and prevent internal context from displaying in user messages 2026-07-29 15:17:10 +08:00
HouYunFei 88e86c0566 fix(agent): correct image attachment positioning and prevent disappearance after task completion 2026-07-29 14:33:45 +08:00
HouYunFei d2141d5f59 feat(agent): prioritize current canvas operations when receiving tasks, avoiding unnecessary project queries 2026-07-29 14:28:28 +08:00
HouYunFei eda3481533 feat(agent): update agent connection behavior to start with a blank conversation and allow user-initiated session restoration 2026-07-29 14:16:35 +08:00
HouYunFei 0526290c8f feat(agent): restructure task progress display in conversation flow to a collapsible format above the input area, ensuring real-time updates for pending, in-progress, and completed tasks 2026-07-29 13:36:34 +08:00
HouYunFei ed32e44e69 fix(agent): handle task failure by displaying user-friendly error messages in conversation flow 2026-07-29 13:20:31 +08:00
HouYunFei 0f5eb1fbcb feat(agent): enhance structured task progress display in conversation flow, ensuring real-time updates and fixed visibility during execution 2026-07-29 13:06:25 +08:00
HouYunFei 20844d5e99 feat(codex): add structured task progress support in conversation flow, displaying status updates for pending, in-progress, and completed tasks 2026-07-29 12:57:21 +08:00
HouYunFei ea67a5abf5 feat(agent): enhance conversation flow with incremental updates and user-friendly summaries for reasoning, plans, commands, searches, and file changes 2026-07-29 12:19:13 +08:00
HouYunFei c6f8b1e394 feat(codex): optimize streaming response handling by merging deltas and improving message rendering performance 2026-07-29 11:32:03 +08:00
HouYunFei 1f6a652799 feat(codex): upgrade Codex CLI to version 0.145.0 and refactor interrupt handling for improved turn management 2026-07-29 11:14:15 +08:00
HouYunFei 40c47dd7ff feat(canvas): restructure source directory for Canvas Agent, enhancing code maintainability 2026-07-29 10:47:06 +08:00
HouYunFei 92fd0ce129 feat(logging): update logging format to plain text and enhance HTTP diagnostics 2026-07-29 10:28:24 +08:00
HouYunFei b3b02f75a9 feat(logging): implement detailed logging for Codex operations and HTTP requests 2026-07-28 17:42:11 +08:00
HouYunFei b6e9954c0a chore(release): update version to v0.11.0 and add changelog entries for new features 2026-07-28 10:29:06 +08:00
HouYunFei c23a819f27 feat(canvas): add reasoning effort settings for text nodes in canvas configuration 2026-07-28 10:28:27 +08:00
HouYunFei 6aa9c8bddc fix(canvas): retain prompt visibility for selected canvas nodes after generation 2026-07-28 10:15:53 +08:00
HouYunFei bde33e7816 fix(canvas): restrict prompt layer height for long input and enable scrolling for node prompts 2026-07-28 10:10:31 +08:00
HouYunFei edc7667830 feat(drag-and-drop): implement file upload via drag-and-drop for reference assets in image and video workspaces 2026-07-28 10:03:23 +08:00
HouYunFei f76f81c4c7 feat(canvas): add image preview functionality in the left-side element list 2026-07-27 17:37:35 +08:00
HouYunFei 87ea3a3954 feat(config): add JSON import/export support for user preferences and configurations 2026-07-27 17:27:00 +08:00
HouYunFei ac126a61b9 feat(api): add support for 火山方舟 protocol and enhance video reference validation 2026-07-27 17:02:50 +08:00
HouYunFei d6d6b7bb8d Merge branch 'fork/chen3737/fix/seedream-error-and-edit' 2026-07-27 16:36:33 +08:00
HouYunFei 84fc159d4f Merge branch 'fork/chen3737/main' 2026-07-27 16:31:22 +08:00
HouYunFei 6c61081698 feat(canvas): enhance image editing interactions and fix flickering in high-resolution previews 2026-07-27 16:30:43 +08:00
HouYunFei f8191d13b2 Merge branch 'fork/kumu-ze/codex/upstream-image-editing'
# Conflicts:
#	CHANGELOG.md
#	docs/content/docs/progress/pending-test.mdx
2026-07-27 16:11:25 +08:00
HouYunFei a0287a5e34 chore: bump version to v0.10.0 2026-07-25 11:55:13 +08:00
HouYunFei 0179724467 feat(prompts): add atlascloud logo SVG and update prompt source handling 2026-07-25 11:55:00 +08:00
HouYunFei d91e67a5ad feat(canvas): retain prompt input after node generation completion 2026-07-20 11:34:46 +08:00
HouYunFei d566d5cc46 Merge remote-tracking branch 'origin/main'
# Conflicts:
#	CHANGELOG.md
2026-07-20 07:55:56 +08:00
HouYunFei b5dc9c8a87 feat(canvas): optimize CanvasAssetsTab and CanvasPromptsTab with memoization to improve performance 2026-07-18 08:27:20 +08:00
HouYunFei 75c22c2f9f feat(canvas): add "prompts" tab to the left panel with collapsible prompt sources 2026-07-18 08:19:59 +08:00
HouYunFei bdca6b0a5c feat(prompt-sources): add davidwu-gpt-image2-prompts to default prompt sources 2026-07-17 17:45:50 +08:00
HouYunFei d4130bbb79 feat(prompt-sources): add custom script fetching functionality for prompt sources 2026-07-17 17:36:42 +08:00
HouYunFei 0e1edd1484 chore(release): bump version to v0.9.0 and update changelog 2026-07-17 16:43:01 +08:00
HouYunFeiandClaude Opus 4.8 5107be0acf feat(canvas): 资产卡增删改重做 + 节点名称默认隐藏
- 资产 Tab 卡片重做:视频取首帧封面、文本铺内容、去标题成矩形,hover 居中显示插入/删除两个 icon 按钮
- 修复删除确认框「取消」经 React Portal 事件冒泡误触插入
- 资产 Tab 支持上传添加图片/视频、卡片移除资产
- 画布节点名称默认不再显示,仅在选中/悬停/编辑时出现
- 操作按钮改用扁平无灰底样式,并写入 AGENTS.md 规范

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-17 16:42:08 +08:00
HouYunFeiandClaude Opus 4.8 219b3e84db feat(canvas): 左侧面板可调宽收起 + 元素多选导出与跳转动画
- 左侧画布面板支持拖拽调整宽度、展开/收起(带动画),状态与宽度持久化
- 顶栏菜单左侧新增面板开关按钮,并缩小菜单/开关按钮
- 顶栏菜单新增「导出当前画布」为压缩包
- 画布元素列表支持多选并批量导出:图片/视频/音频为文件、文本为 txt、其余各自为 json
- 画布/资产切换改为滑动下划线动画,点击元素跳转带缓动动画
- 移除文本/配置/视频等非图片元素图标的灰色底色,并写入 AGENTS.md 规范

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-17 16:21:26 +08:00
HouYunFeiandClaude Opus 4.8 a3411cf9d9 docs(changelog): note the drag-resize React #185 crash fix
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-17 15:17:57 +08:00
HouYunFeiandClaude Opus 4.8 430d1bd956 refactor(canvas-project): extract plugin host into usePluginHost hook
Move the plugin node host capabilities (pluginAi generation bridge, pluginHost
canvas accessors, renderPluginPanel, buildNodeToolbarItems) and the plugin-load
effect out of InfiniteCanvasPage into usePluginHost. The hook receives the
shared config/refs/setters explicitly and keeps identical dependency arrays.

This also relocates the AI-service and plugin imports (requestVideoGeneration,
selectableModelsByCapability, buildNodeContext, ensurePluginsLoaded, the
canvas-plugin types, etc.) that were only used by this cluster.

project.tsx is now ~2950 lines, down from 3536 at the start of the refactor.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-17 14:19:00 +08:00
HouYunFeiandClaude Opus 4.8 cf0561d12a refactor(canvas-project): extract agent bridge into useAgentBridge hook
Move the canvas<->local-Agent bridge (agentSnapshot memo, applyAgentOps /
undoAgentOps, agentUndoSnapshot state, and the publish-to-agent-store effect)
out of InfiniteCanvasPage into a useAgentBridge hook. Only applyAgentOps is
consumed outside (by the plugin host); the rest is fully encapsulated.

The hook receives the shared canvas state/refs/setters explicitly and keeps the
exact same dependency arrays, so behavior is unchanged. project.tsx drops the
now-unused agent-ops imports and the setCanvasContext selector.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-17 14:14:10 +08:00
HouYunFeiandClaude Opus 4.8 e6dcd7a832 refactor(canvas-project): extract CanvasTopBar into its own component
Move CanvasTopBar and its private helpers (MenuLabel, CompactAgentStatus,
Shortcut) out of project.tsx into canvas-top-bar.tsx. The component already took
all data via explicit props, so the move is mechanical with no behavior change.
Drop the imports (DOCS_URL, UserStatusActions, Dropdown, several icons) that
were only used by the top bar.

project.tsx is now ~3080 lines, down from 3536 at the start of the refactor.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-17 14:04:25 +08:00
HouYunFeiandClaude Opus 4.8 187c499ef9 refactor(canvas-project): extract refresh shell and create menus into components
Move the module-scope presentational subcomponents out of project.tsx:
- canvas-refresh-shell.tsx: CanvasRefreshShell (pre-load placeholder).
- canvas-create-menus.tsx: ConnectionCreateMenu, ConnectionCreateOption,
  NodeCreateMenu, plus the PendingConnectionCreate type they define.

They already communicated via explicit props, so the move is mechanical. No
behavior change; project.tsx imports them back and drops now-unused icon and
node-registry imports.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-17 14:00:53 +08:00
HouYunFeiandClaude Opus 4.8 cf1ea2646f refactor(canvas-project): extract pure helpers into @/lib/canvas modules
Move the ~30 module-scope pure functions out of the 3.5k-line project.tsx into
three focused lib modules, with identical names and signatures. No behavior
change; project.tsx imports them back.

- canvas-node-factory.ts: createCanvasNode, *Metadata builders, referenceUrl,
  applyNodeConfigPatch.
- canvas-node-geometry.ts: nodeBounds, group drop/snap, connection anchors,
  normalizeConnection, hidden-batch checks.
- canvas-generation-helpers.ts: generation config/inputs, reference hydration,
  retry-source lookup, angle prompt builders, misc pure helpers.

project.tsx drops from 3536 to ~3230 lines. Also removes imports that were only
used by the moved helpers.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-17 13:46:07 +08:00
HouYunFei 57db0fe752 feat(canvas-local-agent-panel): optimize state management and rendering performance 2026-07-17 13:38:55 +08:00
HouYunFei c5f53454aa feat(changelog): add support for Google Analytics 4 and Baidu statistics 2026-07-17 11:32:11 +08:00
HouYunFei ca6efdf0c3 feat(analytics): implement runtime configuration and analytics tracking for GA4 and Baidu 2026-07-17 11:24:22 +08:00
HouYunFei a2586ffe34 feat(canvas-node-manual): enhance input box to support resource references with thumbnail display 2026-07-17 11:19:34 +08:00
HouYunFei 5a27aae99e feat(changelog): update entries for canvas node enhancements and image reference display 2026-07-17 10:15:16 +08:00
HouYunFei 66961ce10f feat(canvas-prompt-chip-input): implement new component for enhanced prompt input with reference chips 2026-07-17 10:06:57 +08:00
HouYunFei 0c4288b832 chore: update changelog for v0.8.2 and bump version to v0.8.2 2026-07-16 17:44:20 +08:00
HouYunFei 093260f7b2 feat(image-settings-panel): clarify transparent background feature availability in tooltip 2026-07-16 17:44:05 +08:00
HouYunFei 805573b980 feat(prompt-chip-input): implement contentEditable input for image references with thumbnail display 2026-07-16 17:32:43 +08:00
HouYunFei e6829333c5 feat(canvas-node): enhance input area styling and improve cursor visibility in prompt panel 2026-07-16 17:28:30 +08:00
HouYunFei 2959b5d340 feat(image-settings): add transparent background toggle for image generation 2026-07-16 15:45:02 +08:00
HouYunFei 2f9776bee3 chore: bump version to v0.8.1 2026-07-16 15:12:02 +08:00
HouYunFei 4beadc6161 feat(markdown-node): improve rendering performance and user interaction by caching parsed Markdown and optimizing DOM updates 2026-07-16 15:11:48 +08:00
HouYunFei 13c508bc34 feat(svg-node): enhance SVG node with transparent background rendering and improved editing experience 2026-07-16 14:13:43 +08:00
HouYunFei 5f627d5baf feat(sticky-note): update sticky note plugin with customizable colors, improved editing experience, and enhanced drag-and-drop functionality 2026-07-16 13:57:47 +08:00
HouYunFei 3f179a607a feat(panorama): enhance 3D panorama node with AI generation support and unified interaction toggle 2026-07-16 13:21:25 +08:00
HouYunFei 2d2c7e3d5e feat(plugin-manager): add upgrade notification for installed plugins and improve version handling 2026-07-16 10:36:41 +08:00
HouYunFei 3f623ea70c feat(html-node): enhance HTML node plugin with interactive toolbar and improved editor functionality 2026-07-15 17:51:39 +08:00
HouYunFei 7ac2ab351d chore(release): bump version to v0.8.0 and update CHANGELOG 2026-07-15 16:00:17 +08:00
HouYunFei b6e75c225e Merge branch 'dev'
# Conflicts:
#	.gitignore
#	CHANGELOG.md
#	web/bun.lock
2026-07-15 15:32:32 +08:00
HouYunFei 75aafc115f feat(plugin-sdk): add TypeScript SDK for Infinite Canvas plugins with automatic JSX and build support 2026-07-15 15:31:48 +08:00
HouYunFei 8d3f244524 feat(toolbar): add extension node management and close on outside click 2026-07-15 13:10:53 +08:00
HouYunFei 88510223eb feat(plugin): add local plugin discovery and management with cache busting 2026-07-15 12:55:59 +08:00
HouYunFei 3a4a4a6772 fix(deps): sync bun.lock with package.json for streamdown transitive deps 2026-07-15 11:59:59 +08:00
HouYunFei ee8f126da7 feat(id): replace crypto.randomUUID with nanoid for unique ID generation 2026-07-15 11:55:36 +08:00
HouYunFei eef4d96787 feat(plugin): implement canvas node plugin system with dynamic registration and remote installation 2026-07-15 11:47:25 +08:00
HouYunFeiandClaude Opus 4.8 f0db29d8e3 feat(channel): add customizable JS model-call scripts with split-panel editor
- Run user-authored async scripts per model with flat locals (prompt,
  images, messages, params, model, baseUrl, apiKey, http, request, poll,
  sleep, signal, onDelta); empty script falls back to system default.
- Wire image/video/audio/text request entrypoints through the plugin
  runtime, keeping default handlers unchanged.
- Split-panel script editor: variable/return docs on the left, CodeMirror
  JS editor on the right; title shows capability - model.
- Provide OpenAI and Gemini template buttons per capability; text template
  uses the /responses API; image template branches text2img vs img2img.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-15 11:24:34 +08:00
HouYunFei 3963c6eebf feat(model): enhance model configuration and script handling for audio and video capabilities 2026-07-15 10:13:37 +08:00
HouYunFei c57f7d61a7 feat(model): enhance model configuration and script handling for audio and video capabilities 2026-07-15 10:13:32 +08:00
HouYunFei a4dcc679c9 feat(version): bump version to 0.7.0 2026-07-14 17:37:57 +08:00
HouYunFei b16263eb43 feat(version): bump version to 0.2.0 and update image ratio parsing functions 2026-07-14 17:37:51 +08:00
HouYunFei a5824f509e feat(agent): enhance local Agent connection handling with silent mode and update UI instructions 2026-07-14 17:08:20 +08:00
HouYunFei 7e0288d461 feat(docs): refine Infinite Canvas usage instructions and clarify local Agent connection process 2026-07-14 16:24:22 +08:00
HouYunFei 228ca29c82 feat(docs): update Infinite Canvas usage instructions and streamline local Agent connection process 2026-07-13 17:23:36 +08:00
HouYunFei 301fbce472 feat(canvas): add double-click functionality to create nodes from blank canvas area 2026-07-13 10:43:37 +08:00
HouYunFei ebd8ae2de7 feat(agent): clarify local Agent connection instructions for Codex plugin and manual MCP usage 2026-07-09 17:49:40 +08:00
HouYunFei 864ce4101a feat(agent): implement streamdown for real-time message rendering in chat 2026-07-09 17:16:35 +08:00
HouYunFei 25e1d173e8 feat(docs): add local development and canvas data structure documentation 2026-07-09 17:14:46 +08:00
HouYunFei 52a5e9e33a feat(agent): update documentation for new site tools and changelog guidelines 2026-07-09 16:54:48 +08:00
HouYunFei 2adbe9e43a feat(agent): add site tools support for canvas project listing and media generation 2026-07-09 16:53:09 +08:00
HouYunFei 7b347729ec feat(agent): implement global Agent panel with site navigation and interrupt functionality 2026-07-09 16:19:32 +08:00
HouYunFei 387d8be961 feat(canvas): enhance group node functionality with improved click and drag behavior 2026-07-09 13:31:13 +08:00
HouYunFei ec0e8c4e24 feat(canvas): add group node support with drag-and-drop functionality 2026-07-09 12:54:36 +08:00