Skip to main content

KittyKode 🐾

       ✧・゚: *✧・゚:* KittyKode v1   *:・゚✧*:・゚✧
             ♡  By Chimi the Creator!!  ♡

A kawaii terminal coding agent that runs entirely on free model tiers — and doesn't fall over the first time it hits a quota wall.

KittyKode is the cute front door on top of a serious resilience layer: a verified fallback chain of free models with key rotation, provider failover, and failure classification (that's freeagent/ + examples/python/fallback_chain.py). See GOALS.md for the why.


Install

uvx kittykode              # try it now, nothing installed
# — or keep it around —
pipx install kittykode     # (or: uv tool install kittykode)

The first run walks you through setup: paste a free key (no card) for any providers you have — OpenRouter, Groq, Google AI Studio, Cerebras, Mistral. Each key is one independent quota bucket; when one runs dry, kitty hops to the next. Keys are saved to ~/.kittykode/.env and work from any directory.

kitty                       # open the interface
kitty setup                 # add / replace provider keys any time
kitty setup --all           # also offer NVIDIA, Cohere
kitty --task "explain scripts/discover_free_models.py"   # one task, then exit
kitty --cwd path/to/project # work somewhere else
kitty --yes                 # auto-approve every action (headless)

No key at all? kitty still opens — the interface works, it just can't run a model until you finish kitty setup.

From source

git clone https://github.com/Chimthuwu/kittykode && cd kittykode
pip install -e .
kitty setup

What you see

Banner → welcome box → a status strip (9 free models across 2 buckets ready) → a prompt. Type a coding task; kitty reads, edits, and runs commands with a kawaii approval screen (a coloured diff for edits, the command for shell runs — y / n / always).

Command Does
/help the command list
/models the fallback chain and which entry is serving
/setup add / update provider keys (buckets)
/doctor per-entry state: ready / cooling / disabled
/reset forget the conversation (chain + approvals stay)
/approvals clear remembered "always allow" choices
/quit bye bye~

When a task is too big for one turn, kitty stops with progress kept — type continue to resume.

What it inherits from freeagent

  • Key rotation — multiple keys per provider rotate before any model switch
  • Independent buckets — a second provider's key in .env (Groq, Gemini, Cerebras…) becomes a chain entry that survives OpenRouter's account-wide daily cap
  • Failure classification — dead models disabled for the session, spent keys rotated away from, transient errors napped; empty 200s count as failures
  • Provider-neutral history — a mid-task switch to another provider just works

Five tools, confined to the working directory: list_dir, read_file, write_file, edit_file, bash. Writes/edits/commands need approval; --yes skips that for headless runs.

Honest limits

  • Free tiers are slow and small-context; long histories get trimmed to the most recent ~30k tokens.
  • If every chain entry shares one quota bucket, a daily cap still stops everything — add another provider's key to .env.
  • Free endpoints may log or train on prompts. Hobby work only — never point it at credentials or client code.

Layout

Path What
kitty/ the kitty command — cli.py, banner.py, ui.py (kawaii toolkit), screen.py (screens/onboarding), engine.py (bridge to freeagent)
freeagent/ the agent engine — tools, agent loop, chain builder
examples/python/fallback_chain.py the resilient chain itself
scripts/discover_free_models.py probe free models, write models.json
models.json the current verified chain
TODO.md build progress + the channel the build agents coordinate through

Development

python -m pytest kitty/tests      # UI + screen tests
python -m kitty --no-banner       # skip the banner while iterating
NO_COLOR=1 python -m kitty        # plain output

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kittykode-0.1.0.tar.gz (72.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kittykode-0.1.0-py3-none-any.whl (83.2 kB view details)

Uploaded Python 3

File details

Details for the file kittykode-0.1.0.tar.gz.

File metadata

  • Download URL: kittykode-0.1.0.tar.gz
  • Upload date:
  • Size: 72.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for kittykode-0.1.0.tar.gz
Algorithm Hash digest
SHA256 dbae22ca47963fda0b1925b81882b50f368cb882dfc3a54728c40ecd42e76b58
MD5 89fc727fbbb9f0d3226f2cf759b7625d
BLAKE2b-256 6e4dd0fcd982af7db1a095e9a57579952abac7575cd812daa198feaf4661bf69

See more details on using hashes here.

Provenance

The following attestation bundles were made for kittykode-0.1.0.tar.gz:

Publisher: publish.yml on Chimthuwu/kittykode

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file kittykode-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: kittykode-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 83.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for kittykode-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4aeab84eee6a284207f30e62706e219af4e6205d0ecea2d1835e82db8fb3c6b6
MD5 d70d45ea329157e6205e18f9fced8db3
BLAKE2b-256 18bd36a12f7ca87ad805e02199bbdd0fe19d7fd137f7b0bcab2620a7068c8281

See more details on using hashes here.

Provenance

The following attestation bundles were made for kittykode-0.1.0-py3-none-any.whl:

Publisher: publish.yml on Chimthuwu/kittykode

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page