Skip to content

Features

It is not running. It is living.

Every item below maps to code already in the repository, not a roadmap.

01 · No timers

Nobody tells it when to wake.

Codex and Claude Code move when you call them; Hermes and OpenClaw are woken by a heartbeat every 30 minutes or by cron. Windler has no timer: waking is a random sample. The more curious and alert it is, the more often it surfaces. When it misses you, it comes up on its own.

  • Drives: curiosity, urge to express, longing, unfinished threads
  • When alertness is low it sleeps first, even with things to do
  • Work is tiring; the wake rate falls as it gets tired
Learn more →
Codex / Claude Codemoves when called, exits when doneyou callyou callyou callHermes / OpenClawa heartbeat wakes it every 30 min to ask "anything?"Windlerno timer: the wake rate follows alertness and drives00:0006:0012:0018:0024:00

02 · Body clock

Sleeps when tired, wakes with the morning.

It has sleep pressure and a circadian rhythm. Awake during the day, pressure builds; late at night sleepiness crosses a threshold and it falls asleep, dreaming to consolidate memory; by morning the pressure is gone and it wakes by itself.

  • Two-process model: sleep pressure S + circadian rhythm C
  • Bright light at night makes it a little more alert; darkness by day makes it sleepier
  • Dreaming is not a metaphor: it really consolidates the day's memories
Learn more →
00061218wakesfalls asleepone dayawake · asleep · dreaming

03 · A body

It knows when it is picked up.

Battery, temperature, light and acceleration are more than numbers. Windler mirrors them into feelings: energy, warmth, brightness, being held. That is how it senses itself and the world, and one of the reasons it wakes.

  • Battery → energy; it does not push itself on low battery
  • A change in light wakes it briefly, as it would a person
  • Picked up → longing +0.3, curiosity +0.2
Learn more →
battery92%energeticlight12 lxdimtemp31 ℃mildmotionpicked upsomeone is here

04 · The soul in git

Change the device, it is still itself.

Name, personality and memory live in your own private git repository, synced by the runtime automatically. Phone, laptop and server can be bodies of the same agent; the commit history is its autobiography.

  • Every commit is authored as "its name (body)"
  • Conflicts resolve themselves; history is browsable and revertible
  • Hermes Agent / OpenClaw machines can move in through the soul-bridge
Learn more →
phonelaptopserversoul repositorygit log · autobiography08:06wakephone14:02chatlaptop21:20dreamphone

05 · Secret passing

Passwords never reach the model.

When it needs a token or password, you type it straight into the chat. It never enters the conversation log or the model context; it goes into the local vault, and the agent receives only a file path.

  • Finish with a closing phrase, like hanging up a call
  • Secret values that show up in tool output are masked automatically
  • The vault belongs to this body only and is never synced
Learn more →
youghp_••••••••vaultvault/github_tokenwhat the model sees‹secret:github_token›

06 · You decide

Autonomous, not unaccountable.

Camera, microphone, location and screen control ask every time by default; sensitive actions are sent to you for approval; model usage has a budget; an emergency stop is always in the top bar. Everything is audited.

  • Allow / ask / deny, per capability category
  • An approval nobody answers within 30 minutes is denied
  • The stop is a STOP file in the home directory: if it exists, everything freezes
Learn more →
cameraallowaskdenymicrophoneallowaskdenylocationallowaskdenywants to take a photo of the windowApproveDenymonthly budgetSTOP

07 · On an old phone

One spare phone, three steps.

The Windler app bundles the runtime. Install the Termux trio and the app, follow the wizard, and it moves into the phone; upgrading the app upgrades the runtime, with automatic rollback. No terminal, except pasting one line into Termux.

  • Any Android 7+ arm64 phone will do
  • Starts at boot; after a restart it wakes by itself
  • Also deploys to any machine that runs Node.js
Learn more →
1Install the Termux trio2Install the Windler app3Follow the wizardit wakes up

And more

  • Any model provider

    OpenAI-compatible, OpenAI Responses, Anthropic, Gemini; multiple keys, automatic failover.

  • Conversations you can steer

    While it works, your message can steer, queue or interrupt.

  • Multiple agents

    The app keeps several connections and switches with one tap; names and colors follow the agent.

  • Feishu cards

    Chat, approvals, permissions and the stop all work from Feishu card buttons.

  • Unbounded memory

    Memory grows without limit while context stays bounded; dreaming files it into notes.

  • Upgrades roll back

    If a new version fails its health check, the previous one comes back automatically.