Adam Migus (@amigus) header
Adam Migus (@amigus) profile picture

Very senior software engineer & 1337 h@x0r ✨ Founder of @migusgroup Creator of https://nitter.gq/t.co/zFRgEMSMEo and https://nitter.gq/t.co/rEVGn8iSLi

Alexandria, VA, USA
Joined March 2009
Photo by Adam Migus (@amigus)Photo by Adam Migus (@amigus)Photo by Adam Migus (@amigus)Photo by Adam Migus (@amigus)Photo by Adam Migus (@amigus)Photo by Adam Migus (@amigus)Photo by Adam Migus (@amigus)Photo by Adam Migus (@amigus)Photo by Adam Migus (@amigus)Photo by Adam Migus (@amigus)
At long last, Lisa Harness is here! 🤖🎁 Lisa is a groundbreaking AI agent-harness: - Hard budgets and enforced limits - Dynamic model routing - Lossless context (no compaction) - Verifiable actions Anthropic, OpenAI, et. al. are trying to create models you can trust. That's cool, but I'd rather run models without having to trust them. 🚫💀 There are a lot of other cool features, but TBH, the biggest W is its ability to keep many complex, multi-topic conversations straight and learn with you. 🧠 I've been working on it and using it for ~6 months. It's still beta quality; this is the first public release, but it's very usable and useful. Blog post: migus.org/adam/introducing-l… The project link is in my bio. LMK what you think!
1
7
676
Sandboxes are built into Lisa's execution layer so there's nothing to spin up. Just saying.
Spinning up a sandbox for every AI agent session doesn't have to be slow. Pre-warm a pool of generic sandboxes, then assign one whenever a new session starts. No need to provision an environment from scratch every time.
1
23
I follow Josh because he's always explaining why all the things I did in Lisa are the best thing to do! 😊 I'm an OS guy so, naturally when I did subagents, I created 'fork' and 'delegate' with the former doing exactly what he points out as best case. 💪
A huge indictment of conventional subagents. Instead, just fork the main agent. That lets you take advantage of prompt caching economics while also avoiding lossy summarization. For roughly the same cost as conventional subagents, you get better context management and therefore better results.
2
38
ℹ️ This common misunderstanding in harness engineering is critical to avoid if you want to reason about sandboxing, agent security and the like. 👇
An important distinction in AI engineering: An LLM doesn't execute tools… It generates a request to call a tool. Your agent harness validates the request, executes the tool, and returns the result to the model.
1
41
This is the world I built Lisa Harness for. I'm glad I saw it coming. 😎
NEW: Apple is cutting employee AI spending budgets even as it pushes workers to use the technology more. Engineers have seen daily limits cut from $300 to $200, with further reductions to $100 planned. Other teams could see limits fall to $25. bloomberg.com/news/articles/…
1
48
This, literally overnight, became my biggest worry. 😨
Top of the Democratic agenda on day 1 needs to be a pause on advanced AI development, regulation of this out of control industry, and a ban on artificial superintelligence.
23
This is what I'm worried about. Call it cognitive surrender or whatever you want. Deferring to models is not a good thing to do!
At this point, reading tech book is for entertainment or self enrichment more than for learning tech per se, since LLM is so good at tech.
68
Lisa is now a software factory! 😯 But not mine; I don't have a reason to turn my process, which is nothing special anyway, into a factory, so I decided to use a better base: HDAE from @gmkurtzer. I figured if he could build an OS kernel with it, it's a solid methodology to bring into Lisa. Of course, his work is published as a collection of agents and skills and, if you're following along, you know Lisa doesn't do agent skills. So, the work is more of a port than an integration. Either way, the HDAE "pack" lets Lisa follow the process, but per Lisa, the harness (not the model) enforces the gates and verifies the results. That's why you'll see far fewer agent prompts than in Gregory's Codex setup. I'm willing to bet that, with a skilled operator like him, it could build the same thing with way fewer tokens. But I don't have the token budget to prove that out myself. 🫤 But hey, if you do, please go for it and HMU if you need any help; I'd love to be proven right or wrong! Oh, and if you think this doesn't count as a software factory for some reason, tell me why! I'm still not entirely sure of the definition myself... 😬 The pack is available in the 'lisa-pack-hdae' repo in the Lisa-Harness GitHub. Just add it to your session along with 'lisa-pack-bwrap ' and 'lisa-pack-coding' to get started. 🚀
80
📢 I'm going to release a FOSS software factory built on Lisa this afternoon! The twist is that its not based on my factory design. 🤔 Stay tuned if you're into harness engineering and agent factories! 👀
1
124
Wow, that's like 4 quote layers of wrong. Impressive.
Same realization - adversarial agents have no context on what your goal is, so the results are gobbledygook anyway
1
3
1,037
Lisa’s turn loop 👇 I'm going to assume anyone reading this knows what a turn loop is. If not, hey, follow me on LinkedIn! 😆 🔁 The loop always has an active mode that determines its instructions, available capabilities, and execution policy. A mode handoff is a state transition—it changes that working context while preserving conversation evidence. The model can request the transition, but the harness performs it. 🔀 Within a turn, the model chooses whether to request tools, hand off, ask for input, or offer a final answer. The harness handles those requests under explicit policies. It can also force a handoff, request intervention, pause, or terminate on its own. Operator commands can pause, stop, or terminate execution. 🔂 These lifecycle outcomes are explicit, typed actions—not just different reasons to break out of a loop. Iteration and tool-call budgets, handoff limits, and stall detection govern when execution must change course. Completion checks distinguish supported success from an unverified claim. Asking for help, exhausting a budget, and finishing the work are distinctly different outcomes. 🧭 Lisa reconstructs workflow progress from its durable conversation log, including plans and completion evidence, so remaining work can be recovered across turns and restarts. Where a mode requires a write, completion checks look for recorded effect receipts rather than accepting the model’s success claim alone. ℹ️ The same loop supports changing roles, multi-step plans, parallel work, recovery, and operator control. The model supplies flexible reasoning; the kernel governs execution and checks completion evidence. So the idea that the turn loop is a simple 3-state FSM is now just a memory; it's gotten a little more complicated over time, @JoshARosen, but à la explicit actions, I'd still call it FSM-based. 😊
1
2
130
This afternoon I gave a junior dev the same advice I have been giving a while: fight it! Especially if you're junior, argue TF out of it. Make that model surrender to *you*, constantly! It needs to be fully answerable to you at all times! The (other) problem with "AGI" is that it puts the tech on a pedestal. It is still just (algorithmic) computers. They are not smarter than you. They're just relentless. Don't surrender, interrogate! 😮‍💨
HOLY: Anthropic's Claude Code engineer Addy Osmani is warning about a brutal AI paradox: the more coding you hand to agents, the more you risk losing the very skills needed to supervise them. He calls it "cognitive surrender." AI-generated code looks pristine, tests pass, and engineers start approving work they no longer understand. Anthropic's own research warns: "supervising Claude requires the very coding skills that may atrophy from AI overuse." Osmani makes a striking observation: "When you're producing more than you can stand behind, you're no longer reviewing. You're hoping."
76
Lisa Harness v0.5.1 release was last night! 🚀 • Scripted offline e2e testing — zero credentials • lisa-e2e repeat with token/cost roll-ups • Verified-artifact workflow contracts • Incident-driven warning + pack_id fixes • CI smoke gate on every PR github.com/Lisa-Harness/lisa…
1
51
Unpopular hot take: Formal verification isn't something one uses *instead of* code review. Its a very stringent technique to ensure that code is mathematically correct and there are non-trivial downsides to using it which will almost always outweigh the benefits. 😒
37
So, we just do formal verification for app dev now? 😲 I mean, it's a super cool way to make your apps rock-solid, but I got a budget, yo. 💸
maybe a hot take but i now consider adversarial reviews mostly a waste of tokens. far better to use those tokens on empirical combined with formal verification. i have updated pstack to use the interrogate skill less, and eventually i think i may remove it altogether i have found very little value with code review in the abstract, agents tend to just get lost in the nitpicks and yagnis
1
1
62
I built Lisa Harness on plain-old Python. I used dataclasses and Pydantic, but otherwise it is pure Python from scratch. I didn't even use a DI library for what is ultimately a pluggable framework. It's also 💯 AI-generated. 😟 Here's what I didn't cover in the "introducing Lisa" blog: how I built it. 👇 TBH, at first, I thought it was probably a dead end. I was so pessimistic when I read the terrible Python code the model generated that I almost gave up. But I didn't; I generated and read enough to devise a set of instructions (available in the repo with full revision history) that made the model write unreadable but ultimately correct and testable Python code. 🧑‍🏭 To keep it that way, I used ruff and mypy alongside pytest. The quality gates enforce aggressive function complexity maximums and testing-coverage minimums. There's also vulture for dead code. The model instructions for tests are in a separate file in the repo. 🗃️ I added a direct I/O checker that scans the code for direct reads and writes—which aren't allowed; all file I/O goes through MCP servers like lisa-storage or packs with permission to do file I/O, e.g., coding. 🧪 Then there's "packstest" and "e2etest," which test the discrete logic of packs with mock model responses in the former and agent testing of pack modes and operations with real models (i.e., evals) in the latter. 💡TL;DR: I leaned into testing and verification and deliberately avoided reading the code. The result is for anyone to judge: it's Lisa. 🤖 If you're still reading and interested enough to look, please check the agent testing instructions, *test modules, or the I/O checker especially! 📩 🔗It's Lisa-Harness/lisa on GitHub.
2
1
8
362
Zero-sum thinking is one of the most counterproductive cognitive biases in business relations. 💀 Almost none of the opportunities the world puts in front of us involve any trade-off, but we humans tend to think they do and, nearly always, invent one that seems real. If you're doing (or not doing) something to "protect your interests," then congratulations, you are almost certainly on the wrong side of this well-known bias.😮‍💨
1
2
42
"You don't need to be well-versed in whatever you're trying to do." 🤨 That's called being a dilettante.😐 Solve problems you understand. Don't waste your time being a dilettante. Internet-famous people get attention for that — you won't. 😒
The Karpathy HackerTube project is a great example of ‘you need to be more ambitious’ with these models now. Reminder that this doesn’t necessarily mean you have to be well-versed on whatever you’re trying to do. When asked if it will be open sources in the comments, here’s his reply (quoted below). Maybe a bit of an exaggeration but likely very close to the actual starting prompt. A lot of it comes down to curiosity, identifying interesting problems, and willingness to try a thing
1
107
Oof. I'm not really up on this but I was getting the idea this was becoming an issue in places. From my perspective it seems like a balancing act but if there's no moderating force, it will devolve naturally and, as I type it, I suppose there's some inevitability in that. 😬
Open-source "codes of conduct" are cancer and need to be retired; I deeply regret championing them. The inevitable outcome is an unproductive mob controlling projects through intimidation. Given enough time, it pushes away people who would contribute patches. Eventually, all that remains is an unproductive military-police class playing social status games.
40
In today's episode of "missing the point entirely," its 👇
People crying over this are idiots. Clearly the RAM in a data center running full tilt 24/7/365 serving millions of people is better allocated than the RAM in your machine powering your Reddit browsing.
2
173
I'm glad someone says this sh*t out loud. Its rough not having half a Stanford degree or a rich daddy!
VCs will reject a founder because the date on their pitch deck is two months old. But give them a Stanford dropout with three failed startups, a famous last name, and a $40 million valuation? "Exceptional founder. Strong pedigree. Let's move quickly." Apparently, the most important traction metric is how many wealthy people already know your father.
2
102