Repository navigation
v14.6.0 — company memory server, encrypted settings, privacy
A company memory server you can run, and a stricter personal install.
Company server
tam setupasks "Just me" or "Company server". A new team server shows a one-time setup code and runs a web wizard at/dashboard/.- Team dashboard:
- invite codes and passwords;
- roles: member, manager (department head), company viewer, superadmin;
- overview pages, an audit log, reports;
- provider settings. API keys are stored encrypted and never go back to the browser.
- Department onboarding:
/onboardbuilds lessons from the team's records, with quizzes and results for the department head. - PostgreSQL backend: set
TAM_TEAM_DATABASE_URLor use Settings → Database, and move an existing server withtam-team db-migrate. Both backends return the same top 10 (Jaccard 1.0) and recall p50 is 485 vs 492 ms at 10k records. - Continuous backup with Litestream (
TAM_TEAM_REPLICA_URL). Offboarding withuser-disable,user-exportanduser-purge. memory_report: an activity report for a day, week, month or custom range, on both the personal and the team server.
Personal install
- Settings page in the local dashboard (
/settings): language model, embeddings, the size of search answers, log retention and the stored-credential cleanup. API keys are stored encrypted insettings.json+master.key(0600). The setup wizard no longer writes keys into client configs. - Search answers cap each record at 6000 characters (
memory_getstill returns it whole). Records that address the agent ("ignore previous instructions") are flaggeduntrusted_instructions. memory_delete(id, hard=true)erases a record together with its earlier versions, vectors, indexes and raw-log copies.
Security
- Credentials reached disk in plain text. Every write tool except
memory_save, the raw call log and the prompt hook stored them as typed, andmemory_savemissed current key formats (sk_live_,sk-ant-,sk-proj-,github_pat_). One redaction list now covers every write path.tam redact-existingfinds what earlier versions stored and, with--apply, backs up the store and redacts it. - The memory directory is owner-only (0700 / 0600).
- The local dashboard no longer sends
Access-Control-Allow-Origin: *. The dashboard and the MCP HTTP transport checkHostandOriginagainst DNS rebinding.
After upgrading
If the first start logs clients that keep an API key in plain text, run tam setup --reconfigure and press Enter at the key prompt. Then run tam redact-existing. Every other change and the upgrade notes are in CHANGELOG.md.
Install: pip install total-agent-memory==14.6.0 · npx -y total-agent-memory connect <ide> · brew install vbcherepanov/tap/total-memory · docker run -p 37737:37737 -v ~/.tam:/data ghcr.io/vbcherepanov/total-agent-memory:14.6.0