By the VEKTOR team · 14 min read
Massive week with three new releases with major improvements. Once we started upgrading tool-calling for local models, it opened the door to extending that same reliability across every send mode, hardening Faraday our security tool into a real-time gate instead of a passive scanner, and shipping a new recall channel that closes the gap between how you ask a question and how the answer was actually stored.
Here are the highlights shipped in v1.9.1-v1.9.3, a full list of everything listed down the bottom.
A one-click embedding-model upgrade to bge-small-en-v1.5 sits right in the Health panel. Swapping embedding models isn’t a config change; every memory in your database has to be re-embedded against the new model’s vector space, since old and new embeddings aren’t comparable to each other.
The upgrade path handles that re-embedding pass in the background, backing up your existing vectors automatically before touching anything, and BM25 keyword search stays fully available throughout since it doesn’t depend on the embedding layer at all.
Bge-small-en-v1.5 gives you meaningfully better semantic retrieval at a similar model size, so recall quality improves without you doing anything except clicking the button and letting it run.
Memory recall config
Real tool-calling, now everywhere
Full native tool-calling to local providers. Ollama locally and LLM providers now run the same tool_calls loop as the cloud tiers, with reasoning-model-aware token budgets and reasoning_content fallback extraction built in.
If you've been running local models for cost or privacy reasons, they now get the same capability ceiling as Claude, GPT, or Gemini. Web search and memory lookups work identically no matter which provider is driving your session, which is genuinely the point of a provider-agnostic tool: you shouldn't have to think about which model you're on before you trust the answer.
That same release extends tool access across every fast send mode. LIGHTNING, CASCADE, and COUNCIL/CRITIQUE now share a tool-need detector that recognizes when a question genuinely calls for a real lookup, things like company comparisons or current pricing, and routes it into the tool-capable pipeline automatically.
In practice this is the difference between a plain Enter feeling like a chatbot and feeling like an agent. You keep the speed of the fast path, but the model actually goes and checks instead of guessing confidently.
Profile context got the same treatment. It now reaches all seven system prompts across every mode, so VEKTOR now personalizes responses consistently everywhere, not only in the mode you happen to use most. The nice part here is you don’t do anything differently. Profile just quietly starts showing up in the background of every answer, the way it was always supposed to.
Longer answers, wider provider coverage
LIGHTNING and CASCADE draft responses got a real upgrade in headroom, raised to 1500 and 2200 tokens respectively, with a reasoning-model-aware budget floor applied across every provider on both the direct-call and tool-calling paths. Ask for “write a report on X” now and you get a report, not three paragraphs that stop mid-sentence.
Provider errors are also far more useful now. Instead of a generic “No response from model,” you get the real underlying API response, rate limits, billing issues, invalid keys, whatever it actually is.
This is a small change with an outsized payoff, because it turns “something’s wrong, good luck” into “here’s exactly what’s wrong,” and that transparency is what let us spot and resolve real account-level issues across several providers in the same release.
Gemini’s tool-calling endpoint is now correctly wired to Google’s OpenAI-compatible API, bringing it fully in line with the rest of the tool-calling tier.
First time it’s genuinely worked end to end. And code blocks in Desk now render properly as syntax-highlighted output every time, so anything code-heavy actually reads like code instead of a wall of escaped HTML entities.
Lightning desk modes
Faraday moves from watching to enforcing.
A major step up for Faraday. Security scanning now runs inside the LLM request loop itself, across Desk, JOT, and the Agent tab, catching a prompt-injection payload or a leaked credential in single-digit milliseconds before the request ever reaches a provider.
That’s a real architectural shift: a gate in front of the request, not a log entry after it. A bad prompt gets stopped cold instead of getting sent anyway and merely flagged for later reading.
The Faraday dashboard is now a genuine live view: a posture-score gauge, a colour-coded enforcement-actions breakdown, a cross-session activity feed, and a “needs your decision” card for anything held for approval, resolvable right from the dashboard. It finally feels like a security console instead of a static status view.
Data-class controls give you finer-grained handling too. Credentials and financial data are still fully blocked, while contact details like a phone number or email are now masked in place, redacting just the matched span and letting the rest of your message through.
A better experience if you’re pasting a colleague’s contact card into a note. You keep the message, Faraday just quietly redacts the one part that needed it.
We also ran our own local red-team self-test, 13 curated attack payloads scored against Faraday’s real detection functions, and used the results to broaden coverage immediately.
Exfiltration detection now recognises phrasing across a much wider range of verbs (share, forward, upload, post, transmit, email, not just “send”), and a new pattern catches conditional memory-poisoning triggers like “next time X happens, do Y”, tuned specifically to avoid flagging ordinary conversation.
Running the test against ourselves and fixing what it found in the same release is exactly the loop we want Faraday to keep running.
The dashboard’s schema drift indicator is now a complete review experience: grouped by tool, with occurrence counts, an auto-flagged “likely false positive” badge, an expandable before/after schema diff, and one-click Legitimate/Confirmed verdict buttons wired into Faraday’s feedback loop.
A “Resolve all likely false positives” button clears the obvious cases in one pass, so a wall of drift warnings turns into a two-minute triage instead of a dread-inducing backlog.
Faraday dashboard
HyDE recall, live end to end
HyDE (hypothetical document embedding) is now fully online. It generates a hypothetical answer to your query and uses it as an additional recall vector, closing the vocabulary gap between how you phrase a question today and how the underlying fact was written down originally.
This is the kind of recall improvement that’s hard to demo but easy to feel: ask about something you noted down in totally different words months ago, and it turns up in retrieval. It’s reachable from the real Desk chat recall path now, not just the CLI, with a plain Config toggle that explains the tradeoff clearly: one extra LLM call per query, easy to switch off without losing the rest of recall.
The Enriched recall channel, which catches matches plain semantic search misses, now covers every existing memory in your database, not just new ones going forward. A one-click “Backfill now” in Health handles the upgrade for existing installs, and it’s safe to pause and resume, so your whole memory graph gets the benefit, not just what you write from today onward.
A real sandbox agent and live preview
The doc/code sandbox picked up two significant upgrades. A bounded generate, critique, refine loop now reviews whatever’s open in the sandbox against a real design checklist and your original goal, returning a corrected version each pass until it converges or hits a five-step cap.
It’s an agent that genuinely iterates on its own work, with a clear stopping point so it never spins forever chasing a perfect answer that was never coming.
The sandbox also gained a genuine live preview. HTML and Markdown documents render in place and refresh automatically as you edit, with desktop, tablet, and mobile viewport buttons so you can check responsive layout without ever leaving the app.
A complete document in a chat reply now opens straight into the sandbox automatically, so the moment VEKTOR writes you something, you’re already looking at it rendered, not reading raw markup and imagining what it’ll look like.
Further updates will expand the code and doc types in the future.
Everything else in v1.9.1-v1.9.3
cloak_search real web search backed by Serper, so a model without a known URL searches instead of guessing a domain and hitting a dead end.
Citation fallback source badges now appear for any turn that touched a web tool, not just one specific search tool, so multi-entity comparison questions get real source links.
Decision-question follow-ups suggestion chips now answer the direct question just asked (“push now or hold?” surfaces “Push it now” as the top suggestion) instead of generic topic prompts.
Inline suggestion text the top suggestion now lives as placeholder text in the composer itself and clears the moment you start typing.
Agent tab Trace tab every run_code and autotest chunk lands in one ordered, timestamped timeline, with stack traces auto-flagged as they stream in.
Agent tab Artifacts glob search across the whole workspace for files the agent never touched, straight into the editor.
Agent tab Rewind timeline step-ordered view over per-file checkpoints, jump to that exact moment in Trace or revert.
Drop-to-fix drop a code file onto the Agent tab and it’s opened, linted, and auto-fixed, staged for your review.
JOT sandbox inline code editor a note that’s a single fenced code block swaps automatically into real CodeMirror with syntax highlighting and line numbers.
JOT multi-file tabs a note with multiple fenced blocks opens as separate file tabs sharing one editor.
JOT Run executes Python, Bash, or JavaScript with a persistent scrollback terminal; HTML opens in a real new tab.
JOT Lint and Fix Bugs real ESLint and ruff checking, with a red/green diff review before any fix touches your code.
JOT breakpoints click the gutter for real values at real points, no hand-edited print statements left behind.
JOT file import/export native multi-select picker, drag-and-drop, and a save button that downloads an actual file.
Keyboard shortcuts Ctrl/Cmd-Enter to run, Ctrl/Cmd-S to save in the JOT sandbox.
Desk chat and sandbox live collab THINK and LIGHTNING now fold the sandbox’s open code into the system prompt, so “fix this” gets a grounded answer.
Three-way merge an agent write and your own unsaved edit to the same file now merge automatically when they touch different parts, with an explicit conflict block only when they touch the same line.
Agent tab model picker now mirrors Desk’s exactly, grouped by provider with real model names, in a themed dropdown that matches your active colour theme.
COLLAB mode now supports all 17 providers instead of Claude only.
Settings and model picker gained API-key fields for DeepSeek, Together, Cohere, MiniMax, NVIDIA, Perplexity, Cerebras, and OpenRouter.
Skills, hooks, and plugins asset inventory, plus AI-coding-tool attribution that identifies which tool (Claude Code, Cursor, etc.) drove a session via the real MCP handshake.
Git pre-commit hook blocks a commit containing a live credential before it ever reaches history.
PR-level merge gate a GitHub Actions workflow that checks every commit in a PR’s range individually, catching a secret added and removed within the same PR.
Design and plan-stage interception scans and can auto-reject or auto-redact an agent’s plan before any tool call exists.
False-positive learning loop a signature repeatedly dismissed by a human fires at reduced severity going forward, resetting to full confidence the moment it correctly catches something real.
Proactive cost and latency-aware provider routing the fallback chain is now ranked by real per-provider pricing and this session’s observed latency, instead of trying candidates in arbitrary order.
LLM cost tracking fixed correct pricing now flows through for every provider, closing a gap where 12 of 17 showed $0.00 regardless of real usage.
Recall channel mode choose Full, Semantic-only, or BM25-only for recall as a whole, right from Config.
REM auto-run memory consolidation can now run itself on a schedule, off by default, configurable when you want it.
One-click embedding-model upgrade to bge-small-en-v1.5 from the Health panel, backed up automatically first.
Desk-to-Agent hand-off a request that genuinely needs multiple files, tests, or a whole project now hands off to the Agent tab’s real multi-step loop instead of forcing one unverified reply.
Superseded-memory correction now takes effect in the data itself, so it reliably surfaces on your very next recall.
Fresh installs always pull the exact native module version this release was built and tested against, for a consistent first boot.
Composer autocomplete clean continuations only, no more echoed or run-together suggestion text.
Tooltips now themed to match the app instead of the browser’s plain native style.
cloak_ssh_upload real file transfer for the SSH toolkit, streaming a local file straight to a remote path over SFTP with size verification, through the same write-approval gate as every other write.
SSH toolkit defaults to the standard port with an easy override for non-standard setups, and shell scripts are now treated as at least a write action by default.
Upgrading
All three releases are drop-in upgrades from any prior version, no forced migration path and your existing memory database stays untouched.
npm install -g ./vektor-slipstream-1.9.3.tgz
Grab it from Downloads.
Full changelog with anything not covered here is at vektormemory.com/docs/changelog.
Questions or feedback, the forum is the fastest way to reach us.
VEKTOR Memory builds local-first persistent memory infrastructure for AI agents. Documentation and downloads at vektormemory.com.
LLM
LLM Agent
Agentic Ai
Agentic Ai Architecture




Top comments (0)