-
Notifications
You must be signed in to change notification settings - Fork 2
ComposeFoundry
AceGuru-mjh edited this page Oct 1, 2026
·
4 revisions
📑 本页目录
ComposeFoundry/是独立的 Gradle 工程(有自己的settings.gradle.kts,只含:app), 不参与主构建。它是"让 LLM 画 UI"的实验场:JSON DSL → 预览 → 人确认后落码。
主线 AGENT 能写代码、能跑命令,但要"画一个界面给你看"还差一步反馈闭环。 ComposeFoundry 提供这个闭环的中间环节:
flowchart LR
A["LLM 产出 JSON UI DSL"] --> B["UiValidator 校验"]
B -->|非法| BA["DiagnosticsEngine 报错<br/>(结构化诊断反馈给 LLM)"]
B -->|合法| C["UiParser 解析为 UI 模型"]
C --> D["UiRenderer 渲染"]
D --> E["PreviewSurface 沙箱预览"]
E --> F{"人确认?"}
F -->|是| G["落码为真实 Compose 源码"]
F -->|否| A
| 组件 | 职责 |
|---|---|
UiParser |
JSON → UI 树模型 |
UiValidator |
schema/语义校验(未知组件、非法属性、不可满足的约束) |
UiRenderer |
UI 模型 → Compose 可组合项 |
DiagnosticsEngine |
结构化诊断:错误位置 + 原因 + 修复建议(可回喂 LLM) |
PreviewSurface |
沙箱预览面板(不污染主 App UI) |
| 主题系统 | 与主 App ui/theme 同一套设计语言对齐 |
示例输入:sample_preview.androidui.json。
cd ComposeFoundry
gradle wrapper --gradle-version 8.10 # 若仓库未锁定 wrapper
./gradlew :app:assembleDebug # 或直接在 Android Studio 打开该目录Note
因为它不参与主构建,CI 也不会编译它 —— 改动它不影响主线绿灯,但也意味着 改动这里不会被 CI 保护,自行保证能编译。
| 维度 | 主 App | ComposeFoundry |
|---|---|---|
| 是否进主构建 | 是 | 否(独立工程) |
| 是否影响 CI | 是 | 否 |
| 定位 | 产品本体 | 未来能力的实验场 |
| UI 语言 | Compose + Liquid Glass | Compose + JSON DSL 预览 |
设计上它与主 App 的 ui/theme、Liquid Glass 保持视觉语言一致,
未来若 DSL 足够成熟,可以反向把"生成 UI"能力接回主线工具列表(那时它会成为一个新的 ui.* 工具族)。
- 界面导航地图 · Liquid Glass
- 模块地图 —— 为什么它不在 20 个模块里
- 路线图
-
MCP 生态总览
新 - (沙箱 MCP · 官方 Hub · 逆向 Host · 门控语义)
- 终端运行时
- 终端 API 契约
- SDK 边界
- Termux 能力矩阵
- Ubuntu rootfs 供给
- Ubuntu 生命周期
- PRoot 二进制溯源
- VT100/ANSI 模拟器
- 终端性能
- 终端迁移
- 原生层 C++/JNI