Skip to main content
Glama

👀 一眼看明白

graph LR
    A[Claude Code] <--> H((ACH Hub))
    B[WorkBuddy] <--> H
    C[OpenClaw] <--> H
    D[自定义 Agent] <--> H
    H --> DB[(SQLite)]
    H --> Web[Web 仪表盘]
    style H fill:#4f46e5,color:#fff
    style Web fill:#7c3aed,color:#fff

任何 MCP 兼容的 AI Agent → 连接 Hub → 立即获得:消息总线、任务队列、共享记忆、进化引擎。

🚀 5 分钟启动docker run -d -p 3100:3100 ghcr.io/liuboacean/agent-comm-hub


Related MCP server: Agent MCP Gateway

💡 为什么需要它?

多个 AI Agent(Claude Code、WorkBuddy、OpenClaw、Hermes 等)天然是信息孤岛

问题

传统方案

为什么不行

❌ Agent 间无法通信

Webhook / 共享文件

脆弱、不可靠、手动维护

❌ 无法跨 Agent 调度任务

各自为战

没人协调,任务丢失

❌ 无法共享上下文

每轮对话都从零开始

记不住团队经验

❌ 无法团队进化

每个 Agent 独自踩坑

同样的问题反复修

Agent Communication Hub(ACH) 是它们的共享神经中枢——一条消息总线 + 任务调度器 + 团队记忆库 + 经验进化引擎。


🚀 三步上手

# 0. 安装 Python SDK(可选)
pip install agent-comm-hub

# 1. 启动 Hub(一行命令)
docker run -d -p 3100:3100 --name ach ghcr.io/liuboacean/agent-comm-hub

# 2. 注册 Agent
python3 -c "
from hub_client import SynergyHubClient
hub = SynergyHubClient('http://localhost:3100')
result = hub.register(invite_code='INVITE-001', name='my-agent')
hub.set_token(result['api_token'])
print(f'✅ Agent 注册成功,ID: {result[\"agent_id\"]}')
"

# 3. 发条消息试试
python3 -c "
from hub_client import SynergyHubClient
hub = SynergyHubClient('http://localhost:3100')
hub.set_token('your-token')
hub.send_message(to='other-agent', content='收到,任务完成。')
print('✅ 消息已发送')
"

🔗 然后打开 http://localhost:3100/dashboard 查看实时仪表盘


✨ 核心能力

📊 数据快照

指标

MCP 工具

58 个

Python SDK 方法

68 个

TypeScript SDK 方法

35 个

单元测试

288 个 ✅

数据库表

32 张

client-sdk 运行时依赖

0(Python/TS 纯标准库)

服务端运行时依赖

5 个轻量依赖(express / better-sqlite3 / zod / eventsource / @modelcontextprotocol/sdk)

消息延迟

< 50ms

部署方式

Docker / npm / SkillHub

🧩 功能矩阵

类别

工具

一句话

🔐 身份认证

6

注册 / 心跳 / RBAC / 信任评分

💬 消息通信

5

P2P / 广播 / FTS5 搜索 / 去重

📋 任务调度

8

7 状态机 / Pipeline / 并行组

🧠 共享记忆

5

三级作用域(私密/团队/全局)

🔀 编排协调

11

依赖链 / 质检门 / 任务交接

📈 进化引擎

12

经验共享 / 策略审批 / 信任闭环

🛡️ 安全审计

6

哈希链审计 / 4 级 RBAC / CORS

📎 文件传输

3

上传 / 下载 / 列表

🔧 高可用

3

DB 分裂检测 / 自动合并 / 看门狗


🖥️ 内置 Web 管理面板

启动 Hub 后打开 http://localhost:3100/dashboard,即可实时管理你的 Agent 集群:

页面

能干什么

总览仪表盘

一眼看清在线 Agent、Pipeline 状态、消息吞吐

Agents

查看所有 Agent 列表(名称、角色、最后活跃时间、信任分)

消息吞吐

5 分钟消息量 + 被限流的 Agent Top

健康检查

版本 / 运行时间 / DB 状态 / 备份状态(本地 + 远程)

审计日志

全量操作追溯,谁在什么时候做了什么

纯静态 HTML(零前端框架),内联 CSS+JS,启动即用。


🏗️ 架构

                        ┌─────────────────────────────────┐
                        │     Agent Communication Hub      │
                        │         localhost:3100           │
                        │                                  │
  ┌─────────┐  SSE/MCP  │  ┌──────┐ ┌──────┐ ┌────────┐  │  SSE/MCP  ┌─────────┐
  │ Claude  │◄─────────►│  │Auth  │ │Msg   │ │Memory  │  │◄─────────►│WorkBuddy│
  │ Code    │           │  │RBAC  │ │Bus   │ │FTS5    │  │           │         │
  └─────────┘           │  └──────┘ └──────┘ └────────┘  │           └─────────┘
                        │  ┌──────┐ ┌──────┐ ┌────────┐  │
  ┌─────────┐           │  │Task  │ │Orch  │ │Evol    │  │           ┌─────────┐
  │OpenClaw │◄─────────►│  │Sched │ │Str   │ │Engine  │  │◄─────────►│ Hermes  │
  └─────────┘           │  └──────┘ └──────┘ └────────┘  │           └─────────┘
                        └────────────┬────────────────────┘
                                     │
                              ┌──────▼──────┐     ┌─────────────┐
                              │   SQLite    │     │  Web Panel  │
                              │  (WAL 模式) │     │  /dashboard │
                              └─────────────┘     └─────────────┘

🔧 SDK 快速上手

Python — 零外部依赖

from hub_client import SynergyHubClient

hub = SynergyHubClient(hub_url="http://localhost:3100", agent_id="my-agent")
hub.set_token("your-api-token")

hub.send_message(to="other-agent", content="任务完成,交接。")     # 发消息
hub.store_memory(content="用户偏好 JSON", scope="collective")      # 存记忆
task = hub.create_task(title="评审 PR #42", assignee="claude-code") # 派任务
hub.share_experience(title="修复方案", content="...", category="debug") # 分享经验
hub.on_message = lambda msg: print(f"收到: {msg}")
hub.connect_sse()  # 实时监听

TypeScript — 零外部依赖

import { AgentClient } from "./client-sdk/agent-client.js";

const client = new AgentClient({
  agentId: "my-agent",
  hubUrl: "http://localhost:3100",
  token: "your-api-token",
  onMessage: async (msg) => { /* 处理消息 */ },
  onTaskAssigned: async (task) => { /* 处理任务 */ },
});
await client.start();
await client.sendMessage({ to: "other-agent", content: "搞定了!" });

🆚 对比其他方案

特性

ACH

自建 Webhook

共享数据库

消息队列(RabbitMQ)

5 分钟部署

MCP 原生支持

共享记忆 + FTS5 搜索

任务调度 + Pipeline

进化引擎(经验复用)

内置 Web 面板

审计哈希链

零外部服务

Python + TS SDK


📦 部署方式

🐳 Docker(推荐,一键启动)

docker run -d -p 3100:3100 --name ach ghcr.io/liuboacean/agent-comm-hub

📦 Docker Compose(含 Prometheus + Grafana 监控)

cd deploy/
docker compose up -d
# Hub: http://localhost:3100  |  Grafana: http://localhost:3000 (admin/admin)

🔧 源码安装

git clone https://github.com/liuboacean/agent-comm-hub.git
cd agent-comm-hub
npm install && npm run build
npm start          # 生产模式
# 或 npm run dev   # 开发模式

🎯 作为 Skill 安装

# ClawHub
claw install agent-comm-hub

# SkillHub(30+ 平台)
skillhub install agent-comm-hub

⚠️ Node 版本要求(重要)

本项目依赖原生模块 better-sqlite3,它是按 Node 22(NODE_MODULE_VERSION 127)编译的。因此:

  • 🔒 运行 Hub(dist/src/server.jsdist/src/stdio.js)必须用 Node 22 启动。若使用 Node 24(或更高),会因 ABI 不匹配立即抛出 ERR_DLOPEN_FAILED 崩溃,无法启动。

  • 🧪 CI 中的 Node 24 仅用于跑单元测试(且涉及 stdio 启动的冒烟用例已条件化 skip)。运行环境必须 Node 22<23,better-sqlite3 原生 ABI NODE_MODULE_VERSION 127 要求),package.jsonengines.node 即声明为 ">=22 <23"不要用 Node 24 跑服务,否则 better-sqlite3 会因 ABI 不匹配报 ERR_DLOPEN_FAILED 启动崩溃。

  • 推荐做法:用版本管理器固定 Node 22(如 nvm use 22),或在启动脚本/hub 配置中显式写死 Node 22 二进制绝对路径。


🔌 给 Agent 配置 MCP

Stdio(推荐)

{
  "mcpServers": {
    "agent-comm-hub": {
      "command": "/path/to/node22/bin/node",
      "args": ["dist/src/stdio.js"],
      "env": { "HUB_AUTH_TOKEN": "your-key", "DB_PATH": "./comm_hub.db" }
    }
  }
}

⚠️ 必须用 Node 22 二进制启动(例如绝对路径 /path/to/node22/bin/node),不要用 Node 24。本项目原生模块 better-sqlite3 是按 Node 22(NODE_MODULE_VERSION 127)编译的,使用 Node 24 启动 dist/src/stdio.jsdist/src/server.js 会立即 ERR_DLOPEN_FAILED ABI 崩溃。

HTTP + SSE

{
  "mcpServers": {
    "agent-comm-hub": { "url": "http://localhost:3100/mcp" }
  }
}

🛡️ 安全体系

层级

措施

认证

Token + SHA-256 哈希存储,原始 Token 不落盘

授权

4 级 RBAC:public → member → group_admin → admin

审计

区块链式哈希链 prev_hash → record_hash,DB 触发器保障

信任

自动评分,0-100 分影响策略审批等级

网络

CORS 白名单制 / X-Frame-Options / CSP / HSTS


📁 项目结构

agent-comm-hub/
├── web/dist/index.html        # Web 管理面板(零前端框架)
├── src/                       # 核心源码(TypeScript)
│   ├── server.ts              # Express + SSE + MCP 入口
│   ├── db.ts                  # SQLite WAL 数据库
│   ├── backup.ts              # 自动备份模块
│   ├── identity.ts            # 注册 / 心跳 / RBAC
│   ├── memory.ts              # 三级记忆 + FTS5 搜索
│   ├── orchestrator.ts        # 依赖链 / Pipeline
│   ├── evolution.ts           # 经验共享 / 策略审批
│   └── security.ts            # Token / 审计 / CORS
├── client-sdk/
│   ├── hub_client.py          # Python SDK(68 方法,零依赖)
│   └── agent-client.ts        # TypeScript SDK(35 方法)
├── deploy/                    # Docker Compose + 监控
├── tests/                     # 288 个测试
└── docs/                      # 完整文档

