一键导入
goose-acp-client
Communicate with Goose ACP agent for cross-tool task delegation. Enable SEA-Forge to coordinate between Claude Code and Goose.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Communicate with Goose ACP agent for cross-tool task delegation. Enable SEA-Forge to coordinate between Claude Code and Goose.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends AI agent capabilities with specialized knowledge, workflows, or tool integrations.
Use when creating, scaffolding, or updating the repository AI harness in VS Code. Trigger on requests to bootstrap or refresh instructions, prompts, agents, hooks, skills, or memory layers while preserving useful existing structure and avoiding monolithic always-on context.
Canonical SEA-Forge release workflow for release preparation, validation, branch promotion, tagging, rollback, and release-gate evidence. Use when preparing a release, promoting dev to stage or stage to main, cutting a version tag, validating release readiness, handling hotfix forward-merges, planning rollback, or executing a full end-to-end release. Prefer existing just recipes and evidence-producing gates over ad hoc deployment steps.
Use when SEA work touches specs, generators, manifests, semantic fixtures, regeneration, `src/gen`, or behavior projected from ADR/PRD/SDS/SEA authority.
Use when a SEA context has valid specs and generated contracts but lacks handwritten logic, runtime wiring, persistence, integration, tests, or executable proof.
Create concise, copy-paste-ready bridge prompts between a repo-aware coding agent and an external strategic reasoning agent such as S1 ArchDevAgent. Use when the user wants to offload architecture, research, large refactor planning, migration design, plan critique, implementation-spec drafting, test-strategy design, whole-repo analysis, or diff review to an external agent while keeping repo inspection and implementation in the coding agent. Also use when the user says "use S1", "ask S1", "make a prompt for S1", "bridge this to my external agent", "prepare a context packet", or "validate this S1 response".
| name | goose-acp-client |
| description | Communicate with Goose ACP agent for cross-tool task delegation. Enable SEA-Forge to coordinate between Claude Code and Goose. |
Communicate with running Goose ACP (Agent Communication Protocol) agent for specialized task delegation between Claude Code and Goose.
Use this skill when:
First, ensure Goose ACP agent is running:
# Start Goose as ACP agent on Unix socket
goose acp --socket /tmp/goose-acp.sock &
# Or on TCP port
goose acp --port 4747 &
# Check if running
ls -l /tmp/goose-acp.sock 2>/dev/null || echo "Not running"
# Test connection
echo '{"method":"ping"}' | nc -U /tmp/goose-acp.sock
# Or with curl for TCP
curl http://localhost:4747/ping
{
"jsonrpc": "2.0",
"id": 1,
"method": "task/execute",
"params": {
"instruction": "task description",
"context": {},
"recipe": "optional-recipe-name"
}
}
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"status": "success|running|failed",
"output": "output text",
"task_id": "uuid"
}
}
Execute a task in Goose:
{
"method": "task/execute",
"params": {
"instruction": "Run full CI validation",
"recipe": "sea-dev-cycle",
"context": {
"branch": "dev",
"files": ["src/**/*.ts"]
}
}
}
Check task status:
{
"method": "task/status",
"params": {
"task_id": "uuid"
}
}
List available recipes:
{
"method": "recipe/list",
"params": {}
}
Get Goose session info:
{
"method": "session/info",
"params": {}
}
| Task | Claude Code | Goose ACP |
|---|---|---|
| Quick code edits | ✅ Ideal | ❌ Not suited |
| Full CI run | ⚠️ Possible | ✅ Ideal |
| Multi-file generation | ✅ Ideal | ⚠️ Possible |
| Long-running analysis | ❌ Context limit | ✅ Ideal |
| Interactive debugging | ✅ Ideal | ⚠️ Possible |
| Scheduled tasks | ❌ Not supported | ✅ Ideal |
| Recipe execution | ❌ Not native | ✅ Ideal |
// Delegate CI to Goose
const request = {
method: "task/execute",
params: {
instruction: "Run full CI validation for branch feature/auth",
recipe: "sea-dev-cycle"
}
};
const response = await sendToGooseACP(request);
console.log("Task ID:", response.result.task_id);
console.log("Status:", response.result.status);
// Check if task completed
const request = {
method: "task/status",
params: {
task_id: "abc-123-def"
}
};
const response = await sendToGooseACP(request);
if (response.result.status === "success") {
console.log("Output:", response.result.output);
}
// Run specific Goose recipe
const request = {
method: "task/execute",
params: {
instruction: "Prepare for release",
recipe: "sea-release",
context: {
version: "1.2.0"
}
}
};
After Goose completes tasks, sync state:
# Update Goose state file
cat .goose/state.yaml | \
yq ".current_task.branch = \"$(git branch --show-current)\"" | \
yq ".goose_session.last_activity = \"$(date -u +%Y-%m-%dT%H:%M:%SZ)\""
if (!fs.existsSync("/tmp/goose-acp.sock")) {
console.error("Goose ACP not running. Start with: goose acp --socket /tmp/goose-acp.sock");
}
{
"error": {
"code": -32000,
"message": "Task execution failed",
"data": {
"recipe": "sea-dev-cycle",
"exit_code": 1
}
}
}
goose-handoff commandsync-goose-state command.goose/state.yaml for shared stateAfter ACP operation, output:
## Goose ACP Task
**Action**: {execute|status|info}
**Status**: {success|running|failed}
**Task ID**: {uuid}
### Details
{task details}
### Output
{output from Goose}
### Next Steps
{what to do next}
Claude invokes when:
User can invoke with: