核心功能与用法
bricks-cli 是 BRICKS Workspace 的官方命令行工具,由 @fugood 发布于 npm,用于管理数字标牌设备、应用程序、模块及媒体资源。其核心能力覆盖四大领域:
1. 云端设备与应用管理
- 设备生命周期:列出、详情查看、刷新、缓存清理、截图、控制指令下发及分组批量操作
- 应用与模块:创建、更新、配置校验、设备绑定、源码拉取及本地项目初始化
- 媒体流:媒体盒管理、文件上传(支持多版本图片处理、AI 分析、标签与并发控制)
2. 本地网络交互
devtools scan通过 UDP 广播发现局域网内的 BRICKS Foundation 设备mcp start启动 MCP 服务器,结合mcporter可将设备的 MCP 端点桥接为本地 STDIO 服务desktop-acp-bridge连接 BRICKS Project Desktop 代理,支持 ACP 协议下的会话共享与多代理编排
3. 认证与多环境切换
- 基于一次性通行码登录,支持多配置文件(profile)切换及
--auth-profile临时覆盖 - 环境变量
BRICKS_PROFILE与全局 flag 形成灵活的优先级链
4. 交互与开发体验
-j/--json结构化输出便于脚本集成interactive模式提供 TUI 体验- 项目初始化模板支持 Git、GitHub Actions、AGENTS.md 等可选组件
显著优点
- 功能全面:单一工具覆盖云-边-端全链路,从设备监控到本地 MCP 桥接无缝衔接
- 官方背书:npm 官方包由 BRICKS 生态核心开发者维护,API 与 Workspace 同步更新
- 灵活认证:多 profile 机制适合 CI/CD、多租户及开发/生产环境隔离
- 本地优先:LAN 发现与 ACP 桥接降低对云端依赖,适合离线或内网部署场景
- 可脚本化:JSON 输出与丰富的 flag 设计,易于集成至自动化工作流
潜在局限与风险
- 网络依赖:核心功能(设备控制、应用管理)需连接 BRICKS 云服务,离线仅保留本地 MCP 与 LAN 发现
- 权限模型较粗:设备通行码以 Bearer Token 明文传递,需用户自行保管;分组操作无细粒度 RBAC
- MCP 安全边界:
--approve-all模式允许桥接代理无确认执行 bash 命令,存在命令注入风险;持久化配置~/.acpx/config.json可能被恶意进程利用 - UDP 广播限制:
devtools scan依赖本地网络广播,跨子网、Docker 网络或严格防火墙环境下可能失效 - 桌面代理依赖:ACP 桥接需 BRICKS Project Desktop 常驻运行,增加本地资源占用
适用人群
- 数字标牌/IoT 运维工程师:批量管理成百上千台终端设备
- 前端/创意开发者:快速初始化 BRICKS 应用项目,迭代部署至实体设备预览
- 自动化/DevOps 工程师:将设备监控、截图验证、应用更新集成至 CI 流水线
- 多代理系统架构师:通过 ACP 桥接将 BRICKS Desktop 纳入 MCP 工具链,实现 AI 驱动的项目编排
常规风险
| 场景 | 风险 | 缓解建议 |
|------|------|---------|
| CI/CD 自动化 | Profile/token 泄露导致 Workspace 被接管 | 使用短期 token、GitHub Secrets、限制 token 权限范围 |
| LAN 设备暴露 | 通行码硬编码或日志泄露 | 定期轮换 passcode、避免 `--approve-all`、网络层隔离 |
| ACP 持久配置 | `~/.acpx/config.json` 被恶意读取 | 按需创建、使用后删除、文件权限 600 |
| MCP 命令执行 | 桥接代理执行危险命令(`rm -rf` 等) | 显式审批模式、沙箱环境、审计日志 |
结论
bricks-cli 是 BRICKS 生态的基础设施级工具,功能密度高、云边端一体化设计成熟,适合专业场景。但用户需特别注意 MCP/ACP 桥接的安全配置,避免自动化便利性转化为攻击面。