Coding Agent Source Detection

Detect local Claude Code, Codex, and Cursor history sources without reading session content before consent.

Overview

Description

Coding Agent Source Detection inventories supported coding-agent history locations on a user’s machine before an import begins. It recognizes Claude Code project histories, Codex session folders, and Cursor conversation stores at their operating-system-specific locations, returning one source per session-bearing folder. Detection produces stable source identities while leaving the consent decision to the calling surface.

The detection boundary is privacy-sensitive. It finds folders and counts or discovers top-level sessions without treating every sibling directory as implicitly approved. Cursor’s preliminary count is metadata-only, and subagent or workflow histories are excluded from the normal top-level session inventory. The result supports a consent screen that can default individual sources independently.

Selling Points

  • Finds supported local coding-agent histories without manual path entry.
  • Separates source discovery from consent and content ingestion.
  • Assigns stable folder-scoped identities for retries, checkpoints, and error reporting.
  • Supports Claude Code, Codex, and Cursor through one provider-neutral inventory.
  • Avoids silently importing sibling folders or nested agent workflows.

User Story

As a developer setting up conversation import, I want Dots to show which coding-agent history sources exist on my machine before it reads them. I can approve the folders I recognize and leave other workspaces unchecked, confident that discovery alone did not upload their session contents.

Extension Surface

The rating is fixed_core because the shipped platform roster and location rules are implemented in packages/ingestion/src/coding-agent/detect/index.ts, with DB-free discovery exported through packages/ingestion/src/coding-agent/local.ts. The broader orchestration uses adapter contracts, but there is no user-installed provider registration mechanism for detection locations in this feature.

Capabilities & Limits

Capabilities include platform-specific root detection, stable source-key generation, top-level session enumeration, Cursor store counting, and folder-level consent granularity. The DB-free leaf is safe for an Electron main process. Limits are honest: the detector supports the coded provider roster only, makes no consent choice, and does not promise that every discovered Cursor schema contains importable content until the consented full reader validates it.

Implementation Map

  • packages/ingestion/src/coding-agent/detect/index.ts
  • packages/ingestion/src/coding-agent/normalize/discover.ts
  • packages/ingestion/src/coding-agent/normalize/cursor-store.ts
  • packages/ingestion/src/coding-agent/local.ts

Properties

Property
Value
product
dots-platform
extensibility
fixed-core
module
Conversations, Importers, Desktop Shell
packages
ingestion, apps-desktop
status
shipped
surface
background
summary
Detect local Claude Code, Codex, and Cursor history sources without reading session content before consent.

Connections

Coding Agent Source Detection · Explore connections

  • documented bytoImport Your Coding-agent Conversations
  • requirestoCoding Agent Conversation Import
  • implemented bytopackages/ingestion/src/coding-agent/detect/index.ts
  • implemented bytopackages/ingestion/src/coding-agent/normalize/discover.ts
  • implemented bytopackages/ingestion/src/coding-agent/local.ts
  • implemented bytosourceKeyForPlatform
  • implemented bytodetectAgents
  • implemented bytodiscoverSessions
  • requiresfromCoding Agent Conversation Import

Connected Records9

Documented by
Implemented by
detectAgents
discoverSessions
packages/ingestion/src/coding-agent/detect/index.ts
packages/ingestion/src/coding-agent/local.ts
packages/ingestion/src/coding-agent/normalize/discover.ts
sourceKeyForPlatform
Requires
9 connections.

Documents