Real outputs, not screenshots only
Each result can include the HTML, image, or video artifact so visitors can inspect what the model actually produced.
Local-first AI coding agent for JetBrains
RefIo brings agentic coding into IntelliJ without a WebView and without forcing your code into the cloud. Use Ollama or LM Studio locally, connect cloud models when you choose, and inspect every tool call, token, cost, and file write.
validateToken
✓
auth/**AuthService.kt
✓
TokenValidator service with three entry points. Plan ready for your approval.
Proof, not vibes
RefIo has a companion benchmark viewer at benchmark.refio.dev. It shows how models perform on real coding tasks, including score, reliability, duration, token usage, cost, notes, and generated artifacts.
Each result can include the HTML, image, or video artifact so visitors can inspect what the model actually produced.
Cloud runs show average and total cost. Local runs show duration and tokens, so the trade-off is transparent.
Filtering, leaderboard, task detail, Pareto charts, and metric help make every score easier to challenge and improve.
Why it exists
RefIo is designed for people who want the leverage of AI coding without giving up observability, privacy, model choice, or the native JetBrains experience.
Pure Swing UI, no WebView shell. It lives in the IDE where your project, diffs, files, and errors already are.
Chat (talk, no tools), Plan (read-only, code-enforced), Agent (edit with file snapshots before every write).
Ollama, LM Studio — runs fully offline with no-egress mode. Or connect to OpenAI, Anthropic, Gemini.
Every prompt is inspectable, every tool call is explicit, and token usage plus cost stay visible per session.
Path sandboxing, command policies, snapshots before writes, rollback direction, and no-egress mode.
Same :core Gradle module drives the IntelliJ plugin and a full-screen terminal TUI.
Execution
Three modes, one workflow. Choose the level of control you need — from quick answers to full autonomous refactoring.
Ask questions about your code. Full project context via @mentions, RAG retrieval, code citations. No tools, no changes.
Read-only analysis. The agent explores your project, builds a step-by-step approach — but cannot modify anything. Read-only is code-enforced, not just convention.
Full read/write with automatic file snapshots. Per-tool, per-mode permissions (ON / ASK / OFF). Iteration & cycle guardrails. Always reversible.
Local-first
RefIo works out-of-the-box with Ollama and LM Studio. Token budgeting, compaction and RAG thresholds adapt to the active model's context window.
qwen3.5:9b / :35b / :122b) via Ollama
Scales to the active model's context window. Per-section allocation: system prompt, RAG, conversation, tools — you can tune the ratios.
Semantic chunking, local embeddings, cosine similarity search. 5 language analyzers (Kotlin, Java, Python, TS, HTML). All stored in SQLite, fully offline.
Same :core Kotlin module drives both the IntelliJ plugin (Swing) and a full-screen terminal TUI (Mordant + JLine).
Priorities
RefIo is intentionally opinionated: local-first when possible, cloud when useful, transparent by default, and benchmarked in public.
Audience
A narrow, honest target. Not for everyone.
Get started
Works with local models out of the box. No API keys required.
ollama pull nomic-embed-text
ollama pull qwen3.5:9b
# or :35b / :122b for bigger hardware
Settings → Plugins → Install from disk (or Marketplace when available)
View → Tool Windows → RefIo. Chat, Plan, or Agent.
RefIo is v0.0.1.x — the foundation is in place, the depth is growing. Small commit history, breaking changes possible pre-1.0. See the Roadmap for known gaps and where the project is heading. Contributions, feedback, and bug reports welcome.
Start local with Ollama, connect cloud models when it makes sense, and use the public benchmark to decide which model deserves the next task.