Persistent state for AI clients

Keep the context.
Keep the work visible.

vtriv is persistent, inspectable knowledge and work state for AI clients. Keep your profile, Skills, authored Markdown, projects, and task records in one shared record, available in the app and over MCP.

00The durable record
file:profile.mdalways in scope
# Tim Ariyeh

Product engineer. Ships small, iterates in public.

## Stack
TypeScript and Go. Postgres, Redis, a bit of Rust. Boring tools on purpose.

## Working style
Concise. Bias to action. Pure functions, standard libraries,
no speculative abstraction. Tests first when it warrants it.

## Standing preferences
Commit completed work without being asked. No emoji in output.
knowledge tree38 documents
profile.md
inbox/  2 unfiled captures
notes/
  reading.md
  ideas.md
  errands.md
writing/
  voice.md
  pitch-notes.md
skills/
  changelog/SKILL.md
  release-notes/SKILL.md
projects/marlow/
  README.md · notes/ · tasks/ · files/

This is state you can inspect, correct, and remove. Connected clients read and update the same record instead of keeping separate fragments.

01One source of context

Four records keep context and work together.

Each has a clear job. Together they preserve what matters without tying your work to one chat, machine, or client.

I

Profile

Your identity, constraints, tools, and preferences. Stable context a connected client can read without asking you to start over.

II

Skills

Reusable procedures in the Agent Skills standard. Keep the method beside the work instead of recreating it in each client.

III

Knowledge

Authored Markdown for decisions, facts, runbooks, and notes. It stays readable, searchable, and available across clients.

IV

Projects and tasks

Project context and task records with assignees, statuses, dependencies, comments, and generic custom fields.

02External runner integration

Build a runner on task state.

vtriv gives an external runner persistent context and queryable task records. The runner decides whether and when to act, then writes status changes and comments back to the record.

Set up an external runner →
task:019f7f85 — projects/marlowdone
assignee atlas  priority high  due 2026-08-09
labels import, reliability
blocked_by task:019f7ab2 (done)

Investigate the failed nightly import

— thread —————————————————————————
you    Find the cause, patch it, and keep the recovery steps.
atlas Root cause: the vendor sent an empty final row.
atlas Guard added. Saved the verified recovery steps to
       notes/imports.md for later work.

Query assigned work

An external runner can filter task records by assignee, status, priority, or date. Assignment records responsibility; task selection remains the runner's decision.

Keep the handoff readable

Statuses, checklists, comments, and the project timeline preserve what changed. You can inspect the work without reopening an old chat.

Save durable context

A useful finding can become knowledge. A repeatable method can become a Skill. The record stays available for the next client or session.

03Use the shared record

Start from durable context.

01

Create the record in the app

Write a profile, add a Skill, keep knowledge in Markdown, and create projects with task records. It remains your readable source of truth.

02

Connect an MCP client

Point a compatible client at https://mcp.vtriv.com/mcp and sign in through the browser. The connection can read and update the same state across clients and machines.

03

Retrieve the relevant context

Search across knowledge, projects, tasks, notes, and Skills, or assemble relevant passages into a bounded context pack. Start from the current record instead of rebuilding it from old chats.

04

Update what changed

Add a comment to a task, update its status, save a decision as knowledge, or turn a repeatable method into a Skill. The next client finds the updated state.

04Context recovery

Find the relevant record without rereading everything.

A context pack gathers the most relevant passage from each hit across your profile, Skills, knowledge, and projects. It returns one bundle, trimmed to a token budget the model can read at once.

Every passage is labelled with its source. Your assistant can use the section it needs instead of pulling whole documents into context.

MCP context pack — deploy rollback3 sections · 1,840 tokens
file:notes/runbook.md#rollback
  Deploys ship on merge. To roll back, redeploy the
  last tagged release — never hotfix straight to prod.

file:notes/incidents.md#slow-reads
  Check the cache first: a cold node drags every
  request and shows up as slow page loads.

project:marlow#setup
  docs/setup.md — build steps, env config.
05Field notes
All posts →

What to store in AI memory (and what to leave out)

What to store in AI memory: save preferences, decisions, procedures, and live work. Leave chat debris behind so fresh sessions get useful context.

How to share context between AI tools

Share context between AI tools without rebuilding your brief in every chat. Keep one readable record for Claude, Cursor, and ChatGPT apps that support MCP.

Best MCP memory servers compared

The best MCP memory server depends on the record: compare Basic Memory, Hjarni, Mem0, Notion, local options, and vtriv for context and task records.

Persistent memory for long-running AI agents

Long-running AI agents use separate sessions. Persistent memory and task records give an external runner clear handoffs between them.

Mem0 alternatives for shared AI memory

Compare Mem0's hosted MCP server and OpenMemory with Zep, Letta, and vtriv for shared AI memory, readable context, and durable task records.

CLAUDE.md at scale: when one file stops working

CLAUDE.md is right for one repo. It runs out across twelve repos, two machines, and clients that never read the file. What to keep, and what to move out.

A ChatGPT memory alternative you can read

ChatGPT's memory lives inside one product. vtriv keeps your context in plain markdown; ChatGPT access depends on your plan and MCP permissions.

How to give Claude persistent memory across sessions

Claude has chat memory. vtriv adds portable, authored Markdown context for Claude Code and other MCP clients, plus projects and task records.

The cost of starting over

AI chat memory helps, but it doesn't create a portable project record. Keep decisions, instructions, and work context in a durable layer.

What's worth keeping for your AI

Once your assistant can read a context layer, the real question is what to store in AI memory. Four kinds that earn their place, and what to leave out.

Give every client the same starting point.

Free to start. Keep knowledge and work state in an inspectable record your clients can read and update.

Get Started