Skip to content

Git (local repos)

Git is the simplest source. DevRecall walks directories you point it at, finds .git folders, and reads commits authored by you.

Git has no OAuth — it’s pure local config. Either run devrecall setup (the wizard walks you through it) or edit ~/.devrecall/config.json directly:

{
"git": {
"enabled": true,
"scan_paths": ["~/Projects", "~/work"],
"repos": ["~/work/backend"],
"emails": ["pavel@company.com", "pavel.piliak@gmail.com"]
}
}
FieldMeaning
scan_pathsWalked recursively for .git directories
reposExplicit repo paths (always included, even if outside scan_paths)
emailsAuthor emails that count as “you” — auto-detected from git config user.email if empty
FieldSource
Commit SHAgit log
SubjectFirst line of commit message
BodyRest of commit message
Author/dategit log --author/--date
Files changedgit log --shortstat
Insertions/deletions--shortstat
BranchBest-effort from --all

Merge commits are skipped by default.

If your commit messages contain Jira (PROJ-123) or Linear (ENG-456) issue keys, DevRecall extracts them automatically. Standups then group commits under their tickets:

- PROJ-123 (Fix payment retry logic): 3 commits — backoff, max retries, tests
  • Commit content stays on disk — DevRecall reads but never uploads it
  • Only commits authored by your configured emails are collected
  • Drop a repo from indexing by removing its path from git.repos / git.scan_paths

git log is fast. Even on a repo with 50k commits, the initial 90-day sync takes <1 second. Subsequent syncs are incremental — DevRecall remembers the last commit it saw per repo.