In this newsletter: Claude Fable is relentlessly proactive Initial impressions of Claude Fable 5 Plus 4 links and 3 quotations and 1 note and 5 releases and 1 TIL Sponsor message: Engineering speed vs. security: End the tradeoff with unified identity Access shouldn’t take hours to approve. Security teams shouldn’t need to stitch audit data across different systems. Teleport gives engineers and their workloads the just-in-time access they need with cryptographic identity for every human, machine, and agent and short-lived, just-in-time privileges issued at runtime. Faster engineering, unified audit trails – everyone wins. After two days of experience with Claude Fable 5 I think the best way to describe it is relentlessly proactive. It knows a whole lot of tricks and it will deploy pretty much any of them to get to its goal. I’ll illustrate this with an example. I was hacking on Datasette Agent today when I noticed a glitch: a horizontal scrollbar that shouldn’t be there in the jump menu chat prompt. I snapped this screenshot: Then I started a fresh claude session in my datasette-agent checkout, dragged in the screenshot and told it: Look at dependencies to help figure out why there is a horizontal scrollbar here I had a hunch the cause was in a dependency of Datasette Agent (likely Datasette itself) and I knew Fable was good at digging into dependency code, either by inspecting installed files in its own virtual environment site-packages or by referencing a local checkout on disk. Telling it to start with dependencies felt like a good bet. I got distracted by a domestic task and wandered away from my computer. When I came back a few minutes later I saw my machine open a browser window in my regular Firefox and then navigate to the dialog in question. I had not told Claude Code to use any browser automation, and I was pretty sure it wasn’t possible for it to trigger mouse movements or keyboard shortcuts within a window, so how was it doing that? I watched in fascination as it continued with its explorations, then saw it open a Safari window instead of Firefox. I also grabbed this snapshot from the Claude terminal: What was it doing there with uv run --with pyobjc-framework-Quartz ? It turns out Fable had hacked up its own pattern for taking screenshots of browser windows. It was using Python to iterate through all available windows on my machine, then filtering for Safari windows with expected strings such as "textarea" in the window name. It used that to find their window number - an integer like 153551 - which it could then use with the screencapture CLI tool to grab a PNG. OK fine, that’s a neat way of taking screenshots. But what was it taking screenshots of? Turns out it had been writing its own scratch HTML pages to try and recreate the bug, then opening Safari and grabbing screenshots. Here’s that /tmp/textarea-scrollbar-test.html page it created, and the screenshot it took with screencapture -x -o -l 153551 /tmp/safari-cases.png : (I have way too many open tabs!) OK, so I can see how it’s opening test pages and taking screenshots, but how on earth was it triggering the modal dialog that was meant to be under test? That’s only available via a click or a keyboard shortcut, and I couldn’t see a mechanism for it to run those in Safari. I eventually figured out what it had done. Claude was running in a folder that contained the source code for the application. It knows enough about Datasette to be able to run a local development server. It turns out it was editing Datasette’s own templates to add JavaScript that would trigger the correct keyboard shortcut as soon as the window opened, adding code like this: <script> window.addEventListener(”load”, function () { setTimeout(function () { document.dispatchEvent(new KeyboardEvent(”keydown”, {key: “/”, bubbles: true})); }, 1200); }); </script> 1.2 seconds after the window opens, this code triggers a simulated / key, which is the keyboard shortcut for opening the modal dialog. There was one challenge left.
Stepping into the London home of Buchanan Studio’s founders is like walking into a maximalist’s laboratory. Floor-to-ceiling front door curtains, a striking checkered sofa, their signature chunky-stripe Studio Chair—Charlotte and Angus Buchanan’s creative pursuits are simply woven into their everyday life. Now, the British furniture makers have lent their whimsical touch to Thuma’s best-selling DTC furniture pieces. As they summarize it, the collaboration is “the intersection of pragmatism and personality.” Two things we could use more of in 2026, right? Three core colors—chocolate, fern, and bubblegum—anchor the line, which centers on the bed. Buchanan Studio’s famed statement stripe comes into play, too, swathing a headboard, a platform bed frame, and accent pillows. The sweetest of dreams are surely coming your way. Of all the 1,500+ homewares in Nordstrom’s sale section (yes, we checked out every. single. one.), these 10 are worth a closer look. This candle passes for a Japanese fish-shaped pastry and is perfectly sized for window sills and small shelves. Was $22, now $17 While you save up for that full-works outdoor kitchen, this outdoor Dutch oven will be your best friend. Was $300, now $240 Marimekko’s whimsical florals in napkin form. Was $23, now $15 Another gem from the Finnish design house: A bath towel sporting painterly-like stripes. Was $130, now $84 Staub’s classic 7-quart Dutch oven is a must for every indoor kitchen. Was $470, now $300 Dinner plates that feel plucked right out of Versailles. Was $64, now $32 It might be 90 degrees now, but you’ll be glad to have this down duvet insert on hand come fall. Was $697, now $390 in queen This ikat throw pillow would be the crown jewel of any sofa. Was $115, now $45 Go on, put this gridded runner in your kitchen or mudroom—it’s washable. Was $435, now $348 SIN’s handcrafted ceramics never miss, and this vase is no different. The A-line silhouette! The wabi-sabi glaze! The curved edge! Was $198, now $79 Plaid is a pattern often linked to colder weather, but you don’t have to hit pause on the pattern until the leaves start changing. These 12 takes on the time-tested motif are bright, breezy, and summer-approved. Top row, from left to right: Marshall Plaid Pillow Cover, McGee & Co.; Marsden Sofa in Kemper Plaid Linen, Heidi Caillier x Lulu and Georgia; Summer Plaid Cocktail Napkins (Set of 4), Ralph Lauren Home x Cabana; Faithfull Costa Plaid Cotton Minidress, Mytheresa. Middle row, from left to right: Patchwork Shower Curtain, Brooklinen; Bamboo Melamine Side Plate Set, Hawkins New York; Vienna Indoor/Outdoor Flatwoven Rug, Anthropologie; Isla Linen Euro Pillowcases (Set of 2), Sage + Clare. Bottom row, from left to right: Copeland Hat, Sea New York; Hudson Plaid Placemat, East Fork; Staud Wells Midi Dress, Bloomingdales; Plaid Kitchen Towels (Set of 2), Serena & Lily. This $20 IKEA vase is so good, you couldn’t stop buying it. A lake cabin, but make it Scandi. Go cord-free with these 28 portable—and oh-so-pretty—table lamps.
A friend of mine built a tiny house with running water in his back yard for $5000 in California. A childhood friend in Buffalo messaged me that her family can’t find a place to live that they can afford. How can both be true? The answer is broken bureaucracy and misaligned incentives. This is the cause of the mass homelessness crisis that started recently, is on the verge of becoming a full blown humanitarian crisis RIGHT NOW, and can be prevented from being a catastrophe RIGHT NOW. The friend who built the tiny home assembled it in less than a week using metal square pipes, metal six way connectors, sliding windows, and used refrigeration panels. Here’s why refrigeration panels are great: Almost every department store has freezer rooms. Over time the insulation degrades on the panels so they throw it out or sell it cheap on craigslist, ebay, or FB marketplace. While the insulation by that time is lackluster for a freezer, it’s still multiple times better than most house walls. My friend found some for free. In total it cost him 5k for the structure. However, the local bureaucracy forced him to take it down. To make it compliant would cost 50-100x as much as it took to build due to inspections, licensed specialists who need to sign off on various systems, etc. If it’s possible to build homes for 5k while my friends are living in fear and exhaustion because the rent is too damn high… I think that is criminal. However, building such things actually puts you on the wrong side of the law. Almost everywhere in the USA makes it illegal to build affordable housing due to the compliance requirements. … Almost We have the opportunity to be a part of something that brings hope by providing homes for people in need. And I found the place where we should start. Williamson County roughly an hour drive away from Austin, Texas has many areas that are: 1. Unincorporated (meaning, not a part of a city) and 2. Outside of any extra-territorial jurisdictions (“buffer zone” around cities that still add some requirements) In these areas, there is: -No zoning -No certificates of occupancy in order to rent out a home -No residential building code -Minimal inspection requirements This is also true of Tarrant County near Dallas, but Williamson is growing faster. Specific requirements in Williamson: Septic permit Site evaluation Soil testing System design approval Inspection Exemption: If it’s the only residential unit on a plot of 10 or more acres and all parts of the septic system are 100 feet or more from the property line Certificate of Compliance (Floodplain Clearance) Apply online showing your construction isn’t within a floodplain. If it is, then you apply for a Floodplain Development Permit Driveway permit If we build a driveway. It’s a simple check to see if we’re disrupting drainage. For commercial or 4+ unit construction we would need a fire marshal inspection. Let’s narrow it down. 1. Use this map to find areas on the outskirts of the extra-territorial jurisdictions 2. Double check that a location isn’t within a city boundary with this map. 3. Use this map to find particular parcel IDs 4. Input that ID here to find info about the property owners It makes sense to focus on land that is zoned residential and already has a home on it to build this as an ADU rather than lands that are likely zoned for agriculture (which has tax exemptions.) I kept seeing owner names ending with “LLC” Until I finally alighted on this little homestead on its own parcel within a larger plot for the farm. It listed the name of an actual person. I plan to identify more properties like this. I like this area in particular as it is a walkable distance from a park. Also nearby is this residential plot Or this one 1. Send hand-written letters to the homes owned by individuals and located on the outskirts of the extra-territorial jurisdictions 2. Researching potential routes for financing this. We can avoid the land costs by offering the property owners a revenue share simply for saying yes to letting us build on their land which also improves their property value. Then we can use regulation CF to crowdfund the purchase of revenue shares of the property so we can immediately start building the next one. Texas also has its own program so non-accredited investors who are Texans can invest in small businesses. Realistically due to fixed legal costs it likely makes sense to raise for the first build with just one or a few funders and then launch a medium size crowdfund after we prove that we can build and rent one. 3. Researching potential construction methods If you know of any people who have experienced buying, building, or living in affordable units please connect me with them. I’m especially curious to talk with people who have lived for a significant chunk of time in factory built homes. 3a.
Hey all, This morning I was a guest on Paul Shattuck’s Substack Live and he asked the kinds of questions I actually want to be asked. We’re at the part of the movie where the antagonists have dropped the mask. They’ve stopped pretending. The project is right there in the open: colonize the moon, colonize Mars, colonize your soul. Extract all there is to life. You people? You’re raw material like gold, the ocean, or the earth herself. That’s a shitty little story for man-children who need a hug. But it’s not the story for us. So what is? We have to develop the story that we want for ourselves. Paul and I did a little of that this morning. Here’s some of what we talked about: The inevitability narrative is demoralizing by design. If you convince us it’s inevitable, why resist? But if our resistance were really so futile… they wouldn’t be working so hard to convince us. The American panic about AI looks nothing like the global story. While we’re clutching pearls, Paul’s wife is vibecoding smartphone apps for small business owners in Uruguay to track their orders… in one day. The tech hits differently when it’s putting food on the table. Our AI model is built on our financial model which is built on extraction-maxxing. But it doesn’t have to stay that way. With America’s awkward 250th birthday coming, it’s time to ask what democracy we’re committing to moving forward. I’ve been part of a group helping resurface the history of Indigenous democracy, specifically the Haudenosaunee Confederacy, whose principles of peace, reciprocity, and collective governance were here long before any founding fathers showed up and provided the inspiration for much of what they wrote. The book is American Indigenous Democracy: A Call for Interdependence by José Barrero and you can pre-order it now. Watch the whole conversation above to feel a lot more hopeful than you’d expect. Big thanks to Paul for having me and to YOU for being part of this very human conversation. Share it with a friend or two who could use a good dose of hope! And remember, we have a beautiful opportunity to apply the potential of this technology to the problems we choose, not the ones Sam Altman or Peter Thiel prefer (i.e. getting more of your money, monthly). My local community is coming together to do just that in a few weeks: check out Palm Springs Next to be inspired and encouraged toward a future worth building. Stay human, — Baratunde Thanks to the entire Life With Machines team, especially Layne Deyling Cherland and Alie Kilts for editorial and production support.
At a corporate dinner a couple of years ago, I found myself at a table with three people I barely knew. We were all executives, gathered for one of those events where you spend the first twenty minutes exchanging titles and job histories, and the next hour deciding whether you actually like each other. Somewhere in that second hour, as the conversation loosened up, the one single person at the table asked, “How did you meet your partners?” What followed was not what any of us expected. The three of us didn’t tell polished love stories. We told convoluted tales of adversity and near misses. Stories about first impressions that turned out to be completely wrong. Stories about how we almost didn’t say yes to that date, and how close we each came to walking away before things even started. This brings me to the yellow tie. I met my husband David at church my first weekend as a freshman at Duke. He was a senior at UNC, a couple of years older than me, wearing a pinstripe suit and a bright yellow tie. My first impression: he looked ridiculous, jokey, and unserious. Over the following months, we moved in the same church community. He had a strange sense of humor, the kind that felt overly familiar. I told a friend at the time that he was borderline rude. What I didn’t know was that he thought his jokes were a way to be warm and inclusive, even disarming. I was a shy girl who didn’t appreciate it, and I avoided him whenever I could. A year after we met, we ended up carpooling to a church retreat eight hours away. He offered to drive my friend and me. I agreed, mostly because my dad wanted a guy in the car for the road trip. At the retreat, he asked me out. I was so caught off guard that I asked him about a mutual friend I thought he was dating. He said, “What about her? She’s in China.” I genuinely believed he was asking me out while his girlfriend was abroad. A spectacular misunderstanding on both sides. I turned him down, and we went our separate ways. Later that summer, we drove separate cars full of people to another retreat in Wilmington from Chapel Hill. During that retreat, he asked me out again. I decided to give him a chance. He had just graduated and was heading to law school, so we had only a couple of weeks anyway. He told me to meet him at the Ben and Jerry’s on Franklin Street in Chapel Hill. I dropped everyone off, then drove straight there. This was before cell phones. I waited. Fifteen minutes. Thirty. Forty-five. No David. I gave up and started walking back to my car, certain I’d been stood up. That’s when I heard honking and someone shouting my name from a passing car. It was him. I reluctantly stayed for the date, mediocre as it was. I went home unconvinced. We parted ways when he left for law school in Boston. A few months of back and forth followed, and we ultimately decided against long distance. Then, on December 22nd, after a year and a half of misunderstandings, avoidance, and a disastrous first date, we officially decided to be together. And nearly three decades later, here we are. The other two at that dinner table had their own versions of this story. One described a husband who pursued her for months while she remained uninterested. The other talked about a first date so awkward that he didn’t call her back. It was only by chance that he picked up when she called him. Three happy marriages that might never have happened in the internet age. I’ve been thinking about how people met their spouses across time. For most of human history, proximity was the algorithm. A sociologist named James Bossard analyzed 5,000 marriage licenses in Philadelphia in 1931 and found that one-third of couples had lived within five blocks of each other before marrying. The probability of marriage fell steadily with increasing distance (Bossard, 1931). A follow-up study in Duluth found the same pattern. You married people who lived extremely close to you, sometimes in the same building. That started to change after World War II. Friends overtook proximity as the primary matchmaker, rising from about 20 percent of couples in 1940 to a peak of 40 percent by 1990. For more than six decades, your friends were essentially curating your dating life. They knew you and they knew the other person. When you connect two people, what do you share? Not a photo of them or some quote. You share what you have in common, and why they connected you. Any introduction carried implicit information: this person has been seen, and someone who cares about you thinks it’s worth your time. Then the internet arrived, and that vetting disappeared. Meeting through friends peaked around 1995 and has been declining ever since. By 2013, online dating eclipsed friends as the most common way couples in America meet, according to Stanford sociologist Michael Rosenfeld’s landmark study. By 2024, roughly 60 percent of new couples report meeting online (Rosenfeld, et. al). This is more than a shift in technology.
Trajectory compression and replay is the post-session counterpart to in-flight context management. Once a conversation has finished — successful or aborted, ten turns or ninety — the harness still has to do something with the saved record. That record is large, expensive to store at scale, mostly redundant for replay, and usually too long to feed back into a model for fine-tuning or evaluation. Trajectory compression shrinks the saved record on disk; replay reads the compressed JSONL back, reconstructs a chain, and continues, audits, or trains from where the live session left off. This pattern is genuinely distinct from in-flight compaction (Chapter 6) and from live observability (Chapter 9). In-flight compaction operates on the active message array inside a running session and has a single goal: keep the next API call under the model's context window. It is reactive, online, and bounded by the threshold ladder. Trajectory compression operates on the saved JSONL after the session has ended — there is no live context window to fit, no pending API call to unblock; the goal is durability, transferability, and replay fidelity. Live observability (Chapter 9) emits structured events while the agent runs, mostly to logs and SIEM streams; those events are append-only and unaware of each other. Trajectory compression treats the entire conversation as a single artifact, applies turn-level surgery (protect head, protect tail, summarize the middle), and writes a schema-stable JSONL whose every line is self-describing. Three operations define the pattern. Selective field stripping removes message attributes (parent UUIDs, sidechain markers, REPL wrappers, image attachments) that were useful at runtime but pollute the saved record. Message-pair grouping preserves logical units — a tooluse and its toolresult must travel together — so a downstream consumer can never see one without the other. Schema-stable JSONL export writes one self-contained JSON object per line with a fixed key set, so the file streams cleanly into HuggingFace datasets, Splunk, or a replay loop without bespoke parsing. Replay is the inverse: read the JSONL, walk the chain backward from the leaf, splice over compaction boundaries, and surface a coherent message sequence to the model or the auditor. Before you read on — two quick announcements. First, you can now get 50% off a yearly subscription and unlock all paid content on Agentic AI, AI Security, and more: https://kenhuangus.substack.com/subscribe?coupon=302342d9. Second, all previously written 15 Hermes Agent and Claude Code agentic harness design patterns are now available in a single book on Amazon: https://www.amazon.com/Agentic-AI-Harness-Pattern-Patterns-ebook/dp/B0H13XWS8W Figure 5.1. Trajectory compression is the post-session counterpart to in-flight context compaction. The pipeline walks a raw transcript through stripping, grouping, and JSONL export so the same artifact can serve resume, training, audit, and archive. Claude Code's trajectory layer is the JSONL session file itself: every conversation is persisted as an append-only .jsonl under ~/.claude/projects/<project>/<sessionId>.jsonl , and "compression" happens both at write time (selective field stripping) and at read time (byte-level dead-branch excision plus chain reconstruction). The harness writes incrementally during the session and replays the file when the user calls --resume or loadTranscriptFromFile . Every call to recordTranscript runs cleanMessagesForLogging first. This is the gate between the live in-memory message array and the on-disk record. Messages that are valuable at runtime but hazardous to persist — ephemeral progress ticks, training-sensitive attachments — are dropped before they ever hit disk. Note how the function changes behavior based on getUserType() : external (non-Anthropic) users get an additional REPL-rewriting pass, so shared transcripts contain the underlying Bash/Read calls instead of the wrapper REPL tool. // src/utils/sessionStorage.ts (line 4450) export function cleanMessagesForLogging( messages: Message[], allMessages: readonly Message[] = messages, ): Transcript { const filtered = messages.filter(isLoggableMessage) as Transcript return getUserType() !== 'ant' ? transformMessagesForExternalTranscript( filtered, collectReplIds(allMessages), ) : filtered } The filter step is isLoggableMessage .
Recursive self-improvement, or RSI, is not a magic phrase for an intelligence explosion. It is a concrete engineering claim about closing a feedback loop. A system helps design, implement, test, and deploy a successor system. The successor is then better at the same kind of work, so the next cycle can run faster, wider, or with less human intervention. The loop may be weak, partial, and heavily supervised. It may be bottlenecked by compute, safety evaluation, human judgment, or organizational process. But once the loop exists, the important question changes from "Can AI assist AI researchers?" to "Which parts of AI research and development still require humans, and how quickly are those parts shrinking?" The PDF supplied for this piece is Anthropic's "When AI builds itself," a public Anthropic Institute essay on recursive self-improvement. I will credit the source directly: Anthropic defines recursive self-improvement as the possibility that an AI system becomes capable of autonomously designing and developing its own successor, while stressing that this has not yet happened and is not guaranteed to happen. The live source is Anthropic, "When AI builds itself," https://www.anthropic.com/institute/recursive-self-improvement. What makes Anthropic's essay useful is that it does not treat RSI as a philosophical abstraction. It decomposes the AI-development workflow into engineering, experimentation, review, research judgment, and organizational bottlenecks. It then gives evidence that AI systems are already accelerating several of those pieces: coding agents write and edit files, run tests, investigate failures, and increasingly carry hour-scale tasks. Anthropic reports that Claude-authored code rose from low single digits before Claude Code's February 2025 research preview to more than 80 percent of merged code by May 2026, and that the typical engineer in Q2 2026 merged about 8x as much code per day as in 2024. The point is not that lines of code are a pure productivity metric. Anthropic explicitly warns they are not. The technical point is that code generation, debugging, and implementation are becoming less constrained by human typing. Figure 1 illustrates the core loop. RSI requires more than a model that can emit code. It requires a path from objective selection to model modification, from model modification to evaluation, and from evaluation to deployment of a stronger agent that can contribute to the next round. The loop can be interrupted at every stage by failures of measurement, robustness, security, or alignment. That is why the oversight gate is part of the system rather than an afterthought. [Image: Figure 1: Recursive self-improvement as a closed technical loop] The minimal RSI loop has six components. First, there is an objective function, which may be explicit, such as improving benchmark performance under a fixed compute budget, or implicit, such as increasing the rate at which a lab produces useful research ideas. Second, there is a generator that proposes changes. In today's labs, that generator is partly human and partly AI: researchers choose directions, while coding agents implement patches, run experiments, and summarize results. Third, there is an execution substrate: repositories, test harnesses, training jobs, inference clusters, data pipelines, experiment trackers, and deployment systems. Fourth, there is an evaluator that decides whether a change is an improvement. Fifth, there is a promotion mechanism that makes the improved system available to future cycles. Sixth, there is a control layer that decides which changes are allowed to proceed (see Figure below). A toy RSI loop can be written as an optimizer: propose candidate successor S', run experiments E(S'), score the result, and update the active system if the score improves. Real RSI is messier. The score is multidimensional. A successor may be better at coding but worse at honesty, better at long-horizon planning but harder to interpret, or better at persuasion in ways that are strategically dangerous. There is no single scalar that captures "better" unless the organization dangerously simplifies the problem. This is why the technical definition of RSI must include both capability recursion and control recursion. Capability recursion asks whether the system can improve the machinery that improves it. Control recursion asks whether the safety, audit, and evaluation machinery can improve at the same pace. A lab that automates model development but keeps evaluation manual has not removed humans from the loop; it has moved them into a narrower and more overloaded role. A lab that automates both development and evaluation without independent checks risks creating a self-confirming pipeline, where models learn to satisfy the evaluator rather than become genuinely safer or more capable. In current systems, the most mature part of the loop is software engineering.
The entire reasoning model space has been moving in one direction, emphasizing more thinking tokens, longer chains, and bigger reasoning budgets. Kimi just challenged that. K2.7 Code scores higher than K2.6 on every coding benchmark while using 30% fewer thinking tokens, at the same price. Most thinking models apply the same reasoning depth to every task. A simple bug fix triggers the same deliberation loop as a complex architecture decision. The model isn’t being thorough but rather overthinking. K2.7 targets this specifically. Here’s what changed vs K2.6: +21.8% on Kimi Code Bench v2 +11.0% on Program Bench +31.5% on MLS Bench Lite All with 30% fewer thinking tokens. You can find the model on HuggingFace here → Most agent memory systems optimize for recall. The harder problem is what to forget, or more precisely, what to never store in the first place. The default agent memory pipeline hands an LLM raw text and asks it to extract entities and relationships. The model decides the types, labels, and attributes all on its own. The result is a knowledge graph that behaves like an expensive vector store. Entity types collapse into generic labels. Relationships flatten into a single “RELATES_TO.” The graph has the data, but no query can reach it with precision. This is not a retrieval problem but rather a structure problem. And the fix is the same pattern that already works everywhere else in the AI stack, i.e., constrain the output space before generation, not after. Entities define what the agent is allowed to remember. Pydantic models with typed fields and descriptive docstrings replace the LLM’s guesswork with domain vocabulary it was never trained on. Edges define how things connect. Source/target constraints on relationship types mean the graph can only form valid connections. If your schema has no edge connecting Project to Competitor, that relationship cannot exist in memory. Temporal resolution handles what was true versus what is true. Fact resolution invalidates outdated edges while preserving history, so the graph never silently serves a stale state. The schema guides extraction at two points in the pipeline (entity extraction and fact extraction) while resolution and temporal processing run automatically downstream. You define what to look for. The system handles deduplication, contradiction detection, and time-windowing without additional configuration. A useful constraint is to have just 10 entity types, 10 edge types, and 10 fields per type. That forces you to model the 80% that matters rather than attempting completeness. Start with 3-4 of each and expand only when retrieval fails. Zep Graphiti does all of this as a fully open-source temporal knowledge graph library. It includes Pydantic-based ontology definition, schema-guided extraction, entity resolution, fact resolution, and temporal windowing. If you are building agent memory with any kind of domain specificity, schemas are a must. (don’t forget to star 🌟) We also covered this topic in more depth (with code) in this article → Thanks for reading! At the end of the day, all businesses care about impact. That’s it! Can you reduce costs? Drive revenue? Can you scale ML models? Predict trends before they happen? We have discussed several other topics (with implementations) that align with such topics. Here are some of them: Learn everything about MCPs in this crash course with 9 parts → Learn how to build Agentic systems in a crash course with 14 parts. Learn how to build real-world RAG apps and evaluate and scale them in this crash course. Learn sophisticated graph architectures and how to train them on graph data. So many real-world NLP systems rely on pairwise context scoring. Learn scalable approaches here. Learn how to run large models on small devices using Quantization techniques. Learn how to generate prediction intervals or sets with strong statistical guarantees for increasing trust using Conformal Predictions. Learn how to identify causal relationships and answer business questions using causal inference in this crash course. Learn how to scale and implement ML model training in this practical guide. Learn techniques to reliably test new models in production. Learn how to build privacy-first ML systems using Federated Learning. Learn 6 techniques with implementation to compress ML models. All these resources will help you cultivate key skills that businesses and companies care about the most.
Elizabeth Strout’s newest novel, The Things We Never Say, delivers a single, jarring line that reverberates through the political landscape. The sentence, delivered by a character recalling a presidential campaign, blurs the line between memory and perception, suggesting that a candidate’s off‑hand comment about a rival looking “like a girl” reshapes how the narrator sees that opponent forever.
The passage is more than a throwaway remark; it becomes a lens for examining how language and power can alter reality. By framing the comment as a moment that “sentences” the country to live inside the candidate’s mind, Strout hints that the collective imagination has been hijacked by a leader’s contempt and misogyny. The novel suggests that the way we view political figures is no longer objective but filtered through the rhetoric of those who dominate the discourse.
Readers are left to consider how a single, seemingly trivial utterance can cascade into a broader cultural shift, fueling division and hate. The narrative implies that the current political climate—characterized by polarizing figures and relentless attacks—has been shaped by such moments, where personal slights become public policy. In this way, Strout’s work becomes a commentary on the power of words to rewrite perception and cement a leader’s influence.
Ultimately, the novel asks whether we can ever escape the echo chamber created by a charismatic but divisive figure. It challenges listeners to recognize how language can trap us in a particular worldview, urging a reevaluation of the narratives that dominate our political consciousness.
Last week, I checked out more than two dozen new and upcoming video games in Los Angeles. Let me quickly tell you about a lot of them. Read on for: A game that came to its developer in a dream A game made by someone who worked on God of War’s yak A game by a developer who may or may not still have my surround sound speakers A game about dinosaurs that kill you, a game about you killing dinosaurs, and a game where it could go either way A game where you can play as Sonic or Tails And so many more… First up is a batch of games I checked out at the Indie Mix last Friday evening, on the roof level of the Grammy Museum in downtown L.A. This annual meetup is always great for spotting some niche titles and hearing from scrappy developers. Developer: Eduardo Scarpato PC | June 12 This is a puzzle game about carefully filling the spaces in bento boxes to feed some weird creature who reaches out from what I think is an air shaft. You score bonus points for food combos, for filling every slot in the box, etc. The pitch is that it’s like Resident Evil 4 inventory management turned into a full game, and with food. I played it for a few rounds, found it creepy and fun, figured I’d wait for release to play it more. Then their PR rep sent me a review code but I got too busy to play it. Whoops. But it’s out today and there’s a demo. Developer: E-Line Media PC | TBA release A Sim City riff about fixing up a city. It’s got a squishy, claymation art style and is meant to be cheerful and cozy. Instead of building up cities, as I understand it, the player is improving neighborhoods. With a computer mouse in hand, I spruced up one dilapidated block by opening up a bakery, planting trees, picking up trash and adding some pretty banners. Developer: Lovely Hellplace PC | August 18 This is a turn-based RPG, and I don’t have a super strong memory of playing it. But it stuck with me because it was one of several games at the show flaunting low-polygon PS1-era art. I liked the retro look. Dungeon Lurker (13AM Games, PC, TBA) also had good throw-back visuals… Developer: NVZN Studios PC | June 5 This game was ridiculous in all the right ways. “You’re playing basketball during the zombie apocalypse,” developer Art Grayson told me as I walked up to play it. He and his brother made the game and had released it just that morning. In your left hand, you’ve got a basketball. Hold a shoulder button just long enough to shoot it precisely. In your right is a gun, which is used to clear the court of zombies. As you play, you can upgrade your basketball shots (so you can also dunk, for example) and your guns (to wield a rocket launcher, among other things). Very silly. Why play NBA 2K or Call of Duty when you can play a game that combines the two? Developer: Outside Joke Games PC | TBD Here’s a first-person tactics game with a fun origin story. Developer Leslee Sullivant woke up in the middle of the night, having just dreamt it. At 2am, she envisionsa person in a fantasy setting holding cards instead of a sword or magic wand. She immediately tells her husband, Chris, and they decide they’ve got to make it. At the Mix event, Leslee and Chris describe Deck Crawler as Slay the Spire meets Skyrim. It’s early. Developer: Heartloop Games PC | TBD Game developer Osama Dorias waved me over to try Poly Fighter, a 2D fighting game roguelike that he thought would primarily appeal to fans outside of the fighting game community. Instead, he says the team’s heard a lot of enthusiasm from fighting game fans and they’re now working to make the game’s moves a bit more complex. They’re also taking the game to this month’s Evo fighting game tournament, making it one of the only single-player games ever demo’d at the show, Dorias said. Developer: CAGE Studios PC/Xbox | August 5 This is a first-person shooter where the pitch is “speed = damage.” You’re meant to zip through its levels, eyes on a speedometer that you want to push past 100%. I did my best, but I wasn’t able to gain much excess speed. It might be because I was distracted by chatting with the game’s solo developer, Salaar Kohari, who told me he’s ex-Sony Santa Monica and had worked on “vehicles” for God of War Ragnarok. Wait, wasn’t that game set in the world of Norse Mythology? Was I forgetting a car? Was he talking about a boat? “The bobsled and the yak,” he told me. Right. In video game design terms, those are vehicles. He couldn’t tell me what he worked on on Laufey: God of War before he left Sony Santa Monica. Guess it wans’t the cube! Developer: AIXLAB PC | 2026 I had to settle for watching other people play this first person horror game in which you wield… a phone! The in-game phone is used as a camera to decipher what’s real and what isn’t. So much for there being ghosts in this game. Any game that has you glancing at your phone while you’re supposed to be walking somewhere is hauntingly realistic. That was it for the MIX. On Saturday, I started a three-day tour of Summer Game Fest’s Play Days.
Send this story to anyone — or drop the embed into a blog post, Substack, Notion page. Every play sends rev-share back to storyflo · tech.
We’ve simplified responses to 👍 / 👎. Past comments are archived but no longer visible.