RIP flat RAG ☠️ ByteDance just open-sourced OpenViking and it exposes everything wrong with how we've been building AI agent memory. Here's what every agent framework gets wrong: Memories live in one place. Resources in another. Skills scattered everywhere. And when you need context, you're doing flat vector search and hoping for the best. That's the problem. OpenViking fixes all of it with one idea: treat agent context like a file system. Everything lives under a unified viking:// protocol. Memories, resources, skills all organized in directories with unique URIs. Agents can ls, find, and navigate context like a developer working a terminal. But the real breakthrough is tiered loading: → L0: one-sentence abstract for quick lookup → L1: ~2k token overview for planning decisions → L2: full details loaded only when actually needed Most agents dump everything into context and pray. OpenViking loads only what's needed, when it's needed. Token costs drop. Accuracy goes up. And retrieval actually makes sense now. Instead of one flat semantic search, it does directory-level positioning first, then recursive refinement inside high-score directories. You can literally watch the retrieval trajectory no more black box. The self-evolution piece is wild too. At the end of every session, it automatically extracts learnings and updates agent and user memory. The agent just gets smarter the more you use it. 9K stars. 13 contributors. Built by the ByteDance Viking team that's been running vector infrastructure since 2019. 100% Opensource. Apache 2.0. Link in comments.