文档 / IDE
Web Studio
前端工作空间。在 Design Studio 中设计,无需运行即可查看应用,模拟 API,并用 Compound 启动整个系统。
Web Studio 是前端的工作空间。智能由引擎提供,智能体可端到端地操作它。从左侧边栏(Alt+Shift+W)或主页上的 设计一个界面 打开。
前端索引
Yuli 会为项目的前端建立索引:
- React、Vue、Angular、HTML 和 JSP 组件。
- CSS、SCSS 和 LESS 样式。
- 路由、HTTP 调用和微前端。
- 与后端的关联。
架构与影响
- 组件、文件、路由、API 和样式的关系图,以及页面、组件、服务、API、后端和数据的统一视图。
- 影响分析:修改某个文件、组件、选择器、样式变量或路由时,哪些部分会受影响。
- 无障碍:基于 WCAG 的静态审计。
Design Studio
先设计,再写代码。
- 按设备划分的页面和画框。
- 标注和状态流程:草稿 → 评审 → 已批准 → 已实现。
- 带 diff 的版本管理,支持撤销和重做。
- 内置 AI 工具栏。
Design System
颜色、字体、间距、圆角、阴影、断点和动效的 token。可从代码中导入,并会校验对比度。
从设计到代码
| 操作 | 作用 |
|---|---|
| 用 AI 实现 | 将生成的文件交给主聊天,在更改窗口中审查。 |
| 创建文件 | 直接写入文件。 |
新组件会复用项目中已有的组件,并采用无障碍、响应式的标记。Yuli 还能根据现有代码重建设计,并对比设计与代码。
两个聊天,两种上下文
- 主聊天处理代码。
- Web Studio 的聊天处理设计,直接在画布上实时进行。
二者从不共享对话线程。如果你在主聊天中输入的内容听起来像界面设计,会出现 “在 Web Studio 中设计”,将该需求发送到画布。如果有打开的设计,主聊天会提供 “前往设计的聊天”。
免运行预览
无需启动应用或开发服务器,即可显示组件、页面、设计或刚写好的代码。
- 使用项目自身的工具(包括 SCSS 和 LESS)只编译该组件,并用示例 props 挂载。
- 未安装依赖时,会根据标记绘制一个近似草图。
- 保存代码或修改设计时自动更新。
JSP 应用
同样适用于 JSP Web 应用(Maven 或 Gradle,搭配 Struts 1 或 2、Spring MVC 或纯 Servlet):它会找到 Web 根目录、web.xml 中的首页和 action 路由,并解析 include、消息和 taglib。
免运行查看完整项目
整个应用无需开发服务器、无需后端、也无需打开任何窗口:
- 使用打包工具(Vite、webpack、CRA 和微前端)会用到的入口、HTML 页面、基础路由和
.env配置,且不暴露机密。 - 如果项目使用其他工具,则使用 Yuli 自带的 esbuild。
node_modules中的依赖只编译一次,只要 lockfile 不变就会复用。
API 模拟器
应用发出的每个请求都会由以下来源响应:
- 项目中的 OpenAPI 或 Swagger 契约。
- REST Client 中保存的响应。
- 自定义规则:状态码、响应体和延迟。
你可以实时看到所有调用,更改会直接作用到页面上,无需刷新。
保存的路由
按项目保存带名称和参数的路由。将其中一个标记为起始路由,应用打开时即处于有用的状态。
分屏视图
- 设计 + 代码:你编辑代码,视图会自动重新编译。
- 设计 + AI:需求会附带路由、元素、其代码以及失败的调用。
内嵌预览
始终在 IDE 内部,绝不使用外部浏览器:
- 项目的开发服务器、单个组件或任意 URL。
- 通过一个选择器,可让同一组件在“未运行”和“运行”之间切换。
- 元素 ↔ 组件 ↔ 代码行检查器。
- 控制台、网络、截图和视觉对比。
Compound
Compound 可启动完整的全栈应用:
- 按依赖顺序启动,并执行 health check。
- 统一日志和级联重启。
- 端口已为调试准备就绪。
- 机密始终以掩码形式显示。
其定义保存在 .ai/compound.yaml 中。
与智能体协作
智能体通过 yuli_front_*、yuli_design_*、yuli_preview_* 和 yuli_compound_* 工具操作 Web Studio:它可以检查视图、截图并在其上迭代,而无需创建或运行应用。只有当项目包含前端时,Web Studio 的工具才会发送给模型。