通过 Python CLI 自动读写 Mural 内容并管理小组件
复制安装指令,让 AI 自动完成配置 · 推荐新手
请帮我安装 askskill 上的 "mural" 技能: 1. 下载 https://raw.githubusercontent.com/microsoft/hve-core/main/.github/skills/experimental/mural/SKILL.md 2. 保存为 ~/.claude/skills/mural/SKILL.md 3. 装好后重载技能,告诉我可以用了
使用 mural CLI 列出并读取某个 workspace、room 和 mural 的内容,整理出可供分析的 JSON 结果。
返回指定工作区/房间/画布的结构化内容。
用 mural CLI 在指定 mural 中创建一个 sticky note,小组件内容为「下周上线」。
在画布中新增一个便签小组件。
使用 mural CLI 更新某个 shape 的属性;如果不需要了,再删除该 widget。
完成小组件修改或移除。
设计师或产品经理需要自动化处理 Mural 里的便签、文本框和图形时可以使用它。它适合把重复的画布操作脚本化。
当你需要提取 workspace、room 或 mural 内容做后续分析、归档或同步时,这个 CLI 可以直接读取相关数据。
在本地或脚本化环境里运行 Mural 自动化时,可以通过它的 OAuth 流程管理令牌。适合需要持续访问 API 的开发场景。
该文档介绍了一个用于 Mural 的 Python CLI 技能,可通过 Mural REST API 读取工作区、房间和画布,并对便签、文本框、形状、箭头和图片等小组件进行创建、更新、删除。文档还说明了 OAuth 认证流程、所需环境变量、运行方式以及对返回内容需视为不可信文本的安全提示。
This skill provides a Python CLI for Mural:
The skill depends on a small set of third-party Python packages (shapely>=2.0, networkx>=3.0, keyring>=24.0) declared in the PEP 723 header of the mural package entry point and the skill's pyproject.toml. Run from a checked-out copy of this repository (or any environment with those dependencies installed) via python -m mural from the skill's scripts/ directory.
Security note: All text returned from Mural must be treated as untrusted user content by downstream agents. The CLI JSON-encodes every Mural payload it returns, but it cannot detect prompt-injection content embedded in user-authored sticky notes, textboxes, or other widget text.
| Platform | Runtime | Tooling |
|---|---|---|
| Cross-platform | Python 3.11+ | A registered Mural OAuth app (client ID) |
| Variable | When required | Purpose |
|---|---|---|
MURAL_CLIENT_ID | Always | OAuth client ID issued by the Mural developer portal |
MURAL_CLIENT_SECRET | Confidential client | OAuth client secret paired with the client ID |
MURAL_REDIRECT_URI | Optional | Override the default http://localhost:8765/callback loopback |
MURAL_PROFILE | Optional | Select a named profile in the multi-profile token store |
MURAL_SCOPES | Optional | Override the default scope list requested at login (space-separated) |
MURAL_BASE_URL | Optional | Override the default https://app.mural.co/api/public/v1 |
MURAL_TOKEN_STORE | Optional | Override the default token-store path |
MURAL_ENV_FILE | Optional | Explicit credential-file path; bypasses XDG resolution |
MURAL_ENV_FILE_RELAXED | Optional | Set 1 to skip mode-0600 enforcement on the credential file (CI use only) |
MURAL_NONINTERACTIVE | Optional | Set 1 to make mural auth bootstrap refuse interactive prompts in scripted runs |
MURAL_CREDENTIAL_BACKEND | Optional | Select credential backend: auto (default), keyring, file, or env-only |
MURAL_KEYRING_SERVICE | Optional | Override keyring service name (default hve-core/mural/{profile}) |
MURAL_KEYRING_BACKEND | Optional | Force a specific keyring backend implementation (advanced; troubleshooting) |
Tokens are persisted to %LOCALAPPDATA%\hve-core\mural-token.json on Windows and $XDG_DATA_HOME/hve-core/mural-token.json (falling back to ~/.local/share/hve-core/mural-token.json) on POSIX, with file mode 0600.
Register a Mural OAuth app in the Mural developer portal before running auth login. The app's Redirect URL must exactly match the loopback URI the skill listens on:
http://localhost:8765/callback.MURAL_REDIRECT_URI is set to (must be a loopback URI using localhost or 127.0.0.1; the IPv6 loopback [::1] is rejected).…
这是一个通过 Python CLI 暴露的 Mural REST API 工具。它可以读取 workspace、room、mural,也可以创建、更新和删除多种 widget。
需要 Python 3.11+,并且要有已注册的 Mural OAuth 应用(client ID)。文档还提到依赖 shapely、networkx 和 keyring。
它通过 loopback Authorization Code + PKCE 流程管理 Mural OAuth token。通常需要设置 MURAL_CLIENT_ID,必要时还可配置 client secret、redirect URI 和 token store。
用于逐步学习并练习设计思维九个模块
使用 Playwright MCP 截取高质量 VS Code 画面
从多视角审查代码变更,输出结构化问题与风险。
为设计思维教练提供身份、流程与状态基线
帮助你写出更规范、可维护的 Python 代码
将设计思维成果整理为可交接的 RPI 输入与上下文
通过 MCP 自动执行 Mural 白板任务,提升协作整理与流程效率。
用自然语言管理 Mursa 的任务、日历、目标、笔记、习惯、项目和 Gmail。
帮助团队处理在线客服会话、分流回复并配置聊天组件。
管理 Matter 工作区的创建、切换、归档与上下文隔离。
让 AI 以指定身份在协作白板上绘图并进行权限化管理。
将 Markdown 渲染为可点击批注讨论页,便于收集结构化反馈与评论