Agent 集成
- 作者仓库星标 4,389
- 作者仓库 cli
Agent Integration — Full Pipeline
Run all three phases of agent integration in a single session. Parameters are collected once and reused across all phases.
Parameters
Collect these before starting (ask the user if not provided):
| Parameter | Description | How to derive |
|---|---|---|
AGENT_NAME |
Human-readable name (e.g., "Gemini CLI") | User provides |
AGENT_PACKAGE |
Go package dir name — no hyphens | Lowercase, remove hyphens/spaces |
AGENT_KEY |
Registry key for agent.Register() and entire enable |
Check existing patterns in cmd/entire/cli/agent/registry.go |
AGENT_SLUG |
Filesystem/URL-safe slug (kebab-case) used in E2E runner filenames and script names | Kebab-case of agent name; align with existing entries in e2e/agents/ |
AGENT_BIN |
CLI binary name | command -v <binary> |
LIVE_COMMAND |
Full command to launch agent | User provides |
EVENTS_OR_UNKNOWN |
Known hook event names, or "unknown" | From agent docs or "unknown" |
Note: These identifiers can differ. Run grep -r 'AgentName\|func.*Name()' cmd/entire/cli/agent/*/ and e2e/agents/ to see how existing agents handle the split.
Architecture References
These documents define the agent integration contract:
- Implementation guide:
docs/architecture/agent-guide.md— Step-by-step code templates, event mapping, testing patterns - Integration checklist:
docs/architecture/agent-integration-checklist.md— Design principles and validation criteria
Scope
This skill targets hook-capable agents — those that support lifecycle hooks
(implementing HookSupport from agent.go). Agents that use file-based detection
(implementing FileWatcher) require a different integration approach not covered here.
Check agent.go for the current interface definitions.
Core Rule: E2E-First TDD
This skill enforces strict E2E-first test-driven development. The rules:
- E2E tests are the spec. The existing
ForEachAgenttest scenarios define what "working" means. The agent runner makes those tests runnable for the new agent. - Run E2E tests at every step. Each implementation tier starts by running the E2E test and watching it fail. You implement until it passes. No exceptions.
- Unit tests are written last. After all E2E tiers pass (Step 14), you write unit tests using real data collected from E2E runs as golden fixtures.
- If you didn't watch it fail, you don't know if it tests the right thing. Never write a test you haven't seen fail first.
- Minimum viable fix. At each E2E failure, implement only the code needed to fix that failure. Don't anticipate future tiers.
/e2e:debugis your debugger. When an E2E test fails, use the artifact directory with/e2e:debugbefore guessing at fixes.
Pipeline
Run these three phases in order. Each phase builds on the previous phase's output.
Phase 1: Research
Discover the agent's hook mechanism, transcript format, and configuration through binary probing and documentation research. Produces an implementation one-pager at cmd/entire/cli/agent/$AGENT_PACKAGE/AGENT.md that the other phases use as their single source of agent-specific information.
Read and follow the research procedure from .claude/skills/agent-integration/researcher.md.
Expected output: Implementation one-pager at cmd/entire/cli/agent/$AGENT_PACKAGE/AGENT.md and a test script at scripts/test-$AGENT_SLUG-agent-integration.sh.
Commit: After the research phase completes, use /commit to commit all files.
Gate: If the verdict is INCOMPATIBLE, stop and discuss with the user before proceeding.
Phase 2: Write E2E Runner
Create the E2E agent runner so existing test scenarios can exercise the new agent. No unit tests are written in this phase — no new test scenarios either (existing ForEachAgent tests are the spec).
Read and follow the procedure from .claude/skills/agent-integration/test-writer.md.
Expected output: E2E agent runner at e2e/agents/$AGENT_SLUG.go that compiles and registers with the test framework.
Commit: After the E2E runner compiles and registers, use /commit to commit all files.
Phase 3: Implement (E2E-First, Unit Tests Last)
Build the Go agent package using strict E2E-first TDD. E2E tests drive development at every step — run each tier, watch it fail, implement the minimum fix, repeat. Unit tests are written only after all E2E tiers pass, using real data from E2E runs as golden fixtures.
Read and follow the implement procedure from .claude/skills/agent-integration/implementer.md.
Expected output: Complete agent package at cmd/entire/cli/agent/$AGENT_PACKAGE/ with all E2E tiers passing and unit tests locking in behavior.
Note: AGENT.md is a living document — Phases 2 and 3 update it when they discover new information during testing or implementation.
Final Validation
After all three phases, run the complete validation:
mise run fmt # Format
mise run lint # Lint
mise run test:ci # All tests (unit + integration)
Summarize:
- Compatibility verdict from Phase 1
- Files created in Phases 2 and 3
- Test coverage
- Any remaining TODOs or gaps
- 流狐分类
- AI 智能
- 作者声明 Agent
- 未找到明确声明;不据此推断已兼容或已测试
- 静态检查
- 88 / 100 · 启发式扫描,不代表运行安全
- 作者 / 版本 / 许可
- @entireio · 未声明 license
- 流狐 Token 估算
- 低消耗
- 流狐接入估算
- 即装即用
- 是否需要外部 API Key
- 未发现要求
- 检测到的系统要求
- 未声明
- 底层运行要求
- 未声明
- 检测到的文件与系统行为
-
- 只读
- 允许写入 / 修改
- 检测到的网络行为
- 仅限本地
- 安装命令数
- 无(仅作为资料)
档案由构建时根据 SKILL.md 与安装命令自动衍生,可能与作者实际意图存在差异。
需要注意: 未限定 allowed-tools,默认拥有全部工具权限。
作者没有在当前 SKILL.md 中定义固定输出样例。 Discover the agent's hook mechanism, transcript format, and configuration through binary probing and documentation research. Produces an implementation one-pager at cmd/entire/cli/agent/$AGENTPACKAGE/AGENT.md that the other phases use as their single source of…
Create the E2E agent runner so existing test scenarios can exercise the new agent. No unit tests are written in this phase — no new test scenarios either (existing ForEachAgent tests are the spec). Read and follow the procedure from…
Build the Go agent package using strict E2E-first TDD. E2E tests drive development at every step — run each tier, watch it fail, implement the minimum fix, repeat. Unit tests are written only after all E2E tiers pass, using real data from E2E runs as golden…
# Agent Integration — Full Pipeline
Run all three phases of agent integration in a single session. Parameters are collected once and reused across all phases.
## Parameters
Collect these before starting (ask the user if not provided):
| Parameter | Description | How to derive |
|-----------|-------------|---------------|
| `AGENT_NAME` | Human-readable name (e.g., "Gemini CLI") | User provides |
| `AGENT_PACKAGE` | Go package dir name — **no hyphens** | Lowercase, remove hyphens/spaces |
| `AGENT_KEY` | Registry key for `agent.Register()` and `entire enable` | Check existing patterns in `cmd/entire/cli/agent/registry.go` |
| `AGENT_SLUG` | Filesystem/URL-safe slug (kebab-case) used in E2E runner filenames and script names | Kebab-case of agent name; align with existing entries in `e2e/agents/` |
| `AGENT_BIN` | CLI binary name | `command -v <binary>` |
| `LIVE_COMMAND` | Full command to launch agent | User provides |
| `EVENTS_OR_UNKNOWN` | Known hook event names, or "unknown" | From agent docs or "unknown" |
**Note:** These identifiers can differ. Run `grep -r 'AgentName\|func.*Name()' cmd/entire/cli/agent/*/` and `e2e/agents/` to see how existing agents handle the split.
## Architecture References
These documents define the agent integration contract:
- **Implementation guide**: `docs/architecture/agent-guide.md` — Step-by-step code templates, event mapping, testing patterns
- **Integration checklist**: `docs/architecture/agent-integration-checklist.md` — Design principles and validation criteria
## Scope
This skill targets **hook-capable agents** — those that support lifecycle hooks
(implementing `HookSupport` from `agent.go`). Agents that use file-based detection
(implementing `FileWatcher`) require a different integration approach not covered here.
… 作者原文负责流程事实;流狐只索引当前章节、要点、文件与命令。
章节 -> Parameters → Architecture References → Scope → Core Rule: E2E-First TDD → Pipeline → Phase 1: Research
要点 -> no hyphens · Note · Implementation guide · Integration checklist · hook-capable agents · E2E tests are the spec. · Run E2E tests at every step. · Unit tests are written last.
文件/命令 -> AGENTNAME · AGENTPACKAGE · AGENTKEY · agent.Register() · entire enable · cmd/entire/cli/agent/registry.go · AGENTSLUG · e2e/agents/
内容 SHA-256 -> 62b12118d5dc
方法与流程
适用与边界
原文中的明确线索
AGENTNAME、AGENTPACKAGE、AGENTKEY、agent.Register()、entire enable、cmd/entire/cli/agent/registry.go、AGENTSLUG、e2e/agents/