This release adds 3 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Topics
Affected surfaces
Summary
AI summary/recall adds cross‑session search with resume and summarize options, personal configs sync across machines, and AI‑generated session titles replace truncated first messages.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Medium |
/recall <query> searches across all saved sessions with AND semantics and recency boost. /recall <query> searches across all saved sessions with AND semantics and recency boost. Source: granite4.1:8b-q6_K@2026-05-20 Confidence: high |
— |
| Feature | Medium |
/recall <query> --resume loads the top-matching session directly into the current conversation (TUI only). /recall <query> --resume loads the top-matching session directly into the current conversation (TUI only). Source: granite4.1:8b-q6_K@2026-05-20 Confidence: high |
— |
| Feature | Medium |
/recall <query> --summarize returns a short LLM recap of accomplishments across matching sessions. /recall <query> --summarize returns a short LLM recap of accomplishments across matching sessions. Source: granite4.1:8b-q6_K@2026-05-20 Confidence: high |
— |
| Feature | Medium |
Personalities and custom commands now sync across machines via codeep account sync endpoints. Personalities and custom commands now sync across machines via codeep account sync endpoints. Source: granite4.1:8b-q6_K@2026-05-20 Confidence: high |
— |
| Feature | Medium |
/recall cross-session search scans project and global session directories, showing context snippets and session names. /recall cross-session search scans project and global session directories, showing context snippets and session names. Source: granite4.1:8b-q6_K@2026-05-20 Confidence: low |
— |
| Feature | Medium |
AI-generated session titles replace truncated first messages for better readability in /sessions and /recall. AI-generated session titles replace truncated first messages for better readability in /sessions and /recall. Source: granite4.1:8b-q6_K@2026-05-20 Confidence: low |
— |
| Feature | Medium |
Dashboard sections allow viewing and deleting synced personalities and commands at codeep.dev/dashboard. Dashboard sections allow viewing and deleting synced personalities and commands at codeep.dev/dashboard. Source: granite4.1:8b-q6_K@2026-05-20 Confidence: low |
— |
| Feature | Medium |
`autoSessionTitle` setting lets users opt out of background AI title generation for privacy/cost control. `autoSessionTitle` setting lets users opt out of background AI title generation for privacy/cost control. Source: granite4.1:8b-q6_K@2026-05-20 Confidence: low |
— |
| Feature | Medium |
Sessions receive AI‑generated titles (fallback to stored or first‑message) for improved readability in /sessions and /recall; opt‑out via autoSessionTitle setting. Sessions receive AI‑generated titles (fallback to stored or first‑message) for improved readability in /sessions and /recall; opt‑out via autoSessionTitle setting. Source: granite4.1:30b@2026-05-20-audit Confidence: low |
— |
| Bugfix | Medium |
Models no longer hallucinate their identity; system prompts now include real model and provider names. Models no longer hallucinate their identity; system prompts now include real model and provider names. Source: granite4.1:8b-q6_K@2026-05-20 Confidence: low |
— |
| Bugfix | Medium |
/sessions picker now displays readable session titles instead of raw IDs. /sessions picker now displays readable session titles instead of raw IDs. Source: granite4.1:8b-q6_K@2026-05-20 Confidence: low |
— |
| Bugfix | Low |
System prompts inject the real model and provider names, preventing identity hallucination by models. System prompts inject the real model and provider names, preventing identity hallucination by models. Source: granite4.1:30b@2026-05-20-audit Confidence: low |
— |
| Other | Medium |
`/search` description updated to clarify it searches the current session only. `/search` description updated to clarify it searches the current session only. Source: granite4.1:8b-q6_K@2026-05-20 Confidence: low |
— |
Full changelog
Session memory:
/recall <query>searches across all your saved sessions,--resumejumps straight back into the best match,--summarizeasks the LLM what you accomplished, and sessions now get readable AI-generated titles instead of truncated first messages.
Added — /recall cross-session search
/recall <query>scans every saved session in the active scope
(project.codeep/sessions/when in a project, else global
~/.codeep/sessions/), matches with AND semantics (every query term
must appear), and ranks results by term-hit count plus a recency
boost. Each result shows a context snippet and the session name./recall <query> --resumeloads the top-matching session
directly into the current conversation — skips the list +/sessions
picker dance. (TUI only; ACP shows results since it can't swap the
client's conversation in place.)/recall <query> --summarizereads the matching sessions and
returns a short LLM recap of what you actually accomplished across
them — "ask your history a question". Works in TUI + ACP.- No new dependency: in-memory JSON scan, fast for the realistic
tens-to-hundreds-of-sessions case.
Added — portable personal config sync
- Personalities and custom commands now sync across your machines
viacodeep account sync(pull) andcodeep account push. Global
ones (~/.codeep/personalities/*.md,~/.codeep/commands/*.md)
travel with your account alongside API keys and profiles — set up a
senior-reviewerpersonality or a/deploycommand once, get it
everywhere. New endpoints/api/personalities+/api/commands,
new DB tablesuser_personalities+user_commands. - Additive merge, never destructive: pull only writes files that
don't already exist locally, so a sync can't clobber edits you
haven't pushed. Last-write-wins on the server via upsert. - Dashboard sections to view + delete synced personalities and
commands at codeep.dev/dashboard (read + prune; editing stays in the
CLI). - Deliberately not synced: lifecycle hooks (arbitrary shell —
syncing + auto-running on another machine is a security risk) and
MCP server configs (contain tokens). Those stay local by design.
Added — AI-generated session titles
- Sessions now get a concise LLM-generated title ("OAuth2 migration
for auth module") instead of the first user message truncated to 60
chars ("help me with the…"). Generated once per session in the
background after it has ≥3 messages — fire-and-forget on autosave,
never blocks a save, never regenerates once set. Makes both
/sessionsand/recalldramatically more readable. - Title priority: AI title > stored title > first-message fallback >
session name. Stored underaiTitlein the session JSON. - Opt-out:
autoSessionTitlesetting (default on). This is the
only feature that makes a background API call you didn't explicitly
request, so it's toggleable in/settingsfor privacy/cost-conscious
users. Off → sessions keep the first-message title, zero background
calls.
Changed
/searchdescription clarified to "search the current session"
(vs/recallfor cross-session) — the two were easy to confuse when
both said "search history".
Fixed
/sessionspicker showed raw session ids (session-2026-05-20-757cbda5)
instead of readable titles. Now shows the title (AI-generated > storedfirst-message) with a short date + message count, so the list is
scannable.- Models hallucinating their identity in chat mode. Asked "which
model are you", GLM (and others) would claim to be Claude because the
chat system prompt never stated the actual identity. Both the chat
and agent system prompts now inject the realmodel+provider
from config, so the answer is truthful. (Agent mode already said
"never call yourself Claude" but didn't state the real model; now it
does.)
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About Codeep
All releases →Related context
Related tools
Beta — feedback welcome: [email protected]