Before joining the team I started developing a comprehensible input curation engine for my own language learning purposes built on Antfly. I'm indexing Anki study decks to track my approximate passive vocabulary in Spanish, indexing public domain reading material for content, and using hybrid search/RRF to surface content that best fits my current level at any given moment. I'm also playing around with using Antfly inference to generate limited rewrites of difficult passages, in order to bring the comprehension into a range that fits my level.
It's a fun use case that seemed to sit nicely at an intersection of what antfly does well. I also think the concept generalizes nicely to broader user-adapted learning/study use cases that don't involve shipping a boat load of behavioral data to a cloud/model provider.
So far have just implemented this for reading material but could imagine extending to some cool areas! (video + audio being obvious next targets)
Anyone who has used Spotlight search on macOS knows that (1) it can be an absolute resource hog, and (2) it's relatively useless (even with Siri stuff they added in macOS 27). So I was eager to take a stab at a native app that did both better and kept everything on-device (no external inference providers), and building it on Antfly meant I could run it all from one engine (way simpler to coordinate than a whole RAG pipeline).
[Disclaimer: I work at Antfly. The local search app is in preview now at searchaf.com. We plan on open-sourcing it soon (probably with its own Show HN post), as a handy reference architecture.]
Would Antfly do better with the tasks listed at https://pogueman.substack.com/p/125-tests-of-the-new-ai-siri?
- Category 1 (Personal Info): Yes. Especially if you choose to index notes, emails, photos, etc. - Category 2 (Phone & App Control): No. This is what Siri should have been doing all along, and probably not an Antfly task. We'd obviously have less hooks for tool calls than what Apple exposes to Siri internally ("take a selfie") - Category 3 (Internet Queries): Yes. Antfly also has the ability to - Category 4 (Visual Intelligence): Yes. Antfly enables a lot here for multi-modal inference. And intelligence isn't necessarily restricted to Antfly's own inference tools -- SearchAF also ingests image tags classified by Siri. - Category 5 (Screen Intelligence): Yes. Providing image context on-the-fly would come from Antfly's natively embedded inference runtime (which again, all runs on-device).
So, the simulator only works if it knows what "correct" looks like and what kinds of failures to throw at the code, right? Who decided those two things? Was it the same agent that wrote the code? Were those human-written, or did they fall out of the formal specs?
You had three things that could each say "this is right", the end-to-end tests, the formal model, and how the old Go version behaved. When they disagreed, which one did you trust? Did the test ever turn out to be the thing that was wrong?
When the simulator caught something before release, was it usually the code that was wrong, or the definition of correct?
Feels like there's some really useful insights about best practices for coding with agents. I wonder if the Bun team used a similar approach if they still would have switched.
At the moment the reverse is true though, the simulator and what we've captured as ground truth for the desired design has been refined enough in tests and specs that the code is often the one implicated, and most of the bugs have been in code related to caching correctness and are only exposed through soak testing.
In opposition to Anthropic/Bun, we mostly used a hands-on approach to the rewrite and took the opportunity to capture the original design of Antfly into specs and any missing tests one subsystem at a time so we didn't strive to be as hands-off as "let Claude hill-climb on the tests". Especially since the system as a whole is far more dynamic and depends more on scalability, distributed systems stuff than Bun required!
A little context on the inference and fine-tuning side of things at Antfly. Our model runtime is written in Zig, with no C++ bindings or dependencies. Over the last few months, we wrote our own CPU, Metal and CUDA kernels for the set of models that we support: Gemma4, Gliner2, Qwen3, Florence2, etc,
We’ve also created a JIT compiler for Metal/CUDA kernels, which should make it faster for us to add new kernel implementations in the future.
We're currently working on the infra to finetune (and deploy) Gliner2 and Gemma4 models directly in Antfly.
Happy to answer any questions about the inference runtime or fine-tuning work!
Thought it is interesting to juxtapose to the Bun rewrite from Anthropic and wanted to talk about why we went the other way! Would love to talk about our process or the technology!
Benchmarks against are linked in the article but here they are again for posterity https://antfly.io/releases/v0.2
- i see this phrase everywhere but i dont know what it means