Opencode Acp Control
Analysis
The skill appears purpose-aligned, but it gives an agent direct control over OpenCode with file-write, terminal, background-session, and prior-session access that should be reviewed before installation.
Findings (6)
Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.
Checks for instructions or behavior that redirect the agent, misuse tools, execute unexpected code, cascade across systems, exploit user trust, or continue outside the intended task.
"clientCapabilities":{"fs":{"readTextFile":true,"writeTextFile":true},"terminal":true}The initialization tells the agent to advertise file read/write and terminal capabilities to OpenCode, creating broad local mutation authority without an explicit user-approval boundary in the workflow.
bash(command: "opencode acp --cwd /path/to/your/project", background: true, workdir: "/path/to/your/project")
The skill instructs the agent to launch a local CLI process. This is expected for controlling OpenCode, but it is still local command execution.
Start OpenCode | `bash(command: "opencode acp --cwd /path/to/project", background: true)` ... Stop OpenCode | `process.kill(sessionId)`
The skill starts a background OpenCode process and documents how to stop it; this is purpose-aligned but creates a process that can continue until killed.
Source: unknown; Homepage: none; Required binaries (all must exist): none
The registry metadata does not provide a source/homepage or declare the external opencode binary dependency, even though the skill workflow relies on that CLI.
Checks for exposed credentials, poisoned memory or context, unclear communication boundaries, or sensitive data that could leave the user's control.
Resume a previous OpenCode session by letting the user choose from available sessions.
The skill can list and resume previous OpenCode conversations, meaning prior session context may influence future behavior.
Send message | `process.write(sessionId, data: "<json-rpc>\n")`
The skill establishes a JSON-RPC channel between the agent and OpenCode; this is central to ACP use but means prompts and project context can flow through another agent process.
