redhat-et / redhat-et/ripwire

Verify the published agent wiring live on Cursor, Windsurf, Gemini CLI, opencode or aider

Open
#146 0 comments 0 reactions 0 assignees View on GitHub
help wanted
Dominant language
C++
Stars
2.1k
Forks
125
Avg merge
5h 42m
Merged PRs (30d)
136

Description

## What is missing

`ripwire wrap ` prints a configuration for nine agents, and CI checks what those recipes
print and what the installers write to disk — but **nothing in CI ever starts the agent**. For
Cursor, Windsurf, Gemini CLI, opencode's MCP alternative and aider, nobody in this repository has
recorded a run of the published recipe against the real tool. One careful session from someone who
already uses one of them answers a question the maintainers cannot. A FAIL is the useful outcome.

## The evidence

Claims the kit asks a contributor to test, each checked against the source or the agent's own
documentation first:

- **Every MCP recipe spells the server as the bare word `ripwire`** whenever the shell running
`wrap` finds it on PATH (`wrapCommandToken`, `src/wrap.h`). The Codex branch deliberately prints
an absolute path, because a desktop app may not inherit the shell PATH. Does a Cursor or Windsurf
launched from the desktop start the server?
- **Cursor:** its MCP docs list a `type` field for stdio servers; the stanza printed has only
`command` and `args`.
- **Windsurf:** its MCP docs now say `mcp_config.json` applies to the legacy Cascade agent only, and
state a 100-tool limit (ripwire registers 31).
- **Gemini CLI:** it rewrites tool schemas — drops `$schema`, strips `additionalProperties` — and
has a project-scope settings file the recipe does not mention.
- **aider:** the recipe says to paste the rules block into `CONVENTIONS.md`, but only passes
`--read .ripwire-map.txt`, and aider loads a conventions file only when it is read. As printed,
the block is never seen.
- **The verification script today:** for all five agents, its phase 1 checks only that `wrap` exits
0.

The precedent for why this matters: issue #48, an opencode user hitting a tool-schema rejection no
gate had seen.

## Size

**Medium**, and small for a single report: one agent takes an hour or two. It becomes medium if the
report turns up a recipe fix that needs a red-first gate arm and a script extension. The five agents
are independent lanes.

## Prerequisites

The agent itself, installed and signed in as normal; a ripwire binary on PATH; and a real repository
to test in. No API spend beyond two short prompts.

## Where to start

`prompts/help-wanted/agent-integration-verification.md` is a self-contained prompt for verifying
**one** agent. It carries what each recipe prints today (captured from `main`), the claims least
likely to survive per agent, the agent-independent checks the verification script is missing,
agent-appropriate pass criteria, the constraints, the acceptance criteria and the traps — including
backing up the agent's own config file and how to undo any change. Like every prompt in `prompts/`,
**it ends by writing a plan and stopping** — a maintainer agrees the plan before any code is
written.

The deliverable is one report per agent, FAIL lines included, plus a red-first gate for any recipe
fix.

Comment here to claim it, naming the agent being taken.

Contributor guide

Open the contributing guide

Research direction

Read prompts/help-wanted/agent-integration-verification.md and choose one of Cursor, Windsurf, Gemini CLI, opencode or aider. Check the recipe and src/wrap.h claims, run ripwire wrap with the real tool in a test repository, and record the required report including any FAIL lines; propose a red-first gate if a recipe fix is needed.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
cli, developer-experience, testing
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Clearly specified
Newbie friendliness
58/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.