一键导入
goose-acp-integration
Integrate {{AGENT_NAME}} with ACP (Agent Client Protocol) agents. Reverse-engineered from goose's Rust ACP provider implementation.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Integrate {{AGENT_NAME}} with ACP (Agent Client Protocol) agents. Reverse-engineered from goose's Rust ACP provider implementation.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | goose-acp-integration |
| description | Integrate {{AGENT_NAME}} with ACP (Agent Client Protocol) agents. Reverse-engineered from goose's Rust ACP provider implementation. |
| space | outcome |
| type | document |
| tags | ["acp","protocol","goose","integration"] |
| links | ["[[@action/skills/agent-protocol/DESCRIPTION]]","[[@action/skills/SKILL-INDEX]]"] |
| created | "2026-05-10T00:00:00.000Z" |
Agent Client Protocol (ACP) is a JSON-RPC-based standard for communicating with coding agents (GitHub: agentclientprotocol).
goose uses ACP to connect to agents like Claude Code as provider (subprocess communication over stdio):
goose → claude-agent-acp (NPM) → Claude Code CLI → Anthropic API
Key ACP providers in goose:
claude_acp.rs — Claude Code via @agentclientprotocol/claude-agent-acpcodex_acp.rs — OpenAI Codexcopilot_acp.rs — GitHub CopilotInitializeRequest/Response // handshake
NewSessionRequest/Response // create session
PromptRequest/Response // send messages
SessionNotification // async events (tool calls, permissions, completion)
- ToolCallStart { id, name, kind, raw_input }
- ToolCallComplete { id, raw_output, content[], is_error }
- PermissionRequest { request: RequestPermissionRequest }
- Complete(StopReason, Option<Usage>)
ToolCallContent / ToolCallStatus
RequestPermissionResponse
// crates/goose/src/providers/claude_acp.rs
let config = AcpProviderConfig {
command: resolved_command, // path to claude-agent-acp
args: vec![],
env: vec![],
work_dir: current_dir,
mcp_servers: extension_configs_to_mcp_servers(&extensions), // {{AGENT_NAME}} tools as MCP
session_mode_id: Some(mode_mapping[&goose_mode].clone()),
// mode_mapping:
// Auto → bypassPermissions (fully autonomous)
// Approve → default (ask before risky)
// SmartApprove → acceptEdits (auto-accept edits)
// Chat → plan (plan only)
};
AcpProvider::connect(name, model, goose_mode, config).await
AcpProvider (crates/goose/src/acp/provider.rs):
initialize then newSessionSessionNotification back (tool calls, permissions)CallToolResultSpawn any ACP agent as subprocess, communicate via newline-delimited JSON-RPC over stdio.
Convert {{AGENT_NAME}} tools → MCP server definitions → pass to ACP agent via mcp_servers config.
Map {{AGENT_NAME}} P0-P6 brain rules to ACP permission decisions (AllowAlways/AllowOnce/RejectOnce/RejectAlways/Cancel).
Phase 1: tools/acp_provider.py — subprocess spawn + JSON-RPC over stdio + session lifecycle
Phase 2: Delegate to Claude Code via claude-agent-acp, pass {{AGENT_NAME}} tools as MCP servers
Phase 3: Permission callback system bridging {{AGENT_NAME}} P0 rules to ACP permission requests
crates/goose/src/providers/{claude_acp,codex_acp,copilot_acp}.rscrates/goose/src/acp/provider.rscrates/goose-acp-macros/src/lib.rsagent_client_protocol Rust crate (github.com/agentclientprotocol)@agentclientprotocol/claude-agent-acpenv_remove to prevent infinite nesting (e.g., CLAUDECODE env var){{AGENT_NAME}} brain signal architecture — event bus, signal processor, awareness reporter, brain monitor
TDD-PDCA plan for building a self-replicating branching agent in {{AGENT_NAME}}. 단일 에이전트가 스스로 서브에이전트를 분기하고, 결과를 수렴시키는 구조.
Maintain .{{AGENT_NAME_LOWER}} as an Obsidian vault — graph connectivity overhaul (P-layer mesh, skill clusters, SEO article web), broken link detection, backlink density verification via Obsidian CLI, filename deduplication, bidirectional linking, auto-generated orphan management, cron output graph bloat prevention, and Obsidian compatibility.
AI Trend Collection & Filtering — collect GitHub trending repos, score via 5-axis philosophy filter, evaluate, apply, and retire.
RSS 피드 모니터링 → SEO 기사 수집·분석·트렌드 리포트
Authoring and using agent profiles — pre-defined subagent roles that set model, provider, toolsets, and instructions in one task() call. Covers profile format, the 14 standard roles, pipeline patterns, cost-tiered model assignment, and the ESCALATE mechanism for capability routing.