CodeBuddy 可打开工作文件夹,继续修改已有 ApusTAI 工程。本节接续“海风控制台”,增加参数保存页。
核心功能
从 CodeBuddy 官网 下载并安装客户端,登录后通过“文件 → 打开文件夹”选择上一节的 AIWorkspace。本例使用 CodeBuddy 4.12.3,选择 Craft 模式、Auto 模型。

首次打开时,确认这是自己的工程文件夹,再选择信任。
将 ApusTAI 安装目录内的完整 apustai 文件夹复制到 .codebuddy/skills/:
AIWorkspace/
├─ .codebuddy/skills/apustai/
│ ├─ SKILL.md
│ ├─ references/
│ └─ scripts/
├─ assets/
└─ SeaBreezePanel/
打开 Skills 菜单,确认能选择 apustai。

| 序号 | 说明 |
|---|---|
| 1 | 技能文件所在目录 |
| 2 | 从 Skills 选择 apustai |
在对话中说明要保留的内容、新增功能和地址分配。
使用 apustai 技能,继续修改 SeaBreezePanel,保留控制页和海景风格。
新增“参数保存”页及双向切页按钮。
显示当前风速 LW1001、保存风速 RW1000、启动读回 LW1003。
保存按钮向 LW1002 写1,Lua把当前风速存入 RW1000,再清零命令。
启动时从 RW1000 恢复到 LW1001、LW1003;超过100按50恢复,0有效。
Lua只用 LW、RW,合并已有回调,保持简短。
完成后检查脚本、编译,并导出可编辑工程包。

| 地址 | 用途 | 说明 |
|---|---|---|
| LW1001 | 当前风速 | 两个页面共用 |
| RW1000 | 保存风速 | 点击保存后更新 |
| LW1002 | 保存命令 | 写 1 后处理并清零 |
| LW1003 | 启动读回 | 显示本次启动恢复的值 |
LW 是工作值,RW 用于保存设置。地址数字按十六进制填写。
本例还根据实际画面补充了修改要求:修正海景背景、缩短被截断的说明,并合并重复回调。完整对话需求见提示词文件。
编译运行后,将风速设为 65,进入“参数保存”页并点击保存。返回控制页,把风速改为 20,不再保存。

关闭模拟器,在 ApusTAI 的“运行”窗口选择“直接运行”,再进入参数页:当前风速、保存风速和启动读回均应为 65。此处不要重新编译,编译会重建模拟目录。


| 序号 | 功能 |
|---|---|
| 1 | 当前风速,随控制页调整 |
| 2 | 已保存的风速 |
| 3 | 本次启动读回的值 |
| 4 | 保存参数、返回控制页 |
本例已验证保存 65、0、100 后重新运行均能读回,双向切页正常。这里验证的是模拟器重启;真机断电保存需下载到目标屏再检查。
保留一份回调入口,将以下逻辑合并进 main.lua,不要重复追加同名函数。
local LW, RW = 1, 2
function on_init()
local speed = get_uint16(RW, 0x1000)
if speed > 100 then speed = 50 end
set_uint16(LW, 0x1001, speed)
set_uint16(LW, 0x1003, speed)
end
function on_update(slave, vtype, addr)
if vtype == LW and addr == 0x1002
and get_uint16(LW, 0x1002) == 1 then
set_uint16(RW, 0x1000, get_uint16(LW, 0x1001))
set_uint16(LW, 0x1002, 0)
end
end
0 是有效风速;只有读回值大于 100 时才按 50 恢复。更多说明见 8.1 掉电保存。
在项目管理器中右键工程名,选择“打包工程”,保存为 .apustai。重新打开工程包,核对控制页、保存页和脚本。

工程保留可编辑页面、控件与 Lua;海景沿用上一节素材,包内附来源和 CC BY 4.0 署名。