Auto语言发布v0.4版
// 015-notes 后端:从 #[api] 注解生成完整 Axum HTTP 服务器
#[api]
fn get_notes() -> List<Note> {
db.all()
}
#[api]
fn create_note(title: str, body: str) -> Note {
let note = Note { id: next_id(), title, body };
db.insert(note);
note
}Auto语言发布v0.4版啦!
v0.4是Auto语言的又一个重要里程碑版本,包含 1285个commit(2026年4月 - 2026年6月),跨越解释器运行时、转译器(a2r/a2c/a2py/a2ts/a2gd)、UI生成系统、Shell生态、AI Agent基础设施等多个主要领域。总计 5266个文件变更,+363k/-98k 行代码。
下面是AutoLang相关的仓库:
Auto语言的语法概览和应用场景,可以参考仓库的README页面。
欢迎大家关注。
版本内容
v0.4版在v0.3的基础上,重点突破了解释器运行时的全功能化、a2r转译器的生产级可用性、以及AI Agent基础设施的搭建。
一、AutoVM 解释器运行时(重大突破)
v0.3的AutoVM只能运行简单的脚本和测试用例。v0.4让AutoVM具备了运行真实应用后端的能力。
#[api] HTTP服务器(Plan 312, 313, 321, 322):
#[api]注解自动生成HTTP路由(GET/POST/PUT/DELETE)- 路径参数提取(
:id)、JSON序列化(结构体/数组/Option) - SSE流式响应(
~Iter<T>/~Stream<T>→ SSE frames) - TCP nodelay + flush保证SSE实时性
- 检测到路由时自动启动HTTP服务器
异步调度统一(Plan 317):
- Task/Msg actor 处理程序真实执行(VM内部调度,path B)
LOAD_STATE_FIELD/STORE_STATE_FIELD:任务间持久化的actor状态- 惰性生成器:
next()运行到下一个YIELD_VAL,任务在调用间存活 - 并发HTTP服务器:tokio LocalSet + spawn_local 实现单线程上的 !Send 异步
- Goroutine风格协作调度:单worker + yield_now 实现SSE交叉流
多模块支持(Plan 317 Phase B):
- 真正的
use模块加载(CompileSession + Linker),替代字符串展平 - 允许循环模块依赖(db use api + api use db)
LOAD_GLOBAL/STORE_GLOBAL:跨#[api]处理程序持久化的模块级变量- 32MB大栈线程避免解析器/代码生成栈溢出
- 真正的
生成器与迭代器(Plan 321):
yield表达式 +YIELD_VAL操作码 +Iterator::Generator- 生成器for循环修复(nil哨兵防止重复值)
~Iter<T>/~Stream<T>统一为HTTP Iter协议
List<T> 运行时:
List<自定义结构体>泛型解析(如List<Note>)List<T>.new、.push、.filter、.to_array运行时支持- 数组fallback + Value透传
结构体/枚举运行时(Plan 326):
- 结构体字段访问(
note.title) - HTTP序列化(结构体/数组/Option → JSON)
- int路径参数转换
- 记录类型别名(
type Name = { fields })+ 冒号字段语法
- 结构体字段访问(
二、a2r 转译器(Auto → Rust)成熟
v0.3的a2r只能转译简单的cookbook示例。v0.4让a2r具备转译并运行AutoForge级别后端的能力。
Axum HTTP服务器生成(Plan 328):
- 从
#[api]注解生成Axum处理程序 + 路由 - 共享状态(Arc<Mutex<Db>>)、CORS支持
- SSE处理程序生成 + 返回类型映射
- 从
Tauri IPC支持(Plan 328, 329):
- 生成
#[tauri::command]IPC函数 - Tauri Channel实现SSE流式传输
--render=tauri自动建立Tauri工程
- 生成
逃逸分析引擎(Plan 310):
- EscapeMap + 分析管线
- View/Mut代码生成按逃逸层级选择 borrow/clone/Rc
- 自引用检测 + 间接循环警告
a2r转译器核心增强(Plan 229, 241, 266):
- 多文件项目合并转译(merge mode)—— 1427→0 错误
- AST级修复替代正则后处理
- String类型系统、auto-borrow、auto-clone for non-Copy
- VM ↔ a2r 一致性测试框架(30个conformance测试)
三、Shell生态(ASH)—— 从玩具到日用
v0.4的ASH(Auto Shell)从一个简单的REPL成长为可日常使用的现代Shell。
ASH核心功能(Plan 291-304, 318, 320, 322):
- 任务控制:
cmd &、jobs、fg、bg、Ctrl+C保护 - 管道与流:OS pipe链式、stdin piping、实时输出、外部命令检测
- 补全系统:ratatui表格渲染、模糊匹配、任意命令补全、help/man解析
- 模式系统:F1/F2/F3模式切换、多行续行、保守Auto表达式检测
- 配置系统:
config.at(Auto/Atom主配置)+prompt.at(提示符配置) - 流水线DSL:
filter/sort/select/map/take/count聚合与复合谓词
- 任务控制:
24-bit真彩色(Plan 317):
- 真彩色检测 + 降采样
- 24-bit语法高亮主题
color rainbow/color depth演示
环境变量系统(Plan 301, 309):
env/env.path命名空间、PATH一等List、作用域隔离~user展开、did-you-meanPATH扫描- brace展开、算术展开、
$?/$@/$#/$!特殊参数 - env持久化(
-save/-load+ 启动自动加载)
四、UI生成系统
AutoUI DevTools检查器(Plan 272, 307, 311):
- F12 DevTools面板:组件树、属性检查器、控制台
- 点击选择、源码定位(span tracking)、语法高亮
- 可拖拽分割、布局box model、悬停tooltip
- 实时VTree(每帧重建)+ VNodeId稳定映射
AutoUI MCP(Plan 265, 299, 314):
- MCP V2:HTTP transport、5个新工具
autoui_vtree:实时styled VTree作为Atom- MCP心跳保持空闲应用快照新鲜
- F12截图工具
015-notes 全栈应用(Plan 286-289):
- 完整CRUD:Vue前端 + Rust后端
- 子组件支持、状态同步、for-loop数据迭代
- 动态API函数检测、自动启动后端
--render=vm解释器UI前端模式
iced后端增强:
- Tailwind style bridge(完整视觉样式)
- Textarea、渐变、图像渲染、max-width
- 共享Rust workspace(跨示例编译复用)
- 热重载(文件编辑触发live reload)
五、AI Agent基础设施
AutoForge(炼器房)(Plan 248, 251):
- Phase-Aware Agent、Jades持久化
- 流式Markdown渲染(markstream-vue,零闪烁)
- Approval gate、Intent-driven phase transitions
- ClaudeProvider真实流式聊天
AAID AI Daemon(Plan 325):
- HTTP服务器 + 并发池 + 使用量追踪
auto-ai-clientcrate(从AutoForge提取)
Relay编排(Plan 1-6):
- Soul + Profession + AgentTurn基础
- Flow Engine + Pipeline
- Checkpoint持久化、Token预算、前端Agents视图
ASH F3 AI模式(Plan 325):
aictlCLI- aaid daemon集成
六、测试与质量
测试框架(Plan 260, 262, 263, 289):
auto test框架:文件发现、目录/项目模式- Auto声明式测试(
#[test])—— 66个内联测试迁移 - a2r cookbook测试自动发现
- feature-gated测试组 + OnceLock I/O缓存
Rust Cookbook一致性(Plan 240, 266):
- 108/108 cookbook通过AutoVM
- 60+文件重写为Auto惯用语法
- VM ↔ a2r conformance(30测试 + diff引擎)
LSP增强(Plan 243):
- 跨文件workspace感知(补全、悬停)
- 编译器原生查询替代正则fallback
- Inlay hints、workspace感知签名帮助
七、其他转译器
a2gd(Auto → GDScript/Godot)(Plan 305, 306):
- 两阶段转译 + import系统(preload)
#[export]var →@export、signal声明.tscn场景文件 +.gd脚本co-generation- 30+测试(10类)+ learn-gdscript cookbook
a2py(Auto → Python)(Plan 283):
use→import、builtin映射、两阶段emit- 方法Pythonic映射、static method
@dataclass、结构体解构模式
a2ts(Auto → TypeScript):
- 85测试 + Option/Result/async支持
C FFI(Plan 212, 216):
- 完整E2E管线:dep → compile → load → call
- cdylib marshal自动化(RustValue + ffi_call!宏)
- syn AST签名推理
- auto-bindgen + C header manifests
Python FFI(Plan 214, 222, 300):
- PyO3 0.29、REPL Python FFI
- auto-type marshalling、
use.py语法 - 多类型marshalling
八、包管理与工具链
AutoMan增强:
--server=vm/-r tauri/--render=vm多后端路由AUTO_HTTP_PORT环境变量(端口可配置)- pnpm v10+ 兼容(build approvals)
- Cargo包名清洗、共享Rust workspace
auto-atom crate:
- 静态Atom解析器提取为独立crate
从v0.3的主要变化
新增功能
- AutoVM全功能运行时 — 能运行真实应用后端(HTTP服务器、异步调度、多模块、生成器)
- a2r生产级 — 能转译并运行AutoForge级别后端
- ASH日用Shell — 任务控制、补全、配置、流水线DSL、真彩色
- AutoForge AI Agent — 流式聊天、Approval、Phase-Aware
- AutoUI DevTools — F12检查器、MCP、VTree快照
- a2gd/a2py/a2ts — 新转译器(Godot/Python/TypeScript)
重大改进
- 异步统一 — Task/Msg actor + 惰性生成器 + 并发HTTP
- 多模块 — 真正的use加载,循环依赖支持
- 逃逸分析 — a2r按层级生成最优代码
- 逃逸 — 24-bit真彩色、补全系统、配置系统
- 测试 — 108 cookbook通过、conformance框架
未来规划
v0.5版计划增加以下功能:
- [ ] 生命周期检查器强化(AutoFree + 二阶逃逸分析)
- [ ] JIT编译
- [ ] 自举编译器
- [ ] r2a反转译器(Rust → Auto)
- [ ] React生态支持
- [ ] 嵌入式Agent
Auto语言正在快速成长,感谢每一位贡献者的付出。让我们一起迈向v0.5!
技术统计
| 指标 | 数值 |
|---|---|
| Commit数 | 1285 |
| 文件变更 | 5266 |
| 新增代码行 | +363,325 |
| 删除代码行 | -98,549 |
| 时间跨度 | 2026-04-12 ~ 2026-06-24 |
| 主要Plan编号 | 200 - 332 |