# qwe-qwe

> ⚡ Lightweight offline AI agent for local models. No cloud, no API keys — just your GPU.

- **URL**: https://www.freshcrate.ai/projects/qwe-qwe
- **Author**: deepfounder-ai
- **Category**: AI Agents
- **Latest version**: `v0.23.3` (2026-06-02)
- **License**: Unknown
- **Source**: https://github.com/deepfounder-ai/qwe-qwe
- **Homepage**: https://qwe-qwe.deepfounder.ai/
- **Language**: Python
- **GitHub**: 35 stars, 8 forks
- **Registry**: github (`deepfounder-ai/qwe-qwe`)
- **Tags**: `agent`, `ai`, `ai-agent`, `python`

## Description

⚡ Lightweight offline AI agent for local models. No cloud, no API keys — just your GPU.

## Recent releases

| Version | Date | Urgency | Changes |
| --- | --- | --- | --- |
| `v0.23.3` | 2026-06-02 | High | ## v0.23.3 — Coach, recovery helpers, polish  Patch release on v0.23.2: opt-in daily anti-pattern coach, a recovery path for Qdrant ↔ markdown desync, a sharper `--doctor` warning for `onnxruntime-gpu` (community PR), and a brand refresh on the web UI.  No schema migrations, no breaking changes. Drop-in upgrade.  ### Coach — daily anti-pattern scan (opt-in, no LLM cost)  Inspired by Microsoft's [AI Engineer Coach](https://github.com/microsoft/AI-Engineering-Coach) VS Code extension. A small sche |
| `v0.23.2` | 2026-05-28 | High | ## v0.23.2 — Phantom "generating" bubble fix  ### Critical user-facing fix  **Phantom "generating" assistant bubble appeared out of nowhere on idle chats and blocked further sends.**  User report: idle chat, agent's last reply already delivered, everything looked done — and suddenly a "castor 09:39 PM generating" status appeared with the typing indicator on. The bubble never closed, so the composer stayed in a busy state and new messages couldn't be sent.  Root cause: ``static/index.html::handle |
| `v0.23.0` | 2026-05-19 | High | ## v0.23.0 — Goal Runtime, Native Anthropic, Plugin Framework  The biggest release since v0.18.7. Goals turn castor from a chat assistant into an autonomous agent that can work for hours on multi-step tasks — surviving disconnects, process restarts, and context-window pressure.  Long-running multi-step tasks are now first-class citizens. Create a goal in the Goals view and Castor breaks it into a plan, dispatches subagents per subtask, and tracks progress live.  ### Goals — long-running autonomo |
| `v0.22.1` | 2026-05-12 | High | ## v0.22.1 — Migration reliability fix  - **fix(db)**: SQLite migration runner now executes statements one-by-one instead of via `executescript()`. This makes `ALTER TABLE ADD COLUMN` migrations idempotent: if `scheduler._ensure_table()` or any other helper pre-creates a column before a migration runs, the "duplicate column name" error is silently skipped rather than aborting the entire migration. Eliminates a test-ordering flakiness introduced after the v0.20 / v0.21 merge. - Internal: `_iter_s |
| `v0.18.7` | 2026-05-12 | High | # v0.18.7 — Canvas (sandboxed HTML side panel) + Skill import (skills.sh / Anthropic SKILL.md spec)  Two big features land together because they're the same idea from opposite directions: **richer output → user** (Canvas), and **more capabilities ← community** (Skill import). Plus a Tools & skills tab rebuild so the growing skill list stays usable.  ---  ## 🎨 Canvas — sandboxed HTML in a side panel  The agent can now ship arbitrary HTML to a 480px right-side panel. Three concrete things this un |
| `v0.18.1` | 2026-05-06 | High | # v0.18.1 — Bug fixes from external reports  Patch release closing three bugs reported on the issue tracker by **@EugeneKorr** (VegaEx). Each issue came with a clean repro and a working patch — pure pleasure to merge. No new features.  ## 🔁 #10 — `_extract_tool_from_text` missing pattern for `!<function_call:>` format  **Symptom users saw**: "infinite reply" — the model kept generating but the chat never advanced. Reported on Qwen 3.5 9B served via LM Studio, but the underlying mechanism applie |
| `v0.18.0` | 2026-04-26 | High | Minor bump because the project's positioning changed: qwe-qwe is now framed as a **self-hosted AI agent for business automation**, not just "an AI agent for small local models". No breaking API changes; the small-model heritage stays intact (it's why the system around the LLM works hard so the model doesn't have to). What changed is the framing of *who* it's built for.  ## 🎯 Repositioning  - **Tagline**: `AI agent optimized for small local models` → `Self-hosted AI agent for business automa |
| `v0.17.19` | 2026-04-22 | High | # v0.17.19 — Abort propagation, concurrency, security hardening  Seven fixes from the code-review follow-up. Two batches landed in parallel (deep plumbing + security hardening) and were merged into a single release.  ## 🛑 Abort + concurrency (Batch 3 — deep plumbing)  ### A. Stop actually stops blocking tools  Before: `tool_executor` called `subprocess.run(..., timeout=300)` for `shell` and `urlopen(..., timeout=15)` for `http_request`. The agent loop's abort check ran only between tool calls, |
| `v0.17.6` | 2026-04-21 | High | # v0.17.6 — Soul save + ground-truth core tools list  Two fixes on the v2 web UI.  ## 🐛 Fixes  ### Soul settings silently wiped all traits (and UI didn't refresh)  Changing one trait in **Settings → Soul** used to POST:  ```js /api/soul  { traits: { humor: "high" } } ```  The server iterates `data.items()` and calls `soul.save(key, value)` for each top-level key — so it received `save("traits", {humor: "high"})`, which returns `"Unknown trait: traits. Use add_trait()…"` and saves nothing. HTTP |
| `v0.17.5` | 2026-04-21 | High | # v0.17.5 — Secrets list not updating  Quick patch: the Secrets sub-tab didn't refresh after a secret was saved, so users saw a "saved" toast but the list stayed empty.  ## 🐛 Fix  - **`state.secrets` was being assigned a function** — the loader had:   ```js   state.secrets = r.keys \|\| r \|\| [];   ```   `/api/secrets` returns a bare array of keys. `r.keys` on an array resolves to `Array.prototype.keys` (a truthy method reference), so the fallback chain leaked the method into state instead of the |

## Citation

- HTML: https://www.freshcrate.ai/projects/qwe-qwe
- Markdown: https://www.freshcrate.ai/projects/qwe-qwe.md
- Dependencies JSON: https://www.freshcrate.ai/api/projects/qwe-qwe/deps

_Generated by freshcrate.ai. Indexes github releases for AI-agent ecosystem packages._
