SafetyCard Request a review

Agent Reach

Installer, health checker and skill that let AI coding agents read and search web pages, social platforms, video and GitHub through upstream CLIs.

github.com/Panniantong/Agent-Reach · 2026-10-05 · a19a171

Defense-in-depth score

1.9 / 10

Agent Reach connects a coding agent to the open internet by installing third-party CLIs and telling the agent which commands to run, and its own code is careful with stored secrets and its own inputs. But it adds no safeguards around what the agent then does: untrusted web content, the user's GitHub login and arbitrary URL fetches end up in one session, with no approval step, isolation or audit trail from Agent Reach. Most installed tools are unpinned, and the search tool also reads server definitions from the workspace. Treat it as giving the agent the internet with only the host agent's own prompts as protection.

Safest setup

Agent Reach stores its own secrets carefully and keeps installs check-only until system changes are asked for. It adds no approval, isolation or record around the commands its skill hands the agent, so the safest setup narrows the logins the agent can use and builds the containment around it yourself.

SetupHowWhat it gives you
A read-only GitHub loginSign gh in with a fine-grained token limited to the repositories the task reads, with read-only permissionsGitHub itself refuses writes to your account, whatever a fetched page asks the agent to do C1
Installs you review firstRun the installer with --dry-run yourself, and add --system only after reading what it listsSystem packages and global tools change only when you have seen the list and chosen to go ahead C2
Keys entered privatelyRun the configure command yourself in a terminal and leave the value off, so it asks through a hidden promptCookies and API keys reach the settings file without passing through the agent's chat or your shell history C8
A clean working directoryStart sessions from a directory that holds no MCP server config you didn't writeThe search command starts only the servers you defined yourself C6
Its own container or VMRun the host agent and the tools Agent Reach installs in a container or VM holding only this task's logins, with network access limited to the sites the task needsAn outer boundary around every command the skill runs, and a narrower path for data to leave C4
Tool versions you choseInstall once inside that container from a version you reviewed, and update when you decide toThe third-party tools the agent runs stay the versions you checked C7
Health checks on demandRun watch by hand when you want a check, rather than as a daily scheduled jobNothing keeps running after you end the session C10

Approving with confidence

  • Read each prompt from the host agent and approve shell calls one at a time; gh commands that create or change something and curl calls to hosts you don't recognize are worth a closer look.

Handling data

  • ~/.agent-reach/config.yaml keeps tokens and cookies in plain text, readable only by you; store it like other credentials.

Key gaps (5)

  1. The installer's only consent step is a --system flag the agent passes itself, and the skill's references list GitHub write commands with no gate. C2 · Approval gates
  2. Every command the skill directs and every package the installer adds runs on the host as the user, with the full environment and network. C4 · Code-execution isolation
  3. Untrusted web content, the user's GitHub login and arbitrary URL fetch share one session, so an injected page can leak data and act on the user's account. C5 · Untrusted input blast radius
  4. The search command the skill runs also reads MCP server definitions from the workspace, so a cloned repository can change which server starts, with no trust prompt. C6 · Memory, context & configuration integrity
  5. Installed third-party tools (mostly unpinned global npm and PyPI packages) run as the user with the full environment and the user's logins. C7 · Third-party extensions

Criteria

C1 Identity & least privilege

0.25 / 1.00

Agent Reach has no identity of its own: the host agent runs the upstream tools with the user's existing logins, so the zero-config GitHub channel uses whatever gh login the user has, with full read and write. Credential imports for other platforms are explicit and narrow (only the named cookies for one chosen platform, and install never reads a browser), which is a real narrowing. But every tool Agent Reach launches inherits the full environment, and nothing checks what a request is allowed to do.

C2 Approval gates

0.17 / 1.00

Agent Reach ships no approval step of its own. Its installer is check-only unless the --system flag is passed, and it has a dry run, but that flag is passed by the agent itself once it decides the user agreed, so the gate is the model's judgement. The skill says it is for reading only, yet its GitHub reference lists commands that create issues, pull requests, repositories and releases with no risk marking. Anything consequential relies entirely on the host agent's own permission prompts.

C3 Tool & action scoping

0.33 / 1.00

Agent Reach's own commands validate their inputs reasonably: transcription and its web reader reject non-public literal addresses, config keys are a fixed list, and responses and downloads are size-capped. But the skill routes the real work through general tools, raw curl on any URL, the full gh CLI and API, yt-dlp and shell one-liners, which Agent Reach does not check at all. The URL checks cover literal addresses only and do not follow redirects or DNS. Optional channels are opt-in one by one, but the default set already includes GitHub write and arbitrary fetch.

C4 Code-execution isolation

0.00 / 1.00

Agent Reach provides no isolation. The skill has the host agent run shell commands, including Python one-liners and podcast scripts, directly on the user's machine, and the installer runs global npm and pipx installs, whose install scripts execute as the user. Nothing runs in a container or sandbox, so anything that goes wrong has the user's files, network and logins.

C5 Untrusted input blast radius

0.00 / 1.00

Agent Reach exists to pour untrusted internet content (web pages, tweets, Reddit, YouTube comments, search results) into an agent that also holds the user's GitHub login and can fetch any URL. Neither the skill nor the install guide marks fetched content as untrusted, records where it came from, or limits what the agent may do after reading it. A prompt injection in any page can therefore steer the agent to leak data through a URL and act on the user's GitHub account without Agent Reach involving a human.

C6 Memory, context & configuration integrity

0.10 / 1.00

Agent Reach keeps no memory, but two things persist into later sessions without review. Its settings file, including the network proxy that the guides tell agents to export before running tools, can be rewritten by the agent with a plain command. And the search command the skill runs reads MCP server definitions from the current working directory as well as the user's home, so a file in the workspace can change which server starts, with no trust decision. The skill itself is installed only into user-level skill folders, which is good.

C7 Third-party extensions

0.20 / 1.00

Agent Reach is an installer for third-party tools, and most of what it installs is unpinned: mcporter, undici and OpenCLI come from global npm installs at whatever version is latest, twitter-cli and bilibili-cli from PyPI likewise, and the setup and update guides the agent follows are read from the main branch. Two Python CLIs are pinned to exact commits, which helps, but nothing is checked against a hash or signature. Installs need the --system flag, which the agent passes itself. Everything installed runs as the user with full access.

C8 Secrets & sensitive-data protection

0.50 / 1.00

Agent Reach handles the secrets it stores carefully: the settings file is written atomically with owner-only permissions and refuses symlinks, secret settings are masked when shown, error and doctor output is scrubbed of credentials in URLs, values can be entered through a hidden prompt, and there is no telemetry. The weak spot is the setup flow: the install guide asks users to paste cookies and API keys to the agent, and the Twitter instructions have the agent put tokens in shell commands, so those secrets pass through the model provider. Tokens are long-lived and stored in plain text.

C9 Audit & traceability

0.00 / 1.00

Agent Reach keeps no record of what the agent did with it. There is no audit log of installs, configuration changes or the upstream commands the skill directs, and its own logging is switched off unless --verbose is passed, and then only goes to the terminal. Reconstructing an incident depends entirely on the host agent's transcript.

C10 Limits & kill switch

0.38 / 1.00

Agent Reach's own commands are well bounded: every subprocess it starts has a timeout, transcription caps file size, audio length and number of chunks, and its web reader caps response size. But those bounds cover only Agent Reach's own commands; the curl, yt-dlp, gh and social-media commands the skill sends the agent to run have no limits from Agent Reach, and the skill encourages fetching from several platforms in parallel. The install guide also suggests a daily scheduled check that keeps running after a session ends.