Readonly 评论证明类型可在 deck 上宿主。
AUP 是一棵语义树
AUP 不是 CSS 框架,也不是页面模板语言。你写的是一棵由命名节点类型组成的语义树。目标设备上报自己能渲染什么;运行时对其余节点降级或拒绝。
本 deck 是 web slideshow 导览:一份 Markdown 记录,slides: true,挂在 Web Device 文档上。它展示 deck 路径能宿主什么——不是普通文章的 document caps。
document caps 与 deck caps
| 能力画像 | 在本站上的含义 |
|---|---|
| document | 普通文章:native 子集、partial 的 time,交互类型强制降级 |
deck(DEVICE_CAPS_DECK) | 本 slideshow:document natives 加上 chart/map/calendar/overlay/canvas/explorer/surface/chat shells |
| web-full | 完整交互 Web(Showcase / 应用):session、写路径、多窗口 |
本 deck 使用 DEVICE_CAPS_DECK(arc#4005 / #4011 / #4012)。人工锁定(#4006):仅 rtc 与 camera-preview 为硬排除;其它 surface 以 readonly + 作者数据 演示。普通文章仍会 chart→table、map→media 降级。
基础界面
view — native
可移植容器。在 document 上,tabs / steps 是静态 UI chrome(仅切换面板——无 session、无 exec)。
使用 pnpm install 安装。
使用 npm install 安装。
text — native
普通 Markdown 正文是主要的 text 路径。Callout 在 document 上呈现为 text-admonition。
可移植文案
这是 document 内容。它不执行 action,也不写入 AFS。
media — native
语义媒体节点(此处为 image 路径)。frame 的同源 / 白名单规则另表。

input — native
document 上的未绑定表单控件。输入只改浏览器控件——无 bind、session 或 AFS 写入。
action — native
document 上仅导航。无 exec,无静态样例上的破坏性确认。
overlay — deck 打开态 shell
本 deck 上的打开 dialog chrome(readonly)。Dismiss bus / session confirm 仍属交互目标。
此 shell 默认打开,以便 slide 展示真实 chrome——不是截图。
| 事实 | 边界 |
|---|---|
| Deck 路径 | partial 打开态 shell(arc#4012) |
| 普通 document | 仍 unsupported → text |
| Session dismiss / confirm | 仅交互目标 |
结构与时间
table — native(GFM 路径)
GFM 表格在 document 目标上可渲染。页面需要数据时,优先手写表格。
| 文件 | 用途 | 写数据 |
|---|---|---|
content.md | 内容条目 | 否 |
layout.aup | 页面布局 | 否 |
time — partial
document 报告 partial。display 模式是静态快照,不是实时时钟。
此路径无连续客户端 ticker。clock / countdown 产品声明属于交互目标,且需重新验收。
chart — 季度 bar
map — 巴黎
calendar — 2026 年 8 月
交互表面
chat — deck readonly + data
仅作者消息。输入栏禁用——无 session bus、无写入(人工 #4006)。
| 事实 | 边界 |
|---|---|
| Deck 路径 | partial readonly shell |
| 写入 / session / agent runtime | 不在本导览 |
| 普通 document | 仍 unsupported |
rtc — 排除(人工 #4006)
| 事实 | 边界 |
|---|---|
| Deck 路径 | unsupported(硬排除) |
| 共享 chain | unsupported → 标注 text |
| 本 deck 做法 | 无 RTC / camera-preview 演示 |
媒体权限与 peer session 不是 slideshow 产品演示。camera-preview widget 同理排除。
explorer — deck 静态树
仅作者 items——不是 path-backed AFS 浏览。
/docs/aup- 📁overview
- 📁capability-tour-slides
- 📄README.md/docs/aup/README.md
| 事实 | 边界 |
|---|---|
| Deck 路径 | partial 静态 shell |
| Path-backed live AFS | 仅交互 / session |
| 与 afs-list 搭配 | docs 上仅静态 children |
editor — native(experimental)
document 将 editor 渲染为本地 textarea。输入只留在浏览器——无 IDE、无 AFS 回写。
::editor{id="aup-tour-editor" language="json" label="示例片段" value="{ "ok": true }"}
Markdown 属性字符串不保证等于 AUP JSON 布尔(readOnly)。需要严格 props 时用 JSON/DSL。
canvas — deck 绘制 shell
宿主 + canvas;progressive enhance 启用本地画笔(无 AFS 持久化)。
| 事实 | 边界 |
|---|---|
| Deck 路径 | partial shell + 本地画笔 enhance |
| 普通 document | unsupported → media → text |
| 持久化笔迹 / 多用户 | 仅交互目标 |
surface — deck 宿主 shell
带标签的宿主区域 + children。分类:primitive surface ≠ wm-surface ≠ layout surface 目录。
静态 surface 正文——仅作者 children。本 deck 无 session 视图选择器。
| 事实 | 边界 |
|---|---|
| Deck 路径 | partial 宿主 shell |
| Session 展开 / path 浏览 | 仅交互目标 |
| 混淆 | 不要把站点 chrome 改名为本 primitive |
afs-list — document(静态子节点)
document 可渲染列表 chrome。路径驱动的 live AFS 数据在公开 docs 上尚未闭环——仅用静态子节点。
静态行一 — 作为 document 子节点编写,非拉取。
静态行二 — 仍不是 AFS 路径证明。
无子节点时的 empty / loading chrome 见单元页;本导览只展示静态子节点路径。
Document 可承载 widget
Widget 不是 18 个跨设备 primitive。Deck SSR 现在为其中许多注册了 focused shell(arc#4012 / #4008 / #4009)。数组/对象 props 用 JSON 字符串 会做 coerce(与 chart/map 相同)。app-header 的嵌套 portal chrome 仍需要来自 DSL 的 object props。每页一类——MD + document 能展示则 live,不能则诚实标边界。
app-header — document shell
document 注册 app-header,并输出与交互路径相同的 .aup-app-header* chrome 类名。嵌套的 brand / nav / actions 需要 object props(Showcase / AUP DSL)。Markdown directive 的 attribute 恒为字符串,故本页只展示已注册 shell——不是完整 portal 顶栏。
| 事实 | 边界 |
|---|---|
| Document RENDERERS | 有(静态) |
| MD live brand/nav/actions | 无 — 字符串 attribute 不会 JSON 强制转换 |
| Session / search / microBar | 仅交互 / AFS |
单元页:app-header。Showcase:prim-app-header。
app-footer — document shell
document 渲染静态页脚。遗留的顶层 copyright 字符串对 MD 安全,可生成底栏。多列 brand / columns / social 需要 object props(与 header 相同的 MD 字符串限制)。
单元页:app-footer。Showcase:prim-app-footer。
ticker — document 静态
Document RENDERERS 强制 data-mode="static":子节点以项目符号分隔——不是连续滚动 ticker。
Document 表面
•静态子节点
•此路径无 live 滚动
交互的 scroll/flip 模式留在 web-full。单元页:ticker。
broadcast — document 静态 shell
Document RENDERERS 把 broadcast 当类 view 容器:子节点会渲染,共享频道 / 导播接线不会。
静态 broadcast shell — 仅作者编写的子节点。document 上无共享频道、无 AI 导播、无 live 观众数。
角色展开(live-badge、lower-third 等)属交互路径。单元页:broadcast。
deck — 本导览即宿主
本记录已是 deck:front matter slides: true + layout: slides 构建播放器。document 将 deck 报告为 partial 宿主 chrome——不是每页再嵌一套产品 deck。
| 事实 | 边界 |
|---|---|
| 宿主 | 本 capability-tour 记录 |
| 写法 | ## 分页、--- 分隔、可选 media-fill 正文 |
嵌套 ::deck | 本导览不需要 |
你已在演示内部。单元页:deck。Markdown slides 指南:markdown-slides。
frame — document partial
经 AUP type: "frame" 的沙箱 iframe。信任边界与 embed 相同:http(s) 或白名单路径;未知/不安全 src 变为错误或链接回退。
::embed{url=…} 是 Markdown 写法,常编译成 frame 形节点。本页显式点名 widget 类型。document 能力为 partial。单元页:frame。
key-value-list — deck shell
单元页:key-value-list。
breadcrumb — deck shell
chip — deck shell
稳定3Deck shellReadonlypagination — deck 静态 chrome
tooltip — deck shell
悬停目标(下方可见 tip)
原生 title + 可见提示,用于 deck 证明entity-overview — deck shell
身份
Caps
terminal — deck readonly 记录
$ arc --version2.0.0-beta.35$ arc blocklet check blocklets/arcblockok
moonphase — deck shell
globe — 世界标记
comments-surface — deck readonly
写路径与 session 不在本导览。
wm — 单面板 shell
面向 deck 几何的单面板窗口 chrome(1280×720)。不是多窗口桌面。
agent — deck readonly(chat 别名)
wm-surface — 同一单面板 shell
与 wm 同一套 SSR。分类:widget wm-surface ≠ primitive surface。
xeyes — 静止注视
鼠标跟踪仍是 interactive。Deck 只宿主 chrome。
searchable-dropdown — 闭合列表
- Bun
- Node
- Workers
Closed list. Filter/onChange stay interactive.
筛选 / onChange 仍是 interactive。
afs-stat — 标签 + 值
afs-preview — 路径 + 摘录
# AUP\n语义树。设备上报 caps。
afs-dropzone — 虚线宿主
Ingest / grant PUT 不在本导览。
natal-chart — 行星表
| Planet | Longitude | Sign | Degree in Sign |
|---|---|---|---|
| Sun | 45.20° | Taurus | 15.20° |
| Moon | 120.50° | Leo | 0.50° |
| Mercury | 12.00° | Aries | 12.00° |
Astrochart CDN 留在 web-full。
finance-chart — K 线表
| Time | Open | High | Low | Close |
|---|---|---|---|---|
| 2026-08-12 | 10 | 12 | 9 | 11 |
| 2026-08-13 | 11 | 13 | 10 | 12 |
| 2026-08-14 | 12 | 12.5 | 11 | 11.5 |
TradingView 仍是 interactive。
skills — 具名列表
- issue-audit
- land
- verification
Live registry 不在本导览。
text-highlight — 高亮
Deck 可以宿主 highlighted 短语,不必 iframe。
type-block — 已写 DSL
AUP 是一棵语义树。
Mode shuffle — iframe type-block runtime stays interactive.
Iframe type-block runtime 仍是 interactive。
hero-widget — 标题 + 描述
WebGL/iframe hero 的 readonly 宿主。
Style cube — WebGL/iframe hero stays interactive.
webgl-hero — GPU 占位
GPU scene needs web-full. Deck shows the host, not the shader.
progress-bar-3d — CSS 替身
64%
2D CSS stand-in. 3D WebGL bar stays interactive.
photo-story — 静帧


text-image-expand — 图文对

港湾图。展开/悬停仍是 interactive。
Static pair — expand/hover stays interactive.
scroll-explainer — 叠步
- 写 Markdown
- Deck SSR shell
- 有 JS 再 enhance
block-revealer — 已展开
进入/滚动揭示仍是 interactive。本页一开始就是开的。
post-editor — readonly
Readonly chrome — publish path stays off this tour.
share-panel — URL chrome
AUP 能力导览
https://new.arcblock.io/zh/docs/aup/capability-tour-slides/
Native share sheet / QR stay interactive.
原生 share sheet / QR 仍是 interactive。
provider-card — 目录卡
部署存储。本 deck 只有卡片 chrome。
Catalog card chrome only.
connection-gate — 状态
Status: disconnected
Auth/connect stay off the slideshow.
Auth/connect 不在 slideshow 上。
blocklet-embed — 只给地址
Embed target: https://new.arcblock.io/
Deck hosts the address, not a nested live blocklet session.
嵌套 live session 不在本导览。
auto-surface — 宿主
夹具 chrome。Session expand 仍是 interactive。
auto-fire — 不触发
Would exec /dev/agent/.actions/run on mount.
Deck: no fire. Session / reconnect re-triggers stay off this tour.
挂载时本会 exec。Deck:no fire。
url-default — 不导航
match /app/today → /app/today/2026-08-14
Deck: no navigation. Canonicalize-on-mount stays off this tour.
挂载时规范化 URL 不在本导览。
Markdown 表面
Admonition(GFM callout)
与 text admonition 同路径——作为你在 Markdown 里直接写的作者表面再演示一次。
优先同行标题
裸 marker 使用 locale 默认标签;marker 行上的显式标题始终优先。
未知 marker
[!FIXME] 仍是普通引用块,不是 callout chrome。
Steps(::::steps)
教程 chrome 落在 document 的 view 渲染上。外层 fence 必须包住每个 :::step。
先命名目标
先分清 document 与 web-full——再选目标已上报的 primitive。
演示或标注
native → live MD 样例。unsupported → 一张诚实的「不在 document」幻灯片。
YouTube partial
正文让 embed 保持 partial——普通 deck 内边距,无 data-media-fill。受支持提供方以沙箱 frame 嵌入;无法识别的 URL 保持为普通链接。
这是 frame / embed 路径——不是通用特权 iframe API。
GFM 表格(MD 结构)
document 需要数据时,用普通 Markdown 写表。本 deck 上的 live chart 是实验性独立节点(generic directive)——不是全站 MD chart 合同。不要用 GFM 表夹带 chart。
| Cap | document 文章 | 本 deck(DEVICE_CAPS_DECK) | web-full |
|---|---|---|---|
table | native | native | webview |
chart | unsupported → table/text | partial shell(Chart.js) | chart |
map | unsupported → media/text | partial shell(Leaflet) | map |
图片(Markdown 结构)
行内图片是有别于 ::media 的结构路径,但两者都是 document 可达的媒体呈现。

需要 caption / type 等 AUP 节点 props 时优先 ::media;普通文章插图用 。
Link card + 导航 action
卡片是 Markdown 指令,与仅导航的 action 组合。
Primitive 分类与证据
18 个跨设备 primitive 与 42 个 Web-only widget——分层不要混。
Deck media host
一个舞台 · 多种媒体模式
Deck 是 1280×720 媒体宿主,不只是散文卡片。
| 模式 | 感觉 |
|---|---|
| 单张 | 一张照片铺满舞台 |
| Mosaic | Bento 拼贴铺满 |
| Grid | 等分格子铺满 |
| Stage / 视频 | 16 盒、贴边循环、YouTube |
| Tweet clamp | 高嵌入在舞台内滚动 |
后续页:每页一种效果 — 视觉优先。
单张照片

Mosaic



Grid



Sized stage



Full-bleed · plates


Full-bleed · YouTube
Tweet clamp
本 deck 证明什么
- 一份 Markdown → 播放器 + 阅读 transcript(
slides: true) - Deck ≠ 普通文章 —
DEVICE_CAPS_DECK上的交互 shell - 硬排除 — 仅
rtc与 camera-preview(#4006) - Widgets — 每种一个 focused readonly+data 幻灯片(arc#4009);web-full 仍然更丰富
- 媒体宿主 — 单张 · mosaic · grid · stage · full-bleed · tweet