A little state.
A lot of possibility.

React state for you and your agent.
Just pass llms.txt.

Get started
1
import { action } from '@comwit/state'
import { counter } from './model'

export const counterActions = action(({ state }) => {
  const m = state(counter)

  return {
    increment() { m.count += 1 },
    reset() { m.count = 1 },
  }
})

At home in comwit.io,
the vibe coding platform.

1,000+projects

Keep the idea.
Lose the ceremony.

State, actions, and a hook. A predictable pattern for you and your agent, from the first counter to the whole app.

Get to know comwit

One file. Your agent is up to speed.

Pass in llms.txt for the core patterns. Detailed references are there when you need them.

Client state. Server data. Together.

Reactive models, query loading, and server hydration in the same domain.

A little memory goes a long way.

Persist preferences. Restore local data. Add history when your app calls for it.

Let your agent meet comwit.