内容分四块: 1、产品规划产出 —— MCN 短视频整合营销工作台的①段五份(1a 需求/1b 竞品/1c 画像/1d 策略/1e 场景)、②段两份(2a 功能/2b 布局)、③段界面(DESIGN.md 契约与令牌表 + mcn-workbench.html 原型 + 实测/会诊/审查三份 + 23 张闸门截图)。 2、开源竞品调研 —— 5 个内容工作台项目的取证原始件与 1b 系列分析文档。 3、参考资料 —— 竞品视频抽帧 1145 张 + 2 个源视频 + 功能点截图。 4、机制侧 —— 协作脚本与状态台账、工作区记忆日志、抽帧/OCR 脚本。 .gitignore 只排运行时日志、脚本备份副本与一次性探针输出,其余按原样入库。
8.6 KiB
8.6 KiB
Changelog
All notable changes to Easel are documented in this file.
0.2.1 - 2026-09-24
Added
- Added a unified Settings panel in the workbench (模型配置 · 环境安装 · 更多设置). Model configuration is now editable in the browser across all six channels (chat / transcribe / image / video / music / speech): edit provider, model, Base URL and API key, add custom providers, switch primary/backup, and run a real self-test that reports actual handshake latency. Saving writes to
.env; keys are returned masked and an empty key field means "leave unchanged". - Added a runtime environment installer (
install_tool.py) plus an in-panel 环境安装 page: local engines are health-checked for real, installed in the background, and their status is written back as the job progresses. - Added read-back reconciliation to Bilibili upload: after posting, the member submission API is queried directly and the run only counts as successful if the read-back matches.
- Added
vendor/VENDOR.mdrecording the provenance of the bundledvideo-pipeline-sdk(upstream, version, local modifications, how to resync).
Improved
- Improved conversation latency: the Web chat now talks to the resident gateway over its OpenAI-compatible HTTP endpoint instead of spawning a thin
openclaw agentclient every turn, saving roughly 3s per turn (measured on Linux: 7.6s → 4.5s end-to-end). Transport is pinned per session and never switches mid-conversation, so history is never silently dropped. SetEASEL_CHAT_TRANSPORT=clito return to the old path. - Improved responsiveness of the outputs library:
/api/outputsmoved to a thread pool so a full product-tree scan no longer blocks the event loop. - Improved CI coverage: the suite now runs
pytestinstead ofpytest tests/, so the 38 skill-bundled tests underskills/**/tests/actually run in CI.
Fixed
- Fixed Windows installation on PowerShell 5.1, where
setup.ps1failed outright during the configuration-writing stage (issue #41). - Fixed workspace resolution:
sync.sh,setup.ps1,doctorand the video pipeline each hard-coded a different workspace path, so on the other OpenClaw layout they wrote to a directory the agent never reads — while still reporting success. All four now ask OpenClaw itself for its runtimeworkspaceDir(issue #19). - Fixed a placeholder API key in
.env.examplesilently disabling the whole OpenAI-compatible branch ofsetup.sh, which produced a config with no provider whiledoctorstill reported all green.doctornow verifies that the primary model's provider actually has credentials. - Fixed the HTML preview in the content library: the built-in「复制到公众号」button now works inside the preview drawer, and the preview always renders the latest version instead of a heuristically cached one.
- Fixed images breaking after pasting into WeChat: local images referenced by a preview are inlined as base64 data-URIs, so the bytes travel with the clipboard instead of requiring WeChat to fetch a local Easel URL.
- Fixed
install_tool.pycrashing under non-UTF-8 locales on Windows, which left the install endpoint with an empty id allowlist and made the 环境安装 page reject every tool. - Fixed domestic-platform publishing to fall back to a direct connection (Chromium-level
--no-proxy-server), so it works with a VPN enabled. - Fixed
scripts/gateway.ps1missing its UTF-8 BOM — the only Chinese-containing.ps1without one, which PowerShell 5.1 decoded using the system ANSI code page.
Security
- Hardened the settings and install endpoints: the install id allowlist is derived from the engine's own recipe table, and settings writes are validated server-side.
- Closed a command-injection hole in
.envwrites. The previous guard only rejected newlines, butsetup.shsources.env, so a non-newline value such asKEY=$(id)still reached bash's command substitution. Values are now restricted to the character set these fields actually need. - Added a Content-Security-Policy to the 公众号 preview page. The preview iframe needs
allow-scriptsfor its copy button, and an opaque origin is not enough protection because the Web API is CORS-open and unauthenticated — reproduced in a real browser, a script embedded in generated content could call a local endpoint and read the response.connect-src 'none'now blocks that exfiltration path while leaving the copy button and image rendering intact.
0.2.0 - 2026-09-18
Added
- Added the
video-productionSkill: an end-to-end video pipeline (probe → transcribe → scenes → design table → scaffold → verify → preview → render → deliver) with two human confirmation gates and quality gates (five-piece manifest, loudness, transitions). The upstreamvideo-pipeline-sdk(MIT) is now vendored into the repo so the pipeline is self-contained, reproducible, and editable. Skill count is now 114. - Added three-tier transcription with automatic fallback: SRT/VTT subtitles first, then SiliconFlow ASR API, then local whisper as a last resort — so a run no longer requires downloading the 3GB model when a transcript or API key is available.
- Added a 「笔」capability menu to the workbench input area: click to browse everything Easel can do ("能做的都在这"); selecting an item prefills the prompt.
- Added a ffmpeg-based slideshow renderer for image-storyboard voiceover dramas (Ken Burns, differentiated transitions, libass dynamic captions, light whoosh SFX, loudnorm).
Improved
- Improved the Skill library display: Chinese display names shown large with the original name beneath, kept in sync across search and the drawer.
- Improved in-conversation cards to support multi-select (
ask_usermultiSelect rendering and multi-value submission). - Improved file uploads: files exceeding the upload limit are automatically converted to local materials via a copy channel (without changing the 50MB config).
- Improved reasoning visibility:
--thinkingnow defaults to medium so chain-of-thought shows when the gateway supports it.
Fixed
- Fixed chain-of-thought (CoT) display in the Web conversation: token/thinking now streams token-by-token, and the anti-stall heartbeat no longer overrides real status.
- Fixed the Gemini adapter to support
streamGenerateContentstreaming. - Fixed UTF-8 persistence on Windows (state read/write) and migrated the shutdown hook to a lifespan handler.
0.1.1 - 2026-09-15
Added
- Added WeChat Official Account (公众号) support: article publishing, Data Center metrics, and account management via a background QR-scan session.
- Added an optional vendored typesetting Skill (
gzh-design, AGPL-3.0), bringing the Skill count to 113.
Improved
- Improved the workbench 创作数据 panel: Bilibili and Douyin now populate "近 7 日 · 环比" (7-day metrics with week-over-week change) and "最近作品" (recent works).
- Bilibili reads the creator overview API for play/like/comment/favorite/share/follower deltas, and lists recent uploads (title/link/cover/stats).
- Douyin parses the real "近 7 日" labels with a section anchor to avoid mis-reading the "最新作品" card, handles the "较前7日±X" delta format, hardens polling stability, and scrapes recent works from the content-manage page.
Fixed
- Fixed OpenClaw version detection in
easel doctoron Windows (the.cmdshim cannot be invoked bare). - Fixed cross-platform gateway/launcher robustness and Xiaohongshu login navigation races.
0.1.0 - 2026-08-31
Easel's first public release, jointly developed by REAL Lab and OpenDCAI Lab.
Highlights
- Added an end-to-end social media operations workflow covering discovery, planning, creation, publishing, and attribution.
- Added profile-driven account context and persistent operating memory across sessions and platforms.
- Added 112 executable Skills for research, writing, visual production, audio, video, publishing, and analytics.
- Added the Web workspace and CLI for running workflows, inspecting outputs, and managing projects locally.
- Added multimodal production workflows for knowledge cards, stories, lifestyle content, audio, and video.
- Added publishing workflows for Xiaohongshu, Douyin, Kuaishou, Zhihu, Bilibili, and WeChat Channels.
- Added output manifests, publishing checks, content calendars, and performance attribution workflows.
- Added Chinese and English documentation, examples, product showcases, and institutional branding.