SKILLS & AGENTS/Skill 与 Agent·MCP-SERVER
redhat-et/ripwire
The ripgrep of AI context: a zero-dependency C++23 CLI + MCP server for coding agents.
怎么装:Install: git clone https://github.com/redhat-et/ripwire.git
02 / 现在的位置02 / Why now
首次发现FIRST SEEN
03 OCT 202603 OCT 2026
增长GROWTH
+0.5%+0.5%
2.4k → 2.4k stars · 3 个快照2.4k → 2.4k stars · 3 snapshots
状态STATUS
持续活跃Active
03 / 它能帮你做什么03 / What it helps you do
04 / 安装04 / Install
$ README 里给出的安装方式。The installation method given in the README.
$ README 里给出的安装方式。The installation method given in the README.
两种装法选一个即可 —— 上面那条给命令行用户,下面那条给写代码的用户。Pick one of the two — the first is for command-line users, the second for people writing code.
05 / 限制与风险05 / Limits and risk
风险不是警告,是可信度的一部分。以下结论只基于文档静态扫描,我们不会执行项目里的任何代码。Risk here is evidence, not an alarm. These findings come from static scanning of the docs; we never execute a project’s code.
限制LIMITS
需检查Needs review
静态扫描STATIC SCAN
01执行 Shell 命令Runs shell commandsreadme
agent can run shell commands — Claude Code, Codex, Cursor, Windsurf, Gemini, opencode, aider — it is
02执行 Shell 命令Runs shell commandsskills/ripwire-before-you-build/SKILL.md
allowed-tools: Bash
03读写本地文件Reads and writes local filesskills/ripwire-opt-remarks/SKILL.md
allowed-tools: Edit
这里只做静态扫描:读 README、SKILL.md 和依赖清单,不执行代码。没有命中不代表安全。This is static scanning only: we read the README, SKILL.md and dependency list, and never execute code. No findings does not mean safe.
{
"agents": [
{
"agent": "claude-code",
"evidence": "tree: .claude/"
},
{
"agent": "codex",
"evidence": "readme: …ls/install.sh --codex # Codex CLI: the task-shaped skills that…"
},
{
"agent": "cursor",
"evidence": "readme: …the mcpServers stanza for .cursor/mcp.json (or ~/.cursor/mcp.json) ripwi…"
},
{
"agent": "windsurf",
"evidence": "readme: …laude Code · Codex · Cursor · Windsurf · Gemini · opencode · aider</…"
},
{
"agent": "opencode",
"evidence": "readme: …Cursor · Windsurf · Gemini · opencode · aider</summary> One self-c…"
}
],
"apiKey": "leakage** — does `env` pass `ANTHROPIC_API_KEY`, `GITHUB_TOKEN`, or similar to a third",
"docker": null,
"taxonomy": {
"scores": {
"design": 0,
"ai-tools": 3,
"dev-tools": 8,
"indie-web": 0,
"skill-agent": 14,
"productivity": 3
},
"primary": "skill-agent",
"secondary": "mcp-server"
},
"localRuntime": "Objective-C/C++ · C · Metal · CUDA · Python · Go · Swift · TypeScript · Ja",
"skillMdTotal": 19,
"skillMdErrors": [],
"treeTruncated": false,
"categoryScores": {
"data": 1,
"agent": 1,
"media": 0,
"design": 0,
"browser": 0,
"devtool": 2,
"security": 0,
"marketing": 0,
"productivity": 1
},
"classification": [
{
"signal": "19 SKILL.md with name + description",
"weight": 0.95
},
{
"signal": "skills/ directory with 26 markdown files",
"weight": 0.75
},
{
"signal": "README describes a Claude / Agent Skill",
"weight": 0.7
},
{
"signal": "README ships an mcpServers config for this server",
"weight": 0.7
},
{
"signal": "MCP topic + README",
"weight": 0.6
},
{
"signal": ".mcp.json (configures servers it uses)",
"weight": 0.3
},
{
"signal": "description mentions AI",
"weight": 0.2
}
],
"scannedSources": [
"readme",
".claude/skills/emitting-output/SKILL.md",
"skills/hermes/ripwire-repo-map/SKILL.md",
"skills/ripwire-before-you-build/SKILL.md",
"skills/ripwire-change-check/SKILL.md",
"skills/ripwire-find-bug/SKILL.md",
"skills/ripwire-fresh-eyes/SKILL.md",
"skills/ripwire-graph-query/SKILL.md",
"skills/ripwire-handoff/SKILL.md",
"skills/ripwire-layers/SKILL.md",
"skills/ripwire-mcp/SKILL.md",
"skills/ripwire-navigate/SKILL.md",
"skills/ripwire-opt-remarks/SKILL.md",
"skills/ripwire-orient/SKILL.md",
"skills/ripwire-perf-target/SKILL.md",
"skills/ripwire-quality-bar/SKILL.md",
"skills/ripwire-reuse-first/SKILL.md",
"skills/ripwire-router/SKILL.md",
"skills/ripwire-security-scan/SKILL.md",
"skills/ripwire-write-tests/SKILL.md"
],
"skillMdFetched": 19
}