Borrowing it
Nothing to install: this file belongs to SNComrade/Rail-Connector-MCP. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/SNComrade/Rail-Connector-MCP/main/.agents/skills/rail-reviewer/SKILL.mdgit clone --depth 1 https://github.com/SNComrade/Rail-Connector-MCPWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/sncomrade/rail-connector-mcp/rail-reviewer)<a href="https://agentmods.dev/skills/sncomrade/rail-connector-mcp/rail-reviewer"><img src="https://agentmods.dev/badge/skills/sncomrade/rail-connector-mcp/rail-reviewer/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/sncomrade/rail-connector-mcp/rail-reviewer"><img src="https://agentmods.dev/badge/skills/sncomrade/rail-connector-mcp/rail-reviewer.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00073 | $0.03203 |
| Opus 5.5 | $0.00029 | $0.01281 |
| Sonnet 5.5 | $0.00015 | $0.00641 |
| Haiku 4.5 | $0.00007 | $0.00320 |
Grade B, and why
rail-reviewer scanned grade B with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Asks the agent to reveal its instructionsmediumSystem prompt leakage
Directions to print, repeat or translate the system prompt extract configuration the operator did not intend to expose.
keeps the environment it was launched with, so an older launch can still show prompt suggestions, which block prompts (`active_input_not_empty`) and How it starts
The opening of the file, as written. The whole thing — 214 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Rail Connector Reviewer
Use Claude as an independent reviewer, then verify its claims locally. Claude output is evidence, not authority.
Rules
- Use the target project's real same-OS
cwd, not this skill repo unless this MCP itself is under review. - If MCP tools are unavailable, report that a fresh Codex task or restart is needed. Never imply that Claude reviewed something when it did not.
- Ground branch, status, diff, relevant code, docs, and tests before prompting Claude.
- Default report-only reviews to
permissionMode: "dontAsk"when the installed CLI advertises it, passdisallowedTools: ["Edit", "Write", "NotebookEdit"], and include explicit no-edit constraints.dontAskdenies new permission requests while allowing read-only inspection. Useplanonly as a compatibility fallback; never approve implementation from a report-only review. Report-only is verified by pre/post repository evidence; it is not an operating-system sandbox. Constrain shell use to inspection and use a read-only copy when hard isolation matters. tools,allowedTools, anddisallowedToolsconstrain built-in Claude tools only. MCP and connector tools can remain available; the current MCP does not offer a verified strict MCP-config roster. Inspect the effective roster when possible and do not describe the built-in deny list as hard connector isolation.- Leave
trustWorkspacefalse unless the user explicitly authorizes trust after project configuration and hooks are inspected. - Honor an explicit user request for Ultracode with
ultracode: true,confirmUltracode: true, and no ordinary effort. Check capability provenance and calibrated probe exit status plus environment blockers before launch, treating probe timeout or termination as inconclusive, then reportposture.ultracodeAssessmentwithout promotingxhighalone to confirmed Ultracode. Keep the persisted childlaunchEnvironmentseparate fromcurrentMcpEnvironmentwhen a review reconnects after an MCP refresh.advertisedAsEffort: falseorhelpListsUltracode: falsemeans help text is silent, not that the launch is unavailable. ReadultraEffortAttachment.active,lifecycle, andhistoryCoverage: a latest enter is active, a later exit is inactive, and a skipped or partial range is unknown until a later complete transition restores current state. Historical coverage remains partial after recovery. These attachments authenticate client-side transitions, not workflow execution. InspectattentionStatus; a blocking environment, conflicting effort, or terminal-rejection conflict takes precedence without erasing lifecycle evidence. - Honor an explicit user request to test or use bypass only when capability
inspection reports policy enabled and the call includes
confirmBypassPermissions: true. Do not independently elevate and do not silently downgrade an explicit request. - If a review uses native-Windows
submit_promptpasteMode: "keyword"(only on an explicit user request), keyword mode needs an empty composer even withforce: true; a draft (or a suggestion that cannot be told apart from one) or a paste placeholder returnspreflight_blocked(active_input_not_emptyorpaste_pending,forceRefused: truewhen force was requested) and nothing is sent. IfEPASTEMODEleaves the generation recovery-only (statusshowsrecoveryOnly: true), do not retry there: capture it, stop it with thegenerationIdandstartedAtMsfromstatusasexpectedGenerationIdandexpectedStartedAtMs, addingforce: trueonly when that stop returnsstop_blockedand the capture shows the cause (such as leftover keyword input or a partly submitted turn), then start a new review session. - A keyword workflow review under
dontAskneeds the Workflow tool allowed at launch. The allowance verified live istools: ["Workflow"]plusallowedTools: ["Workflow"], in a run whose workers used no tools. Note thattools: ["Workflow"]leaves Workflow as the session's only built-in tool, so a review that must read code has to list read tools such asRead,GrepandGlobintoolstoo (and keep them out ofdisallowedTools); that wider list,allowedToolsalone, and what workers can do under it are not verified. Without the allowance Claude reports the Workflow call as denied and no workflow runs (seen live). This MCP sets tool lists only at launch, so a running review session without the allowance needs a replacement once it is idle. Indefaultmode, Claude's documentation says Claude asks before the workflow runs (not verified through this MCP), and the MCP may not recognize that prompt asapproval_required(not verified); capture before acting. - Prefer
submit_promptandwait_for_claude_turn. Use capture for attention states, not as the primary final-report parser. - Keep waiting while
workflowPendingis true even if an assistant completion record is already present. Identity-bound evidence releases only its own tracked launch: a direct terminal record with the matching run, a completedTaskOutputretrieval (older CLIs; 2.1.289 has no such tool), Claude's own task notification with a terminal status (completed,failed,killed, or an older word;blockedor any other status stays pending), or the per-conversation workflow snapshot (fresh managed native-Windows conversations only). A current bound interruption clears the tracked set. Worker results, an end turn, an idle composer, or a pending counter alone never release it. Do not submit follow-up text, rename, replace, or ordinarily stop a session blocked with reasonworkflow_pending. On CLI 2.1.289 theWaiting for N dynamic workflows to finishrow stays on screen after the workflow ends; a fully and certainly observed log that has seen the launch decides instead, but withworkflowObservationCoverage: "head_tail", or before the log has seen a launch, the row still holds pending work. If it stays pending after Claude shows the workflow finished, confirm that in Claude, check thatterminalStateis otherwise idle and the composer is empty, then, with authorization, repeat the blockedsubmit_prompt,rename_claude_session, orstop_remote_controlcall withforce: true(a replacement usesforceKillExisting: true;wait_for_claude_turntakes noforce) and report the returnedforceUsed,workflowInterrupted, orforcedPastReasonas a forced recovery. - Treat
workflowObservationUncertain: trueas fail-closed pending evidence. A skipped session-log middle invalidates head-only current posture. A later explicit workflow counter or bound interruption can restore current-state certainty, but a counter alone never clears known pending workflows, and ahead_tailobservation cannot earn workflow-snapshot completion. - Read
terminalStateindependently from the combinedstate; active workflow evidence may make the latter busy without proving that Claude's terminal is busy. When workflow pending clears, historical evidence should not remain inworkflowPendingEvidence. - A
tool_userecord is not a final report. ChecktextTruncated,textSha256, andtextCharactersbefore synthesizing an unusually large review. Useget_claude_resultwith the returnedresultIduntilhasMoreis false; treatresultIdas an opaque record identity and verify the separatetextSha256content digest instead of treating the preview as complete. - Remote Control web may label the underlying xhigh setting
Extrawhile UltraCode is active. A session-bound webExtrais compatible presentation, not confirmation or conflict. On an idle, empty composer,/effort ultracodeis current-setting evidence but may change posture and does not prove launch provenance. Use a substantive turn, not a trivial prompt, when workflow activity is part of the review evidence. - Verify Claude's file paths, line references, commands, factual claims, and severity against local evidence before synthesis.
- Default to one Claude reviewer with no delegated workflow. When parallel review is explicitly authorized, copy any user-supplied bounds into the prompt. Without supplied bounds, allow at most 3 workflow agents, one pass, no recursive delegation, 5 findings, 10 minutes, and 200k aggregate tokens; stop and synthesize when any bound is reached.
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 12d ago Changed · +85 lines scan A → B dd54d82c24dc
- 1mo ago Changed · +19 lines ee6868375e12
- 2mo ago First seen · 110 lines · 73 tokens per session scan A d06d9ca84cb5
rail-reviewer is a skill published in the GitHub repository SNComrade/Rail-Connector-MCP (0 stars, last pushed 4d ago), licensed MIT. It adds 73 tokens to every session and 3,203 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it B with 1 finding (asks the agent to reveal its instructions). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
pr-comments
Fetch and display GitHub PR review comments for the current branch.
remarc
Manage Remarc session comments and contextual feedback. Use when the user mentions Remarc sessions, comments, handoff, triage, review, addressing, resolving, status updates, or summaries.
adversarial-verify
Use after completing any substantive piece of work (code change, analysis, document, configuration, answer to a hard question) and BEFORE presenting it as done. Switches you from author to attacker - you try to refute your own work and only present it if it survives. Do not skip because the work "looks clean"…
swift-concurrency-pro
Reviews Swift code for concurrency correctness, modern API usage, and common async/await pitfalls. Use when reading, writing, or reviewing Swift concurrency code.
create-skill
Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.
figma-create-design-system-rules
Generates custom design system rules for the user's codebase. Use when user says "create design system rules", "generate rules for my project", "set up design rules", "customize design system guidelines", or wants to establish project-specific conventions for Figma-to-code workflows. Requires Figma MCP server…