AA

agentharnesses/agentharnesses

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

25 stars 质量 57 趋势 19NOASSERTION

代理线束标准

概览

一种标准化、开放的格式,为人工智能代理赋予明确的角色、背景和能力。 束是一种目录,为 AI 代理提供履行角色所需的一切。会话开始时,代理加载 HARNESS.md 以确定其身份;任务到达时,它只捕获每个任务所需的内容——应用于束带层面。 顶层目录名称由工具开发者选择。技能/和引用/是常见的惯例,但并非必需——任何符合该领域的结构都适用。 所需的入口点。使用YAML前言,后跟简短路由正文: 保持身体最小化——每次激活都会负荷,并且与任务情境竞争。 每个顶层目录都以它命名,全部大写:tools/ 用 TOOLS.md,data/ 用 DATA.md,依此类推。这一惯例贯穿整个子树——tools/ 内的每个分组子目录也都使用 TOOLS.md。

概述(AI 翻译)

一种标准化、开放的格式,为人工智能代理赋予明确的角色、背景和能力。

什么是安全带?

束是一个目录,为 AI 代理提供履行角色所需的一切信息。会话开始时,代理加载 HARNESS.md 以确定其身份;任务到达时,它只捕获每个任务所需的内容——逐步披露在束束层面应用。

顶层目录名称由约束者选择。skills/ 和 references/ 是常见的惯例,但并非必须——任何符合该域的结构都适用。

关键概念

HARNESS.md

所需的入口点。使用YAML前言,后跟简短路由正文:

保持身体最小化——每次激活都会负荷,并且与任务情境竞争。

路由文件

每个顶层目录都使用一个以其命名的全大写路由文件:TOOLS.md 代表 tools/,DATA.md 代表 data/,依此类推。这一惯例贯穿整个子树——tools/ 内的每个分组子目录也使用 TOOLS.md。路由文件允许代理判断分支是否相关,而无需打开其中所有文件。

终止(离开)

本页由 AI 翻译,技术细节请以原文为准。

README

以下为原文 README 节选,完整内容请查看原文。

Agent Harnesses

A standardized, open format for giving AI agents a defined role, context, and capabilities.

What is a Harness?

A harness is a directory that gives an AI agent everything it needs to fulfill a role. At session start the agent loads HARNESS.md to establish its identity; as tasks arrive, it pulls in only the content each task requires — progressive disclosure applied at the harness level.

my-harness/
├── HARNESS.md          # Required: identity + routing overview
├── .leaf-detectors     # Optional: leaf boundary patterns
├── tools/              # Top-level dirs are named by the harness author
│   ├── TOOLS.md        # Routing file — describes what's in this branch
│   └── query-db/
│       └── SKILL.md
└── data/
    ├── DATA.md
    └── schema.md

Top-level directory names are chosen by the harness author. skills/ and references/ are common conventions but not required — any structure that fits the domain works.

Key Concepts

HARNESS.md

The required entry point. Uses YAML frontmatter followed by a brief routing body:

---
name: Marketing Assistant
description: Helps create and review content across blog, social, and visual channels.
---

You are a marketing assistant. Produce content that is on-brand and channel-appropriate.

- `tools/` — content creation and research capabilities (see TOOLS.md)
- `brand/` — tone, typography, and visual guidelines (see BRAND.md)
- `campaigns/` — active campaign briefs and goals (see CAMPAIGNS.md)

Keep the body minimal — it is loaded on every activation and competes with task context.

Routing Files

Each top-level directory uses a routing file named after it in all-caps: TOOLS.md for tools/, DATA.md for data/, and so on. This convention propagates through the entire subtree — every grouping subdirectory within tools/ also uses TOOLS.md. Routing files let an agent decide whether a branch is relevant without opening every file inside it.

Termination (Leaves)

Two mechanisms mark a directory as a leaf — a terminal point the routing layer does not recurse into:

  • .harnessleaf — a file placed in any directory to signal an explicit boundary
  • .leaf-detectors — a root-level file defining keyword patterns; e.g. skill=SKILL.md automatically marks any directory containing SKILL.md as a skill leaf

Leaf type names are meaningful: a skill leaf is loaded and executed as an Agent Skill; other types are treated as opaque boundaries.

Loading Model

Phase Trigger What happens
Load Session start Full HARNESS.md is injected, establishing the agent’s role
Discovery Task received Agent reads routing files to find relevant branches
Activation Routing aligns Agent reads the content of a relevant skill, directory, or file
Execution Action required Agent runs a script bundled within a skill

Relationship to Agent Skills

在 GitHub 查看完整 README

推荐工具

换一个关键词,或者移除筛选条件。

安装

npx skillfish add agentharnesses/agentharnesses
新手?先看 mcpskill.org 教程 →