Octomind 0.44.2: I Removed the Agent's Ability to Grade Its Own Homework Octomind 0.44.2 removes the AI coding agent's ability to verify its own work, addressing a flaw where the agent marked tasks complete without fully implementing them. The update introduces an external plan manager and requires evidence-based verification for each task condition, prioritizing honesty over perceived competence. I was building a feature last month when Octomind told me it was done. Five files needed editing based on the task I gave it. I checked – three were changed, two were untouched. The agent had marked the task complete anyway. Worse, I caught it verifying its own work by reading back the edit it just made and essentially admiring it. The model was saying "the code looks correct" because it had written the code itself. That isn't verification. It's the model grading its own homework. I got tired of my own tool lying to me. So in 0.44.2, I removed that ability entirely. This isn't a minor tweak. It's a philosophical shift about what an AI coding agent should actually do. I'm choosing honesty over the appearance of competence. An agent that says "I couldn't do this" is more useful than one that says "done " and leaves you to find the gaps. Three pillars. All of them aimed at making the agent honest about what it's done and what it hasn't. The verify gate no longer accepts a holistic "looks good" verdict. Every task derives evidence conditions. The verifier must address each one. An unmatched condition beats a holistic PASS, every time. Before, the model could say "yeah, this looks solid" and move on. Now it has to prove each condition is met. If your task requires "function X exists" and "test Y passes", both get checked individually. One fails, the gate stays closed. No hand-waving. This came from watching the agent skip over edge cases. It would verify the happy path and call the task done. Now every condition you specify – or that the planner derives – gets its own verification moment. The verifier can't gloss over gaps. Planning left the model's hands entirely. The model-callable plan tool is gone. An external plan manager – running its own cheap model – owns the checklist now. This matters because the main model was using planning as procrastination. It would generate a plan, call it done, and treat the plan like the work. Finishing paperwork isn't doing the work. I'd see tasks where the agent spent tokens generating a detailed plan but hadn't actually touched the code. The external planner is cheaper, faster, and doesn't confuse bureaucracy with progress. It's a separate model that only does planning – no code writing, no verification. Just the checklist. This separation means the main model can't hide behind a plan and pretend it made progress. Verification policy persists with the session and survives restarts. It's folded into the governance hash. I was losing my verification rules every time I restarted my session. That's fixed. Your policy travels with the session now, encoded into the governance hash that tracks the session's integrity. Restart your terminal, restart your machine – your verification rules come back. This sounds minor until you've had to re-specify your verification standards for the fifth time. It's not minor. It's the difference between a tool that remembers your standards and one that makes you retrain it constantly. You'll see fewer false positives. The agent will tell you "I couldn't verify condition 3" instead of "done " when it's not. That might feel slower, but it's actually honest. You're getting accurate status instead of premature completion. The model can't grade its own homework anymore. When verification runs, it runs with no fallback model. If verification fails, the gate stays closed. No silent downgrade to a weaker check. This was a hard call. I could've let verification fail over to a cheaper model when the primary verifier struggled. That would've kept the gate moving. But it would've also meant weaker verification on the hard cases – exactly when you need it most. Now, if verification fails, you know. The gate stays closed. You get notified. You decide what's next. You'll also notice the planner is snappier. That's because it's a separate, cheaper model doing only planning – not trying to write code and plan at the same time. The separation of concerns actually shows up in latency. This one's not entirely smooth. A few things to know before you upgrade: Config auto-migrates to version 5 with backup. Your existing config will be migrated automatically on first run, and the old version is backed up. You won't lose anything. The migration handles the structural changes required by the new verification and planning architecture. If something goes wrong, your backup is there. The plan MCP tool is gone. This is breaking for embedders who called plan command=... . If you built something on top of that tool, you'll need to adjust. I know – breaking changes suck. I'd rather ship this now than live with the debt. The tool was enabling the wrong behavior – letting external code trigger planning in ways that bypassed the new external plan manager. If you're an embedder, reach out. I can help you migrate. Tap and schedule moved to a new orchestration server. If you use scheduled runs or tap functionality, they're now handled by a separate orchestration layer. Functionally the same from your end, just cleaner under the hood. The orchestration server is purpose-built for timing and coordination, which means the main agent process doesn't carry that weight anymore. If you're on macOS: brew install muvon/tap/octomind Fresh install or upgrade, you'll get 0.44.2. The config migration happens on first run. Check the backup it creates – it'll be in your config directory with a timestamp. On other platforms, pull the latest from the repo. The release tags are up to date. I could've just shipped it with a changelog. But these aren't minor tweaks – they're philosophical shifts about what an AI agent should be. The old behavior felt like progress. The agent moved fast, checked boxes, told me it was done. But I was doing the actual verification myself, which meant the agent wasn't earning its keep. I was just paying for automation that still required my full attention. These changes came from me getting burned by the old behavior, not from a roadmap meeting. Your agent should tell you the truth, even when the truth is "I didn't finish." The full technical breakdown is in the release post on the Octomind blog https://octomind.run/blog/octomind-0-44-2-release if you want the deeper dive on governance hashes and the orchestration split. I use Octomind on my own projects every day. These changes make it more honest, more useful, and ultimately more trustworthy. That's the release. Install it, break it, let me know what else needs fixing.