Skip to content

fgrehm/lazyai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Lazy AI

Encouraging more synapses and less thinking spinners, one step at a time.

An experiment, not a manifesto.

As Mario Zechner (creator of Pi, the coding agent) said: "We are in the FAFO phase of coding agents" - this is my take on staying sane and keeping agency while trying to navigate this new world of agentic coding.

The Lazy in the experiment comes from the "good laziness of software" (like lazy evaluation). My "thesis" is that AI agents should defer work until the human asks for it, and stop when the human stops.

The principle

A task might take an hour or a week, tools should not care which.

Tools should optimize for re-entry: the human steps away and picks the work up without rebuilding context from a chat log with infinite scroll.

Real life and healthy habits like pausing for lunch, tending to a child throwing a tantrum, attending a meeting, going on vacation, etc. should not matter for both sides. The agent's job is to leave a shared workspace in a state that survives the gap, not to race ahead while attention is available.

The idea here is to also encourage on-demand, not always-on behavior: invoking an agent should be a conscious act. No file watcher, background loop, or things that run "because it can". The human starts it, the agent doesn't watch.

Where the line sits is a judgment call. Also, this isn't "anti always-on" or "anti multi-agent". Approaches like Steve Yegge's Gas City are exploring directions that may well pan out, and I'm not saying those are bad. My point is narrower: for the "shit that matters", we need to reassess how we're doing things, and "agent runs while human watches" shouldn't be the default.

Why? (with the help of others)

I'm still figuring out how to best articulate this in my own words, gonna stand on the shoulders of others to get the discussion started:

  • Jason Gorman reads the telemetry: incidents up 242% per PR, lead times up 5x. Code velocity is up but batch size and feedback loops are the elephants.
  • Mario Zechner names the cognitive failure mode: agents have no learning, no bottleneck, and low-recall search, so "booboos compound". Having some level of friction - writing the gestalt by hand, being in the code - is what builds the understanding that lets you fix things when they break.
  • Addy Osmani names the endpoint: cognitive surrender, "the AI's output quietly becomes your output and there is nothing you feel is left to check".

Bottleneck, friction, surrender - three diagnoses with one proposed prescription: Slow The Fuck Down. Lazy AI is like the "operational version" of that prescription.

Better-shaped tools may eventually exist and Gabriella Gonzalez has a good writeup on this titled "Beyond agentic coding". Until such tools exist and are widely adopted, "a good amount of laziness" is the behavioral patch: constrain the agent inside the tools we have and change our own mindset, so the "careful posture" is the default rather than the exception.

What's here

Currently just this README, two prime directives, and pointers to my full agent configs. The directives consolidate my first pass at "operational rules for agents", both short enough to inject into every session.

The first tool / protocol I built on this stance is lazychat, more info about it on my blog. I'm exploring other ideas in this area which I hope to share as they evolve and time allows.

Prime directives in effect

Those bullet points injected into every session seem to be Just Enough to trigger the behavior I currently want from agents. Things are still not perfect and it deviates from what I want at times but I believe it's already a good start.

Here's an excerpt from a real claude code session:

claude code excerpt

And here's an excerpt from a claude.ai chat:

claude web excerpt claude web artifacts

The raw material is in directives/, my full agent configs live in my dotfiles if you want to see the whole shebang:

The goal of this repo

For now I just want to get the word out of my head, I've been ruminating on a bunch of ideas related to this and got a shitton of scattered notes I want to find the time to iterate on.

So far all of the brainstorming and experimentation I've done around the Lazy AI ideas has been between me and LLM models. I do have one off discussions with other warm blooded living creatures about "AI in the long run" and my hope with this is to have a single word to convey my current line of thinking.

Those bullet points in the prime directives already made a difference to my interactions with coding agents, my hope is that this whole thing sparks some discussions.

If this whole thing resonates with you, or if you find / build something that fits "the stuff" here, feel free open a discussion. ✌️ ❤️

LICENSE

CC BY 4.0. See LICENSE.

About

Encouraging more synapses and less thinking spinners, one step at a time.

Resources

License

Stars

Watchers

Forks

Contributors