📚 文档导航

文档

适合谁

API 参考

开发者(HTTP/SSE/MCP 端点 + Bearer 鉴权)

编排指南

搭 Pipeline 高级玩家

进化引擎指南

实验性,欢迎 PR(计划从 A 层 evolution-guide.md 同步)

Hermes 集成指南

实验性,欢迎 PR(计划从 A 层 hermes-integration-guide.md 同步)

DB 三层防护

运维/稳定性保障

Agent 协调时序图

想看清「任务从 A 到 B 全自动流转、哪里卡 HITL」的人

English README

English speakers

📌 文档同步说明(B 层为权威源):服务端仓库(agent-comm-hub-src)是文档的单一权威来源。当前 package.jsondocs:sync 脚本依赖 scripts/sync-docs.ts该文件尚未提供,因此 A 层 Skill 分发包(~/.workbuddy/skills/agent-comm-hub/)需手动同步:将本仓库的 docs/SKILL.mdREADME.md 复制到 A 层对应位置。后续若补充 scripts/sync-docs.ts,可用 npm run docs:sync 自动同步。


🆕 更新历史

  • 真实宿主执行器(HostExecutor) — 新增 client-sdk/adapters/host-executor.ts,提供 LlmHostExecutor / HttpHostExecutor 参考实现,defaultHostExecutor() 按环境变量自动选择;AbstractHostTaskBridge 新增可注入 executor 字段

  • 🔧 消灭 setTimeout 占位 — WorkBuddy / Hermes 桥 runTask() 委托 this.executor.execute(),任务到达即触发宿主真实能力,自主执行闭环真正打通

  • 📝 文档docs/HOST_INTEGRATION.md §4 重写,含 HostExecutor 注入模型与自定义执行器示例

  • 🤖 Feature A:Agent 自主执行闭环 — 新增 AgentRuntime(client-sdk/runtime.ts),自动驱动 in_progress → execute() → completed/failed,含 inFlight 去重 / 崩溃恢复 / loopGuard,消灭人工「传话」

  • 🔐 Feature B:人在环授权队列 — 新增操作级授权(auth_requests 表 + request_authorization/resolve_authorization 工具,deny-by-default,TTL 10min)+ Web AuthQueue 面板,敏感操作一键批准/拒绝

  • 🧹 清理陈旧产物 — 移除 client-sdk/ 下 3 个 5 月旧编译 .jsagent-client.js / hermes-integration.js / workbuddy-integration.js)及其 .map,修正 client-sdk/package.json 入口引用

  • 🟢 在线状态统一判定 — 新增 isAgentOnline() =(存在 SSE 实时连接)(心跳 90s 内);get_online_agents、派单候选排序、/health/detailed/api/agents、指标全部改用统一判定,SSE 连着即在线、可派单

  • 💓 心跳监控不再误杀 SSE 在线 Agent — 仍有 SSE 连接的 Agent 不因心跳陈旧误标离线、不再广播离线通知;SSE 连接建立即同步 agents.status

  • 🗂️ audit_log 行数上限自动归档 — 超 AUDIT_LOG_MAX_ROWS(默认 3000,env 可调)自动将最旧溢出行镜像audit_log_archive(WORM 安全,不删源表);新增启动即跑 + 每小时维护调度器

  • 📦 备份路径稳定化backup.tsBACKUP_DIRprocess.cwd()/backups(易失 workspace)改为 ~/agent-comm-hub/backups,与 launchd 备份脚本同目录,支持 BACKUP_DIR 覆盖

  • 🔌 P1-1 SSE 重连竞态registerClient/removeClient 增连接级 connId 校验,旧 socket 的 close 不再误删当前实时连接,重连后消息/任务不再静默丢失

  • 💾 P1-2 并发写 SQLITE_BUSYbusy_timeout=5000 + foreign_keys + WAL 自动检查点,消除并发写静默丢数据

  • 🛡️ P1-3 限流绕过 — 认证前置单 IP / 全局限流(防令牌爆破与未认证 /mcp 耗尽资源);/mcp 增并发在途上限(默认 50)防 DoS

  • 🔍 P1-4/5 FTS 值碰撞memories_ftsmemory_id 精确关联键(启动迁移旧表),内容相同的两条记忆不再互相串台

  • 🔐 P2 质量 — 信任分按 target 列计吊销(管理员不再误扣);受保护端点仅接受 Bearer,移除 ?token=x-api-key 令牌泄漏面

  • 🏗️ 构建产物固化dist/package.json 生成写入 build 脚本与启动脚本,消除「安装即崩溃」(version.ts 启动依赖 ../package.json

  • 📝 文档工具数统一为 58 — 与 src/security.tsTOOL_PERMISSIONS 矩阵一致,修正 README/SKILL.md 残留的 56/53

  • 📚 新建 docs/API_REFERENCE.md — 准确的 HTTP/SSE/MCP 端点速查(含 Bearer 鉴权与 SSE Last-Event-ID 断线重连);修正 README 三处死链

  • 🏷️ SKILL.md 文件传输工具名更正send_file/receive_fileupload_file/download_file

  • 🔒 修复 ClawScan 审计 67 findings — fail-closed 权限矩阵 + stdio 强制认证

  • 🛡️ IDOR 对象级授权加固assertOwns + HUB_2004 防越权访问

  • 🧩 版本单一真相源 — 抽离 src/version.ts/health 收敛

  • 📄 同步中英文 README — 对齐 v2.5.1(Node 22 约束锁定 + 测试计数)

  • 🧹 测试卫生 — 修复 unit 测试在仓库根生成 undefined* 游离文件

  • 🐛 get_db_stats 修复 — ESM 模块误用 require("fs") 导致 require is not defined,改 import * as fs

  • 🔄 DB 路径容错resolveDbPath 新增空库自动回退,修复误连空库导致的记忆库/进化引擎"数据归零"假象

  • 🔒 Node 22 锁定 — 启动脚本固定 Node 22,匹配 better-sqlite3 原生模块(Node 24 会 ABI 崩溃)

  • 🧪 防护测试 — 新增 stdio/Hub 必须用 Node 22 的契约测试,防止被误改回 Node 24

  • 🧹 测试卫生 — 修复 unit 测试在仓库根生成 undefined* 游离文件(isValidDbPath 守卫)

  • 🖥️ Web 管理面板 — 纯静态 HTML 仪表盘,6 个实时页面

  • 🔄 在线状态改进 — 二元标签 → 最后活跃时间,不再跳变

  • 📦 备份模块 — 本地 + 远程 rsync 备份状态展示

  • ⏱️ 持久化运行时间 — 重启不归零

  • 📊 新增 APIGET /api/agents

  • 🔧 .gitignore 清理 — 移除已跟踪的编译产物

  • 🔍 FTS5 标签分词修复(空格拼接替代 JSON)

  • 📊 12 处静默吞异常 → logError 全链路可观测

  • 🔐 authed() 统一认证中间件重构

  • 🔒 FTS5 索引每次存储后自动校验

  • 🛣️ 支持 HUB_ROOT 环境变量

  • 📨 新增 generate_invite 邀请码工具

  • 🧪 新增 19 个测试用例


🤝 参与贡献

  • 🐛 发现 bug → 提 Issue

  • ✨ 有新想法 → Feature Request

  • 📖 改进文档 → PR 欢迎

  • 🔧 贡献代码 → Fork + PR


📄 许可证

MIT — 可自由用于个人和商业项目。


Available Tools

58 tools
accept_handoffA

接受任务交接。只有被请求的 target Agent 可以调用。接受后任务 assigned_to 转移到当前 Agent。

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idYes要接受的任务 ID

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description discloses the effect (assigned_to transfer) and the caller restriction. It is straightforward but could mention potential side effects like notification or state requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, front-loaded with the purpose, no redundant information. Every sentence is meaningful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the low complexity (1 parameter, no output schema), the description is mostly complete. It explains action, caller, and outcome. Missing details like error conditions or state prerequisites, but adequate for the tool's simplicity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the description adds no extra meaning beyond the schema's definition of task_id. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it accepts a handoff, specifies the caller (target Agent), and describes the outcome (assigned_to transfers). This distinguishes it from siblings like request_handoff and reject_handoff.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly states that only the requested target Agent can call it, providing clear context. However, it does not discuss when not to use it or compare to alternatives beyond that.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

acknowledge_messageA

标记消息为已处理(acknowledged)。调用此工具后该消息不会再出现在未处理消息列表中。Hermes 处理完 WorkBuddy 发来的消息并回复后,必须调用此工具。

ParametersJSON Schema
NameRequiredDescriptionDefault
agent_idYes确认方 Agent ID,如 hermes
message_idYes消息 ID

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses the mutating effect (marks as processed, removes from list) but does not cover permissions, idempotency, or error cases. Adequate for a simple tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with zero waste. The first sentence states the core action, and the second provides necessary usage context. Front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple mutation tool with no output schema, the description adequately covers what, when, and why. It could mention the response or error handling, but overall it is complete enough for an agent to use correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for both parameters. The description adds minimal extra meaning (e.g., agent_id example 'hermes'), so it meets the baseline but does not significantly enhance understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it marks a message as processed (acknowledged) and removes it from the unprocessed list. It is specific but does not explicitly differentiate from the sibling 'batch_acknowledge_messages', though the purpose is distinct.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance to call this tool after Hermes processes and replies to a WorkBuddy message. However, it does not mention when not to use it or alternatives like the batch version.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

activate_agentA

激活一个已注册的 Agent(registered/suspended → active)。已激活再激活幂等。

ParametersJSON Schema
NameRequiredDescriptionDefault
agent_idYes目标 Agent ID

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden. It discloses idempotency and state transition but lacks details on potential errors (e.g., agent not found), side effects, or required permissions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the core action and state transition, followed by idempotency note. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple activation tool with one parameter and no output schema, the description is adequate. It covers the action, state change, and idempotency. Could mention error handling but overall sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% coverage for agent_id with a concise description. The tool description adds no extra meaning beyond what the schema already provides, so baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool activates an agent, specifies the state transition (registered/suspended → active), and mentions idempotency. It effectively distinguishes from siblings like deactivate_agent or register_agent.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use (to activate a non-active agent) and mentions idempotency, but does not explicitly state when not to use or provide alternatives. Given the sibling list, purpose is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

add_dependencyA

添加任务依赖关系。下游任务必须等上游任务完成后才能开始。自动进行环检测。添加后下游任务自动进入等待状态。

ParametersJSON Schema
NameRequiredDescriptionDefault
dep_typeNo依赖类型,默认 finish_to_startfinish_to_start
upstream_idYes上游任务 ID(需先完成)
downstream_idYes下游任务 ID(依赖上游完成后才能开始)

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Given no annotations, the description discloses important behaviors: automatic cycle detection and auto-transition of downstream task to waiting state. This goes beyond just stating the function.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three concise sentences convey all necessary information with no superfluous words. Front-loaded with the main purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 3 parameters and no output schema, the description covers the purpose, behavior, and parameter effects completely. No gaps are apparent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for each parameter. The description adds value by explaining the effect of the parameters (e.g., downstream enters waiting) beyond the schema's definitions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('add dependency between tasks'), the direction ('downstream waits for upstream'), and contrasts with sibling tools like 'remove_dependency' and 'get_task_dependencies' by focusing on creation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It mentions automatic cycle detection, implying safe usage, but does not explicitly state when to use this tool over alternatives. However, the context provided is sufficient for typical use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

add_quality_gateA

在 Pipeline 中添加质量门。质量门在指定 order_index 之后阻塞后续任务,直到评估通过。criteria 为 JSON 格式的检查规则。

ParametersJSON Schema
NameRequiredDescriptionDefault
criteriaYes评估规则(JSON 格式,如 {"type":"manual","check":"code_review"})
gate_nameYes质量门名称
after_orderYes在哪个 order_index 之后的任务需要等待此质量门通过
pipeline_idYesPipeline ID

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses key behavior: blocking subsequent tasks until evaluation passes. However, without annotations, it omits details on side effects, error handling, or required permissions. The criteria format is mentioned but not fully validated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences front-load the main purpose and add necessary detail. No redundant information; every word contributes.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a creation tool with no output schema, the description adequately covers purpose, key parameters, and behavior. It lacks error conditions or return information but is sufficient for basic usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers all 4 parameters with descriptions, so baseline is 3. The description adds value by clarifying the role of 'after_order' (position to block after) and explaining 'criteria' as JSON check rules, going beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool adds a quality gate to a pipeline and explains its blocking behavior. It implicitly distinguishes from evaluation tools like evaluate_quality_gate, but does not explicitly differentiate from sibling tools such as add_task_to_pipeline.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use (to block subsequent tasks after a point) but lacks explicit guidance on when not to use or prerequisites like pipeline existence. No alternatives are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

add_task_to_pipelineA

将任务添加到 Pipeline。指定任务在 Pipeline 中的顺序。不传 order_index 则自动追加到末尾。

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idYes任务 ID
order_indexNo顺序索引(不传则自动追加到末尾)
pipeline_idYesPipeline ID

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses the ordering behavior (append if no index) but omits other important details like validation, error handling, or prerequisites. With no annotations, more transparency is expected.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences provide all necessary information without redundancy. Front-loaded with the core action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the main function but lacks details on success/failure responses and assumption that pipeline/task exist. Could be more comprehensive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All three parameters have descriptions in the schema (100% coverage). The description adds no new parameter information beyond the schema, so score stays at baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (add task to pipeline) and specifies ordering capability. It distinguishes from sibling tools like create_pipeline or get_pipeline by focusing on adding a task.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage by explaining default behavior for order_index, but does not explicitly state when to use this tool versus alternatives or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

apply_strategyA

采纳一个已审批的策略。记录到策略应用记录中,apply_count 自增。

ParametersJSON Schema
NameRequiredDescriptionDefault
contextNo应用场景描述
strategy_idYes策略 ID

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses that the tool records to a log and increments apply_count, which are important behavioral traits. However, it does not explain error conditions (e.g., if the strategy is not approved) or idempotency, leaving some gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences, front-loading the main action and side effects without any unnecessary words. Every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with two parameters and no output schema, the description covers the core function and side effects. It implies the prerequisite (strategy must be approved) but could be more explicit. Lacking return value info, but overall adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for both parameters. The tool description adds no additional meaning beyond what is in the schema, so it meets the baseline expectation but does not exceed it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool applies an approved strategy ('采纳一个已审批的策略') and mentions specific side effects like logging and incrementing a counter. It distinguishes from sibling tools like approve_strategy or propose_strategy.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies that the strategy must be approved before use ('已审批的策略'), providing clear context. However, it does not explicitly state when not to use this tool or recommend alternatives, although the sibling tool list includes approve_strategy, which helps differentiate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

approve_strategyA

审批策略(approve/reject)。仅 admin 可调用。审批后通过 SSE 通知提议者。

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYes审批动作
reasonYes审批理由
strategy_idYes策略 ID

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses admin-only access and SSE notification on approval, but lacks details on rejection behavior (e.g., whether proposer is notified) and other side effects. This is a moderate disclosure for a 3-parameter tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences that cover purpose, access, and notification. No wasted words; front-loaded and extremely concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers main points (purpose, access, notification) but does not describe the return value or behavior on rejection. Since no output schema exists, more detail on response would improve completeness. Adequate but not full.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with each parameter described. The tool description adds no additional meaning beyond what is in the schema (e.g., restates action enum). Baseline is 3; no extra value contributed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool approves or rejects a strategy (verb+resource), restricts to admin, and notes SSE notification. This differentiates from siblings like propose_strategy (creates proposals) and apply_strategy (executes approved strategy).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says '仅 admin 可调用' (only admin can call), giving clear context. However, it does not explicitly state when to use this tool versus alternatives like feedback_strategy or veto_strategy, relying on implied context from sibling names.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

archive_dataA

手动触发数据归档。将指定天数之前的记录从主表移入归档表,以减少主表体积。可归档 messages(默认 30 天前)或 audit_log(默认 90 天前)。仅 admin 可调用。

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNo归档多少天前的数据(messages 默认 30 天,audit_log 默认 90 天)
typeYes要归档的数据类型
vacuumNo归档后是否执行 VACUUM 压缩数据库文件

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description discloses key behaviors: it moves records (not deletes), supports optional VACUUM, and requires admin privileges. It does not detail reversibility or side effects, but covers major aspects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (4 sentences) and front-loaded with the main action. Every sentence adds necessary information: purpose, effect, types, defaults, and access control.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 3 parameters and no output schema, the description covers purpose, types, defaults, and admin restriction. It lacks details on return values or potential side effects, but is largely complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the description adds value by explaining the overall archiving logic and default day values per type, supplementing the schema's parameter descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: manually trigger data archiving by moving old records from the main table to an archive table. It specifies the data types (messages, audit_log) with default ages and notes admin-only access, distinguishing it from sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use the tool (to reduce main table size) and for which data types with default thresholds. It does not explicitly state when not to use it or provide alternatives, but the context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assign_taskC

将任务分配给另一个 Agent。对方收到 task_assigned 事件后会自主开始执行,无需人工确认。

ParametersJSON Schema
NameRequiredDescriptionDefault
toYes执行方 Agent ID
fromYes发起方 Agent ID
contextNo执行任务所需背景信息,减少执行方反复询问
priorityNonormal
descriptionYes任务目标描述,尽量清晰,包含期望输出格式

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must disclose all behavioral traits. It only mentions autonomous execution and event trigger. Missing details on permissions, side effects, failure modes, or required caller identity.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with no wasted words. Front-loaded with key action and immediate behavioral note.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 5-parameter tool with no output schema and no annotations, the description is too minimal. It lacks return value, error cases, prerequisites, and interaction details.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers 80% of parameters with descriptions; description adds no extra meaning. Baseline 3 is appropriate as schema already explains parameters adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool assigns a task to another agent and explains autonomous execution. Verb 'assign' and resource 'task to agent' are clear, but does not distinguish from sibling tools like request_handoff.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool vs alternatives (e.g., request_handoff). Only mentions that no manual confirmation is needed, implying automatic behavior, but no when-to-use or when-not-to-use instructions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

batch_acknowledge_messagesA

批量确认消息为已处理。可按 agent_id 和时间范围筛选,将匹配的未确认消息全部标记为 acknowledged。用于清理消息积压。

ParametersJSON Schema
NameRequiredDescriptionDefault
afterNo时间戳下限(毫秒),只确认此时间之后的消息
limitNo最多确认的消息数量,默认 100,上限 500
beforeNo时间戳上限(毫秒),只确认此时间之前的消息
statusNo要确认的消息状态,默认 unreadunread
agent_idYes目标 Agent ID(消息接收方),即要清理谁的未读消息
from_agentNo发送方 Agent ID 过滤(可选),只确认来自特定发送方的消息

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description must disclose behavior fully. It only states that matching unacknowledged messages are marked as acknowledged, but does not mention idempotency, destructive nature, error conditions, or side effects. This is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the core action, and every word adds value. No redundancy or fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema. The description is brief and omits details such as return values, rate limits, or prerequisites. While the tool is simple, additional context like idempotency or safety would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, baseline 3. The description adds no new semantic meaning beyond what the schema parameter descriptions already provide. It simply restates filtering by agent_id and time range.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: batch acknowledge messages as processed, distinguishing it from the sibling 'acknowledge_message' which is a single-message operation. It specifies filtering by agent_id and time range.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description includes '用于清理消息积压' (used to clean up message backlog), which provides usage context. However, it does not explicitly compare with alternatives or state when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

broadcast_messageA

向多个 Agent 广播消息,适用于任务协调、状态同步、紧急通知。

ParametersJSON Schema
NameRequiredDescriptionDefault
fromYes
contentYes
metadataNo
agent_idsYes接收方 Agent ID 列表

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full burden. It only says 'broadcast' and lists use cases, but fails to disclose important behavioral traits like delivery guarantees, message persistence, ordering, error handling for invalid agent_ids, or whether the metadata parameter affects behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that efficiently communicates the core purpose and use cases. Every phrase adds value and there is no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 4 parameters (one nested object), no output schema, and no annotations, the description is far from complete. It omits details about parameter constraints, behavior under failure, or expected results, making it insufficient for reliable agent invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is low (25% – only agent_ids has a description). The tool's description does not provide any additional parameter guidance beyond the schema. It does not explain the 'from' field, the expected 'content' format, or the 'metadata' usage, leaving critical ambiguity.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states '向多个 Agent 广播消息' (broadcast messages to multiple Agents), which clearly indicates the action and resource. It distinguishes the tool from siblings like send_message by specifying broadcast to multiple agents, and lists use cases (task coordination, status sync, urgent notifications).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear use contexts ('适用于任务协调、状态同步、紧急通知') that help the agent decide when to use this tool. However, it does not explicitly state when not to use it or mention alternatives (e.g., send_message for one-to-one).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

check_consumedA

查询某资源是否已被当前 Agent 处理过。在处理 WorkBuddy 发来的文件或信号前,先调用此工具检查,已处理的直接跳过。

ParametersJSON Schema
NameRequiredDescriptionDefault
agent_idYesAgent ID,如 hermes
resourceYes文件路径或信号 ID

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description carries the burden of behavioral disclosure. It clearly indicates a read-only check ('check whether... processed'), implying no side effects. Could be improved by explicitly stating no state modification.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short, front-loaded sentences with no wasted words. Every sentence serves a purpose: defining the tool and giving usage context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple check tool with 2 well-documented parameters and no output schema, the description is mostly complete. It could clarify the return type (e.g., boolean), but the purpose is clear.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the description does not need to explain parameters extensively. It adds little beyond schema descriptions (e.g., '文件路径或信号 ID' matches schema). Baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('check') and resource ('whether a resource has been processed'), clearly differentiating the tool's purpose from siblings like 'mark_consumed'. It also includes a usage scenario.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states when to use the tool ('before processing files or signals from WorkBuddy') and what to do if processed ('skip directly'). However, it does not mention alternatives or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

check_veto_windowA

检查策略的否决窗口状态。处于 48h 否决窗口内的策略,如果负面反馈超过正面反馈的 50%,可被 admin 撤回。

ParametersJSON Schema
NameRequiredDescriptionDefault
strategy_idYes策略 ID

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. The description explains the tool's behavior (checking veto window with condition) but does not detail side effects or return format. Adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with purpose. No waste, efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the low complexity (1 parameter, no output schema), the description is nearly complete. It explains the tool's purpose and key condition, but lacks return value specification.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a single parameter described. The description adds no extra semantics beyond the schema, which is sufficient for a simple parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool checks the veto window status of a strategy, with specific context about the 48-hour window and withdrawal condition. It distinguishes from siblings like 'veto_strategy' and 'feedback_strategy'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use (checking strategy's veto eligibility) but lacks explicit guidance on when not to use or alternatives. However, the context of siblings helps clarify its role.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_parallel_groupA

将多个任务标记为并行组。同一并行组内的任务可以同时执行,无需等待其他任务完成。适用于无依赖关系的同层任务。

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idsYes并行任务 ID 列表(至少 2 个,最多 10 个)

TDQS

A3.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. The description states the core behavior (simultaneous execution) but lacks details on side effects, reversibility, permissions, or response. For a mutation tool, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the action and purpose. Every word earns its place with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given one parameter, no output schema, and no annotations, the description is fairly complete. It covers purpose, usage context, and parameter constraints are in schema. However, it omits reversibility and response behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the description adds no significant meaning beyond what the schema already provides. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'mark' and resource 'parallel group', and explains that tasks can execute simultaneously. It distinguishes from sibling tools like add_dependency by focusing on parallel execution.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states '适用于无依赖关系的同层任务' (suitable for tasks at the same level with no dependencies), providing clear context. Does not name alternatives but the sibling list implies add_dependency is the alternative for dependencies.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_pipelineA

创建一个新的 Pipeline(任务流水线)。Pipeline 是任务的有序容器,可添加质量门进行阶段性质量检查。

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesPipeline 名称
descriptionNoPipeline 描述

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description bears full burden for behavioral disclosure. It only states creation and definition, omitting any side effects, prerequisites, error conditions, or return behavior. This is insufficient for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no wasted words. The key action and definition are front-loaded, making it easy to scan.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple creation tool with two string parameters and no output schema, the description provides adequate context about what a Pipeline is. However, it could mention the result (e.g., 'returns the created pipeline') for completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description does not add meaning beyond the schema for the two parameters (name and description), which are self-explanatory.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states 'Create a new Pipeline (task pipeline)' with a clear verb and resource. It further defines what a Pipeline is (ordered container with quality gates), which differentiates it from sibling tools like add_quality_gate or add_task_to_pipeline.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when a new pipeline is needed, but does not explicitly state when to use this tool versus alternatives. It lacks 'when not to use' or references to sibling tools for further actions, limiting guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

deactivate_agentA

挂起一个活跃 Agent(active → suspended)。已挂起再挂起幂等。

ParametersJSON Schema
NameRequiredDescriptionDefault
agent_idYes目标 Agent ID

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the burden. It discloses the state transition and idempotency, but does not mention permissions, side effects, or behavior for non-existent agents. This is adequate but could be more thorough.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with only two sentences, no redundant information, and efficiently conveys the core functionality.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple mutation nature (one parameter, no nested objects), the description covers the main behavioral points (state change, idempotency). However, it lacks information about the return value or error handling, which would make it more complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a description for agent_id. The tool description does not add additional semantics beyond what the schema provides, so it meets the baseline for a single parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool suspends an active agent (active → suspended) and mentions idempotency for already suspended agents. This distinguishes it from sibling tools like activate_agent.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use (to suspend an agent) but does not explicitly specify when not to use or provide alternatives. The context of sibling tools like activate_agent provides some differentiation, but the description lacks explicit usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_memoryA

删除一条记忆。仅能删除自己的私有记忆(admin 可删除任何记忆)。

ParametersJSON Schema
NameRequiredDescriptionDefault
memory_idYes要删除的记忆 ID

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It discloses authorization behavior (self vs admin). However, it does not mention side effects (e.g., irreversibility, cascading deletions) or additional behaviors beyond deletion.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise: two sentences, front-loaded with the action. Every sentence adds value (purpose and access control). No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given low complexity (one parameter, no output schema), the description covers the essential purpose and a key behavioral constraint (access control). It could be improved by noting whether deletion is permanent or if there are error conditions, but it is adequate for a simple delete operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with one parameter (memory_id). The description does not add extra meaning beyond what the schema provides (string ID). Baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('删除' = delete) and resource ('记忆' = memory). It distinguishes scope: only own private memories, with admin privilege for any memory. This differentiates it from sibling tools like store_memory, recall_memory, list_memories, search_memories.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides a specific condition: only own private memories can be deleted (admin can delete any memory). This implicitly guides when to use the tool versus not, though it lacks explicit alternatives or exclusion scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

download_fileB

下载附件,返回 Base64 编码的文件内容。

ParametersJSON Schema
NameRequiredDescriptionDefault
attachment_idYes附件 ID

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description carries the burden. It specifies the return format (Base64) but omits details like size limits, error handling, or whether it's read-only.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that front-loads the action, though it could be slightly more structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Low complexity tool with one param and no output schema. The description covers basic purpose and return format but lacks details about errors or encoding specifics.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with one parameter described. The description adds no extra meaning beyond the schema, so baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (download attachment) and the result (returns Base64 encoded file content), distinguishing it from siblings like 'upload_file'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when or when not to use this tool, no prerequisites mentioned, and no comparison with siblings like 'list_attachments' which could provide attachment IDs.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

evaluate_quality_gateA

评估质量门(通过/失败)。质量门失败时,Pipeline 中阻塞的后续任务自动进入 waiting 状态。

ParametersJSON Schema
NameRequiredDescriptionDefault
resultNo评估说明
statusYes评估结果
gate_idYes质量门 ID

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses an important side effect: when the quality gate fails, blocked subsequent tasks automatically enter waiting state. This adds behavioral context beyond the static schema, especially since no annotations are provided.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words. The description is front-loaded with the core purpose and efficiently conveys a critical side effect.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and three parameters, the description covers the main action and side effect. However, it could also mention the return value or confirmation behavior to be fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and each parameter has a description. The tool description does not add any additional meaning beyond what the schema already provides, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'evaluate' and the resource 'quality gate', and specifies the outcome (pass/fail) and the consequence of failure. It distinguishes from siblings like add_quality_gate by focusing on evaluation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives such as add_quality_gate or get_task_status. The description does not mention prerequisites, context, or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

feedback_strategyB

对策略提供反馈(正面/负面/中性)。每个 Agent 对每个策略只能反馈一次(防刷)。

ParametersJSON Schema
NameRequiredDescriptionDefault
appliedNo是否实际采纳到工作中
commentNo反馈备注
feedbackYes反馈类型
strategy_idYes策略 ID

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description mentions the one-feedback-per-agent constraint, which is a behavioral trait. However, it does not disclose other important aspects like whether feedback is mutable, who can view it, or side effects. Lacking annotations, the description carries the full burden but provides only partial transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Extremely concise: two short sentences. No filler or redundancy. The most critical information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers purpose and a key constraint, but lacks details on return values, feedback lifecycle, or how feedback is used. For a tool with no output schema, this leaves some gaps in completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 100% description coverage, so baseline is 3. The description adds no additional meaning beyond schema parameter descriptions, so no extra value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: providing feedback (positive/negative/neutral) on strategies. However, it does not differentiate from sibling tools like propose_strategy or apply_strategy, which could cause confusion.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool versus other strategy-related tools. The only context is the anti-spam constraint, but there is no explicit when-to-use or when-not-to-use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_inviteA

生成新 Agent 邀请码。仅 admin 可调用。邀请码默认 24 小时后过期。

ParametersJSON Schema
NameRequiredDescriptionDefault
roleNomember
expires_in_hoursNo

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It mentions admin-only access and default 24-hour expiration, which are key behavioral traits. However, it does not disclose any side effects, rate limits, or return value behavior. For a simple generation tool, this is adequate but not comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with only two sentences, no wasted words. It is front-loaded with the purpose and includes key constraints.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has two optional parameters and no output schema. The description does not specify the output format or how the invite code will be returned. It also does not explain the default role behavior. While the sibling list includes 'register_agent' for context, the description is incomplete for a full understanding.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. The description does not explain the 'role' or 'expires_in_hours' parameters, leaving their meaning unclear. The default expiration is implied but not linked to the parameter. The agent may not understand how to customize the invite behavior.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool generates a new Agent invite code. The verb 'generate' and resource 'invite code' are specific. The purpose is unambiguous and distinct from sibling tools like 'register_agent'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states that only admins can call this tool, providing clear usage context. It does not mention when not to use or alternatives, but the admin restriction is a strong guideline.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_db_statsA

获取数据库统计信息。包括各表行数、数据库文件大小、WAL 大小、最后归档时间等。仅 admin 可调用。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It discloses read-only nature and admin restriction. Could be more explicit about being side-effect free, but sufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences, front-loaded with purpose, no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Lack of output schema description; does not specify return structure beyond listing items. Could be more complete for agent to interpret results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters, so schema coverage is 100%. Description adds no parameter info (unnecessary), baseline 4 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states '获取数据库统计信息' (get database statistics) and lists specific items, making the purpose distinct from sibling tools which are action-oriented.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Specifies '仅 admin 可调用' (admin only), providing a clear constraint. However, it does not suggest when to use vs. alternatives, but given no similar sibling, this is acceptable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_evolution_statusA

查看 Evolution Engine 进化指标统计。包含经验数、策略数、审批率、贡献者排名等。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden. It announces a read-only operation ('查看') and lists the data returned. While it lacks detail on pagination or format, for a zero-parameter tool this is sufficient. No contradictions or missing critical traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, directly stating purpose and included data. Every word adds value, with no redundancy. It is appropriately sized for the tool's simplicity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters and no output schema, the description is complete. It tells the agent what the tool does and what metrics are returned. For a simple read-only tool, no further context is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, so schema coverage is 100%. The description does not need to add parameter information; it adds value by explaining the output content. Baseline 4 applies as there is nothing lacking.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: viewing Evolution Engine metrics. It lists specific included items (experience count, strategy count, approval rate, contributor ranking), making the verb+resource combination precise. Among siblings, no other tool serves this function.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when evolution metrics are needed but does not provide explicit when-to-use or when-not-to-use guidance. No alternatives or exclusions are mentioned, leaving the agent to infer based on the tool's name and description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_online_agentsA

查询当前通过 SSE 在线连接的 Agent 列表,分配任务前可先确认对方在线。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description carries full burden. It mentions SSE for online status, which is a behavioral trait, but lacks details on permissions, side effects, or frequency of updates.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence, front-loaded with purpose, no wasted words. Ideal conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple query tool with no parameters and no output schema, the description is adequate. However, it does not differentiate from sibling query_agents, which could be a minor gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist, so schema coverage is 100%. The description adds no parameter info, which is appropriate given zero parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it queries a list of online agents via SSE, with a specific verb and resource. It distinguishes itself from sibling tools like query_agents by focusing on online status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage before task assignment to confirm availability, but does not explicitly state when not to use it or mention alternative tools like query_agents.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_pipelineA

查询 Pipeline 状态和进度。返回 Pipeline 信息、关联任务列表及各状态统计。

ParametersJSON Schema
NameRequiredDescriptionDefault
pipeline_idYesPipeline ID

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Although no annotations are provided, the description implies a read-only operation by stating it 'queries' status. However, it does not explicitly disclose behavioral traits such as side effects, permissions, or data freshness. The description is adequate but not comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, consisting of two sentences only. The first sentence states the purpose, and the second describes the return value. No fluff or redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, no output schema), the description provides a high-level overview of what is returned. It might benefit from more detail on the return structure, but it is sufficient for understanding the tool's purpose.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 100% schema coverage, the schema already documents the parameter 'pipeline_id' as a string with description 'Pipeline ID'. The description adds no further semantic detail beyond the schema, so baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb '查询' (query) and the resource 'Pipeline 状态和进度' (status and progress). It also specifies the returned information, distinguishing it from sibling tools like get_task_status or list_pipelines.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide guidance on when to use this tool vs alternatives, nor does it mention when not to use it or any prerequisites. It only implies usage through its name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_task_dependenciesA

查询任务的上下游依赖关系。返回依赖图,包含每个关联任务的状态和依赖类型。

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idYes要查询的任务 ID

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the burden. It states the return includes a dependency graph with status and type, but does not explicitly confirm it is read-only or disclose any side effects. For a query tool, this is acceptable but not fully transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence in Chinese that states the tool's purpose and return. It is front-loaded with the core action and resource.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has one parameter, no output schema, and no annotations, the description adequately explains what it returns (dependency graph with status and type). It is complete enough for a simple query tool, though could mention upstream/downstream directionality.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers 100% of parameters (one required task_id). The description adds the context that the task_id is used to query dependencies, but no additional parameter-level details beyond the schema. With high schema coverage, a score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it queries upstream/downstream dependencies of a task, with a specific verb (查询/query) and resource (依赖关系). This distinguishes it from sibling tools like add_dependency or remove_dependency.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for reading dependencies, while siblings like add_dependency and remove_dependency are for modifying. However, it lacks explicit when-to-use or when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_task_statusA

查询任务的当前状态、进度和执行结果。

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idYes

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description carries full burden. It only states the query action but does not disclose if it is read-only, requires authentication, or handles errors. Minimal transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single, front-loaded sentence with no wasted words. Efficient and to the point.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple query tool with one parameter and no output schema, the description is fairly complete. However, it could mention output format or behavior on missing task.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not add any meaning for the 'task_id' parameter. It does not explain what task_id is or how to obtain it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description '查询任务的当前状态、进度和执行结果' clearly states it queries the current status, progress, and execution results of a task. It uses specific verb and resource, distinguishing it from sibling 'update_task_status'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use or alternatives. Implied usage is for retrieving task information, but no prerequisites or exclusions are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

heartbeatA

上报 Agent 心跳,维持在线状态并累积信任分。Agent 上线后应每 30 秒调用一次。超过 90 秒无心跳将自动标记为离线。连续在线心跳每 3 次自动增加 1 点 trust_score(上限 100)。

ParametersJSON Schema
NameRequiredDescriptionDefault
agent_idYesAgent ID(注册时返回的 agent_id)

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description fully bears the burden of behavioral disclosure due to missing annotations, and it transparently explains the automatic trust score accumulation and offline marking.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, with three sentences each providing essential information: purpose, frequency, timeout, and rewards.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple heartbeat tool with one parameter and no output schema, the description provides sufficient context about behavior and effects.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the single parameter, with a clear description. The tool description adds no extra parameter meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb '上报' (report) and resource '心跳' (heartbeat), and distinguishes it from sibling tools by its unique periodic maintenance function.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states when to call (every 30 seconds after going online) and the consequences of not calling (marked offline after 90 seconds), with no ambiguity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_attachmentsB

列出消息的所有附件列表。

ParametersJSON Schema
NameRequiredDescriptionDefault
message_idYes消息 ID

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, and the description omits behavioral details such as return format (IDs, URLs, or binary), pagination, auth requirements, or potential errors. Without annotation compensation, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Extremely concise (one short sentence) and front-loaded. However, it sacrifices necessary detail for brevity, making it minimally adequate.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and one parameter, the description fails to explain return values or behavior (e.g., empty list vs error). It is incomplete for an agent to confidently use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The tool description does not add meaning beyond the schema's trivial '消息 ID' description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('列出') and resource ('附件列表'), unambiguously indicating it lists all attachments of a message. It distinguishes from sibling tools like 'send_message' or 'search_messages'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool, prerequisites (e.g., message existence), or alternatives. The description lacks any usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_memoriesA

列出可访问的记忆列表。按创建时间倒序排列。可按 scope 筛选。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo最大返回数量
scopeNo可见范围筛选all
offsetNo分页偏移量

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description should fully disclose behavioral traits. It mentions sorting and filtering but does not state that the operation is read-only or safe, nor does it describe pagination behavior beyond what is in the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences with the purpose front-loaded. Each sentence adds necessary information (purpose, ordering, filtering). No wasted words or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and simple parameters, the description covers essential aspects: what the tool returns (list of memories), ordering, and filtering. It could mention pagination explicitly but the schema already does. Overall adequate for a list tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds context for the scope parameter (filtering) but does not elaborate on limit or offset beyond their schema descriptions, adding minimal value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (list), the resource (accessible memories), and key behaviors: ordering by creation time descending and filtering by scope. This distinguishes it from sibling tools like search_memories and recall_memory effectively.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide guidance on when to use this tool versus alternatives like search_memories. No context about prerequisites, limitations, or when not to use it is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_pipelinesB

列出所有 Pipeline。支持按状态筛选,按创建时间倒序排列。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo最大返回数量
statusNo状态筛选all

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, and description lacks behavioral details such as whether it is read-only, pagination behavior, or response format. Only filtering and sorting are mentioned.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with no wasted words. Could be slightly more structured but remains efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Missing information about response structure (e.g., what fields returned), pagination details, or additional filters. Adequate for a simple listing tool but not fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but description adds value by stating 'sorted by creation time in descending order', which is not in the schema. However, parameter descriptions are minimal.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it lists all pipelines and supports filtering by status with descending creation order. However, it does not explicitly differentiate from siblings like get_pipeline.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like get_pipeline or search tools. The description only states what it does.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_strategiesB

查询策略/经验列表。支持按状态、分类、提议者筛选。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo最大返回数量
statusNo状态筛选
categoryNo分类筛选
proposer_idNo提议者 Agent ID

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It only states it lists and filters, but fails to disclose that it is a read-only operation, whether pagination is applied (the limit parameter is in schema but not mentioned), or any ordering or side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that is concise and front-loaded with the purpose. However, it lacks structure and does not separate different aspects of behavior.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of output schema, the description should explain the return value or format. It does not. Additionally, the tool has multiple filtering parameters but no explanation of how they interact (e.g., AND/OR). The description is too minimal for a tool with 4 parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, so the schema already documents each parameter. The description simply repeats the filtering options without adding additional meaning or format details beyond what is in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists strategies/experiences with filtering by status, category, and proposer. It distinguishes from sibling tools like 'search_strategies' by being a straightforward list with filtering, not a full-text search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this list tool versus the similar 'search_strategies' or other related tools. There is no mention of prerequisites or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

mark_consumedA

记录 Agent 已处理某个资源(文件路径或信号 ID)。处理完 WorkBuddy 发来的任何文件或信号后必须调用,防止下次重复处理。

ParametersJSON Schema
NameRequiredDescriptionDefault
notesNo处理说明,方便日后追溯
actionYes执行的动作,如 reviewed_and_replied / acknowledged / processed
agent_idYes执行方 Agent ID,如 hermes
resourceYes文件路径(相对 shared 目录)或信号 ID
resource_typeNofile

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

无注释,描述仅说明防止重复处理,未提及写入操作、权限要求、错误处理等行为。对于标记类工具,行为可预期,但缺乏透明性。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

两句话,简洁明了,首句说明功能,次句给出使用时机,无冗余信息。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

虽有5个参数且无输出schema,但描述基本覆盖目的和使用场景。未说明重复标记行为或错误处理,对简单工具而言可接受但不够完整。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema覆盖率达80%,描述未额外说明参数含义。参数已在schema中有良好描述,因此基线评分为3。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

描述明确说明工具用途:记录Agent已处理资源,防止重复处理。使用具体动词'记录'和资源类型'文件或信号',与sibling 'check_consumed'区别明显。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

描述指出在处理完任何文件或信号后必须调用,提供了明确的调用时机。虽未显式说明替代方案,但结合sibling 'check_consumed'可推断其用途。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

pause_pipelineA

暂停一个活跃 Pipeline(active → paused)。已暂停再暂停幂等。

ParametersJSON Schema
NameRequiredDescriptionDefault
pipeline_idYes目标 Pipeline ID

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully communicate behavioral traits. It discloses the state transition (active to paused) and idempotency, but fails to mention side effects (e.g., impact on running tasks, notifications, or whether the pipeline can be resumed). Lack of details on resource locking or permissions is a gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences, each providing essential information: the action and idempotency. No redundant words. Front-loading the main purpose achieves high efficiency.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of the tool (one parameter, no output schema, no nested objects), the description covers the core purpose and idempotency. However, it omits prerequisites (e.g., pipeline must exist and be active), which are important for correct usage. The presence of resume_pipeline among siblings implies reversibility, but this is not stated.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with one parameter (pipeline_id) described as '目标 Pipeline ID'. The description does not add any additional meaning or constraints beyond what the schema already provides, hence baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (pause), the resource (Pipeline), and the state transition (active to paused). The mention of idempotency for already paused pipelines adds specificity. It effectively distinguishes from sibling tools like resume_pipeline.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool should be used for active pipelines (active → paused) and notes idempotency for already paused ones. However, it does not explicitly state prerequisites (e.g., pipeline must be active) or when not to use it (e.g., if pipeline is not found or is already paused in an unexpected state). No guidance on alternatives is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

propose_strategyA

提议一个策略。策略需 admin 审批后才能被其他 Agent 搜索和采纳。Hub 会自动判定敏感级别。

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYes策略标题
contentYes策略内容(Markdown,最多 5000 字符)
task_idNo关联任务 ID
categoryYes策略分类

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. Description discloses that admin approval is required before the strategy is searchable/adoptable and that Hub auto-determines sensitivity, but lacks details on side effects, mutability, or error handling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is short (two sentences in Chinese), front-loaded with the action, and every sentence provides necessary context. Slightly more structured detail could improve it.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequate for a 4-param tool with no output schema, but missing return value info and does not mention error states. Description covers primary purpose and approval flow insufficiently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. Description adds no additional meaning beyond what is already in the schema for parameters title, content, category, and task_id.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the verb '提议' (propose) and resource '策略' (strategy), and distinguishes from siblings by adding context about admin approval and automatic sensitivity detection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Description implies usage for proposing new strategies with approval needed, but does not explicitly state when to use this tool versus alternatives like propose_strategy_tiered or other strategy-related tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

propose_strategy_tieredB

提议策略(分级审批)。Hub 自动判定审批等级:auto(自动通过+72h观察窗口)、peer(同行审批)、admin(管理员审批)、super(高风险,需人工审批)。返回判定等级和审批状态。

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYes策略标题
contentYes策略内容(Markdown,最多 5000 字符)
task_idNo关联任务 ID
categoryYes策略分类

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description must fully convey behavioral traits. It states the tool returns approval level and status but does not disclose whether it mutates state, creates records, triggers notifications, or has any side effects. The term '提议' suggests proposing, but the actual behavior (e.g., if it persists the strategy) is unclear. This is insufficient for an agent to understand consequences.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence followed by a parenthetical list of approval levels. It is concise and front-loaded with the core purpose. However, the list format could be clearer, and the sentence structure is somewhat dense. It earns its place by being short and informative.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given there is no output schema, the description mentions return values (level and status) but does not specify their format or fields. The tool has 4 parameters and is moderately complex, but the description does not explain how the approval level is determined (e.g., criteria) or what the status values are. It covers the basics but lacks details for full autonomous usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All four parameters are fully described in the input schema (100% coverage), so the description does not need to add meaning. The description adds no extra parameter-level details beyond what the schema provides, meeting the baseline expectation of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: proposing a strategy with tiered approval. It explicitly lists the approval levels (auto, peer, admin, super) and mentions the return of level and status. It differentiates from sibling 'propose_strategy' by specifying '分级审批' (tiered approval), making the purpose distinct and actionable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for submitting strategies for automatic tiered approval but does not explicitly state when to use it over alternatives like 'propose_strategy' or 'approve_strategy'. There is no guidance on prerequisites, when not to use it, or context for the different categories. The mention of 'Hub auto-determines approval level' provides some context but lacks definitive usage rules.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

query_agentsB

查询已注册的 Agent 列表。支持按状态、角色筛选。

ParametersJSON Schema
NameRequiredDescriptionDefault
roleNo角色筛选
statusNoAgent 状态筛选all
capabilityNo能力筛选

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; the description implies a read operation but does not explicitly state non-destructive behavior, rate limits, or pagination. It lacks sufficient transparency for a tool with no annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, each adding value. First defines purpose, second adds filtering capability. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list query with 3 optional parameters and no output schema, the description is adequate. It misses details like return format but is complete enough given low complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so each parameter is already described. The tool description adds no new meaning beyond the schema, meeting the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it queries the registered agent list and supports filtering by status and role. It is specific and distinguishes from siblings like 'get_online_agents' by implying broader scope, though not explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like 'get_online_agents'. The description does not mention exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

recalculate_trust_scoresA

手动触发信任评分重算。基于多因子自动计算:verified capabilities (+3)、approved strategies (+2)、positive feedback (+1)、negative feedback (-2)、rejected applications (-3)、revoked tokens (-10)。不传 agent_id 则重算全部。仅 admin 可调用。

ParametersJSON Schema
NameRequiredDescriptionDefault
agent_idNo目标 Agent ID(不传则重算全部 Agent)

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully explains the behavior: it recalculates trust scores based on listed factors with weights, and includes access control (admin only). It does not mention synchronicity or side effects, but the core behavior is transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The two-sentence description is packed with information: action, factor breakdown, default behavior, and access control. Every sentence is necessary and succinct, with no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with one optional parameter and no output schema, the description is complete. It covers the purpose, how it works, default behavior, and who can call it. A minor gap is the lack of mention of whether the recalculation is synchronous or asynchronous, but that is not critical for selection.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the single optional parameter. The description adds meaning by explaining that omitting agent_id triggers recalculation for all agents, which goes beyond the schema's description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: manually triggering trust score recalculation. It explains the multi-factor calculation with specific weights, distinguishing it from related tools like 'set_trust_score' and 'score_applied_strategies'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides guidance on when to use the tool: optionally specify an agent_id or omit to recalculate all. It also notes that only admins can call it. However, it does not explicitly contrast with siblings or provide when-not-to-use scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

recall_memoryA

通过关键词全文搜索召回记忆。搜索范围包括自己的私有记忆、组内共享记忆和全局记忆。使用 FTS5 引擎,支持多关键词、短语搜索。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo最大返回数量
queryYes搜索关键词(如 'Agent 通信协议 错误修复')
scopeNo搜索范围all

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must cover behavior. It mentions using FTS5 engine and scopes (private, group, collective), which adds transparency. However, it omits details like permissions needed, whether results are ordered by relevance, or any side effects. Adequate but not exceptional.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that packs essential information: engine (FTS5), purpose (search memories), and scope types. No unnecessary words; extremely concise and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a search tool with 3 parameters and no output schema, the description covers purpose, engine, and scopes. It lacks explanation of return format or whether results include full content or metadata. Adequate but could provide more on what the response looks like.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents each parameter's meaning. The description adds context (e.g., FTS5 engine, scopes) but does not significantly enhance understanding of individual parameters beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it performs full-text search across memories using FTS5 engine, specifying scopes like private, group, and collective. It distinguishes the tool as 'recall memory' vs. other list/search tools, though it does not explicitly differentiate from sibling 'search_memories'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use it (for keyword-based memory search) but provides no guidance on when not to use it or alternatives like 'search_memories' or 'list_memories'. Usage context is implied but not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

register_agentA

注册新 Agent 到 Hub。需要有效的邀请码。注册成功返回 agent_id 和 api_token(仅显示一次)。

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesAgent 名称
invite_codeYes邀请码(通过 /admin/invite/generate 获取)
capabilitiesNoAgent 能力列表,如 ['mcp', 'sse', 'memory']

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided; the description covers that registration requires an invite code and returns agent_id and api_token (shown once), but lacks details on mutation or idempotency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences clearly convey purpose, prerequisite, and return behavior with no extraneous content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description explains return values. It covers the core behavior and precondition, but lacks details on error handling or optional parameters like 'capabilities'.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so parameters are already described. The description adds information about the return value (agent_id and api_token), which is not part of the input schema, but does not enhance parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states 'Register new Agent to Hub' with a specific verb and resource. It distinguishes from sibling tools like query_agents or set_agent_role by focusing on registration.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions the requirement of a valid invite code but does not provide guidance on when to use this tool versus alternatives, nor does it exclude other scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

reject_handoffA

拒绝任务交接。只有被请求的 target Agent 可以调用。拒绝后交接请求取消。

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonNo拒绝原因
task_idYes要拒绝的任务 ID

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses the authorization constraint (target agent only) and the effect (handoff request canceled). Given no annotations, this covers key behavioral traits, though side effects or error conditions are not mentioned.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence. It is efficient but could be improved by including a brief usage note for clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description provides essential information but misses potential details like error handling or status of the task after rejection, leaving some gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear parameter descriptions. The tool description does not add additional meaning beyond the schema, so baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'reject task handoff' and specifies that only the requested target agent can call, distinguishing it from siblings like accept_handoff.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description specifies that only the requested target agent can call, providing a clear condition for use. It implicitly contrasts with accept_handoff for acceptance, offering adequate guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

remove_dependencyA

删除任务依赖关系。删除后自动检查下游任务是否可以开始执行。

ParametersJSON Schema
NameRequiredDescriptionDefault
upstream_idYes上游任务 ID
downstream_idYes下游任务 ID

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses post-deletion automatic check of downstream tasks, adding behavioral context beyond simple deletion. No annotations provided.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no waste. Front-loaded with action, second sentence adds important side effect.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequate for a simple deletion tool with no output schema. Explains action and automatic check, but lacks error handling or prerequisites.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. Description adds no extra meaning beyond parameter names ('upstream_id', 'downstream_id').

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it deletes task dependencies (verb+resource) and distinguishes from sibling tools like add_dependency and get_task_dependencies.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implies usage for removing dependencies but lacks explicit when-to-use, when-not-to-use, or alternatives guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

request_handoffB

请求任务交接。将任务转交给另一个 Agent。目标 Agent 需要调用 accept_handoff 或 reject_handoff。只有负责人或创建者可以发起交接。

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idYes要交接的任务 ID
target_agent_idYes目标 Agent ID(交接对象)

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses that only the responsible person or creator can initiate the handoff, and that the target must respond. However, it does not mention side effects, timeouts, or error conditions. Without annotations, more detail would be beneficial.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with three sentences covering purpose, required follow-up, and a constraint. It is front-loaded and contains no unnecessary fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the basic operation and constraints, but lacks information about return values (no output schema), error handling, or what happens if the target agent does not respond. For a request tool, it is somewhat complete but could be enhanced.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides descriptions for both parameters (task_id, target_agent_id). The tool description does not add additional meaning or context beyond what the schema offers, so baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it requests task handoff and transfers to another agent, which is specific. However, it does not explicitly differentiate from similar tools like assign_task, which could cause confusion.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It mentions the target agent needs to call accept_handoff or reject_handoff, hinting at the workflow. But it lacks explicit guidance on when to use this tool versus alternatives, such as assign_task or other handoff methods.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

resume_pipelineA

恢复一个暂停的 Pipeline(paused → active)。已激活再恢复幂等。

ParametersJSON Schema
NameRequiredDescriptionDefault
pipeline_idYes目标 Pipeline ID

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description fully carries the burden of behavioral disclosure. It discloses the state transition (paused to active) and idempotency. It does not cover permissions or error cases, but for a simple state-change tool, this is adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise: one sentence with a parenthetical status transition and an idempotency note. Every word adds value, with no unnecessary content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has only one parameter, no output schema, and simple behavior (state transition), the description provides all necessary context: what it does, the status change, and idempotency. Completely adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% (pipeline_id has a description). The tool description does not add extra meaning to the parameter beyond what the schema already provides. Baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: resuming a paused pipeline (paused → active). It uses specific verb '恢复' (resume) and resource 'Pipeline', and distinguishes itself from the sibling 'pause_pipeline' by specifying the state transition.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context: call when a pipeline is paused and needs to be active. It notes idempotency ('已激活再恢复幂等'), indicating it can be safely called on an already active pipeline. However, it does not explicitly state when not to use or provide alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

revoke_tokenA

吊销 API Token,使其立即失效。仅 admin 可调用。

ParametersJSON Schema
NameRequiredDescriptionDefault
token_idYes要吊销的 Token ID

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description fully discloses the tool's behavior: it revokes a token immediately and requires admin privileges. This is straightforward for a mutation operation, though it does not detail consequences like non-admin attempts or idempotency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with two short sentences, no redundant words, and essential information front-loaded. Every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, no output schema), the description provides adequate context: the action, effect, and access control. It could mention error handling for non-admin calls, but overall it is mostly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage for the single parameter 'token_id' with a clear description. The description adds no further meaning beyond what the schema already provides, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('revoke'), the resource ('API Token'), and the immediate effect ('使其立即失效'), which translates to 'making it invalid immediately'. This distinguishes it from sibling tools, none of which handle token revocation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description specifies a precondition ('仅 admin 可调用', 'Only admin can call'), providing clear context on who can use the tool. It does not explicitly state when not to use or mention alternatives, but the sibling list offers no similar tool, making the guidance sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

score_applied_strategiesA

自动评分已采纳策略:将 7 天前采纳但仍为 neutral 反馈的策略降为 negative。应定期调用。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It reveals the trigger condition (7 days post-adoption with neutral feedback) and the action (downgrade to negative), but lacks details on idempotence, scope, side effects, or authentication requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise: two short sentences that front-load the purpose and action. Every word contributes meaning, with no fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless tool with no output schema, the description covers the key context: what it does, when it triggers, and how often (periodic). It could be slightly more complete by defining 'neutral feedback' or confirming no side effects, but overall it is sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, and schema coverage is effectively 100%. Per guidelines, baseline is 4. The description adds no parameter info (none needed) and focuses on the tool's behavior.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action: downgrading strategies adopted 7 days ago with neutral feedback to negative. The verb 'downgrade' and resource 'strategies' are specific, and the condition (7 days, neutral) distinguishes it from sibling tools like 'apply_strategy' or 'feedback_strategy'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions it should be called periodically ('应定期调用'), providing a usage pattern, but does not explicitly differentiate from siblings or state when not to use it. The context is implied rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_memoriesB

全文搜索记忆内容。使用 FTS5 引擎,支持多关键词、短语搜索。可按可见范围和标签筛选。

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNo标签筛选(如 ['work', 'important'])
limitNo最大返回数量
queryYes搜索关键词(如 '通信协议 错误修复')
scopeNo可见范围筛选all
offline_window_daysNo离线回退窗口(天)。当 FTS5 命中不足 5 条时,回退到最近 N 天的 collective/group 全量记忆

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full responsibility. It mentions the use of FTS5 and fallback logic for offline_window_days, but it does not disclose whether the operation is read-only, side effects, or behavior when queries return no results. Important behavioral traits are omitted.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise, consisting of two sentences that are front-loaded with the main purpose and engine. Every sentence adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has 5 parameters and complex fallback behavior, but the description does not explain the return format or pagination. While it covers the search and filtering capabilities, it lacks details on output structure, making it less complete for a fully comprehensive understanding.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already describes all parameters. The description adds minimal extra meaning beyond the schema, such as clarifying the query phrase search and scope filtering, but it's not substantial enough to raise the score above baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool performs full-text search on memory content, specifying the FTS5 engine and support for multi-keyword and phrase search. It distinguishes from sibling tools like recall_memory and list_memories by focusing on search capabilities.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide any guidance on when to use this tool versus alternatives, nor does it mention when not to use it. No context on prerequisites or exclusion criteria is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_messagesA

全文搜索消息内容。支持按 Agent ID 筛选。使用 SQL LIKE 模糊匹配(暂无 FTS5 索引)。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo最大返回数量
queryYes搜索关键词
agent_idNo限定 Agent ID(按发送方或接收方过滤)

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Since no annotations are provided, the description fully carries the transparency burden. It discloses the use of SQL LIKE fuzzy matching and the absence of a FTS5 index, which are important behavioral traits. However, it lacks details about result sorting, pagination, or return structure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the core purpose, and efficiently conveys essential details without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the main functionality and filtering, but given no output schema, it omits information about return values (e.g., fields returned, sorting). The limit parameter is explained in schema but not in description. It is adequate but not fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, but the description adds value beyond schema by explaining the search algorithm (LIKE) and performance limitation (no index). This helps the agent understand behavior not captured in parameter descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states '全文搜索消息内容' (full-text search of message content), providing a clear verb and resource. It naturally distinguishes from sibling tools like search_memories and search_strategies by targeting messages.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for searching messages with optional agent ID filtering and mentions the matching method, but does not explicitly state when to use this tool vs alternatives or provide any exclusions. Context signals show no other message search tool, so the guidance is implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_strategiesA

通过关键词全文搜索策略和经验。仅返回已审批(approved)的策略。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo最大返回数量
queryYes搜索关键词(支持中文 N-gram 分词)
categoryNo分类筛选

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears the full burden. It discloses that the tool performs read-only full-text search and filters by approval status, which is the key behavioral trait. However, it does not cover aspects like rate limits, authentication, or what happens on no results, leaving some gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences in Chinese, totaling about 30 characters. It is front-loaded with the core purpose and a critical constraint. Every word adds value, with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and no annotations, the description covers the essential purpose and a key constraint but lacks details on return format, pagination, sorting, or error handling. For a search tool, more context (e.g., what fields are returned) would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with clear descriptions for all three parameters (query, category, limit). The description adds overarching context (full-text search, approved only) but does not add meaning beyond the schema for individual parameters. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it searches strategies and experiences via keyword full-text search and only returns approved strategies. The name 'search_strategies' aligns with the verb 'search' and resource 'strategies'. Among siblings like 'list_strategies' and 'propose_strategy', the description distinguishes by specifying full-text search and approval filter.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states that only approved strategies are returned, indicating when to use this tool (to search approved strategies). It does not explicitly state when not to use it or mention alternatives like 'list_strategies' for a broader view, but the context is clear enough.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

send_messageA

向另一个 Agent 发送即时消息。对方在线时实时送达(<50ms),离线时持久化存储,上线后自动补发。

ParametersJSON Schema
NameRequiredDescriptionDefault
toYes接收方 Agent ID
fromYes发送方 Agent ID,如 workbuddy 或 hermes
typeNo消息类型message
contentYes消息正文,支持 Markdown
metadataNo附加结构化数据,如 taskId、priority 等

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description covers key behavioral traits: real-time delivery under 50ms, offline persistence, and automatic retransmission on reconnection. It does not mention error scenarios or permissions, but provides sufficient transparency for basic use.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence front-loads the core purpose and includes critical delivery behavior without any wasted words. Perfectly structured and concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 5 parameters (3 required), no output schema, and no annotations, the description covers core behavior but lacks details on error handling, what happens when the target agent does not exist, or return values. Adequate but incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for all parameters. The tool description adds no extra meaning beyond what the schema already provides, so it meets the baseline expectation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool sends instant messages to another agent, distinguishing it from sibling tools like broadcast_message and acknowledge_message. The verb '发送' and target '另一个 Agent' are specific.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context by detailing delivery behavior (real-time vs offline persistence) but does not explicitly state when not to use this tool or mention alternatives like broadcast_message for group delivery.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_agent_roleA

设置 Agent 角色(admin/member/group_admin)。group_admin 需指定 managed_group_id,仅能管理该 parallel_group 内成员的任务。仅 admin 可调用。

ParametersJSON Schema
NameRequiredDescriptionDefault
roleYes新角色
agent_idYes目标 Agent ID
managed_group_idNo管理组 ID(仅 group_admin 角色需要)

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full burden. It discloses that the tool sets a role, requires admin privileges, and has a conditional parameter for group_admin. However, it does not describe the mutation's impact (e.g., whether previous roles are revoked, if changes are reversible, or any side effects).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loading the main purpose and then adding a constraint. Every sentence contributes without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and 3 parameters with 100% schema coverage, the description covers caller restrictions and the conditional parameter. However, it lacks behavioral details like whether the change is immediate, error conditions (e.g., invalid role for certain agents), or effects on existing group assignments, leaving some gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%. The description adds value by clarifying that managed_group_id is only required when role is group_admin, reinforcing the schema's note. For agent_id and role, the description does not add beyond schema, but the overall nuance raises it above baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb '设置' (set) and the resource 'Agent 角色' (agent role), lists the three possible roles (admin, member, group_admin), and includes a specific note about group_admin needing managed_group_id. This distinguishes it from sibling tools like register_agent or query_agents.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides context: '仅 admin 可调用' (only admin can call) and 'group_admin 需指定 managed_group_id' (group_admin requires managed_group_id). However, it does not explicitly state when to use this tool over alternatives, such as when to use set_agent_role versus register_agent or other agent management tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_trust_scoreA

调整 Agent 信任分(-100 到 +100 的增量)。信任分影响 collective 记忆搜索排序,高信任 Agent 的记忆排名靠前。仅 admin 可调用。

ParametersJSON Schema
NameRequiredDescriptionDefault
deltaYes信任分增量(正数加分,负数扣分)
agent_idYes目标 Agent ID

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses that the operation is an increment (delta), the valid range, the impact on memory ranking, and the authorization requirement. Without annotations, the description adequately covers behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences packed with essential information: range, effect, and access control. No superfluous content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Explains purpose, effect, and access. Lacks explicit mention of return value or error handling, but for a simple adjustment tool with well-defined parameters, the description is largely complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and already describes both parameters ('agent_id' and 'delta') with clear explanations. The tool description adds no new semantic detail beyond the schema, so baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool adjusts an agent's trust score with a specific range (-100 to +100) and explains the effect on memory search ranking. It distinguishes from the sibling 'recalculate_trust_scores' by implying manual adjustment.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states 'only admin can call', providing a clear access restriction. While it does not explicitly mention when not to use it, the admin constraint offers sufficient guidance for appropriate use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

share_experienceA

分享经验到 Hub。经验直接发布(不需审批),所有 Agent 可见。适合记录踩坑经验、最佳实践。

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNo标签列表,如 ['debugging', 'mcp']
titleYes经验标题
contentYes经验内容(Markdown,最多 5000 字符)
task_idNo关联任务 ID

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses key behavioral trait: experiences are published directly without approval and visible to all agents. Since no annotations are provided, the description handles transparency well, though it could mention editability or retention policies.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two efficient sentences in Chinese, no extraneous information. Front-loaded with the core action and key condition (direct publishing). Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequate for a simple share tool with 4 parameters. Lacks output description and error scenarios, but sufficient for an agent to understand when and how to invoke it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds 'Markdown' and 'max 5000 characters' which are already in schema. No additional parameter-level context beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states 'share experience to Hub' with direct publishing, visible to all Agents. While it describes the purpose well, it does not explicitly differentiate from similar sibling tools like broadcast_message or send_message.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Indicates suitability for recording pitfalls and best practices, but lacks explicit when-not-to-use or alternative recommendations. Usage is implied but not comprehensive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

store_memoryA

存储一条记忆到 Hub。支持 private(仅自己可见)、group(组内可见)、collective(全局可见)三种范围。存储后可通过 recall_memory 全文搜索召回。

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNo标签列表,如 ['work', 'important']
scopeNo可见范围private
titleNo记忆标题(最多 500 字符)
contentYes记忆内容(最多 10000 字符)
source_task_idNo关联任务 ID(用于溯源追踪)

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It adds context about scope privacy levels but does not disclose other behavioral traits such as whether the operation is idempotent, any rate limits, required authentication, or what happens on exceeding content limits (though schema has maxLength). The description partially meets expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with two sentences that front-load the core action and scope. Every word serves a purpose, and there is no extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 5 parameters and no output schema or annotations, the description covers the core function but lacks details on return values, error handling, and usage scenarios. It references recall_memory for retrieval, which adds some completeness, but overall gaps remain.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds minimal value beyond the schema; it explains the scope enum values and the ability to recall via recall_memory, but does not elaborate on tags or source_task_id semantics. Thus, it does not significantly enhance parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool stores a memory to Hub and lists three scopes. It distinguishes itself from sibling tools like recall_memory and delete_memory by focusing on storage. However, it doesn't explicitly differentiate between creating a new memory and updating an existing one, though the context implies creation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions that stored memories can be recalled via recall_memory, providing some usage context. However, it does not explain when to use this tool versus alternatives like share_experience or send_message, nor does it specify any prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_task_statusA

更新任务执行状态,自动实时通知发起方。支持中途汇报进度(in_progress + progress)。

ParametersJSON Schema
NameRequiredDescriptionDefault
resultNo执行结果或错误信息
statusYes
task_idYes任务 ID
agent_idYes执行方 Agent ID
progressNo完成百分比,0-100

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description bears full responsibility. It discloses automatic real-time notification and support for progress reporting. However, it omits other behaviors such as idempotency, permission requirements, or what happens with the result field on completion/failure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise at two sentences, front-loading the core purpose and adding key behavioral notes without any redundant or extraneous content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 5 parameters, no output schema, and no annotations, the description covers the main purpose and notification behavior but lacks details on result usage, error handling, and idempotency. It is adequate but not fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is high (80%), so baseline is 3. The description adds value by explicitly linking the 'in_progress' status with the 'progress' parameter ('支持中途汇报进度(in_progress + progress)'), providing semantic connection beyond the schema's individual descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states '更新任务执行状态' (update task execution status), specifying the verb and resource. It further distinguishes from siblings like get_task_status by emphasizing real-time notification and progress reporting.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives context for when to use the tool: for updating status with real-time notification and intermediate progress reporting. However, it does not explicitly mention when not to use it or point to alternatives like get_task_status for read-only access.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

upload_fileB

上传文件附件并关联到消息。文件以 Base64 编码传入,服务端解码后存储到本地磁盘。

ParametersJSON Schema
NameRequiredDescriptionDefault
filenameYes文件名(含扩展名)
mime_typeNoMIME 类型application/octet-stream
message_idYes关联的消息 ID
content_base64Yes文件内容的 Base64 编码

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description carries the full burden of disclosing behavioral traits. It mentions Base64 encoding and server-side decoding/storage, but omits critical details like file size limits, allowed MIME types, idempotency, permissions, or error handling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences that front-load the core purpose and include a technical detail (Base64 encoding). Every word earns its place with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description fails to mention the return value or output (e.g., file ID, URL). Given no output schema, this is a significant gap. Also missing are potential errors or side effects, making the tool contextually incomplete for safe agent use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 100% coverage, so the baseline is 3. The description reinforces that content_base64 is Base64-encoded, but adds no additional meaning beyond the schema for other parameters. The extra clarification is minor.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool uploads a file attachment and associates it with a message, specifying the encoding and storage process. It distinguishes itself from sibling tools like 'download_file' by the upload action.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., when to upload vs. when to download). There is no mention of prerequisites, constraints, or context that would help an agent choose this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

