在 Hashee app 里创建 Agent
Hashee 把”开发者后台”做进了聊天本身。没有独立的 web dashboard: 你想创建、改名、改连接模式、旋转 Token、删除 Agent,全部通过和系统 Agent Hashee 自然语言对话完成,对话本身就是审计日志。
依据:Agent 开发者平台规范 v1.1 (owner-approved,2026-04-23 promoted to V1 authoritative)。
前置条件
- 已安装 Hashee Mobile(iOS / Android)或 Desktop。
- 已注册并登录 Hashee 账号(邮箱 + 验证码 + 密码 + 昵称四步注册)。
- 你的账号已通过初始化向导(首次登录会自动建立和系统 Agent Hashee 的会话)。
如果你看不到”Hashee”会话,下拉主页 → 触发”新消息提醒”中的系统欢迎消息即可创建。
创建流程
整个流程是 Agent 驱动的对话,不是表单页。Hashee 会在合适的时机用 Artifact 表单卡片代替纯文本来收集结构化输入。
步骤 1 — 发起请求
打开和系统 Agent Hashee 的会话,发:
帮我创建一个 Agent或:
我想创建一个 Agent,名字叫 MyBot后者属于”带参数请求”,会跳过名称输入直接到下一步。
步骤 2 — 填写表单
系统 Agent 用一张 Artifact 表单卡片回复你:
截图待补:Hashee app 中系统 Agent Hashee 的对话窗口截图:用户消息”帮我创建一个 Agent”下方,系统 Agent 回复一张 Artifact 表单卡片。卡片标题”创建你的 Agent”,三个必填字段——(1) “名称” 输入框,提示文字”为你的 Agent 起一个易记的名字”;(2) “描述” 多行文本框,提示文字”用一句话说明这个 Agent 做什么;这段话会展示给加你 Agent 的用户”;(3) “连接模式” 单选组,两个选项 “WebSocket(长驻进程,推荐)” 和 “Webhook(无状态函数,需公网 URL)“,默认选中 WebSocket。卡片底部两个按钮”取消” 和 “下一步”。
表单字段:
| 字段 | 必填 | 校验 |
|---|---|---|
| 名称 | 是 | 1-32 字符;同账号下不可重名 |
| 描述 | 是 | 8-200 字符;展示给加你 Agent 的用户 |
| 连接模式 | 是 | websocket / webhook 二选一;如选 webhook 还会追加 URL + 共享 secret 输入 |
提交后,平台后端:
- 校验配额(默认 50/账号,超过返回
AGENT_LIMIT_EXCEEDED)。 - 创建
agents行 + 生成agent_id(UUID v4)。 - 调用 KMS 生成
agent_token(前缀hsk_,64 字符随机)。 - 不生成密钥对——X25519 + Ed25519 由你的客户端首次连接时生成并通过
POST /agents/:id/keys/register注册。
步骤 3 — 收到”创建成功”卡片
![Hashee app 中系统 Agent Hashee 的对话窗口续接截图:表单提交后,系统 Agent 回复一张"Agent 已创建"成功卡片。卡片顶部绿色对勾图标 + 标题"创建成功"。下方四块信息——(1) "Agent ID" 标签 + UUID 文本("01906abc-..." 格式)+ 复制按钮;(2) "Agent Token" 标签 + 部分模糊的 "hsk_xxxx••••••••" 文本 + "显示" 按钮 + 复制按钮,下方红色提示 "此 Token 仅显示一次,关闭后不再提供,请立即保存";(3) "下一步" 按钮组:[查看示例代码 / 配置 .env / 我已保存];(4) 卡片底部小字链接"了解密钥与备份"。](/docs/screenshots/agent-create-success.png)
把 agent_id 和 agent_token 立刻保存到 .env 文件、密码管理器或者
secret manager。点击”我已保存”关闭卡片。
客户端首次连接发生了什么
你的代码 SDK Hashee 后端 │ │ │ │ HasheeAgent.init( │ │ │ agentId, token, baseUrl) │ │ ├───────────────────────────────►│ │ │ │ 检查本地 keystore.json │ │ │ if 缺失: │ │ │ 生成 X25519 keypair (wrap) │ │ │ 生成 Ed25519 keypair (sign) │ │ │ onKeyGenerated(callback) │ │ ◄────────── 回传 base64 私钥 │ callback 由你保存 │ │ │ │ │ │ POST /agents/:id/keys/register │ │ │ Authorization: Bearer hsk_... │ │ │ body: { x25519_public_key, │ │ │ ed25519_public_key } │ │ ├─────────────────────────────────►│ │ │ │ 写 agents 表 │ │ │ set status='ready' │ │ ◄──────── 200 OK ───────────── │ │ │ │ │ │ WS upgrade /ws/agent/:id │ │ ├─────────────────────────────────►│ │ │ ◄────── connection: open ───── │ │ │ │ │ ◄── status: connected ────────│ │注意:
- 私钥永远不发送给后端。后端只持有公钥;解密只能在你的进程里完成。
- 如果你 onKeyGenerated 回调里没保存私钥就重启,SDK 下次启动会生成新私钥
→ 后端公钥不匹配 →
AGENT_KEYS_MISMATCH错误 → 你需要回 Hashee 删除并重建 这个 Agent。详见 Agent 身份与密钥。
自然语言可用的命令清单
系统 Agent 理解以下意图(句式可以更自然,不用照搬):
| 你说 | 系统 Agent 做 |
|---|---|
| ”帮我创建一个 Agent” | 走完整创建流程 |
| ”我有几个 Agent” / “我的 Agent 列表” | 返回 Artifact 列表卡片 |
| ”把 Agent X 的描述改为 Y” | 走”修改描述”确认流程 |
| ”把 Agent X 的连接模式改成 webhook” | 走”修改模式”确认流程,会追问 URL 和 secret |
| ”重新生成 Agent X 的 Token” | 旧 Token 立即失效,发新 Token 卡片 |
| ”撤销 Agent X 的所有授权” | 列出当前授权用户列表,确认后批量撤销 |
| ”删除 Agent X” | 二次确认 + 可选导出审计日志 |
| ”Agent X 的 Capability Manifest 改为 …” | 你也可以传 JSON;系统 Agent 会做 schema 校验 + diff 预览 |
详见 更新与撤销。
演示视频
下面这段约 1 分钟的视频展示完整的”创建 Agent → 拿 Token → 在 Hashee 里加它为联系人 → 发首条消息”的端到端体验。
视频文字版逐节描述(无视频也能阅读)
- 00:00 – 00:08 — Hashee Mobile 主页,一个名为 “Hashee” 的会话排在顶部 (蓝色头像 + Agent badge)。点击进入。
- 00:08 – 00:16 — 会话页空白滚动到底,键盘弹起,输入”帮我创建一个 Agent” 并发送。
- 00:16 – 00:25 — 几秒后系统 Agent 回复一张表单卡片(标题”创建你的 Agent” 含名称 / 描述 / 连接模式三个字段)。在名称栏输入 “DemoBot”,描述栏输入 “演示用 Agent,回复 Hello”,连接模式保持默认 WebSocket。点”下一步”。
- 00:25 – 00:35 — 表单卡片被替换为”创建成功”卡片:Agent ID
显示为
01906abc-...,Agent Token 显示为hsk_••••••••,点击”显示” 按钮看到完整 Token。点”复制”——系统提示”已复制”。 - 00:35 – 00:42 — 切到终端,把 Token 粘到
.env,启动npx tsx src/index.ts, 控制台显示[hashee] connection: connected。 - 00:42 – 00:55 — 切回 Hashee app,主页搜索 “DemoBot”,结果第一条出现, 点击 “添加” → 进入新会话 → 输入”hi”发送。
- 00:55 – 01:00 — 几秒内对方”正在输入…”提示出现,紧接 Agent 回复 “Hello, 我收到了 ‘hi’“。
下一步
- Agent 身份与密钥 — 两对密钥的语义、存储、备份
- Capability Manifest 声明 — 声明 Agent 能做什么 + 需要什么权限
- 接收第一条消息 — 端到端加密管道全追踪
- 更新与撤销 — Token 旋转、Capability 变更、彻底删除