跳转到内容

使用 AI 构建应用

AetherEdge 在设计上不提供固定通用控制台。它提供确定性的边缘运行时,以及智能体构建站点专用应用所需要的机器可读契约。生成的网页、移动应用、CLI 或后端只是可替换客户端,绝不拥有实时状态、期望状态或安全权威。

这是 AetherIoT 更完整 AI 原生方向的一项现有基础:用户描述目标,智能体发现物理空间并生成受治理变更,契约让变更可以检查,AetherEdge 在没有模型时继续执行已经投运的行为。完整的最终用户对话、仿真和持续调整闭环尚未作为产品交付,边界见 AI 原生平台

可以把仓库提供的 aether-iot 智能体技能添加到兼容的编码助手。下面的命令只使用第三方 skills CLI 安装开发指导,不会安装 AetherEdge 运行时或 Rust SDK:

终端窗口
bunx skills add EvanL1/AetherEdge --skill aether-iot

这个 Skill 只保存工作方法,并把智能体引导到最新在线文档,避免嵌入过期副本。文档服务提供:

  • /llms.txt:精简文档索引;
  • 每个页面对应的 Markdown 版本,可以在地址后添加 .md,或者发送 Accept: text/markdown 请求头获取。

智能体应先读取精简索引,再按当前任务需要获取具体页面,不要一次性载入整个文档站。

当智能体还需要实时运行信息时,连接 aether mcp。默认 MCP 接口只读;不要仅仅为了生成应用就启用写权限。

应用应当按照以下顺序发现 AetherEdge:

来源 能够确定的事实
运行时清单 精确内核版本、目标平台、特性、协议和能力
当前 Pack 领域词汇、支持的资产和兼容要求
OpenAPI 精确接口路径、结构定义、状态码、认证和命令策略
MCP 当前可供智能体使用的实时工具与结构化结果
在线 Markdown 架构、工作方式、安全规则和领域说明

不能用 README 示例或模型记忆替代当前运行版本的 OpenAPI。只有版本化契约明确声明后,才能认为某个 Pack、可选适配器或写能力真实存在。

第一个提示应当描述边界清晰的结果,例如:

为这个 AetherEdge 站点生成一个只读运维页面。显示服务健康、当前拓扑版本、
带质量与新鲜度的点值、活动告警,以及可用的最近一小时历史数据。
不要添加任何设备控制。

生成代码之前,智能体应先给出简短能力清单:

  1. 运行时和 Pack 版本;
  2. 页面所需查询与订阅;
  3. 能够满足需求的公开能力;
  4. 缺失或仍属于内部的能力;
  5. 客户端生成使用的精确 OpenAPI 文档。

缺失的公开查询表示应用边界存在缺口,不代表可以公开内部服务端口、读取 SQLite、连接 SHM 或虚构接口。对话配置同样遵守这条规则:运行时没有声明的能力,智能体必须明确报告,不能编造设备功能、偷偷近似策略或者把自然语言置信度当作物理控制权。

只有 aether-api 面向远程应用流量。生成的远程客户端必须:

  • 只通过经过认证的 aether-api 调用公开能力;
  • 使用当前网关的 OpenAPI 生成类型和请求;
  • 在可用时使用经过认证的 WebSocket 获取实时更新;
  • 在用例尚未公开时报告不可用,不能代理内部端口;
  • 不把凭证写入源代码、地址、日志或者不适合保存机密的浏览器存储。

有用的应用不能只显示一个数值。必须保留点标识、工程单位、数据质量、来源时间、新鲜度、物理拓扑代次、期望配置版本,以及运行时处于活动、降级还是等待协调的状态。

不能把缺失、过期、不健康或代次不匹配的数据悄悄转换为零,也不能把期望状态和实际运行状态合并成一个乐观结果。

只读流程完成后,才能增加命令。每个命令必须呈现并遵守服务端声明的风险、权限、确认、幂等、预期版本、请求关联、审计和不确定结果规则。

保留返回的 request_idcommand_id 和结果版本。超时、审计不完整、已经接受但运行降级或者物理结果未知时,不能自动重试非幂等命令。后端负责真正强制执行安全规则;客户端确认内容只用于解释,不能替代安全边界。

每个长期维护的参考应用或下游应用都应当验证:

  1. 类型检查、代码检查、单元测试和生产构建;
  2. 健康、过期、未授权、降级和不确定结果测试夹具;
  3. 不存在直接访问进程端口、SHM 或 SQLite 的请求;
  4. 默认只读模式不包含控制组件和写凭证;
  5. 可以连接安全空组合或模拟 AetherEdge 完成集成验证。

参考应用只展示契约,可以随时替换。它们不能定义接口行为、配置权威或领域事实。