cd /news/ai-agents/vlk-memact-for-the-ide-persistent-wo… · home topics ai-agents article
[ARTICLE · art-31879] src=github.com ↗ pub= topic=ai-agents verified=true sentiment=↑ positive

Vlk: MemAct for the IDE – persistent working memory agents can prune themselves

Vlk, a native MCP server, provides persistent working memory for IDE coding agents by exposing a single tool, vlk_time_travel, that prunes dead memory slots from SQLite and injects learned lessons. This enables agents to autonomously curate their context, avoid failure loops, and retain knowledge across sessions, implementing the MemAct approach from Zhang et al. 2025.

read2 min views1 publishedJun 17, 2026

Dead context kills long-running agents. Vlk gives them a scalpel, not a sledgehammer — and doubles as persistent memory for your IDE's coding agent.

Vlk is a native MCP server that acts as persistent working memory for IDE coding agents. It exposes a single tool — vlk_time_travel

— that your agent calls when it detects a failure loop or context bloat. Vlk atomically prunes dead memory slots from SQLite and injects the lesson learned.

Unlike ephemeral chat context that vanishes between sessions, Vlk's SQLite-backed agent_history

table survives restarts. Your Zed or Cursor agent picks up right where it left off — lessons intact, dead ends gone.

[mem_id:5] London: API error 503
[mem_id:6] London: API error 503 (retry)
[mem_id:7] London: API error 503 (retry)

Agent calls → vlk_time_travel([5,6,7], "London API down, use cached 12°C")

Result: slots 5-7 deleted. Lesson persisted. Context clean. Agent unblocked.

No external controllers, no fixed heuristics. The agent curates its own working memory at runtime. This is MemAct (Zhang et al. 2025).

Zed / Cursor / Claude Desktop
  │  agent calls vlk_time_travel via stdio JSON-RPC
  ▼
vlk-core (Rust) ← persistent memory layer for the IDE
  │  tools/list  → vlk_time_travel
  │  tools/call  → atomic DELETE + INSERT
  ▼
SQLite (WAL) — agent_history
Scenario Agent behavior
API retry storm
Agent hits same endpoint 6x with 503. Detects loop, prunes failed attempts, injects "use fallback". Continues without wasting context.
Contradictory tool output
Two search calls return conflicting facts. Agent prunes the stale one, keeps the verified source, notes the resolution.
Context window pressure
Long-running task accumulating dead branches. Agent periodically prunes abandoned reasoning paths, reclaims tokens.
Multi-turn task decomposition
Agent explores 5 approaches, 4 dead-end. Prunes dead ends, keeps winning strategy + rationale for downstream steps.
Self-correction
Agent realizes early assumption was wrong. Prunes reasoning built on it, injects corrected premise, re-derives from clean state.
IDE session persistence
You close Zed, reopen tomorrow. Agent reads agent_history , sees pruned failures + injected lessons from yesterday. Continues without repeating the same mistakes.
cd vlk-core && cargo build --release

Your IDE's agent will use the SQLite database (vlk.db

, created automatically on first run) as persistent memory across sessions.

// .zed/settings.json
{
  "context_servers": {
    "vlk": {
      "command": "/Users/jhonny/lab/agora/vlk-core/target/debug/vlk-core",
      "args": [],
      "env": {
        "DATABASE_URL": "sqlite:/Users/jhonny/lab/agora/vlk-core/vlk.db?mode=rwc",
      },
    },
  },
}

Same pattern — point command

at the binary. See MCP docs.

echo '{"jsonrpc":"2.0","method":"tools/list","id":1}' | ./target/release/vlk-core

echo '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"vlk_time_travel","arguments":{"target_mem_ids":[1],"learning":"test"}},"id":2}' | ./target/release/vlk-core
{
  "name": "vlk_time_travel",
  "inputSchema": {
    "properties": {
      "target_mem_ids": { "type": "array", "items": { "type": "integer" } },
      "learning": { "type": "string" }
    },
    "required": ["target_mem_ids", "learning"]
  }
}
@article{zhang2025memact,
  title  = {Memory as Action: Autonomous Context Curation for Long-Horizon Agentic Tasks},
  author = {Zhang, Yuxiang and Shu, Jiangming and Ma, Ye and Lin, Xueyuan and Wu, Shangxi and Sang, Jitao},
  year   = {2025},
  url    = {https://arxiv.org/abs/2510.12635}
}
── more in #ai-agents 4 stories · sorted by recency
── more on @vlk 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/vlk-memact-for-the-i…] indexed:0 read:2min 2026-06-17 ·