Demiurge 0.4.1
Demiurge 是 alpha / developer-preview 软件。API、runtime layout 和 authoring contracts 仍可能变化。
摘要
这个 patch release 新增国内 speech-to-text packages,统一 STT provider 的 input handling,并补齐当前 public manual 和 release surfaces。这个版本不构建、 不附加 wheel 或 sdist artifacts。
用户可见变化
- 新增
stt_baidu、stt_dashscope和stt_tencentpackage recipes,用于 provider-specific speech-to-text input。 - 新增百度云语音识别支持,可从
DEMIURGE_BAIDU_ACCESS_TOKEN读取 token, 或使用 Baidu API key / secret key 走 OAuth token 获取流程。 - 新增阿里云 Model Studio / DashScope STT 支持,使用 compatible chat-completions audio API。
- 新增腾讯云 ASR 支持,包含 TC3 request signing。
- 通过 shared STT library 复用 attachment filtering、network capability checks、transcript rendering 和 metadata handling。
- 新增 Agent Slots explanation 页面,并更新 slot-module contract docs。
- 补齐当前文档集的 zh-CN website manual 页面。
- 在 README 和 website 中新增 speech-to-text input、text-to-speech output package demo media。
修复
- GitHub Release publication 与当前 alpha 策略保持一致:发布 release notes, 但默认不构建或附加 wheel / sdist artifacts。
- 移除了各 STT provider package 中重复的 input-slot implementation。
- 更新 package documentation、CLI references 和 release links,使其匹配当前 package 与 slot surfaces。
破坏性变化
- 移除了
package-repository/skill/stt_transcription/SKILL.md。STT packages 现在通过 package components 和 shared STT library 承载可复用行为。
已知限制
- Code slots 默认运行在 host-shared Python environment 中。
- Candidate Agent Core evolution 不能自动添加 dependencies。
- Telegram 仍然只支持 long-polling。
- Package repositories 可以是 local、built-in 或显式信任的 Git/path sources; install-time trust 仍属于 host。
- Provider profile tests 和真实 STT provider calls 需要显式 provider credentials,并可能发起 live network calls。
- GitHub Releases 默认仍不附加 wheel 或 sdist artifacts;这个 alpha release 请使用 source checkout 或 managed checkout install path。
验证
uv run python -m compileall demiurge testsuv run pytest -vv --durations=20 -o faulthandler_timeout=60uv run demiurge --helpuv run demiurge init --help(cd ui-tui && npm ci && npm run typecheck && npm test -- --run && npm run build)cmp ui-tui/dist/entry.js demiurge/ui/tui_dist/entry.js(cd website && npm ci && npm run build)git diff --check -- ':!demiurge/ui/tui_dist/entry.js'uv run python -c 'import tomllib, demiurge; print(tomllib.load(open("pyproject.toml", "rb"))["project"]["version"]); print(demiurge.__version__)'rg -n "0\\.4\\.1|docs/releases/0\\.4\\.1" pyproject.toml demiurge/__init__.py uv.lock README.md README.zh-CN.md docs website