veto_strategyA

撤回处于否决窗口内的策略(admin only)。仅在负面反馈超过正面反馈 50% 时可用。

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonYes撤回理由
strategy_idYes策略 ID

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It reveals the admin-only restriction and the feedback ratio condition, but does not explain side effects (e.g., whether the strategy is deleted or archived) or error scenarios. The transparency is adequate but incomplete.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description consists of two short sentences that are front-loaded with the core purpose. Every word is necessary; no redundant or filler content. It is highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 2 required parameters, no output schema, and no annotations, the description covers the essential context: action, admin-only rule, and the specific condition for use. It lacks mention of return values or error states, but for a tool with this complexity, it is reasonably complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers 100% of parameters with descriptions. The tool description adds no additional meaning beyond the schema (e.g., no format constraints or examples). Following the guidelines, a baseline of 3 is appropriate because the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (withdraw a strategy within the veto window) and the target resource (strategy). It includes a specific condition (admin only, negative feedback > positive feedback by 50%), distinguishing it from related tools like propose_strategy or approve_strategy.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description specifies when the tool is available (negative feedback > positive feedback by 50%) but does not provide guidance on when not to use it or mention alternatives (e.g., check_veto_window as a prerequisite). The condition is implied but explicit exclusions or alternatives are missing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updatesv2.5.0
    • Addedactivate_agent
    • Addeddeactivate_agent
    • Addedpause_pipeline
    • Addedresume_pipeline
  2. 2 tool updatesv2.4.9
    • Addedgenerate_invite
    • Changedsearch_memories1 field changed
      • addedInput schema / properties / offline_window_days
        Added value: +{
        +  "default": 7,
        +  "description": "离线回退窗口(天)。当 FTS5 命中不足 5 条时,回退到最近 N 天的 collective/group 全量记忆",
        +  "maximum": 30,
        +  "minimum": 0,
        +  "type": "number"
        +}
  3. 53 tool updatesv2.4.6
    • First observedaccept_handoff
    • First observedacknowledge_message
    • First observedadd_dependency
    • First observedadd_quality_gate
    • First observedadd_task_to_pipeline
    • First observedapply_strategy
    • First observedapprove_strategy
    • First observedarchive_data
    • First observedassign_task
    • First observedbatch_acknowledge_messages
    • First observedbroadcast_message
    • First observedcheck_consumed
    • First observedcheck_veto_window
    • First observedcreate_parallel_group
    • First observedcreate_pipeline
    • First observeddelete_memory
    • First observeddownload_file
    • First observedevaluate_quality_gate
    • First observedfeedback_strategy
    • First observedget_db_stats
    • First observedget_evolution_status
    • First observedget_online_agents
    • First observedget_pipeline
    • First observedget_task_dependencies
    • First observedget_task_status
    • First observedheartbeat
    • First observedlist_attachments
    • First observedlist_memories
    • First observedlist_pipelines
    • First observedlist_strategies
    • First observedmark_consumed
    • First observedpropose_strategy
    • First observedpropose_strategy_tiered
    • First observedquery_agents
    • First observedrecalculate_trust_scores
    • First observedrecall_memory
    • First observedregister_agent
    • First observedreject_handoff
    • First observedremove_dependency
    • First observedrequest_handoff
    • First observedrevoke_token
    • First observedscore_applied_strategies
    • First observedsearch_memories
    • First observedsearch_messages
    • First observedsearch_strategies
    • First observedsend_message
    • First observedset_agent_role
    • First observedset_trust_score
    • First observedshare_experience
    • First observedstore_memory
    • First observedupdate_task_status
    • First observedupload_file
    • First observedveto_strategy

