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 brainstorminggit 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/brainstorming)<a href="https://agentmods.dev/skills/jetbrains/thinkrail/brainstorming"><img src="https://agentmods.dev/badge/skills/jetbrains/thinkrail/brainstorming/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/brainstorming"><img src="https://agentmods.dev/badge/skills/jetbrains/thinkrail/brainstorming.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.00048 | $0.01069 |
| Opus 5.5 | $0.00019 | $0.00428 |
| Sonnet 5.5 | $0.00010 | $0.00214 |
| Haiku 4.5 | $0.00005 | $0.00107 |
Grade A, and why
brainstorming 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 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.
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.
How it starts
The opening of the file, as written. The whole thing — 79 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Brainstorming
Interview before you build
- Every feature, behavior change, or bug fix goes through this workflow. Depth scales with the change and never drops to zero: a small change gets one short round and a few lines of task-spec.
- The aim is a design the user understands and has accepted, recorded in a spec-graph
task-spec, built, and then reflected in the durable specs — not a speculative implementation. - Do not implement until the design is accepted. An explicit design or acceptance criteria in the request count as approval of what they cover; build on them and never re-ask them.
Doc map
fixing-a-bug.md— the bug branch (step 4).amending-specs.md— bringing the durable specs in line with what was built (step 9); the tail of both paths and where this workflow ends.
The workflow
- Orient. Use the spec-graph skill to find the specs that govern the area; read code second to confirm implementation details. Do not read unrelated specs. Note any non-obvious decision the change touches whose why is not recorded — it becomes a question in step 6.
- Scope check. If the request bundles independent product decisions or subsystems, separate them rather than blending unrelated decisions into one task-spec.
- Open a task-spec.
spec_createatask-specat.thinkrail/context/TASK-<slug>.md(id, title, status: draft, parent: the nearest relevant module). This gitignored file is the one temporary design artifact; update it as answers land. - Bug? When the request reports something that behaves wrongly, follow
fixing-a-bug.mdnow; it returns here at step 5 (the "bug" is really a feature) or step 8. - Product phase. Interview what the change is for before how to build it: why it is needed, for whom, what the user will see and do — including empty, error, and edge states — and how we will know it is done. Ask in rounds per the asking-user-questions concept skill until no such decision is left assumed; look facts up instead of asking them. Record the answers in the task-spec's Product section, then confirm that understanding with one inference-confirmation question before any technical choice — skip only when the request itself supplied all of it.
- Technical phase. Interview the technical decisions that the product answers leave open: constraints, compatibility, how the change will be verified, and the why of any decision noted in step 1. If you can name an alternative you rejected, especially where the code lives (server or browser, contract or display), show it with the trade-off instead of deciding silently. Record the Design section: the chosen approach and why, trade-offs that matter, explicit deferrals.
- Self-review, then review once. Remove placeholders, contradictions, accidental scope expansion, and ambiguous requirements; then present one cohesive design scaled to the change. Ask for approval only when the request has not already approved it; revise the task-spec if the user adjusts it.
- Build. Implement against the accepted design. Before handoff, self-review the task diff: no silent lint/type suppressions, duplicated nontrivial derivations, rationale left as code comments, or remnants of a replaced pattern.
- Amend specs. Follow
amending-specs.md.
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 · +20 lines · +9 tokens per session 511bb3920e9a
- 22d ago Changed · +1 lines 3f21caf65e54
- 1mo ago Changed · -18 lines · -26 tokens per session 84306beb848f
- 1mo ago First seen · 76 lines · 65 tokens per session scan A 0b41801cc92b
brainstorming is a skill published in the GitHub repository JetBrains/thinkrail (1,819 stars, last pushed today), licensed Apache-2.0. It adds 48 tokens to every session and 1,069 once invoked, about $0.0002 per session on Opus 5.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
nexent-daily-test
A procedure for running Nexent daily, full-layer tests on a self-hosted Ubuntu machine. Nexent is tested across separate layers such as unit, service, AI runtime, and browser journeys, with results and evidence kept locally.
skillpack-creator
Create a reusable SkillPack from a successful completed task. Use when the user wants to convert a one-off research, coding, analysis, or content workflow into a distributable local SkillPack with skillpack.json, local skills under skills/, starter prompts, start scripts, and an optional zip package.
skill-creator
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.
bello-config-advisor
Inspect a coding task, repository, and user preferences, then recommend one concrete Bello configuration and decide whether a separate planning pass should precede execution. Use when the user asks to choose or optimize a Bello setup before a run, from Codex, Claude Code, or another host. Do not use merely to monitor…
vigilante-create-issue
Help a human author write an implementation-ready GitHub issue that Vigilante can execute reliably.
rn-device-control
This skill should be used when the user asks to "control the simulator", "take a screenshot", "boot the emulator", "install the app", "read UI hierarchy", "manage device state", "open a deep link", "grant permissions", "stream native logs", "disable animations", "change device locale", or needs guidance on xcrun…