本文面向公开发布的 ARCS-MINI 工程。
| 路径 | 用途 |
|---|---|
apps/arcs-mini/ |
ARCS-MINI 的 CP 核应用入口、应用配置和功能模块。产品功能优先在这里实现。 |
src/ |
ARCS-MINI 使用的项目级通用业务、中间件、服务和工具代码。 |
arcs-sdk/boards/arcs_mini/ |
默认 arcs_mini 板型的基础配置与 pinmux。只有基础板型确有问题时才修改;产品变体的覆盖配置放在根目录 boards/。 |
res/arcs-mini/ |
分区表、提示音、唤醒词、资源包等 ARCS-MINI 资源。 |
arcs-sdk/ |
ARCS 平台 SDK,提供 SoC、系统、LISA 驱动、组件、基础板型和构建能力。非必要不要直接修改。 |
modules/ |
项目依赖的公共模块,例如事件总线、云端 SDK 和 UI 组件。 |
build.sh、build.ps1 |
Linux/macOS/WSL 与 Windows 的构建入口。 |
adb_download.sh、adb_download.ps1 |
通过 ADB 下载 ARCS-MINI 固件。 |
.agents/skills/ |
Agent 的项目工作流说明;用于协助开发、构建、烧录、日志和提交。 |
默认板型为 arcs_mini。应用级默认配置位于 apps/arcs-mini/prj.conf;实际生效的配置以构建后的 build/.config 为准。
在仓库根目录执行:
.\build.ps1 -S .\apps\arcs-mini -DBOARD=arcs_mini
只修改 CP 应用代码时,优先烧录 app 分区:
.\adb_download.ps1 -S res\arcs-mini app
完整命令、资源更新和设备异常恢复方式以对应 Skill 为准。
Skill 是保存在 .agents/skills/<skill>/SKILL.md 中的开发工作流。它不会被编译进固件,而是指导 Agent 在正确的目录中使用正确的命令,并遵守设备操作、提交和安全边界。
可以直接使用 /build、/flash 等命令,也可以用自然语言描述目标。例如“修改唤醒逻辑后编译、只烧 CP 固件并抓日志”,Agent 会按顺序选择 coding、build、flash、run-log。
/xxx 或 Skill 名称时,使用指定 Skill。| Skill | 适用场景 |
|---|---|
coding |
修改 arcs-mini 应用逻辑、公共业务代码、ebus、AT 命令、Kconfig 或 CMake。优先改 apps/,其次改 src/,避免无必要修改 arcs-sdk/。 |
build |
编译或构建 ARCS-MINI 工程。 |
device |
GPIO、PWM、I2C、SPI、UART、音频、屏幕、pinmux、设备配置等硬件适配。 |
flash |
烧录或刷写固件;正常情况优先 ADB,无法进入 ADB 时再使用串口烧录。 |
run-log |
获取和分析 ADB shell 或串口日志。 |
review |
审查代码;默认以 arcs-mini/main 为差异基准。 |
commit |
规范化 Git 提交、暂存范围和提交信息;不会主动推送。 |
local-memory |
用户明确要求保存本机开发偏好时,写入不提交的本地记忆。 |
ARCS-MINI 产品功能?
→ apps/arcs-mini/
多个 ARCS-MINI 模块共用的业务能力?
→ src/
ARCS-MINI 的产品板型变体或覆盖配置?
→ boards/<variant>/
默认 arcs_mini 板型的基础 pinmux?
→ 确有必要时才修改 arcs-sdk/boards/arcs_mini/
通用 SoC、RTOS、LISA 驱动或 SDK 框架能力?
→ 确有必要时才修改 arcs-sdk/
这套边界让公开工程始终聚焦 ARCS-MINI,也降低后续 SDK 升级和产品维护的成本。