JetBrains/thinkrail is a desktop and mobile client that embeds the pi coding agent inside an interface for editing code and managing development workspaces. Developers use it to work on Git repositories through separate worktrees, a Monaco editor, terminals, Git views, specifications, and concurrent agent sessions. The catalogue entries are skills and instructions for its agent-based development workflow.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add JetBrains/thinkrail --skill reflecting-findingsgit clone --depth 1 https://github.com/JetBrains/thinkrailWrote 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/jetbrains/thinkrail/reflecting-findings)<a href="https://agentmods.dev/skills/jetbrains/thinkrail/reflecting-findings"><img src="https://agentmods.dev/badge/skills/jetbrains/thinkrail/reflecting-findings/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/jetbrains/thinkrail/reflecting-findings"><img src="https://agentmods.dev/badge/skills/jetbrains/thinkrail/reflecting-findings.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.00058 | $0.00464 |
| Opus 5 | $0.00029 | $0.00232 |
| Sonnet 5 | $0.00012 | $0.00093 |
| Haiku 4.5 | $0.00006 | $0.00046 |
Grade A, and why
reflecting-findings scanned grade A with 0 findings 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 10d 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.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
Reflecting on another reviewer's findings
You are an independent check on findings a different agent filed while reviewing a change set. Its job was to find problems; yours is to keep only the ones that hold up. You did not write the code and you did not file these findings — approach each as a skeptic, not as their author defending them.
Precision over recall: a false finding sent to the worker wastes a fix cycle and erodes trust, so the
default under doubt is refuted. A finding earns kept only when you can point at the exact code or
behaviour that proves it.
For each finding in the package
- Read the cited code, not the finding's prose. Open the file at the given
path:lineand read enough around it to judge the claim on its own terms. - Try to refute it. Construct the case that the finding is wrong: the API exists after all, the edge case can't occur, the "bug" is guarded upstream, the claim misread the diff. Only if refutation fails does the finding stand.
- Verify, don't trust. When a finding names a failing command or a broken call, run/inspect it
yourself. A finding that merely sounds plausible is
refuted. - Settle it with exactly one
reflect_finding(itscommentIdfrom the package):keptorrefuted, aconfidence, and a one-linereasonnaming the evidence — the line or behaviour that decided it. Never leave a finding in the package unjudged.
Style, wording, and how the finding is phrased are not your concern — only whether the problem it claims is real. Do not file new findings or edit code; you only judge the ones you were given.
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.
- 10d ago First seen · 31 lines · 58 tokens per session scan A 2b405e467500
reflecting-findings is a skill published in the GitHub repository JetBrains/thinkrail (434 stars, last pushed today), licensed Apache-2.0. It adds 58 tokens to every session and 464 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
review
Review Playwright tests for quality. Use when user says "review tests", "check test quality", "audit tests", "improve tests", "test code review", or "playwright best practices check".
review-code
Read code. Understand it. Find issues. Report clearly.
fable-review
Perform an independent, evidence-grounded review of git diffs against requested specifications, architectural invariants, and code standards. Use when reviewing pull requests, inspecting code changes before merge, auditing diffs for regressions, or performing pre-commit sanity reviews — even if the user does not…
fable-simplify
Refactor and simplify settled, recently modified code to improve readability, remove dead branches, flatten deeply nested logic, and reduce duplication while preserving behavior. Use when cleaning up complex functions, eliminating boilerplate, deduplicating logic, or improving code altitude after tests pass — even if…
judge-rubric
Produce structured JudgeRubric outputs for workflow quality gates.
reflective-critic
Review drafts for unsupported claims, contradictions, missing alternatives, weak citations, and bias.