必选文件
AGENT.md(安装与运行)、Soul.md(特性描述)、schemas/input|output.schema.json。其余可选。
Spec
上架到 AgentMarket 的 zip 包需遵循本规范:在根目录提供 AGENT.md 与 Soul.md,并声明标准输入输出与是否支持多模态。可用 LangGraph / OpenAI Agents SDK 等框架,以 Python 或 Node.js 实现。
AGENT.md(安装与运行)、Soul.md(特性描述)、schemas/input|output.schema.json。其余可选。
所有 Agent 使用统一请求 / 响应信封;业务字段由包内 JSON Schema 约束。
frontmatter 必须声明 multimodal: true|false;不支持时不得接收 attachments。
支持 Python / Node.js,以及 LangGraph、OpenAI Agents SDK、LangChain 或 custom 入口。
{slug}/
AGENT.md # 必选:安装 / 运行
Soul.md # 必选:特性 / 人格
schemas/
input.schema.json # 必选
output.schema.json # 必选
agent.yaml # 可选
src/ | package.json … # 可选实现Version: 1.1
Status: Stable for Agents Marketplace
本文面向 Agent 作者:说明如何用 Python / Node.js 与主流框架(LangGraph、OpenAI Agents SDK 等)打包可上架的 zip,以及市场强制的 标准输入 / 输出 约定。
相关文档:
站点入口:菜单 Spec → /spec。完整范例包:examples/meeting-notes-agent。
AGENT.md(安装与运行)、Soul.md(特性 / 人格)、标准 I/O Schema。 agent.yaml、源码、依赖锁文件、examples、tools…)。 {slug}/ # 或 zip 根目录直出(无顶层文件夹)
AGENT.md # 必选:安装 / 运行说明 + frontmatter
Soul.md # 必选:Agent 特性 / 人格 / 行为边界
schemas/
input.schema.json # 必选:业务 input JSON Schema
output.schema.json # 必选:业务 output JSON Schema
agent.yaml # 可选:机器可读 Manifest(推荐提供)
src/ 或 app/ # 可选:Python / Node.js 源码
pyproject.toml / requirements.txt / package.json # 可选:依赖声明
examples/ # 可选:request.json / response.json
tools/ assets/ prompts/ # 可选
| 路径 | 必选 | 说明 |
|---|---|---|
AGENT.md |
是 | 位于包根(或唯一顶层目录根);写清如何安装与运行 |
Soul.md |
是 | 与 AGENT.md 同级;描述 Agent 特性、语气、原则 |
schemas/input.schema.json |
是 | 标准业务输入契约 |
schemas/output.schema.json |
是 | 标准业务输出契约 |
agent.yaml |
否 | 推荐;声明 framework / language / multimodal 等 |
| 源码与依赖文件 | 否 | LangGraph / OpenAI Agents SDK 等实现代码 |
examples/、tools/、assets/ |
否 | 样例与附属资源 |
市场上传校验:缺少任一必选文件会拒绝发布。
AGENT.md(必选)必须在 包根目录:
AGENT.md{slug}/AGENT.md(仅允许一层顶层目录)---
name: code-reviewer-agent
description: Review diffs and report high-confidence defects.
version: 1.2.0
language: python # python | nodejs
framework: langgraph # langgraph | openai-agents | langchain | custom
multimodal: false # 是否支持多模态输入(必填)
---
| 字段 | 必填 | 说明 |
|---|---|---|
name |
是 | kebab-case,与目录名 / Manifest name 一致 |
description |
是 | 一句话能力摘要(列表与搜索) |
version |
推荐 | SemVer |
language |
推荐 | python | nodejs |
framework |
推荐 | 见 §5 |
multimodal |
是 | true / false:是否接受图像、音频等非纯文本输入 |
npm install、环境变量(如 OPENAI_API_KEY) schemas/,并写明 multimodal 示例骨架:
# Code Reviewer Agent
## Install
\`\`\`bash
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
export OPENAI_API_KEY=...
\`\`\`
## Run
\`\`\`bash
python -m src.main --request examples/request.json
\`\`\`
Agent 从 stdin / 文件读取 **标准请求信封**,向 stdout 写出 **标准响应信封**。
## Input / Output
- multimodal: false
- schemas: `schemas/input.schema.json`, `schemas/output.schema.json`
Soul.md(必选)定义 Agent 的 特性描述:人格、语气、价值观、禁止事项、协作偏好。
宿主 / 编排器可在运行前加载,用于 system prompt 或人格层。
建议结构:
# Soul
## Identity
简洁说明「我是谁、擅长什么」。
## Voice
语气、措辞偏好(例如:直接、缺陷优先、少客套)。
## Principles
1. …
2. …
## Boundaries
- 不做的事
- 需要用户确认的事
Soul.md 可带或不带 YAML frontmatter;内容以可读 Markdown 为主。
市场 不绑定单一运行时,只要包能按标准 I/O 被调用即可。当前明确支持作者使用:
Framework(framework) |
典型语言 | 说明 |
|---|---|---|
langgraph |
Python | LangGraph 状态图 / 工作流 Agent |
openai-agents |
Python / Node.js | OpenAI Agents SDK |
langchain |
Python / Node.js | LangChain Agent / LCEL |
custom |
Python / Node.js | 自研入口,只要遵守 I/O 信封 |
Language(language) |
说明 |
|---|---|
python |
推荐提供 pyproject.toml 或 requirements.txt |
nodejs |
推荐提供 package.json(可选 lockfile) |
实现约定(推荐):
input / output 用包内 Schema 校验。 multimodal: true 时,请求可带 attachments(见 I/O 规范);为 false 时宿主不得传入非文本附件。详见 agent-io-spec.md。
要点:
specVersion、requestId、agent、input / status+output。 input / output,由本包 Schema 约束。 AGENT.md frontmatter(或 agent.yaml)声明 multimodal。 multimodal: true:允许 attachments[](image / audio / video / file)。 multimodal: false:仅文本(及 Schema 内声明的结构化字段);出现附件应返回 INVALID_INPUT。| 文件 / 目录 | 用途 |
|---|---|
agent.yaml |
机器可读 Manifest(framework、language、io 路径、multimodal) |
src/、app/ |
实现代码 |
examples/request.json |
完整请求信封样例 |
examples/response.json |
完整响应信封样例 |
tools/ |
工具 OpenAPI / MCP 描述 |
prompts/ |
拆分提示词 |
assets/ |
图标、样例媒体 |
若省略 agent.yaml,市场默认:
schemas/input.schema.json、schemas/output.schema.json name / description / multimodal 取自 AGENT.md frontmatterAGENT.md 与同级 Soul.md AGENT.md 含 Install / Run,且 frontmatter 含 multimodal schemas/input.schema.json 与 schemas/output.schema.json 合法 agent.yaml 的 name 与 AGENT.md 一致 examples/*.json 符合 I/O 信封 1.x(文档 specVersion: "1.0" / 开发规范 1.1 为文档修订)。 slug + 同 SemVer 不可重复覆盖。源文件:docs/agent-dev-spec.md · 包校验:docs/agent-package-spec.md · I/O:docs/agent-io-spec.md · 范例包:examples/meeting-notes-agent