devrecall
Collects pull requests, reviews, issues, and comments from Bitbucket.
Collects pages, blogposts, and comments you authored from Confluence.
Collects commits, branch activity, and changed files from local Git repositories.
Collects pull requests, reviews, issues, and comments from GitHub.
Collects merge requests, reviews, issues, and comments from GitLab.
Collects meetings attended, organized, and declined from Google Calendar.
Collects issue transitions, comments, and sprint membership from Jira.
Collects issue transitions, comments, and sprint membership from Linear.
Collects messages and threads you participated in from Slack.
DevRecall
Your developer activity, aggregated on-device. No cloud sync. No telemetry. Your data never leaves your machine.
DevRecall pulls from Git, Slack, Google Calendar, Jira, Linear, Confluence, and GitHub/GitLab/Bitbucket; stores it in a local SQLite database; and turns it into standups, weekly reports, brag docs, and a chat that actually knows what you worked on.
Also ships an MCP server —
any MCP-compatible coding tool (Claude Code, Cursor, Codex, Continue, Zed)
can spawn it as a stdio subprocess and gain memory of everything you've
shipped. /devrecall:recall what auth bug did I fix in February returns
cited commits, PRs, and tickets inline.
📚 docs.devrecall.dev — install, configure, integrations, CLI reference.
Why
Local-first. SQLite on your laptop. Tokens in
~/.devrecall/tokens/(0600). The Cloudflare Worker relay is a pass-through for OAuth callbacks only — it never sees your data.LLM-optional. Bundled embeddings run offline (ONNX +
all-MiniLM-L6-v2). Use local Ollama for chat, or bring your own OpenAI/Anthropic key.Open source. MIT-licensed. Audit it, fork it, build it from source.
Sources
Source | What gets collected |
Git (local) | Commits, branch activity, files changed |
GitHub / GitLab / Bitbucket | PRs/MRs, reviews, issues, comments |
Slack | Your messages, threads you participated in |
Google Calendar | Meetings attended, organized, declined |
Jira / Linear | Issue transitions, comments, sprint membership |
Confluence | Pages, blogposts, and comments you authored |
Install
Homebrew ships with the first tagged release. Until then:
git clone https://github.com/pavelpilyak/devrecall.git
cd devrecall
make build # → bin/devrecallRequires Go 1.22+ with CGO enabled (for SQLite FTS5).
Full install + setup walkthrough at docs.devrecall.dev/install.
Architecture
┌─────────────┐ ┌─────────────┐ ┌─────────────────┐
│ Collectors │ → │ SQLite │ → │ Summarizer / │
│ (OAuth + │ │ + FTS5 + │ │ RAG (vector │
│ APIs) │ │ embeddings │ │ + FTS + LLM) │
└─────────────┘ └─────────────┘ └─────────────────┘
↑ ↑ ↓
~/.devrecall/ ~/.devrecall/ standup,
tokens/ devrecall.db brag, chat,
perf reviewModule overview: CLAUDE.md. Architecture deep-dive: docs.devrecall.dev/architecture.
Development
make build # bin/devrecall
make test # tests with race detector
make lint # golangci-lintBuild tags: fts5 enables SQLite full-text search; GO enables hugot's pure
Go ONNX backend for embeddings.
The desktop app (Tauri + Svelte) lives in desktop/;
the OAuth callback relay (Cloudflare Worker) in relay/.
Contributing
Bug reports and collector contributions are especially welcome. See CONTRIBUTING.md.
Security
SECURITY.md for responsible disclosure.
Maintenance
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/pavelpilyak/devrecall'
If you have feedback or need assistance with the MCP directory API, please join our Discord server