TDQS

B3.4/5.0

Scored across 58 tools

Disambiguation3/5

Many tools have distinct purposes (e.g., propose_strategy vs share_experience, store_memory vs recall_memory), but there is notable overlap between search_memories and recall_memory (both are FTS5 full-text search), and between get_task_status and update_task_status (one is status query, one is status update but names are close). Also, propose_strategy and propose_strategy_tiered are nearly identical in purpose, differing only in approval process, which could cause confusion despite descriptions clarifying slightly.

Naming Consistency4/5

Most tool names follow a clear verb_noun pattern (e.g., accept_handoff, get_task_status, create_pipeline, activate_agent). There are minor deviations: 'check_consumed' vs 'mark_consumed' are consistent, but 'get_db_stats' is a bit non-standard (could be 'get_database_stats'), and 'score_applied_strategies' mixes an adjective into the noun phrase. However, the overall consistency is high.

Tool Count2/5

58 tools is far beyond the typical 3-15 range. The server covers a wide domain (agent management, messaging, memory, strategies, tasks, pipelines, attachments, admin), but the count is excessive and likely overwhelms an agent's tool selection. Many tools are variants (e.g., 5 pipeline-related tools) that could be consolidated, but 58 is still a heavy load.

Completeness4/5

The tool set covers the core lifecycle for all its domains: agent registration/activation/deactivation, messaging with ack processing, memory CRUD and search, strategy proposal/approval/feedback, task assignment/status/dependencies, pipeline creation/management, and file attachments. Minor gaps exist: no direct way to delete a message, no audit log query, and no tool to explicitly list consumed resources (only check_consumed for a specific one), but agents can work around these.

Maintenance

ActivityMaintained
ResponsivenessUnresponsive

Related MCP Connectors

Related MCP Servers