Repository navigation
Releases: sppideey/ucode-agent
Release list
1.68.1 — Every model works: Google's limits read right
Every model except Flash-Lite looked "rate limited". Google wraps its errors in a list that ucode could not read, so a model's used-up daily allowance (about 20 a day on 3.8, 3.7, 3.6 and 3.5 Flash) was mistaken for a short per-minute wait and retried all day.
Now
- Used up for today: ucode says so, says when the model comes back (12:30 PM in India), and offers to carry on with Flash-Lite, which has its own 500.
/modelmarks it USED UP. - Pro on a free key: said to be not free, instead of retried forever.
- Per-minute limits: waited out for exactly as long as Google says, and the next requests are spaced to fit.
- Bad API key: says to check the key (
ucode login). It used to call it a "malformed request" and squash the conversation. - Retired models: reported as retired, not retried.
- Overloads: the newer Flash models and Gemma carry on with Flash-Lite while Google is overloaded.
- Gemma: its thinking no longer shows up inside its answers.
Install or update: npm i -g ucode-agent@1.68.1
1.68.0 — Every current Gemini model, quiet commands
Every current Gemini model, one key
/model now lists the latest Gemini models. Flash-Lite stays the default.
| Model | |
|---|---|
| Gemini 3.5 Flash-Lite ★ | free, the default |
| Gemini 3.8 Flash, 3.7 Flash, 3.6 Flash | free, smaller daily limits |
| Gemini 3.5 Flash, 3.1 Flash-Lite, 3 Flash Preview, Gemma 4 31B | free |
| Gemini 3.1 Pro Preview, Gemini Pro (latest) | PAID: needs billing on your Google key |
When Google releases a newer one, /model finds it and lists it on its own.
Fixes
- A new colour lasts until you close ucode. The next launch is ucode's own blue again.
- "Change ur theme to silver" works. ucode used to reply "I do not have a theme to change".
- Slash commands stay out of the chat.
/modelor/statstyped on the start screen leaves you on the start screen. Only/deployis shown, since it starts real work. - The full README is back. 1.67.1 had lost everything below the top section.
Install or update: npm i -g ucode-agent@1.68.0
1.67.1 — Easier to find
README with a real screenshot, badges and a three-line quick start; tests run on Ubuntu and Windows in GitHub Actions; issue and PR templates, SECURITY.md, CODE_OF_CONDUCT.md, CITATION.cff; better npm description and keywords. No change to how ucode works.
Install or update: npm i -g ucode-agent@1.67.1
1.67.0 — The credit always stays, new licences
The credit always stays
"made and tested by om dixit" is now fixed under the logo. It is no longer part of the look, so asking for a new colour can never replace it (a red theme once saved "bright red theme" over it). It shows in the header, now in narrow windows too, on the start screen beside the version, and in /help.
New licences
| What | Licence |
|---|---|
| ucode's code | AGPL-3.0-only, with three additional terms in NOTICE: keep the credit on screen, mark changed versions as changed, no rights to the ucode name or logo |
templates/ and skills/, which go into the apps you build |
MIT No Attribution: the apps are yours, no credit needed |
| Documentation | CC BY 4.0 |
| Contributions | DCO sign-off (git commit -s), contributed under MIT. See CONTRIBUTING.md |
Releases up to and including 1.66.0 stay under MIT OR Apache-2.0.
Install or update: npm i -g ucode-agent@1.67.0
1.66.0 — Popups over the input box
Popups, like opencode
- Type
/and every command pops up over the input box, narrowing as you type.↑ ↓to choose,enterruns,tabfills it in,esccloses. - Pickers and info open as popups, not in the chat: the model and conversation pickers,
/help,/stats,/doctor,/mcp,/permissions,/skills,/theme,/diff.↑ ↓scrolls,esccloses. - Questions too: before a command runs, a popup asks.
y,nora(always) thenenter, or the arrows.enteron its own is no, and anything else you type is sent as a message, so a question that pops up mid-sentence is never answered by it.
Fixes
- The
›arrow in the input box was drawn over the first letter of a question (o ahead? [y/N]). It is gone. - "Make my terminal pitch black" changed nothing in Windows Terminal when a background picture was set, though ucode said it had. The picture now comes off so the colour shows (it comes back with
/theme terminal reset), and the settings file is read back before success is reported.
Approval safety
- Commands awaiting approval are shown as plain text, so colour or cursor codes inside one cannot make it read differently from what runs.
- They are shown in full: the 160-character cut is gone, and a long one scrolls with
pgup/pgdnwhile the answers stay in view. - A mouse wheel under the question scrolls the chat instead of moving the answer.
Install or update: npm i -g ucode-agent@1.66.0
1.65.0 — restyle ucode and your terminal by asking
Ask in words and ucode changes how it looks, or how your terminal looks.
ucode itself — "make ucode orange with the arc spinner", "put my name under the logo". The accent (with lighter and deeper steps worked out), the spinner (dots, line, arc, circle, square, bounce, pulse, star) and the byline are saved in ~/.ucode/theme.json and applied at once. They survive restarts and updates.
Your terminal — "make my terminal navy with a bigger font", "a bit see-through". ucode asks first, then:
| Terminal | What changes | How long |
|---|---|---|
| Windows Terminal | background, text, cursor, font, size, opacity | kept, every tab (old settings backed up) |
| Terminal.app (macOS) | background, text, cursor, font, size | this window |
| iTerm2 (macOS) | background, text, cursor | this session |
| Linux, VS Code and others | background, text, cursor | this session |
/theme — /theme, /theme orange, /theme reset, /theme terminal reset.
The two tools are only offered when a request is about ucode or the terminal, so "make a purple tasks app" still builds an app. Live: one request changed both in 5 seconds. 512 tests pass.
npm i -g ucode-agent@1.65.0
1.64.0 — think, design, undo, MCP
ucode now thinks before it acts, designs every build, can undo anything, and connects to MCP servers — still free, and no slower.
Measured
- A tasks app builds in 1m 09s with 3 requests, the same as before (1m 08s with the new thinking switched off).
npm run eval: 10 real jobs (6 app builds, a bug fix, a new function, a rename, a question about a project) — all pass, about 39s and 3 requests a job.- 504 unit tests pass.
Smarter
- Thinking levels. Flash-Lite did not think at all unless asked (it got a two-step riddle wrong; with
lowit got it right for +0.7s). ucode now asks forlowon every step,mediumon the first step of a build or change,highonce a fix has failed.UCODE_THINK=0turns it off. - Learns its mistakes. Problems it keeps catching are counted in
~/.ucode/lessons.jsonand warned about before the next build. - Tries a different approach when the same problem survives a fix, and offers Gemini 3.5 Flash for that fix — only if you say yes.
- Change requests in an existing project get their own rules: find the code, read only what is involved, smallest change in the code's own style.
- Questions about a project are answered from its files, never guessed.
- Plan check: items left open in its plan are sent back before it says it is done.
Less generic
- A design direction for every build: a tone, two Google Fonts and an accent.
- A generated-look check (starter colours, Inter, purple-to-blue gradients, gradient text, emoji icons) that sends it back once.
UCODE_DESIGN_CHECK=0turns it off. - Stock phrases ("sleek", "seamless", "intuitive") are cut from the closing message.
Safer
/undo [n]puts the whole project back — including what commands changed — from snapshots in a hidden git repo of ucode's own."commands": "ask"//permissions askputs every command to you first; answerato always allow it.- Hooks:
afterEdit(a formatter, say) andbeforeCommand(non-zero exit blocks the command). - A project's own hooks and MCP servers run only after you approve them — re-asked if they, or the scripts they run, change.
New commands
/diff, /commit [msg] (message written from the diff), /review (bugs in uncommitted changes, read-only), /init (writes UCODE.md), /mcp, /permissions, and your own slash commands from .ucode/commands/*.md.
New powers
- MCP servers over stdio or HTTP:
ucode mcp add context7 npx -y @upstash/context7-mcp. Built in, no new dependency. - Headless:
ucode -p "task" [--json] [--yes]for scripts and CI. - Other models: Ollama or any OpenAI-compatible server —
UCODE_BASE_URL=http://localhost:11434/v1 UCODE_MODEL=qwen2.5-coder ucode. - Faster search with ripgrep when installed; Go and Rust tests run after changes.
- Request pacing to Google's per-minute free limit;
/statsshows requests sent.
npm i -g ucode-agent@1.64.0
1.63.0 - speak instead of typing
New: a mic button in the input box. Press ctrl+t (or click mic, or type /mic), say what you want - enter sends it, ctrl+t puts the words in the box to check first, esc cancels. Nothing to install on Windows; macOS uses sox or ffmpeg, Linux arecord or sox.
1.62.8
1.62.7
- ucode only builds an app when you ask for one. Greetings, questions ("what can you do?") and unclear messages get an answer instead.
- Typing + on its own and pressing Enter opens the file chooser, the same as clicking + file. Useful on Windows, where the terminal doesn't pass mouse clicks.
- Messages made only of symbols get a short hint instead of using an AI request.