Repository navigation
Releases
Releases · raytone-lab/agentcanvas
AgentCanvas v0.2.0
A redesign of the editor around a single canvas, a full set of visual styles, and a
new landing page.
Added
- Canvas-first editor. The window is the canvas and the chrome floats on it: a
Figma-style rail, a layer tree, zoom, a 4:3 page, a draggable left column, and
edit / delete controls on every module. - Build from empty. The canvas opens empty and fills in as components are picked;
the conversation is composed from your picks one turn at a time, and the event flow
is drawn as a vertical axis with coverage ticks. - Thinking components. Thinking and Thought process are separate stages, with
eight motions, expand behaviour, a "Thought for N seconds" display style, and three
text-loading modes (smooth stream, typewriter, chunked) with a live speed control. - 13 visual styles on one skin engine — Native, Ink Wash, Quest, Sketch, Retro,
Tech and more — each with its own palettes, icons, avatars and component materials. - Selection island above the canvas: component and event-flow counts, what is
left to fill in, clear and undo. - Model panel with provider logos and a model picker in the composer.
- Avatars: four default user avatars plus upload; pointer-following 3D avatars.
- Approvals show Allow / Always allow / Deny / Cancel, and both inline and
external approvals can be cancelled. - Landing page rebuilt: a style browser that scales to dozens of styles, an
anatomy of the canvas, an event-to-component wiring diagram, providers, and the
export tree. - README demo re-recorded as a 25-second English tour of the real editor
(npm run capture:tour). - CHANGELOG and automatic GitHub releases from version tags.
Changed
- The output area's tabs are a segmented control with underline tabs whose corners
follow the style. - The send button is one 32px icon key in every style.
- The brand menu's Home opens the landing page, asking first if the canvas has
unsaved picks. - Esc leaves run mode; the output area maximises in place.
Fixed
- Exported projects carry the editor's icon picks, so an export keeps its style's
avatars instead of falling back to Native's. - The editor's hover highlight no longer ships inside exported apps.
- Exported projects include
unifiedDiff.tsand typecheck again. - Icons no longer leak into other styles after a style switch; low-contrast text in
several themes, clipped hover highlights and an empty canvas reading 11% complete
are fixed. - The editor shows its real version number (it read v0.1.0 through v0.1.1).
v0.1.1
中文
更新
- Pi runtime:编辑器和导出的脚手架都带上内置 Pi runtime,真实运行会按当前编排渲染界面。文档写明了这套 runtime 能做到哪里、哪里仍然不行。
- Skin engine:主题预设收成一个
skinId(family + variant)。配色和布局配方由 SkinEngine 统一解析,配置器、预览和导出的脚手架走同一条路径。 - 输出区:Markdown 预览补齐围栏代码、KaTeX 公式和 Mermaid 图。导出的包会带上
katex和mermaid。 - 应用结构:编辑器从单个大组件拆成 MVVM 分层(状态机、viewmodel、projection)。边界写在
docs/APP_ARCHITECTURE.md。 - 真实模型:Anthropic 会话会声明与 OpenAI 兼容路径相同的工具集,现场会话能渲染工具卡片。Provider thinking 按渲染策略分类,不把原始推理链直接摊开。
- 审批:各界面里,审批请求都出现在 composer 上方。
- 语言:加入日语,locale 层不再只容纳两种语言。
- 落地页与 README:独立品牌标记和配色、指针下散开的点阵、英文 hero 视频;README 用编辑器操作录像代替静态截图。
- 导出说明:
docs/CONNECTING_AI.md、生成的 README 和导出的AGENTS.md说明如何用真实模型驱动导出的应用,并写明导出包本身还不能直接调用模型。
修复
- 工具 diff:用 old/new 片段生成真实 unified diff,不再伪造 “previous implementation” 行。
.diff/.patch标签着色,只剩一个输出页时也可以关闭。 - 运行中的宿主控件:运行进行时禁用 provider / model 选择和浮动 provider 面板。单条工具结果和产物限制在 10 万字符。会话侧栏按真实日期分组。
- Pi turn 收尾:取消或失败的 turn 一定会进入终态。空流和
run.error记为失败,而不是成功提示。停止运行会在本地关上未完成的文本、工具块和滞留的审批层。 - 开发服务器:provider 代理和 Pi 控制面拒绝跨源请求,代理请求体限制 10MB。“始终允许”只在当前会话内有效,新会话会清掉。
auto模式下,会改动文件的非 shell 工具仍要询问。运行中的/config返回 409。 - 会话侧栏:导出的脚手架不再填入编造的历史会话。没有会话存储时不显示列表。
- 下拉菜单:长菜单保持在视口内。
- 版本号显示:界面上的版本号更正为当时的发布版本 v0.1.0。
- 英文文案:英文 composer 占位符和英文编辑器导览录像与 README 对齐。本地环境覆盖文件不再入库。
文档
- 记录 Pi runtime 的接入方式,以及导出应用如何接上真实模型。
- 注明项目贡献者。
完整对比: v0.1.0...v0.1.1
English
Updates
- Pi runtime: The editor and exported scaffolds include the built-in Pi runtime, and a real run renders the UI that was composed. The docs state where this runtime works and where it still stops.
- Skin engine: Theme presets resolve through one
skinId(family + variant). SkinEngine resolves tokens and the layout recipe on one path, shared by the configurator, the preview, and the exported scaffold. - Output: The markdown preview now renders fenced code, KaTeX math, and Mermaid diagrams. Exported packages ship
katexandmermaid. - App structure: The editor is split out of one large component into an MVVM layer (state machine, viewmodel, projection). The boundaries are documented in
docs/APP_ARCHITECTURE.md. - Live models: An Anthropic session advertises the same tool set as the OpenAI-compatible path, so a live session renders tool cards. Provider thinking is classified under the render policy and raw chain-of-thought is not shown in ordinary UI.
- Approvals: On every surface, the approval request sits above the composer.
- Locales: Japanese is included, and the locale layer now holds more than two languages.
- Landing page and README: A dedicated brand mark and palette, a dot field that scatters under the pointer, and an English hero video. The README leads with a recording of the editor in motion instead of a still.
- Export docs:
docs/CONNECTING_AI.md, the generated README, and the exportedAGENTS.mdexplain how to drive an exported app with a real model, and state that the exported package itself still cannot call a model.
Fixes
- Tool diffs: Diffs are built from old/new snippets as a real unified diff, instead of a fabricated “previous implementation” line.
.diff/.patchtabs are colored, and the last output tab can be closed. - Host controls during a run: Provider and model pickers, and the floating provider panel, stay disabled while a run is active. Each tool result and artifact is capped at 100,000 characters. The session sidebar groups sessions by the real date.
- Pi turn terminal state: A cancelled or failed turn always reaches a terminal state. An empty stream and a
run.errorare reported as failures, not as a success toast. Stopping a run closes unfinished text, tool blocks, and any stranded approval locally. - Dev server: The provider proxy and the Pi control plane reject cross-origin requests, and proxy bodies are capped at 10MB. “Always allow” lasts only for the current conversation and is cleared by a new session. In
automode, mutating non-shell tools still ask./configreturns 409 while a run is active. - Session sidebar: Exported scaffolds no longer show fabricated conversation history. With no session store, the list is omitted.
- Select menus: Long menus stay inside the viewport.
- Displayed version: The version shown in the UI was corrected to the release then current, v0.1.0.
- English copy: The English composer placeholder and the English editor-tour recording match the README. Local environment overrides are no longer committed.
Docs
- Documents how to connect the Pi runtime, and how to drive an exported app with a real model.
- Notes project contributors.
Full changelog: v0.1.0...v0.1.1