Claude Code¶
Claude Code stores a small global prompt history and per-project transcript
logs. agentgrep searches the global prompt history by default and adds
selected transcripts under targeted effort when a history sessionId resolves
uniquely inside the projects tree. --exhaustive adds transcript-backed
prompts from every eligible project transcript. Memory, todo, and plugin/skill
stores may join explicit broad-scope search. Settings and shell snapshots
remain inventory-only.
Base path: ~/.claude (env override: CLAUDE_CONFIG_DIR).
observed_version: claude-code v2.1.185 (observed 2026-06-21).
Stores¶
Default-search coverage marks eligibility, not an unconditional read. Fast prompt effort opens only prompt-history roles; exhaustive effort and broad scopes may add searchable chat stores. Catalog-only stores remain outside search, and private stores are not enumerated. Some catalog stores expose safe structural samples for explicit inspection.
- Role:
prompt_history- Format:
jsonl- Coverage:
default_search- Adapter:
claude.history_jsonl.v1
- Role:
primary_chat- Format:
jsonl- Coverage:
default_search- Adapter:
claude.projects_jsonl.v1
- Role:
supplementary_chat- Format:
jsonl- Coverage:
default_search- Adapter:
claude.projects_jsonl.v1
- Role:
persistent_memory- Format:
md_frontmatter- Coverage:
inspectable- Adapter:
claude.projects_memory_text.v1
- Role:
persistent_memory- Format:
text- Coverage:
inspectable- Adapter:
claude.memory_text.v1
- Role:
todo- Format:
json_object- Coverage:
inspectable- Adapter:
claude.tasks_json.v1
- Role:
todo- Format:
json_object- Coverage:
inspectable- Adapter:
claude.todos_json.v1
- Role:
app_state- Format:
json_object- Coverage:
catalog_only- Adapter:
claude.app_state_json_summary.v1
- Role:
app_state- Format:
sqlite- Coverage:
inspectable- Adapter:
claude.store_sqlite.v1
- Role:
plan- Format:
text- Coverage:
inspectable- Adapter:
claude.plans_text.v1
- Role:
app_state- Format:
text- Coverage:
inspectable- Adapter:
claude.workflow_scripts_text.v1
- Role:
app_state- Format:
json_object- Coverage:
inspectable- Adapter:
claude.usage_facets_json.v1
- Role:
persistent_memory- Format:
text- Coverage:
inspectable- Adapter:
claude.session_memory_text.v1
- Role:
app_state- Format:
json_object- Coverage:
catalog_only- Adapter:
claude.settings_json.v1
- Role:
app_state- Format:
json_object- Coverage:
private- Adapter:
-
- Role:
app_state- Format:
json_object- Coverage:
catalog_only- Adapter:
claude.app_state_json_summary.v1
- Role:
cache- Format:
json_object- Coverage:
catalog_only- Adapter:
claude.app_state_json_summary.v1
- Role:
app_state- Format:
text- Coverage:
catalog_only- Adapter:
claude.file_metadata_summary.v1
- Role:
cache- Format:
opaque- Coverage:
catalog_only- Adapter:
-
- Role:
cache- Format:
opaque- Coverage:
catalog_only- Adapter:
-
- Role:
cache- Format:
opaque- Coverage:
catalog_only- Adapter:
-
- Role:
app_state- Format:
text- Coverage:
catalog_only- Adapter:
claude.file_metadata_summary.v1
- Role:
cache- Format:
opaque- Coverage:
catalog_only- Adapter:
-
- Role:
app_state- Format:
json_object- Coverage:
catalog_only- Adapter:
claude.app_state_json_summary.v1
- Role:
app_state- Format:
json_object- Coverage:
private- Adapter:
-
- Role:
instruction- Format:
text- Coverage:
inspectable- Adapter:
claude.skills_text.v1
- Role:
instruction- Format:
text- Coverage:
inspectable- Adapter:
claude.commands_text.v1
- Role:
instruction- Format:
text- Coverage:
inspectable- Adapter:
claude.project_instruction_text.v1
- Role:
instruction- Format:
json_object- Coverage:
inspectable- Adapter:
claude.teams_json.v1
- Role:
app_state- Format:
opaque- Coverage:
private- Adapter:
-
- Role:
app_state- Format:
json_object- Coverage:
catalog_only- Adapter:
claude.app_state_json_summary.v1
- Role:
app_state- Format:
json_object- Coverage:
catalog_only- Adapter:
claude.app_state_json_summary.v1
- Role:
app_state- Format:
json_object- Coverage:
catalog_only- Adapter:
claude.app_state_json_summary.v1
- Role:
app_state- Format:
json_object- Coverage:
catalog_only- Adapter:
claude.app_state_json_summary.v1
- Role:
cache- Format:
opaque- Coverage:
catalog_only- Adapter:
-
- Role:
cache- Format:
opaque- Coverage:
catalog_only- Adapter:
-
- Role:
cache- Format:
opaque- Coverage:
inspectable- Adapter:
claude.plugin_manifest_json.v1claude.plugin_instruction_text.v1claude.plugin_hooks_json.v1
- Role:
instruction- Format:
md_frontmatter- Coverage:
catalog_only- Adapter:
-
claude.history¶
Global prompt history JSONL. Each line carries display, pastedContents, timestamp (Unix milliseconds), project, and sessionId. Large text pastes may be content-addressed through paste-cache/<contentHash>.txt.
- Agent:
Claude
- Role:
prompt_history- Format:
jsonl- Coverage:
default_search- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/history.jsonl- Adapter:
claude.history_jsonl.v1- Data version:
claude.history_jsonl.log_entry.v1- Version strategies:
shape_inference, catalog_observation- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
yes
User-prompt audit log used by Claude Code prompt history; project transcripts remain the full conversation replay.
claude.projects.session¶
JSONL; stream fragments grouped by uuid, dedup across /resume, skip isCompactSummary: true. Keys: type, uuid, parentUuid, timestamp, sessionId, cwd, gitBranch, version, message.role, message.content[] (text/thinking/tool_use/tool_result), message.usage. Non-message record types also appear — queue-operation (queued prompt text in content, no role), mode, permission-mode, ai-title, last-prompt, agent-name, pr-link, attachment, file-history-snapshot, system — only role-bearing message records are indexed.
- Agent:
Claude
- Role:
primary_chat- Format:
jsonl- Coverage:
default_search- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/projects/<encoded_project>/<session_uuid>.jsonl- Adapter:
claude.projects_jsonl.v1- Data version:
claude.projects_jsonl.message.v1- Version strategies:
embedded_metadata, shape_inference, catalog_observation- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
yes
claude.projects.subagent¶
Same JSONL line format as the parent session. Each file is one sub-agent dispatch from the Task tool.
- Agent:
Claude
- Role:
supplementary_chat- Format:
jsonl- Coverage:
default_search- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/projects/<encoded_project>/<session_uuid>/subagents/<agent>.jsonl- Adapter:
claude.projects_jsonl.v1- Data version:
claude.projects_jsonl.message.v1- Version strategies:
embedded_metadata, shape_inference, catalog_observation- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
yes
Sub-agent transcripts are conversation content; de-duplicate with the parent session by uuid.
claude.projects.memory¶
Markdown files with YAML frontmatter; the auto-memory feature. Each file holds one fact/feedback/project/reference memory.
- Agent:
Claude
- Role:
persistent_memory- Format:
md_frontmatter- Coverage:
inspectable- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/projects/<encoded_project>/memory/*.md- Adapter:
claude.projects_memory_text.v1- Data version:
claude.projects.memory.markdown.v1- Version strategies:
shape_inference, catalog_observation- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.memory_files¶
Persistent user and project memory Markdown loaded into Claude Code. Project-root files are discovered only from roots already referenced by local Claude project transcripts.
- Agent:
Claude
- Role:
persistent_memory- Format:
text- Coverage:
inspectable- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/CLAUDE.md and known project roots/{CLAUDE.md,.claude.md}- Adapter:
claude.memory_text.v1- Data version:
claude.memory.markdown.v1, claude.project_memory.markdown.v1- Version strategies:
shape_inference, catalog_observation- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.tasks¶
Claude Code task JSON with id, subject, description, status, blocks, blockedBy, and optional activeForm / metadata fields.
- Agent:
Claude
- Role:
todo- Format:
json_object- Coverage:
inspectable- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/tasks/<task_list>/<task_id>.json- Adapter:
claude.tasks_json.v1- Data version:
claude.tasks.json.v1- Version strategies:
shape_inference, catalog_observation- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.todos¶
Persistent todo lists keyed by agent UUID.
- Agent:
Claude
- Role:
todo- Format:
json_object- Coverage:
inspectable- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/todos/*.json- Adapter:
claude.todos_json.v1- Data version:
claude.todos.json.v1- Version strategies:
shape_inference, catalog_observation- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.sessions¶
Shell environment snapshots; rarely contains conversation text.
- Agent:
Claude
- Role:
app_state- Format:
json_object- Coverage:
catalog_only- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/sessions/- Adapter:
claude.app_state_json_summary.v1- Data version:
claude.sessions.json.v1- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.store_db¶
SQLite conversation/app state. Observed tables include base_messages, user_messages, assistant_messages, and conversation_summaries; message tables can duplicate JSONL transcript content, so this stays opt-in.
- Agent:
Claude
- Role:
app_state- Format:
sqlite- Coverage:
inspectable- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/__store.db- Adapter:
claude.store_sqlite.v1- Data version:
-- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.plans¶
Markdown plans stored under the configured Claude Code root. Project settings may redirect plan creation, but this root is the global default observed in current installs.
- Agent:
Claude
- Role:
plan- Format:
text- Coverage:
inspectable- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/plans/*.md- Adapter:
claude.plans_text.v1- Data version:
-- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.projects.workflows¶
Orchestration-workflow driver scripts emitted by the Workflow tool, each carrying an embedded meta = {name, description} that names the workflow intent. Machine-generated driver code; inspectable opt-in, not searched by default.
- Agent:
Claude
- Role:
app_state- Format:
text- Coverage:
inspectable- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/projects/<encoded_project>/<session_uuid>/workflows/scripts/<name>.js- Adapter:
claude.workflow_scripts_text.v1- Data version:
-- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.usage_data¶
Claude Code’s own derived per-session reflection summaries. The readable natural-language fields are brief_summary, underlying_goal, and friction_detail; counts and category fields are metadata. Derived state, not transcript — inspectable opt-in, not searched by default.
- Agent:
Claude
- Role:
app_state- Format:
json_object- Coverage:
inspectable- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/usage-data/facets/<session>.json- Adapter:
claude.usage_facets_json.v1- Data version:
-- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.projects.session_memory¶
Per-session memory summary Markdown plus optional session-memory template/prompt configuration. It can contain prompt context but is not part of the default transcript search surface.
- Agent:
Claude
- Role:
persistent_memory- Format:
text- Coverage:
inspectable- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/projects/<encoded_project>/<session_uuid>/session-memory/summary.md- Adapter:
claude.session_memory_text.v1- Data version:
-- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.settings¶
User configuration, local overrides, keybindings, policy limits, and update/auth cache state. Documented for inventory, not searched as prompt history.
- Agent:
Claude
- Role:
app_state- Format:
json_object- Coverage:
catalog_only- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/{settings*.json,keybindings.json}- Adapter:
claude.settings_json.v1- Data version:
claude.settings.json.v1- Version strategies:
shape_inference, catalog_observation- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.credentials¶
Authentication and account credentials. Documented but never enumerated.
- Agent:
Claude
- Role:
app_state- Format:
json_object- Coverage:
private- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/.credentials.json- Adapter:
-
- Data version:
-- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.update_state¶
Update and cleanup marker files; not prompt history.
- Agent:
Claude
- Role:
app_state- Format:
json_object- Coverage:
catalog_only- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/{.last-*,.last-update-result.json}- Adapter:
claude.app_state_json_summary.v1- Data version:
claude.update_state.json.v1- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.stats_cache¶
Cached usage and statistics state; not conversation content.
- Agent:
Claude
- Role:
cache- Format:
json_object- Coverage:
catalog_only- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/stats-cache.json- Adapter:
claude.app_state_json_summary.v1- Data version:
claude.stats_cache.json.v3- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.debug_logs¶
Debug output and diagnostics. Catalogued separately from transcripts.
- Agent:
Claude
- Role:
app_state- Format:
text- Coverage:
catalog_only- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/debug/- Adapter:
claude.file_metadata_summary.v1- Data version:
claude.debug_logs.text.v1- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.backups¶
Backup files retained by Claude Code; opaque inventory only.
- Agent:
Claude
- Role:
cache- Format:
opaque- Coverage:
catalog_only- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/backups/- Adapter:
-
- Data version:
-- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.generic_cache¶
General cache directory; not a prompt/history source.
- Agent:
Claude
- Role:
cache- Format:
opaque- Coverage:
catalog_only- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/cache/- Adapter:
-
- Data version:
-- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.file_history¶
Content-addressed file-history backups referenced by transcript snapshots. This can be large and is not conversation history.
- Agent:
Claude
- Role:
cache- Format:
opaque- Coverage:
catalog_only- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/file-history/- Adapter:
-
- Data version:
-- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.shell_snapshots¶
Shell integration snapshots; runtime state rather than prompt history.
- Agent:
Claude
- Role:
app_state- Format:
text- Coverage:
catalog_only- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/shell-snapshots/*.sh- Adapter:
claude.file_metadata_summary.v1- Data version:
claude.shell_snapshot.text.v1- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.image_cache¶
Base64/image payload cache for pasted image references.
- Agent:
Claude
- Role:
cache- Format:
opaque- Coverage:
catalog_only- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/image-cache/<session>/<image>- Adapter:
-
- Data version:
-- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.context_mode¶
Context-mode counters and local app state, sometimes backed by SQLite.
- Agent:
Claude
- Role:
app_state- Format:
json_object- Coverage:
catalog_only- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/context-mode/- Adapter:
claude.app_state_json_summary.v1- Data version:
claude.context_mode.json.v1- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.security_state¶
Security warning and repository baseline state.
- Agent:
Claude
- Role:
app_state- Format:
json_object- Coverage:
private- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/{security/,security_warnings_state_*.json}- Adapter:
-
- Data version:
-- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.skills¶
User and managed skill instructions loaded into Claude Code behavior.
- Agent:
Claude
- Role:
instruction- Format:
text- Coverage:
inspectable- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/skills/- Adapter:
claude.skills_text.v1- Data version:
claude.skills.markdown.v1- Version strategies:
shape_inference, catalog_observation- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.commands¶
Legacy custom slash-command Markdown loaded through the skill loader.
- Agent:
Claude
- Role:
instruction- Format:
text- Coverage:
inspectable- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/commands/- Adapter:
claude.commands_text.v1- Data version:
claude.commands.markdown.v1- Version strategies:
shape_inference, catalog_observation- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.project_instructions¶
Project-local commands, agents, and skills. Roots are bounded to projects already observed in local Claude transcript metadata.
- Agent:
Claude
- Role:
instruction- Format:
text- Coverage:
inspectable- Path:
${HOME}/<known_project_root>/.claude/{commands,agents,skills}/- Adapter:
claude.project_instruction_text.v1- Data version:
claude.project_commands.markdown.v1, claude.project_agents.markdown.v1, claude.project_skills.markdown.v1- Version strategies:
shape_inference, catalog_observation- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.teams¶
Team config JSON with member prompts and coordination metadata.
- Agent:
Claude
- Role:
instruction- Format:
json_object- Coverage:
inspectable- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/teams/- Adapter:
claude.teams_json.v1- Data version:
claude.teams.config_json.v1- Version strategies:
shape_inference, catalog_observation- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.session_env¶
Environment state captured for active or resumed sessions.
- Agent:
Claude
- Role:
app_state- Format:
opaque- Coverage:
private- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/session-env/- Adapter:
-
- Data version:
-- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.ide¶
IDE integration state and bridge metadata.
- Agent:
Claude
- Role:
app_state- Format:
json_object- Coverage:
catalog_only- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/ide/- Adapter:
claude.app_state_json_summary.v1- Data version:
claude.ide.json.v1- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.chrome¶
Claude-in-Chrome native-host and browser bridge state.
- Agent:
Claude
- Role:
app_state- Format:
json_object- Coverage:
catalog_only- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/chrome/- Adapter:
claude.app_state_json_summary.v1- Data version:
claude.chrome.json.v1- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.native_install¶
Native installer and local binary-management state.
- Agent:
Claude
- Role:
app_state- Format:
json_object- Coverage:
catalog_only- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/local/- Adapter:
claude.app_state_json_summary.v1- Data version:
claude.native_install.json.v1- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.jobs¶
Background job state and metadata, summarized without raw values.
- Agent:
Claude
- Role:
app_state- Format:
json_object- Coverage:
catalog_only- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/jobs/- Adapter:
claude.app_state_json_summary.v1- Data version:
claude.jobs.json.v1- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.uploads¶
Attachment upload staging; documented as opaque cache inventory.
- Agent:
Claude
- Role:
cache- Format:
opaque- Coverage:
catalog_only- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/uploads/- Adapter:
-
- Data version:
-- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.paste_cache¶
Transient clipboard staging.
- Agent:
Claude
- Role:
cache- Format:
opaque- Coverage:
catalog_only- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/paste-cache/- Adapter:
-
- Data version:
-- Version strategies:
-- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.plugins_cache¶
Installed plugin bundles. Manifest, command, agent, skill, and hook instruction surfaces are inspectable; runtime/cache payloads remain opaque.
- Agent:
Claude
- Role:
cache- Format:
opaque- Coverage:
inspectable- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/plugins/cache/- Adapter:
claude.plugin_manifest_json.v1, claude.plugin_instruction_text.v1, claude.plugin_hooks_json.v1- Data version:
claude.plugin_manifest.json.v1, claude.plugin_instruction.markdown.v1, claude.plugin_hooks.json.v1- Version strategies:
shape_inference, catalog_observation- Observed:
claude-code v2.1.185 (2026-06-21)
- Default search:
no
claude.plugins_marketplaces¶
Cloned plugin-marketplace repos under plugins/marketplaces/<repo>/ holding agent/command/skill instruction Markdown, including plugins not installed; installed plugins also resolve under plugins/cache/ (inspected by claude.plugins_cache).
- Agent:
Claude
- Role:
instruction- Format:
md_frontmatter- Coverage:
catalog_only- Path:
${CLAUDE_CONFIG_DIR or ${HOME}/.claude}/plugins/marketplaces/<repo>/<plugin>/{agents,commands,skills}/<name>.md- Adapter:
-
- Data version:
-- Version strategies:
-- Observed:
claude-code v2.1.200 (2026-07-03)
- Default search:
no
Version detection¶
Claude Code source discovery reports data-shape versions from concrete
record evidence. Global history records with display, timestamp,
and project are reported as claude.history_jsonl.log_entry.v1.
Project and sub-agent transcripts use embedded transcript version
metadata when present; otherwise their type, sessionId, and
message keys identify the JSONL message shape.
Task files with id, subject, description, and status are
reported as claude.tasks.json.v1. Todo, team, app-state, skill,
command, plugin, project instruction, user/project memory, and
auto-memory stores use path and key-shape inference for their
non-default adapters. Settings and app-state files use
medium-confidence key/type summaries because their values are
deliberately not indexed. Debug logs and shell snapshots expose
metadata-only summaries, not raw file content.
Catalog observation stamps remain the fallback for discovered stores whose concrete shape cannot be sampled safely.
Record schemas¶
Global prompt history¶
claude.history is the global JSONL prompt-history audit log at
${CLAUDE_CONFIG_DIR or ~/.claude}/history.jsonl. Each line carries
display, pastedContents, timestamp as Unix milliseconds, project, and
sessionId. display is the user-facing prompt text; when it contains
[Pasted text #N] placeholders, agentgrep expands inline text from
pastedContents or the external paste-cache/<contentHash>.txt file when
present. Missing or non-text paste entries keep their original placeholder
text.
{"display": "Review [Pasted text #1]",
"pastedContents": {"1": {"type": "text", "content": "..."}},
"timestamp": 1700000000000,
"project": "/repo",
"sessionId": "..."}
Project transcripts¶
claude.projects.session is JSONL with stream fragments grouped by
uuid. Keys: type, uuid, parentUuid, timestamp, sessionId, cwd,
gitBranch, version, message.role, message.content[]
(text/thinking/tool_use/tool_result), message.usage.
{"type": "user", "uuid": "...", "timestamp": "2026-05-17T...",
"message": {"role": "user", "content": [{"type": "text", "text": "..."}]}}
Sub-agent dispatches nest under <session_uuid>/subagents/ and use
the same record parser. agentgrep reports them as the distinct runtime store
claude.projects_subagents so main session files and nested sub-agent files do
not collapse into one source.
Store database¶
claude.store_db is Claude Code’s __store.db under the config
root. Observed tables include base_messages, user_messages,
assistant_messages, and conversation_summaries. The message tables can
duplicate JSONL transcript content, so agentgrep catalogs and discovers the DB
for explicit inventory but does not search it by default.
Session memory¶
claude.projects.session_memory summaries live under
projects/<encoded_project>/<session_uuid>/session-memory/summary.md. They
can contain prompt context and summaries, but they are derived state rather
than the primary transcript.
Tasks, Plans, And Configuration¶
Tasks are JSON files under tasks/<task_list>/<task_id>.json with
id, subject, description, status, blocks, blockedBy, and
optional metadata fields. agentgrep emits one inspectable task sample
from the subject and description plus status/blocking metadata. Plans
are Markdown files under plans/*.md. Orchestration-workflow driver
scripts written by the Workflow tool live under
projects/<encoded_project>/<session_uuid>/workflows/scripts/*.js,
each carrying an embedded meta = {name, description}; they are
inspectable (opt-in), not searched by default.
Settings and keybindings expose only top-level key summaries for
explicit inspection, so raw values such as environment variables are
not indexed. Auto-memory Markdown, CLAUDE.md memory files,
persistent todos, user skills, legacy commands, project-local
commands/agents/skills, plugin instructions, and team member prompts
are inspectable because they can steer future Claude Code behavior.
Project-local files are discovered only from roots already referenced
by local Claude transcript metadata; agentgrep does not recursively
scan $HOME for every possible project.
Claude’s own derived per-session reflection summaries under
usage-data/facets/*.json are inspectable: agentgrep emits the
natural-language brief_summary, underlying_goal, and
friction_detail fields and leaves the count/category metadata aside.
This is derived state, not transcript, so it is opt-in.
Context-mode files, IDE bridge state, Chrome/native integration state, native installer metadata, jobs, stats/update cache, and session state expose only key/type summaries. Debug logs and shell snapshots expose file metadata such as name, suffix, byte size, and line count. Security state, session environment, uploads, file history, backups, generic cache, credentials, and image/paste caches stay catalogued or private so storage audits can identify them without treating them as default prompt history.