Swedish: the honer — from finslipa, meaning "to hone", "to fine-tune" or "to put the finishing touches on."
Finsliparn is a Bun-native MCP Server and Claude Code Plugin that transforms single-attempt coding into a multi-attempt, test-validated refinement loop. It adapts the philosophy of Poetiq's ARC-AGI solver to general software development.
LLMs often generate code that looks correct but fails in edge cases. Finsliparn solves this by enforcing a Refinement Loop:
- Iterate: The LLM implements a solution.
- Validate: Finsliparn runs your actual test suite (not just a syntax check).
- Feedback: Test failures are fed back to the LLM as structured, actionable directives.
- Select: If multiple attempts are made, the best one (highest score, lowest complexity) is selected.
"Test results are the objective truth—not diffs, not prompts, not opinions."
Finsliparn uses a Filesystem-as-IPC architecture to support multiple AI platforms with a single core engine.
graph LR
subgraph "AI Client"
Claude[Claude Code]
Copilot[GitHub Copilot]
end
subgraph "Finsliparn Core"
MCP[MCP Server]
Directive[Directive.md]
Tests[Test Runner]
end
Claude --"Hooks"--> MCP
Copilot --"Agent"--> MCP
MCP --"Writes"--> Directive
Directive --"Reads"--> Claude
Directive --"Reads"--> Copilot
MCP --"Executes"--> Tests
directive.md: The single source of truth. It tells the LLM exactly what to do next (e.g., "Fix failing tests insrc/foo.ts").- Git Worktrees: Every iteration runs in an isolated worktree, ensuring your main branch stays clean until a solution is verified.
- Bun v1.3+
- Git
# Clone the repository
git clone https://github.com/jgabor/finsliparn.git
cd finsliparn
# Install dependencies
bun install
# Link the plugin (for Claude Code)
# (Coming soon)- Technical Specification (v1.0.0): The core architecture and Claude Code integration.
- Copilot CLI Support (v2.0.0): Adaptation for GitHub Copilot CLI agents.
- Roadmap: Development plan and status.
# Start a refinement session
/finslipa Implement a fibonacci function in src/math.tsFinsliparn will automatically intercept your edits, run tests, and guide you until the tests pass.
# Start the agent
copilot run --agent finsliparn "Implement a fibonacci function"The agent will autonomously loop through the directive.md instructions until completion.
Jonathan Gabor