Skip to content

Support for Goose agent#48

Open
EliRibble wants to merge 3 commits into
beyond5959:masterfrom
Gleipnir-Technology:goose
Open

Support for Goose agent#48
EliRibble wants to merge 3 commits into
beyond5959:masterfrom
Gleipnir-Technology:goose

Conversation

@EliRibble

Copy link
Copy Markdown
Contributor

goose is currently my agent of choice, so I added support for it.

@beyond5959 beyond5959 left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for adding Goose support. The adapter follows the existing ACP CLI pattern nicely, but I’d like one security/protocol-boundary change before this lands.

internal/agents/goose/goose.go currently initializes Goose with only clientInfo and protocolVersion. For a new third-party ACP provider, we should explicitly advertise fail-closed client capabilities, consistent with the existing ACP stdio providers and the repo spec:

"clientCapabilities": map[string]any{
    "fs": map[string]any{
        "readTextFile":  false,
        "writeTextFile": false,
    },
    "terminal": false,
},

The current transport will return method-not-found for unsupported inbound requests, so I don’t think this is an immediate file-read/write authorization bug. Still, making the capability boundary explicit avoids Goose or a future ACP implementation inferring capabilities we do not intend to provide.

Please also add a small fake-process test that asserts the initialize params include those disabled capabilities. After that, this should be in good shape.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants