# AIDC Developer 总览

AIDC Developer 是 AIDC 的智能体开发平台：用九个 SDK 把统一的界面、摄像头、麦克风、模型、3D 世界和企业数据接进你的应用——企业数据的一切（数据从哪来、对象与 Action、谁能看、变了自动做什么、日志与用量）都在 **Semantic** 这个数据平台里；在 Developer 里预览测试，再发布到 Nexus——智能体时代的应用商店。先 API、再 CLI、最后 UI：智能体能做的事，人也能做；人能做的事，智能体一定也能做。

## 应用是什么

AIDC 的[应用（Apps）](apps.md)就是智能体时代的插件（照 OpenAI Plugin 的定义）：**一组 Skills 加一组 APIs，界面可选**。智能体照 Skills 调 APIs 把事做完，程序直接调 APIs，人需要看和确认的时候才打开界面。用的人不用安装：在应用页点「复制给智能体」，把那句话贴给 Adis、Claude Code 或 Codex 就能用。

| 部分 | 是什么 | 写在哪 |
| --- | --- | --- |
| Skills | 教智能体完成一件可重复的事：什么时候用、步骤、输出、不能做的事 | 包里 `skills/<名字>/SKILL.md` |
| APIs | 应用对外提供的查询、读取、动作与工作流运行；HTTP、CLI、MCP 都能调 | 清单 `exports`、`semantic`、`workflow` |
| 界面（可选） | 给人看、比较、确认、编辑 | `index.html`（清单 `entry`） |

## 三个地方

| | 是什么 | 地址 |
| --- | --- | --- |
| **Developer** | 开发与测试：SDK、CLI、文档、预览通道 | `/developer`、`/developer/apps/<应用>` |
| **Nexus** | 发布与使用：成员在手机或网页上打开应用 | `/nexus/apps/<应用>` |
| **客户自己的应用** | 挂在客户公司下面，只对本公司开放（可以分享） | `/developer/<cellId>/apps/<应用>` → `/nexus/<cellId>/apps/<应用>` |

## 九个 SDK

| 层 | SDK | 做什么 | 在哪里跑 |
| --- | --- | --- | --- |
| 界面 | [界面](ui.md) | 所有应用共用的一套界面：按钮、表单、卡片、表格、对话框、Toast、`//` 加载动效（含刻度轮）；外观与 shadcn/ui 一致 | 浏览器（`ui.css` + `ui`） |
| 感知 | [视觉](vision.md) | 调摄像头、拍照、选图、压缩；交给视觉模型做结构化判断（质检、识别）与物体检测（类别 + 位置框）；画框标注；公司 NVR / 网络摄像机的实时画面与高清截图（RTSP 经平台转发，浏览器硬解） | 浏览器 / CLI / API |
| | [语音](voice.md) | 实时转写（边说边出字）、录音、音量；文件转写；多语种翻译；会议纪要 | 浏览器 |
| | [视频](video.md) | 建立在视觉与语音之上：带声录像、定时抽帧、视频拆帧 + 音轨转写 | 浏览器 / CLI（ffmpeg） |
| 智能 | [模型](model.md) | 开箱即用的 LLM、视觉、语音与 Jev；OpenAI 兼容；智能体（`model.agent`，Agent Key）；账单记在调用方公司 | 浏览器 / CLI / 任何 OpenAI SDK |
| | [建模](modeling.md) | 世界模型（World Labs Marble）：文字 / 照片 / 全景 / 视频 → 可走进去的 3D 世界；统一的空间坐标系（米）、锚点绑业务对象——数字孪生的地基；平台侧额度与复用控制成本 | 浏览器（查看器）/ CLI / API |
| **数据平台** | **[语义 Semantic](semantic.md)** | AIDC 的数据平台（照 Palantir Foundry）：**数据从哪来**（[数据流与数据源](connect.md)：发布端只读地推上来，写进 Object Type 定义的 `datasources`）· **对象与改数据**（`semantic.ontology()`：对象集、链接、Action、实时 `subscribe`、分支与提案；[旧的数据层](data.md)）· **SQL** · **谁能看**（[`filesystem` / `admin`](auth.md)：Private / Group / Public / Open to Internet）· **变了做什么**（[`automate`](workflow.md)：数据变化 / 定时 → Action、模型分析、通知）· **留痕与用量**（[`observability`](log.md)、[`usage`](billing.md)，平台对象类型 `aidcModelUsage`、`aidcAppEvent`） | 浏览器 / CLI / 智能体 |
| 迭代 | [自进化](evolve.md) | 让应用在使用中持续变好，两条路同一个 SDK：**应用里直接改**——用户说一句「对话框变大」页面马上变（预览只有自己看得到），只给自己或提交给所有人由开发者采纳，全员改进固化进代码；**证据与提案**——整合反馈、操作、数据、文件、技能、对话与用户做过的改进 → 改进提案 → 新语义版本 / 新应用版本 | 浏览器（改进面板）/ CLI / 智能体 / API |
| 发布 | [发布](publish.md) | 应用清单、SDK 登记、版本号、test / production 双通道、回滚、应用登记表、[应用卡片](app-card.md) | CLI + API |

1.20.0 起连接、数据、权限、工作流、日志、账单并进 Semantic（[为什么、怎么对上 Palantir](semantic.md)）；1.22.0 起自提升并进自进化（应用里直接改与证据与提案本来就是一件事的两半）。旧写法（`connect`、`data`、`auth`、`workflow`、`log`、`billing`、`aidc stream`、`improve`、`aidc improve` 等）照样能用。

## 闭环

```
ERP / MES ─(数据流：只读)─▶ Semantic（Object Type 的 datasources → 对象 · 链接 · Action）─▶ 应用（Nexus）· 智能体
                                   │  访问：Private / Group / Public / Open to Internet
                                   │  自动化：数据一变 → Action、模型分析、通知
            自进化：提案 → 新版本 ◀── 留痕：Action Log、应用日志、用量（也都是 Semantic 里的对象）
```

数据只读地进 Semantic、成为有意思的对象；应用和智能体读对象集、用 Action 改；谁能看由统一的访问（Private / Group / Public / Open to Internet）决定；数据一变，自动化（Automate）接着做事——例如报价：营业询价 → 设计 BOM → 采购行情 → 制造工艺 → 财务核价 → AI 分析 → 报价草稿；用的过程被记下来（Action Log、应用日志、用量），自进化把它们变成下一个版本。企业的 Ontology 因此可以一直维护下去。每个应用都有平台自动生成的[应用卡片](app-card.md)：谁负责、哪个版本、用了哪些 SDK、连了哪些数据。完整走一遍：[闭环：从 ERP 到持续变好的应用](loop.md)。

## 最短路径

```bash
curl -fsSL https://www.ai-dc.ai/developer/cli/install.sh | sh
aidc login                                   # 在终端里输入 AIDC 账号和密码
aidc app init my-inspector --template camera
aidc app dev my-inspector                    # 本地预览
aidc app deploy my-inspector                 # 进 test 通道：Developer 预览
aidc app publish my-inspector                # 测过的版本上 Nexus
```

浏览器里直接用 SDK：

```html
<link rel="stylesheet" href="/developer/sdk/v1/ui.css" />
<script type="module">
  import { vision, ui } from "/developer/sdk/v1/aidc.js";
  const camera = await vision.openCamera({ video: document.querySelector("video") });
  const result = await vision.inspect(await camera.capture(), { task: "布面有没有污渍、破洞" });
  ui.toast(result.verdict === "pass" ? "合格" : "发现问题", { variant: result.verdict === "pass" ? "success" : "error" });
</script>
```

## 给智能体

- 上手说明：[`/developer/agent-ready.md`](https://www.ai-dc.ai/developer/agent-ready.md)——把 `帮我接入 AIDC Developer：https://ai-dc.ai/developer/agent-ready.md` 这一句交给智能体（官网 /developer 的「Copy to Adis」），它照着装好 CLI、登录、做出第一个应用。
- 文档索引：[`/developer/llms.txt`](https://www.ai-dc.ai/developer/llms.txt)，每页都有 Markdown 原文（把 `.html` 换成 `.md`）。
- Skill：[`/developer/skills/aidc-sdk/SKILL.md`](https://www.ai-dc.ai/developer/skills/aidc-sdk/SKILL.md)。
- OpenAPI：[`/developer/openapi.json`](https://www.ai-dc.ai/developer/openapi.json)。
- 模型：任何 OpenAI SDK，把 `base_url` 设为 `https://www.ai-dc.ai/api/v1/models`，`api_key` 用开发者 Key。

详见 [智能体接入](agents.md)。
