mit license / typescript

An AI agent that just keeps running

An autonomous AI agent that runs on your local machine. It connects to your LLM provider of choice and can manage tasks, goals, schedules, and integrations -- all from your terminal or a web dashboard.

while True:
think()
decide()
act()
reflect()
sleep()
GitHub
git clone https://github.com/mikedicarlo/while-true-ai.git

It talks to your stuff

Built-in integrations plus anything you can wire up through MCP servers. This is the part where it starts feeling like a personal assistant that actually does things.

REST ClientGET, POST, and generic HTTP requests to any API.
GmailRead, send, search, archive, mark read. Full inbox access.
Google CalendarCheck events, create meetings, manage your schedule.
RobinhoodPortfolio, positions, quotes, buy/sell stocks, orders, crypto.
TwilioSend texts, make calls, set up alerts.
TeslaLock, unlock, climate control, charge, honk, flash, trunk.
SchlageLock/unlock doors, access codes, history, battery status.
Amazon AlexaControl smart home devices, routines, announcements.
StripeCheck balances, view recent charges, manage payouts.
PentairControl your pool and spa. Temps, pumps, lights.
VenmoSend money, request payments, check your balance.
Anything via MCPConnect any MCP-compatible server. Build your own tools.

Some integrations (Tesla, Robinhood, Schlage) ask for confirmation before doing anything that affects physical devices or finances. New integrations are just TypeScript functions.

How it works

You give it a goal. It figures out the rest.

1

Define a goal

Tell it what you want done in plain English.

2

AI plans it out

It decides the best approach on its own.

3

Breaks it into steps

Splits the work into small, actionable tasks.

4

Gets it done

Executes each step, adapting as it goes.

Get it running

Clone it, run the install script, done. It handles the rest.

terminal

$ git clone https://github.com/mikedicarlo/while-true-ai.git

$ cd while-true-ai

$ ./install.sh

The install script detects your OS, installs Node.js and pnpm if needed, builds everything, and walks you through picking your LLM provider. Or do it manually with pnpm install && pnpm build && pnpm start --setup

what a conversation looks like
you> hey, check my email and let me know if anything is urgent

agent> Checking your inbox now...
       Found 14 unread. 2 look important:
       - Deployment approval from Sarah (needs response)
       - Server alert from PagerDuty
       The rest is newsletters and promotions.

you> /add_schedule "check email" every 30 minutes

agent> Done. Scheduled "check email" every 30 min.
       Next run at 2:34 PM.

you> also unlock the front door, my friend is coming over

agent> Front door unlocked via Schlage. I'll lock
       it again in 15 minutes unless you tell me
       otherwise.

It's all on GitHub

I built this because I wanted it to exist. The whole thing is MIT licensed -- fork it, break it, make it better. The codebase is readable and the tests pass (247 of them, last I checked).

If you find a bug, open an issue. If you want to add an integration or fix something, PRs are welcome. No contributor agreements, no process. Just open it up and send it.

FAQ

Q: Is this like openclaw?

A: I guess? I started building this before looking at openclaw so I wouldn't be influenced one way or the other. I just wanted a system that was always on working towards the goals I set. Also, it's been a running joke with friends that AGI might just be an LLM running while true!

Give it a try

Clone it, run the install script, pick your LLM provider. That's the whole setup.

View on GitHub