burrr-ai

Comwit — AI skill for Claude Code

AI community

React state management for vibe coding.

How to install Comwit

This entry records only its repository, not the path inside it, so there is no exact command to give. Open burrr-ai/comwit and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Comwit does

React state management for vibe coding. Pass llm.txt to Claude Code.

Alternatives in AI

  • Omniget — Udemy & Hotmart course downloader, YouTube downloader (yt-dlp GUI, 1,800+ sites) + desktop app for AI agents 13.9k ★
  • Prompt Tower — Context management for long-context LLMs, agents, and vibe coding 382 ★
  • Crux — Taking the pi coding agent to Claude Code-level performance: 0.539 → 0.773 pass@1 on Terminal-Bench 2.1 with t 187 ★

README

comwit

**React state for you and your agent.**

State management for React and Next.js, published as **`@comwit/state`**. Keep client state, server queries, and actions in one domain, then use them through one typed hook.

[Website](https://library.comwit.io) · [Documentation](https://library.comwit.io/docs) · [Quickstart](https://library.comwit.io/docs/guide/quickstart) · [npm](https://www.npmjs.com/package/@comwit/state)

Used in 1,000+ projects on [comwit.io](https://comwit.io), a Claude Code-powered vibe coding platform from Korea. Sponsored by [burrr.ai](https://burrr.ai).

Why comwit?

  • One domain, one hook. Define a model, add actions, and combine them with create().
  • Client state and server data together. Reactive values, cached queries, and server hydration share the same domain.
  • Direct mutations inside actions. Update state with ordinary JavaScript; components subscribe through selectors.
  • Built for coding agents. A compact `llms.txt` covers setup, domain structure, and the core APIs.

Installation

npm install @comwit/state

Supports **React 18 and 19**. For Next.js, follow the [App Router setup](https://library.comwit.io/docs/guide/quickstart).

Working with an AI agent

Give Claude Code or your coding agent this prompt:

Set up @comwit/state in this project using https://library.comwit.io/llms.txt.
Follow its domain structure and state management patterns.

Quick start

A complete counter in one file:

'use client'

import { action, ComwitProvider, create, model } from '@comwit/state'

type CounterState = { count: number }
type CounterActions = { increment(): void; reset(): void }

const counter = model({ count: 0 })

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

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

const useCounter = c