dotpals
Local desktop pal that verifies what a coding agent really did, with optional Laya or Jev double-checks of unclear test results.
Overview
dotpals is a small floating desktop companion that watches Claude Code, Codex or any agent and reports in plain words which files changed, which commands ran and whether tests really passed, reading test output rather than trusting the agent. Since version 0.10 it also checks the work: when Claude Code's tests fail it is told why and sent back if it tries to finish, commit or push anyway, and faked passes (a lost assertion, an added skip) are caught. Any AI tool can query it over MCP with tools such as check_my_work and ready_to_merge.
The decision-model part is optional and narrow: an unclear test result can be double-checked by Laya running locally or by TypeSafe's Jev in the cloud, which is off by default. Most of dotpals is deterministic log and output parsing; everything stays on your computer unless you enable cloud Jev.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Yes / no | Did the tests actually pass, given this unclear test output?(inferred) | yes · no |
How it works
- Watch agent sessions and parse file changes, commands and test output
- Mark results passed, failed or unclear from the output itself
- Optionally ask Laya or Jev to double-check unclear results
- Send the agent back if tests fail or were faked
Strengths
- Evidence-based view of agent work
- Local by default; cloud Jev optional
- MCP tools for other agents
Caveats
- Decision model plays a small, optional role
- Cloud Jev requires a TypeSafe key
Getting started
npx dotpals@latest setup.At a glance
- Type
- Project
- Status
- beta
- Language
- TypeScript
- Runtime
- desktop app + MCP server
- Has code
- yes
- Has tests
- yes
- License
- MIT
Use cases and integrations
How curated lists describe it
A desktop pal that watches Claude Code, Codex or any agent and says in plain words which files changed, which commands ran and what failed. Runs locally.
MrJev/awesome-jev
Frequently asked questions
Does dotpals use Jev?
Optionally, to double-check unclear test results; Laya can do this locally instead, and both are off by default.
What does it check?
Files changed, commands run, and whether tests really passed based on their output.
Does data leave my machine?
Not unless you enable the cloud Jev option.
Related projects
Desktop app running coding agents in parallel git worktrees, with optional Jev judgments of each changed file against the task.
AppbetaLinear-backed work ledger for coding agents where a Jev-compatible model verifies done reports, blockers and plan changes against the task.
ProjectprototypeJavaScriptDeepSeek Harness plugin checking whether an agent's 'done' claim is true, using deterministic evidence plus one batched Jev assessment.
PluginbetaTypeScriptClaude Code plugin with rules and checks that make agents prove their work; an optional Jev judge triages review findings.
PluginbetaMarkdown + shellLocal guard layer for coding agents that blocks dangerous tool calls by deterministic rules, with optional Jev judgments.
CLIbetaTypeScriptRuntime verification framework that drives your real app to check a coding agent's 'done', returning pass, fail or cannot tell.
ServicebetaTypeScript