AI Private Workspace v0.2.0
Downloads
macOS
Windows
First minor release since 0.1.99. It turns AI Private Workspace from a local RAG
chat into a full read-only project-intelligence tool — still entirely local,
private, and grounded in your own files — and hardens the project's open-source
security posture. Headline themes (the detailed 0.1.100–0.1.178 history is
preserved below):
Added
- Project Intelligence. A deterministic, role-neutral evidence graph with an interactive Map; role lenses (Developer / DevOps / Tester / Business analyst) and an adaptive role dashboard; a visual CI/CD flow; Cloud and References tabs; environment comparison and deployment flow; and a read-only Security lens. Findings everywhere read as human leads ("what was found, why it may matter, what to check"), not verdicts.
- Read-only agents & analysis. The Investigator — a bounded ReAct loop over read-only tools (
search_code,read_file,graph_query,list_files,git_history,ci_triggers) with a transparent trace and collected sources — and the deterministic Watcher ("what changed since I last looked?", with an optional one-tap LLM recap of the commits). - Project groups. Treat several repositories as one project: group Ask (repo-tagged sources), a portfolio Home, and group Intelligence that compares rather than merges (repo×environment matrix, shared-vs-unique tech, risks grouped by pattern).
- Memory & profile. Local, fully-editable project memory + handbook, and a cross-project "About you" profile applied to every project — with review-first suggestion (nothing saved until you keep it).
- Navigation. A Cmd/Ctrl-K command palette and a file inspector (owner, change-coupling, blast radius, the risks touching a file).
- Answer feedback that teaches the project (👍/👎 → corrections fed back into prompts) and much richer git intelligence (activity over time, branch strategy, change coupling, merge/PR activity).
- Embedders & models. BGE-M3 / Qwen3-Embedding installable on both engines; Qwen3 4B as the default answer model; conversation memory and an opt-in reranker in Ask.
Security & supply chain
- OpenSSF Best Practices: passing, plus OpenSSF Scorecard, CodeQL SAST, REUSE-compliant licensing, and a CodeFactor grade. All GitHub Actions are pinned to commit SHAs; workflow tokens follow least privilege; the backend Docker image is pinned by digest. Releases are signed and ship SHA256SUMS, an SPDX SBOM, and an automated-test report. Contact routes through GitHub (no email in the repo).
Changed
- The Skills library is now a single editor in Settings; the Models tab gains Tuning. Bundled llama.cpp updated to
b9777.
All commits in this release
- release: 0.2.0
- chore(release): 0.1.178 — OpenSSF passing badge, Scorecard hardening, build fixes
- fix(lint): resolve GitChangeBrief forward-ref annotations under TYPE_CHECKING (ruff F821)
- fix(build): vite manualChunks as function form (type-compatible after Vite/Rollup bump)
- docs(readme): add OpenSSF Best Practices passing badge (project 13357)
- chore(deps): update httpx requirement in /backend
- chore(deps): update pathspec requirement in /backend
- chore(ci): bump actions/checkout from 6.0.2 to 7.0.0
- build: bump backend Docker base image to python:3.14-slim (matches local), pinned by digest
- chore(deps): bump the frontend-dev group in /frontend with 4 updates
- chore(deps): bump time from 0.3.36 to 0.3.51 in /frontend/src-tauri
- chore(ci): bump actions/upload-artifact from 4.6.2 to 7.0.1
- chore(deps): update pydantic requirement in /backend
- chore(ci): bump actions/setup-python from 6.2.0 to 6.3.0
- chore(ci): bump github/codeql-action from 3.36.0 to 4.36.2
- chore(deps): update qdrant-client requirement in /backend
- chore(deps): update fastapi requirement in /backend
- chore(deps): bump python from 3.11-slim to 3.14-slim in /backend
- build(security): pin Docker base image by digest; add docker ecosystem to Dependabot
- ci(security): least-privilege token perms in release.yml; link content in SECURITY.md
- docs(readme): move CI to top row, license to the compliance row
- docs(readme): use native REUSE + CodeFactor badges (shields proxy showed stale/unregistered)
- docs(readme): group badges into two centered rows, unify badge style
- chore: route contact through GitHub, drop email from copyright
- chore(security): set up OpenSSF/REUSE/CodeQL badges + pin actions; bump llama.cpp b9777
- feat(watch): one-tap LLM recap of commits since last check
- feat(watch): git-grounded human change brief in 'What changed since last time'
- fix(watch): correct plural in change digest (dependencys -> dependencies)
- fix(routes): import get_settings in workspaces.py (NameError in understanding route)
- feat(analysis): fit project-understanding prompt to the context window
- fix(llamacpp): raise answer-model context to 8192 (was 4096)
- fix(index): tag untagged index on embedder switch so reindex prompt is reliable
- fix(index): show reindex prompt only when the search model changed
- refactor(skills): single editor in Settings; remove Models skill duplicate
- fix(models): embedding provider reports the engine's actual model on startup/open
- chore(ui): About-you Style placeholder example -> 'Answer in Ukrainian'. 0.1.166
- feat(brand): use light/dark pigeon icons for tray + in-app logo, theme-swapped
- fix(models): re-point live embedding provider when switching search model
- feat(desktop): system tray icon (mac menu bar + windows), theme-aware on macOS
- feat(index): structure-aware chunking (Python AST + brace-aware + fenced markdown)
- fix(setup): don't bounce to onboarding takeover when switching the search model
- fix(ui): theme-aware in-app logo (dark logo in dark mode, light in light)
- fix(models): refresh 'current setup' after switching llama.cpp answer/search model
- fix(models): switch + delete the built-in search/embedding model
- fix(models): re-attach to running llama.cpp download after panel remount
- test: guided setup default is now qwen3:4b
- feat(models): make new embedders installable on both engines + refresh default to Qwen3 4B
- feat(memory): review-first profile-fact suggestions
- chore(models): drop mxbai embedder suggestion + fix catalog count tests
- ui(models): clearer at-a-glance embedder comparison + hover tip
- feat(memory): user profile — cross-project memory about the person
- feat(embeddings): add BGE-M3 + Qwen3-Embedding 0.6B to the catalog
- ui(ask): remove the Assistant focus panel
- ui(settings): open skills editor on the workspace's active role
- fix(roles): role change also sets the active Ask skill
- feat(roles): unify to 5 canonical roles + persist role as one workspace setting
- feat(role): land on role's tab + mark 'for your role' risks
- fix(role-brief): de-duplicate top risks by title in the dashboard band
- fix(groups): drop deleted workspaces from group member counts
- ui: drop duplicate risk badge, de-dupe Overview counts, fix header bleed
- ui: calmer risk cards + design-token normalisation (Jony pass)
- docs: add repo health audit report
- docs: actualize README (main-vs-release note, test suite + CI report); changelog
- ci: render backend test report as a job summary + JUnit artifact
- chore(frontend): remove 52 unused doc-mirror TS types
- feat(env+docs): environment matrix table; read-only-first README
- feat(cicd): visual CI/CD flow tab (trigger -> workflows -> jobs)
- feat(dashboard): adaptive role dashboard brief + clickable suggested questions
- feat(role): role brief + evidence-gated suggested questions + role-shaped Ask
- feat(risks): human-readable, review-oriented risk explanations
- docs: reframe README as read-only project intelligence; remove MCP from public copy
- docs: fully remove tile-outline remnants from pigeon mark (firm top/side sweep)
- docs: clean pigeon mark — remove black border stroke + white tile, keep feet
- docs: bigger transparent pigeon mark at README top (white tile + halo removed)
- docs: greet visitors with the pigeon logo at the top of the README
- 0.1.133: docs — refresh install + welcome screenshots with new pigeon logo
- chore: sync Cargo.lock to 0.1.132
- 0.1.132: docs — refreshed, redacted README screenshots; gitignore raw screenshot drop
- 0.1.131: pigeon avatar in Ask + caret toggle for sources (drop 'Show')
- 0.1.130: fix empty groups on launch + duplicate group on drag (load after backend ready, fresh-list dedup)
- 0.1.129: declutter Ask — quiet 'Answer style' link, smaller sources bar
- 0.1.128: consistency pass — unified eyebrows/chips/cards, single accent token, calmer Ask empty state
- 0.1.127: calmer Home — clear lead line + Ask path, secondary cards collapsed by default
- docs: refresh screenshot capture guide for pigeon icon + new tabs (Security/Map, file inspector, command palette, groups)
- 0.1.126: docs — refresh README with groups, command palette, file inspector, coupling, security lens
- 0.1.125: clickable files in Intelligence 'where to start' + honest empty state for sparse projects
- 0.1.124: label the handbook clearly (auto-fed into answers + 'In use' badge)
- 0.1.123: make file inspector discoverable (clickable start-here + hotspots) + clarify role-applies-instantly
- 0.1.122: security posture lens (CI scanners + security-relevant findings)
- 0.1.121: file inspector (ownership, coupling, blast radius, risks) + palette file search
- 0.1.120: surface change counts in 'what changed since last time' digest
- 0.1.119: command palette (Cmd/Ctrl-K) for repos, groups, sections
- 0.1.118: group view full-width + default branch in group repo cards
- 0.1.117: render markdown in group Ask answers
- 0.1.116: group Intelligence compares (matrix/shared-vs-unique/grouped risks) + Ask polish
- 0.1.115: drag-to-group — auto rename on create, dedup, no-op on existing membership
- 0.1.114: change coupling + role-aware git activity card
- Remove 'When the work happens' weekday rhythm (low signal); keep branch-flow facts
- 0.1.113: richer git activity card — weekday rhythm + branch flow
- 0.1.112: Map blast radius, group fixes & DnD, icon Manage menu, editable memory
- Rating nudges: log 👍/👎 + deterministic suggestions (bigger model / rebuild context) in Ask
- Answer feedback (👍/👎 → memory) across Ask/Investigate/groups; calmer memory card; honest Home (default branch, momentum trend, config labels)
- 0.1.111: repo groups, Intelligence accuracy + readability, pigeon brand, map filter
- 0.1.111: repo groups, Intelligence readability + human cloud names, project memory simplification, pigeon brand
- Brand: pigeon app icon, in-app logo, banners + social preview; group-level memory & handbook
- Brand: friendly messenger-pigeon app icon + in-app logo (light/dark sets); group-level memory + handbook
- Group Ask parity (streaming, context/memory, reasoning) + group UX polish
- Project groups: treat several repositories as one project (Ask/Home/Intelligence) — 0.1.111
- Intelligence: merge quick Ask + Investigate into one 'Ask the map' panel
- Intelligence tab: human-readable overview metrics, section hints, risk summary
- Project activity: redesign into a readable briefing
- Home polish: robustly salvage summary from truncated JSON; remove confusing weekday chart
- Home polish: fix loading summary, meaningful file columns (modules/pipelines/config purpose), richer Sources, plain-language Project activity lead
- Home slim pass: collapse git-activity + AI deep-analysis into expandable sections
- Home restructure: Project Intelligence as its own tab; fix Watcher digest wall + raw-JSON deep analysis
- Project memory: visible 'used N memory + M facts' indicator in Ask and Investigator; version 0.1.110
- Project memory layer (Ask + Investigator) + fix: don't pass project_memory_section to general-chat prompt; version 0.1.110
- Project memory layer: memory items + handbook + compose_project_context injected into Ask and the Investigator (recall_memory + auto-capture); version 0.1.110
- Docs: Investigator knowledge areas + example questions; clarify one-agent-many-tools design
- Investigator git_history tool (file ownership + recent commits) + README agents section; version 0.1.108
- Investigator (read-only agent): ReAct loop over read-only tools, transparent trace + sources, Investigate tab; version 0.1.107
- Project Watcher (first agent): deterministic snapshot diff + digest, watch endpoints + persisted digest, Home card; version 0.1.106
- Release 0.1.105 — Project Intelligence + Git intelligence
- Git intelligence: 12-week activity sparkline, weekday distribution, who-commits with share/recency, recent-commits feed, PR-merge share; version 0.1.105
- PI M5: Cloud + References tabs, connected Map; fixes — terragrunt detection, prd/prod env tokens, infra metadata, GH Actions jobs, overview prompt; version 0.1.104 + CHANGELOG
- M4: Python application analyzer (framework/modules/imports/deps) into the graph + Map, branch-strategy inference in Git insights, version 0.1.103 + CHANGELOG
- Project Intelligence M3: deployment-flow rail + gaps, environment comparison, ask-the-graph (LLM constrained to facts), version 0.1.102 + CHANGELOG
- Project Intelligence M2: Kubernetes + Helm analyzers feeding the graph, interactive Map view, role-neutral nodes/edges API, version 0.1.101 + CHANGELOG
- Project Intelligence M1 complete: Home block (role lens, honest states, collapsed evidence) + client/types + version 0.1.100 + CHANGELOG
- Project Intelligence M1 backend complete: HTTP routes + DI wiring + LLM overview prompt + API inventory (build/get/overview-text)
- Project Intelligence M1 backend: graph domain + role lenses + analyzer normalizers + sqlite snapshot repo + build use case + role-lensed presenter (10 tests green)
- Project Intelligence M1: role-neutral project graph domain + role lenses + deterministic analyzer normalizers (5 tests green)
- Frontend: extract useSidebarCollapsed hook; App.tsx slimmer; typecheck green
- Frontend: extract useWorkspaceJobs hook + shared errorMessage util (App.tsx slimmer); typecheck green
- Frontend: extract usePreferences hook into src/preferences.ts (App.tsx -182 lines); README + supply-chain + startup diagnostics
- README actualization + supply-chain (SHA256SUMS, SBOM, test report) + structured startup diagnostics instead of silent except
- README actualization (offline wording, cross-platform install, status); release: SHA256SUMS + SBOM + test report
- Repo polish: latest-release/downloads badges + download CTA, Troubleshooting/FAQ, roadmap link in README; issue-template config.yml; social preview cover
- Release 0.1.99: clean Windows release + Node 24 + grouped downloads
- Release notes: add platform-grouped Downloads section (macOS/Windows) built from uploaded assets
- Release 0.1.97: Windows support + bump GitHub Actions to Node 24 (v6)
- Release 0.1.97: Windows support (NSIS installer, both engines); version bump + changelog
- Windows: build release as GUI subsystem (no console window)
- Windows: resolve bundled backend manifest + llama-server via resources/up/up path (+ recursive fallback)
- Windows: find backend manifest + llama-server by recursive search of the install tree (Tauri up layout)
- Windows: launch frozen backend without a console window (CREATE_NO_WINDOW)
- Windows build: detect .exe backend name explicitly (MSYS -x magic hid the suffix)
- CI: temporary manual Windows-only build test (artifact, no release)
- Windows: skip uvloop (Unix-only) via platform marker so the frozen backend builds
- Windows support groundwork: cross-platform backend process mgmt, win llama-server fetch, NSIS release job, native folder picker
- Release 0.1.96: README polish + custom-model docs (llama.cpp), version bump
- Scrub internal project name from docs, comments, and test fixtures
- README: 8-step install + first-run visual walkthrough; rename screenshots to clean names
- Ask: offline syntax highlighting (highlight.js) for code blocks; changelog
- Ask: offline syntax highlighting (highlight.js) for code blocks; changelog
- Ask UI: fix code block overlapping text; distinct code-block + inline-code styling
- Ask: complete conversation memory (native chat-message history + context-aware retrieval); fix fake providers' generate signature
- Ask: complete conversation memory — native chat-message history (llama.cpp) + context-aware retrieval for follow-ups
- Ask: multi-turn conversation memory via native chat messages (llama.cpp), text fallback for Ollama
- Ask conversation memory (recent turns in prompt); llama.cpp reranker in Models; port-bind/embedding 500 fixes
- Fix llama.cpp port-bind 500: reap orphaned llama-server before start; embedding batch-size + retry hardening
- Reranker in Models (llama.cpp only) + toggle polish; retry transient llama.cpp embedding 500s during indexing
- RAG: reranker foundation (port + llama.cpp adapter + Ask precision pass, off by default)
- RAG: path/env boost + per-file diversity in hybrid search; README: local engines + retrieval sections
- Hybrid search (BM25 + vector RRF, path-indexed); fix llama.cpp embedding 500 (pooling); consistent context window; fix stuck Scan button
- docs: comprehensive CHANGELOG (0.1.95); release notes from CHANGELOG + commit list
- Ask: remove verbose verification, redesign metrics, add context-window usage; fix embedding false warning; open-url command; center setup; back-to-engine
- Center setup screens under zoom; add back-to-engine step; minimal context block; fix Get Ollama contrast (unlayered)
- Add About section (author, GitHub, Apache-2.0); fix ruff import order; drop deleted checkpoint doc from release audit
- Fix ruff import order; drop deleted checkpoint doc from release audit
- Switch backend to PyInstaller onedir for fast startup; settings & UI polish
- feat(settings): text size + default reasoning/streaming; send think flag only when reasoning is on
- feat(settings): text size (replaces density) + default reasoning/streaming toggles, applied to all users
- chore(cleanup): remove dead doc/packaging endpoint subsystem + dead types; trim API inventory and tests
- chore(cleanup): remove dead backend symbols + 50 unused client.ts functions and 44 orphaned type imports
- ui(llamacpp): split engine models into Answer models / Search model with a divider
- fix(compare): never list embedding models — exclude catalog + custom embedders (name heuristic) from answer-model options
- fix(compare): restrict face-off model options to the project's backend (no Ollama vs llama.cpp mixing)
- fix(llamacpp): show 'Use this model' alongside Delete in the model detail panel, so switching is always reachable
- feat(llamacpp): show downloaded custom GGUF models in the manager (switch/delete by repo+filename); scan storage dir into catalog
- feat(llamacpp): add model by Hugging Face repo only — app auto-resolves a good GGUF quant (like -hf), no manual filename
- fix(setup): models step no longer depends on transient global active-runtime match — set-up projects stop falling back to setup on switch
- fix(ask): answer normally when no project context (empty/stale index) with a non-blocking rebuild warning, instead of a hard 'no chunks' error; drop dead diagnostic constants
- fix(setup): llama.cpp step shows its panel with an explicit Continue (no instant jump to indexing on toggle); auto-start engine but advance only on user action
- fix(rag): default to persistent sqlite vector store + update default-store test
- fix(rag): default dev VECTOR_STORE to persistent sqlite so the index survives backend restarts (was in-memory → 'no chunks' after restart)
- fix(ux): make workspace readiness a stable per-project fact (scanned+indexed+models chosen), not tied to global active runtime — stops setup/ready flip-flop on project switch and premature Ask
- fix(ux): open workspace straight into working view (reactivate+refresh); setup detects project engine; sidebar engine badge; fix model-row wrap regression + model details as own row
- feat(llamacpp): auto-reactivate workspace backend on open; model details + delete in Models manager
- fix(ollama): re-activate ollama backend on first-run install so embedding matches active runtime (unblocks Install & continue)
- fix(llamacpp): auto-start engine when models are ready; drop redundant setup note
- feat(llamacpp): custom HF GGUF models — download by repo/filename, switch engine, persist ref across restarts
- fix(llamacpp): active only when engine running; Models tab = installed list + Add-a-model section (Qwen out of main list); polish Compare (no collapse, font fix, tidy run button)
- feat(llamacpp): simple setup screen (recommended model + embedder only); full model picker/switcher stays in Models tab
- feat(llamacpp): real on-disk install state in catalog + answer-model switcher (download/switch engine, persisted); Compare lists only installed models
- fix(llamacpp): resolve false embedding runtime mismatch; hide Ollama model manager in llama.cpp mode
- feat(backend-modes): model-decides routing, persist+restore active engine, live-provider status, llama.cpp-aware Choose&install + Stop, backend-neutral Ask errors, engine choice before Ollama gate
- feat: RAM bar for llama.cpp (process RSS) + route assistant identity questions to general chat with real model identity; v0.1.94
- feat(llamacpp): advance setup flow like Ollama once engine is running; v0.1.94
- fix(llamacpp): stage all dylibs + dereference symlink aliases; surface llama-server stderr; v0.1.94
- fix(llamacpp): robust binary resolver (verified) + binary_path in status; intel/arm release notes
- feat(llamacpp): desktop shell passes bundled binary path to backend
- feat(llamacpp): engine choice + downloads working; disable download btn while running
- feat(llamacpp): switchable embeddings + no-env wiring; DYLD path for bundled binary; fix fetch script (tar.gz)
- feat(llamacpp): switchable embeddings, active-backend endpoint, no-env wiring; fix fetch script (tar.gz)
- feat(llamacpp): auto-launch llama-server runtime + engine status on setup (0.1.91)
- feat(llamacpp): embedding provider + env wiring
- feat(llamacpp): Ollama-free backend scaffold (provider, GGUF download, bundled binary)
- fix(lint): remove dead F841 locals; dependabot: pin React 18 majors
- style: ruff format + lint set F,I
- chore(oss): add Code of Conduct, CHANGELOG, FUNDING; sync lock versions
- chore(oss): add pathspec to lock, add Code of Conduct
- fix(creativity): make Precise temperature 0 so the setting is observable
- polish(ui): align Ask chip font, emphasize destructive reset confirm (bump 0.1.88)
- fix(ui): button sizing, two-scope reset, untrack junk, spacing polish
- fix(reset): 'Reset everything' also clears saved settings (bump 0.1.86)
- feat(home): replace Confluence/Jira with grounded LLM + TODO cards
- feat(home): git history insights + project activity (bump 0.1.84)
- feat(home): git history insights + project activity (bump 0.1.84)
- feat: role-aware analysis, Stop during build, version fix, UI polish
- feat(index): respect .gitignore and exclude nested venv/node_modules from RAG
- v0.1.82: build-context fix + README screenshots
- fix(privacy): don't walk the project folder (scan/changes check) on cold launch — only after a user gesture, so the macOS folder-access prompt is tied to deliberate use; v0.1.81
- feat(home): detect on-disk file changes since last scan (backend GET /scan/changes with mtime) and show a calm banner on Home — one button re-scans, rebuilds context, and re-analyzes; v0.1.80
- v0.1.79: auto-run analysis on first home visit
- ui(settings): drop the empty hero card for a slim page header; single-column stacked layout (no more half-empty Appearance row); v0.1.78
- feat(onboarding): show download percentage next to each model's progress bar during install; v0.1.76
- v0.1.75: cleaner models current-setup, download catalog, compare
- fix(onboarding): models step requires models actually INSTALLED (not just selected) — no more skipping to index while a download runs; refactor(settings): drop redundant App-readiness panel + hero badges (settings = preferences only); ui(models): Compare opens by default; v0.1.74
- v0.1.73: fix models-step freeze
- refactor(ui): redesign the Advanced inspector into clean light cards (icon + lens/files + facts + 'Edit in Settings'); drop heavy badges/dl/footer; v0.1.72
- v0.1.71: clean home, advanced moved to settings
- refactor(home): single clean header (drop duplicate Workspace-overview header + redundant Use-it-now panel/second Ask) — Project Understanding is the home; quiet Re-analyze when model unchanged, prominent only when a new model is selected; v0.1.70
- v0.1.69: nav overlap + sidebar auto-collapse + tooltips
- feat(onboarding): live scan/index progress — poll the job and show X of Y files + percent, advance on completion (fixes dead-feeling Build context); fix(models): brief hold after Install so the step advances before the button re-enables (fewer repeat clicks); v0.1.68
- v0.1.67: Phase 2a deep analysis
- fix(profiles): register tester + business_analyst assistant profiles (fixes 'Unknown assistant profile' error on those modes); update profile list test; v0.1.66
- v0.1.65: adaptive Project Understanding home + Tester/BA modes
- feat(models): redesign manager — installed models lead as compact click-to-expand rows (Ollama metadata: params, quantization, context, capabilities), Answer/Search split by divider, 'Add or change a model' collapsed below; dedupe overview READY badges; v0.1.64
- v0.1.63: declutter + type pass on Models
- feat(ask): Save note / Copy / Create file as compact icon buttons; refactor(ui): simplify project chip to name + readiness dot (green can-chat / red not), drop dropdown that duplicated the sidebar; v0.1.62
- v0.1.61: project switcher chip + quieter nav
- feat(onboarding): auto-open Ask when setup completes; fix(ui): fully hide collapsed sidebar (no leftover strip); feat(ask): move Clear chat into the chats toolbar as a tidy button; v0.1.60
- v0.1.59: fix install gate + collapsible sidebar + create screen + models cleanup
- fix(onboarding): Install refreshes state after selecting installed models; feat(models): simplify — drop MCP + Advanced tabs, move answer creativity to Skills and model picker to Choose & install; v0.1.58
- fix(onboarding): stop polling storm — lightweight install/jobs poll + refresh only on real transitions; gate takeover while exit prompt open; restores Scan and Forget; v0.1.57
- docs(readme): hero + screenshots gallery + capture guide
- fix(onboarding): select recommended models so setup advances; reset takeover per workspace; chore(repo): dependabot, CI hardening + advisory ruff lint, README badges/TOC, move brand assets to assets/; v0.1.56
- feat(onboarding): full-window setup takeover + inline model download progress and status checklist; v0.1.55
- feat: real working light theme + version 0.1.54
- onboarding: adaptive getting-ready screen + inline install; cargo sync; stronger compact; v0.1.53
- fix(settings): compact density tightens spacing; first-run uses cat app icon; v0.1.52
- feat(settings): skills dropdown editor (select to edit built-in or create custom); feat(ui): calm first-run welcome screen; v0.1.51
- refactor(settings): one unified 'Skills' editor — edit all built-in skills + create your own in the same place (drop separate panel + template-scoped UI); v0.1.50
- feat(skills): create your own custom skills in Settings (add/edit/remove, persisted) and pick them per-question in Ask's Style dropdown; v0.1.49
- feat(ask): per-question 'Answer style' picker in dev mode — override the skill profile for the next question (project default + 5 presets); v0.1.48
- fix(icons): faithful macOS safe-area regen (symmetric, no halo) incl sidebar logo; fix(home): drop duplicated setup-steps grid (keep live progress); code scrolls in-bubble; drop sidebar subtitle; v0.1.47
- fix: app icons safe-area + sidebar logo; code scrolls in-bubble; drop sidebar subtitle; v0.1.47
- fix(ask): long code scrolls inside bubble; v0.1.47
- ask: scroll fix, slim file chips, match label, examples on empty chat; v0.1.46
- feat(ask): redesign answer context — attached files shown as a distinct group, project sources with thin match bars (Jony-style); v0.1.45
- ask: auto-scroll, file chips, files-in-chat panel; v0.1.44
- feat(downloads): global active-downloads indicator in sidebar (persists across tabs, polls backend) with per-job Stop; also includes RAM indicator; v0.1.43
- ask: live model-memory indicator during generation; v0.1.42
- feat(ui): icons for nav (icon+label), refresh and new-project become icon buttons with tooltips; compact sidebar; v0.1.41
- fix(settings): developer-mode checkbox no longer stretched (exclude checkbox/radio from full-width input rule); declutter Models: drop Product goal, Download history, Manual install; guided setup as dropdowns with compact meta + shorter copy; v0.1.40
- models: one installed list grouped Answer/Search with divider; drop duplicate; v0.1.39
- feat(models+settings): show answer & search models together with clear download intent; embedding installable in guided setup; add Settings > Reset app data; v0.1.38
- onboarding: wizard order + lock index until search model ready; v0.1.37
- build: robust rustup check + clearer Intel cross-build install hints
- build: per-arch macOS DMGs (arm64 + x86_64 via Rosetta) in scripts/build_macos_dmgs.sh; fix backend packaging-python precedence; compare one-path refactor; v0.1.36
- compare: one clear path, planning noise behind optional preview; v0.1.36
- feat(compare): file attach + 'Use this model for this project' winner action; honest, playful copy; collapse rating to optional memory; fix glued text; v0.1.35
- compare: file attach + polish + honest rating copy; v0.1.35
- fix(tauri): disable native dragDrop so files can be dropped in webview; feat: smart attachment search (relevant excerpts, not whole file); file chips send as attached_documents; v0.1.34
- feat(ask): removable file chips; fold file content at send; files-only asks; v0.1.33
- feat(ask): refine bottom controls into switch toggles + grouped pill; drag-and-drop file analysis into composer; v0.1.32
- feat(ask): streaming answers (SSE) behind dev mode; fix Reasoning toggle breaking non-thinking models; doc stream route; v0.1.31
- fix(models): focused centered single-column layout; card the next-action callout
- feat: delete-installed-model refreshes guided setup; reasoning on/off toggle in Ask (dev mode)
- Move download progress under the button; lead Models with Current setup; bump 0.1.29
- Download progress bar, thinking elapsed feedback, drop useless Models hero
- Fix build: remove out-of-scope refreshInstallStatus call; bump 0.1.27
- Capture Ollama reasoning 'thinking' field so Ask can show it
- Use & install: show download progress and surface failures inline; bump 0.1.25
- Show model reasoning in Ask; reorganize the setup-steps panel
- Ollama detection + real model download progress; fix glued setup-steps text; bump 0.1.23
- Auto-refresh Home after scan/index; fix installed-model cards; trim downloads notes
- Fix Ask composer layout, add a model action on Models overview; bump 0.1.21
- Clean up the Capabilities page
- Inline scan/build confirm in Use it now; clearer model step label; bump 0.1.19
- Single green primary on Home: make the AI setup action secondary
- Tame heading scale, auto-refresh after jobs, trim model manager text; bump 0.1.17
- Auto-dismiss the restored-workspace banner instead of a Dismiss button
- Replace developer-facing model setup notes with one calm line; bump 0.1.15
- Restore scan/index confirmation: Use it now triggers the guided flow
- Simplify the Home Advanced section (skills + files); bump 0.1.13
- Clearer model picker selection, leaner AI setup panel
- Use it now is the single action hub; strip duplicate Scan from setup steps; bump 0.1.11
- Fix selection affordance, scan progress, model manager visibility, real runtime
- Redesign create form, de-duplicate overview, add model disk manager; bump to 0.1.9
- Auto-select a downloaded model and label the demo model honestly
- Prompt about leftover temporary projects on launch
- Include persistence in bootstrap workspace response
- Bump version to 0.1.8
- Add permanent vs temporary projects with quit-time cleanup
- Bump version to 0.1.7
- Add per-project storage size, clear-index and delete-project actions
- Bump version to 0.1.6
- Fix packaged-app layout regressions and app icon white edges
- Pin backend dependencies via requirements.lock and install it in all CI workflows
- Verify workspaces/overview route precedence behaviorally instead of via app.routes internals
- Make API inventory route test robust to newer Starlette (skip non-path router entries)
- Pin Ollama host and model catalog in test conftest so dev shell/.env cannot leak into tests
- Do not load backend/.env under pytest so tests run on clean defaults
- Bump version to 0.1.5
- Fix classless white action button and apply a consistent typography scale
- Put generated layouts in a low-priority @layer so hand-written fixes always win
- Order generated layouts before hand-written component fixes; repair MCP setup
- Fix Models section nav oval and concatenated card headings
- Fix Models section nav, oversized CTA buttons, and Settings form layouts
- Repair component internal layouts and button roles after legacy removal
- Remove styles.legacy.css entirely; single clean stylesheet remains
- Cut legacy rules for shared component classes now owned by the clean layer (batch 2)
- Add clean shared component layer (panels, headings, badges, cards, states)
- Move legacy styles into a low-priority @layer so clean styles always win
- Cut legacy rules for rewritten shell, sidebar, tabs, and button classes (batch 1)
- Use brand-green for checkboxes and radios
- Force brand-green accent and green primary-action buttons over legacy purple palette
- Green primary buttons and brand accent, fix create-workspace step layout
- Unify Copy, ghost, and toggle buttons into one calm dark style
- Darken the model download history panel on the Models tab
- Dark-patch legacy light cards and form controls across Models/Settings
- Symmetric cat avatar for questions and a cleaner verification panel
- Consolidate ignore rules into the root .gitignore (ignore .env everywhere)
- Single-command local dev with backend pointed at the app data
- Remove white background behind the sidebar app icon so its transparent corners do not show white
- Use generated avatar art, fix app icon edges, close row menu on outside click, tint user messages with chosen palette
- Style the Answer style and sources focus panel so labels and values are clearly separated
- Rework saved chats history into a calm, bounded panel
- Add cat/robot avatars, fix Copy button, separate answer from notes, refine history rows
- Declutter the saved chats history into a calm, scannable list
- Tidy Ask answer: lighter text buttons, compact question bubble, quiet status note
- Start Ask with a fresh chat on launch instead of reopening the last conversation
- Add developer-details toggle on the Ask screen and simplify the default answer
- Fix Home status cards and compact the Ask empty state
- Remove legacy Ask styling now replaced by the clean stylesheet
- Refine Ask interface: calmer layout, lighter answer, scroll controls
- Stage 2: clean Ask tab layout with sticky composer and scrolling messages
- Darken remaining light cards in the workspace AI setup panel
- Force consistent dark theme during migration and fix shell glitches
- Begin staged UI cleanup: clean foundation for shell, sidebar and tabs
- Pin app version to bottom-left so it stays visible while scrolling
- Remove stray temporary virtualenv from version control
- Answer general conversation in Ask instead of forcing project context
- Keep update notice quiet while release repo is private
- Show app version in sidebar and surface auto-update status
- Ask UX: Enter to send, skill-aware examples, auto-dismiss startup banner; bump to 0.1.3
- Build a .dmg installer in addition to the updater bundle
- Release workflow: fix backend Python for CI, ship macOS first
- Fix tests broken by earlier changes: generate() signature and icon.png size
- Configure auto-updater
- Wire Tauri updater: config, plugin dependency, startup check
- Add free auto-update release pipeline and runbook
- Hide the sources panel for general-knowledge answers (no project files)
- Smart blend: let the model answer general questions, not only project files
- Calm the Ask answer: render markdown, hide telemetry by default
- Clarify Ask responses for non-project questions and the test model
- Add answer-creativity (temperature) control for the LLM
- Tidy remaining views: calmer Home, plainer Capabilities/Reports copy
- Adopt new flat brand icon across app and desktop build
- Consolidate type scale into a single source
- Refine typography: system font base, font smoothing, heading tracking
- Tidy Settings: plainer hero copy, hide density toggle by default
- Enlarge brand icon artwork to fill the icon canvas
- Tidy Models tab: plain-language hero, hide install manager by default
- Add brand logo and app icons; wire into app and desktop build
- Redesign Ask tab to a calm, chat-first layout
- Add image attachment to Ask for vision models
- Support image input for vision models in the Ask flow
- Support an updatable model catalog fetched from a hosted manifest
- Show download size and memory-fit verdict in AI picker
- Hide fake models from picker; explain embedding reindex cost
- Simplify AI model picker into recommended cards
- Add Developer mode toggle and hide advanced sections by default
- Remove two unused ceremony docs (repo guide, production readiness)
- Decouple tests from documentation files
- Rename task-numbered docs to clean topical names
- Consolidate docs: remove redundant design-iteration files
- Make qdrant-client an optional dependency
- Remove orphaned one-off task-contract verification scripts
- Remove development journal and status-snapshot docs
- Stop tracking generated *.tsbuildinfo TypeScript build cache
- Remove accidental copies of root tree from frontend/
- Add plain-language help for writing Ask guidance (skills)
- Highlight privacy in sidebar: files stay on this computer
- Add GitHub and web-page-reader read-only MCP server presets
- Use structure-aware document chunking for RAG indexing
- Add docs index categorizing all documentation by topic
- Add Apache-2.0 LICENSE and update README license section
- Stop tracking IDE (.idea) and Rust target build artifacts
- Cleanup: remove stale nested frontend/{frontend,backend} duplicate copies, untrack .DS_Store, harden .gitignore
- Task 274: Fixing Models tab and Ollama LLM settings
- Task 273: Daily-use stability + visual hardening.
- Task 273: Daily-use stability + visual hardening.
- Task 272: Product goal UX / Skills / MCP / Dark theme.
- Task 272: Product goal UX / Skills / MCP / Dark theme.
- Task 271: Product UX + Model Catalog + Settings/Ask cleanup.
- Task 270: Daily-use UI cleanup
- Task 269: Daily-use MVP polish,
- Task 268: Fix Runtime Readiness UX: actionable model/runtime review
- Task 267: Persistent RAG index after packaged .app restart
- Task 266: Persistent RAG index after packaged .app restart
- Task 266: Polish UI
- Task 266: Finish full packaged product smoke: create project → scan → index → ask → restart persistence
- Task 265: Fix packaged app SQLite path/bootstrap and finish macOS packaged smoke
- Task 264: packaged app SQLite bootstrap + Tauri CORS fix.
- Task 263: packaged app first-run UI clarity.
- Task 262: packaged app backend startup diagnostics + full pytest stabilization.
- Task 261: packaged .app Tauri bridge fix + npm allowScripts policy.
- Task 260: packaged .app frontend bootstrap fix.
- Task 259: macOS packaged app smoke milestone + check fixes.
- Task 258: frozen backend startup diagnostics + PyInstaller hardening.
- Task 257: Tauri packaged app build readiness + repo hygiene.
- Task 256: Tauri dev smoke success recorded + next packaged-app gate.
- Task 255: fix Tauri icon RGBA blocker + icon asset checks.
- Task 254: fix Tauri Rust dependency conflict + target hygiene.
- Task 253: fix Tauri Rust structure + npm registry hygiene.
- Task 251: Add macOS packaged app smoke preflight
- Task 250: Tauri backend health readiness gate.
- Task 249: macOS frozen runtime + Tauri smoke runbook + continue message.
- Task 248: fix v0.1 handoff Settings crash + real app-owned Tauri backend startup implementation.
- Task 247: fix Settings v0.1 handoff crash + app-owned backend startup gate.
- Task 246: frozen backend smoke contract.
- Task 209: fix Settings audit crash + frozen runtime selection + frontend chunking.
- Task 244: PyInstaller backend runtime PoC.
- Task 243: staged backend runtime + macOS packaging wiring.
- Task 242: desktop stack + runtime freeze contract.
- Task 241: desktop technology decision record.
- Task 240: Tauri supervisor static gate.
- Task 239: Add desktop runtime preflight
- Task 238: Add desktop runtime readiness handoff
- Task 237: Prepare v0.1 source release
- Task 236: Add v0.1 UI smoke-check handoff
- Task 235: Add v0.1 release gate and roadmap lock
- Task 234: Harden source release hygiene audit
- Task 233: Prepare v0.1 source release candidate
- Task 232: Clarify final source status and v1 roadmap
- Task 231: Finalize GitHub repository publication files
- Task 230: Stabilize GitHub source release
- Task 229: Prepare GitHub source release and completion roadmap
- Task 228: Add model context build action
- Task 227: Clarify selected embedding and context indexing state
- Task 226: fix Models crash + Ollama recommendations flow.
- Task 225: Fix models screen rendering and clarify model usage flow
- Task 224: Polish product quality and GitHub readiness
- Task 223: Add v0.1 demo and GitHub handoff
- Task 223: Add v0.1 demo and GitHub handoff
- Task 222: Add release candidate audit
- Task 221: Add Windows packaging foundation
- Task 220: Add Tauri supervisor bridge foundation
- Task 219: Add Tauri desktop shell scaffold
- Task 218: Add macOS backend runtime bundle readiness
- Task 217: Wire macOS app foundation to supervisor contract
- Task 216: Add desktop supervisor lifecycle contract
- Task 215: Add macOS app package foundation
- Task 214: Lock real desktop packaging design
- Task 213: Unify agent and MCP readiness UX
- Task 212: Polish MCP setup UX
- Task 211: Harden local model manager UX
- Task 210: Add model download history and safe cancel semantics
- Task 209: Run model downloads as background jobs
- Task 208: Polish model download job UX
- Task 207: Add model download job status foundation
- Task 206: Add approved local model download execution foundation
- Task 205: Add read-only installed model detection
- Task 204: Design controlled backend model download worker
- Task 203: Add safe model install draft flow
- Task 202: Add safe local model install guide
- Task 201: Refine calm Apple-style release candidate UX
- Task 200: Polish release candidate UI and UX
- Task 199: Clarify post-launch UX and desktop app target
- Task 198: Clarify packaging roadmap and desktop app direction
- Task 197: Add macOS desktop shortcut guide
- Task 196: Polish desktop UI consistency
- Task 195: Add first launch packaging readiness UX
- Task 194: Add macOS launcher foundation
- Task 193: Add guided local model setup
- Task 192: add agent evidence and execution readiness
- Task 191: add agent approval-gated execution plans
- Task 190: add workspace MCP configs and approval gates
- Task 189: add MCP registry foundation for safe agents
- Task 188: add manual agent workflow tracking
- Task 187: add safe agent capability awareness
- Task 186: fix dark theme visual consistency and alignment
- Task 185: finalize visual consistency and demo mode
- Task 184: polish dark and light theme visual consistency
- Task 183: polish Apple-style light and dark UI
- Task 182: add branding presets and report share kit
- Task 181: add production readiness checklist
- Task 180: add desktop startup and last workspace restore
- Task 179: harden generated update workflow
- Task 178: add runtime troubleshooting assistant
- Task 177: add backup restore and migration safety workflow
- Task 176: add startup checklist and safer local scripts
- Task 174: add report quality checks and source coverage
- Task 173: add report section editor and documentation exports
- Task 172: add custom report builder from saved context
- Task 171: add saved report history and exports
- Task 170: add project report generation foundation
- Task 169: add conversation knowledge base workflow
- Task 168: restore conversation sources and enrich exports
- Task 167: add conversation export and reusable answer notes
- Task 166: add conversation search pin and archive flow
- Task 165: polish conversation details and answer history
- Task 164: add persistent workspace conversations
- Task 163: polish skill profile reset and diff flow
- Task 162: add skill profile audit trail
- Task 161: add safe skill profile templates
- Task 160: improve skill profile visibility in Ask
- Task 159: persist workspace skill profiles
- Task 158: improve job details and file rules explainability
- Task 157: clarify indexing rules preview and confirmation flow
- Task 156: persist workspace indexing rules
- Task 155: show job history and applied file rules
- Task 154: add job progress and cancellable workspace jobs
- Task 153: add LLM usage metrics and improve workspace jobs
- Add file selection preview before scan
- Add backend jobs for workspace scan and indexing
- Add frontend cancellation for long-running actions
- Apply file selection rules during workspace scan
- Add file selection preferences foundation
- Compact Ask assistant focus panel
- Polish Ask chat layout and compact sources v2
- Polish Ask chat layout and compact sources
- Center Ask composer in workspace conversation
- Redesign Ask as workspace conversation
- Polish skill settings UX and button consistency
- Connect skill context to Ask prompts
- Add browser-local skill library presets
- Add workspace skills and assistant focus flow
- Add workspace setup flow and improve CI
- Add archived workspace restore and polish create onboarding
- Add safe workspace archive UI
- Add branding settings and CI workflow
- Add workspace creation onboarding UI
- Polish Settings and close Phase 10
- Create webpack.yml
- Simplify Settings backup tools
- Create pylint.yml
- Create python-package.yml
- Add configurable backend URL preference
- Add Settings export import for local preferences
- Add Settings reset for local preferences
- Fix remaining dark theme component surfaces
- Fix dark theme contrast tokens
- Add browser-local Settings preferences
- Add Settings page foundation
- Polish final beginner UX
- Add guided onboarding and polish Models wording
- Polish Models lower dashboard wording
- Simplify optional model comparison UI
- Make model selection editor optional
- Split Models view into simple and advanced sections
- Simplify Activity timeline wording
- Rename Actions tab to Capabilities
- Simplify Overview primary CTA
- Simplify frontend UX wording
- Polish final frontend UX wording
- Add Overview product status section
- Redesign Activity tab as native timeline
- Simplify frontend actions tab UX
- Add Ask source progressive disclosure
- Redesign Ask tab as conversation interface
- Simplify frontend models tab UX
- Refine frontend app shell
- Add Apple-style frontend design tokens
- Add preferred experiment model apply flow
- Add frontend experiment history
- Add frontend experiment rating UI
- Add frontend model experiment run UI
- Add frontend model experiment planning
- Clarify frontend LLM runtime mismatch guidance
- Add frontend scan before index guidance
- Clarify frontend reindex guidance
- Add frontend reindex guidance
- Render Ask answers as safe markdown
- Improve RAG source path citation prompt
- Smooth refresh after model selection update
- Document real local AI happy path
- Polish frontend visual layout
- Polish frontend workspace sidebar
- Unify frontend loading error empty states
- Unify frontend status badges
- Frontend Overview Model Warning Navigation
- Add overview local AI setup warning
- Improve frontend ask sources display
- Add frontend ask question guidance
- Add frontend ask session history
- Add frontend ask tab
- Add frontend activity timeline
- Add frontend action details panel
- Improve activation command readability
- Add copyable activation commands
- Add detailed models tab to frontend
- Add workspace tabs to frontend
- Add frontend dev CORS support
- Add frontend API map documentation
- Add workspace UI action catalog
- Improve local AI activation commands
- Add local AI activation guide
- Add models summary to workspace dashboard
- Add workspace models dashboard summary
- Add workspace models dashboard
- Add selected embedding indexing plan
- Add ask with selected LLM endpoint
- Add selected model usage plan
- Add workspace model selection status
- Add workspace model selection state
- Add model recommendation explanation endpoint
- Penalize fake models in workspace recommendations
- Add workspace-aware model recommendations
- Add model performance summary
- Add manual model experiment ratings
- Add model experiment comparison summary
- Respect fake LLM model override
- Add persistent model experiment runs
- Add per-request LLM override
- Add model experiment planning endpoint
- Make model switching plan provider aware
- Add model switching plan endpoint
- Add project handoff and roadmap docs
- Add reloadable user model catalog
- Add user model catalog file support
- Tighten model recommendation filtering
- Add local model catalog and recommendations
- Stabilize project docs and API inventory
- Add workspace metadata update endpoint
- Add reversible workspace archive lifecycle
- Add workspaces overview endpoint
- Add workspace dashboard endpoint
- Add workspace quick start endpoint
- Add onboarding bootstrap workspace endpoint
- Add runtime setup guide
- Add onboarding setup command suggestions
- Add onboarding plan endpoint
- Add assistant profiles and workspace recommendations
- Add runtime provider health endpoint
- Add workspace readiness endpoint
- Add workspace timeline backfill
- Add persistent workspace timeline
- Add deterministic RAG answer quality warnings
- Improve RAG prompt grounding
- Add optional Ollama LLM provider
- Improve ask diagnostics for empty context
- Add RAG ask skeleton with fake LLM
- Add dimension-aware Qdrant collections
- Add optional Ollama embedding provider
- Add optional Qdrant vector store adapter
- Persist workspace index status
- Add workspace indexing and context search skeleton
- Add deterministic project overview report
- Add command activity to workspace summary
- Add safe local command runner
- Add command execution policy
- Add deterministic workspace command suggestions
- Add command approval workflow skeleton
- Add deterministic DevOps analysis summary
- Add deterministic GitHub Actions analyzer
- Add deterministic Terragrunt analyzer
- Add deterministic GitLab CI analyzer
- Add deterministic Terraform analyzer
- Add workspace summary with suggested actions
- Persist latest project scan per workspace
- Add skill registry for project scan detection
- Add deterministic project scanner and detected skills
- Add SQLite workspace persistence
- Initial clean architecture backend skeleton
Full changelog: https://github.com/tonkonozhenko-mi/ai_private_workspace/commits/v0.2.0