This is a submission for the GitHub Copilot CLI Challenge
What I Built
Rekall is a zero-config CLI that helps developers recover context after meetings, breaks, and context switches. Instead of piecing together git status, git log, and git stash list every time you sit back down — you type one word: rekall
Rekall collects your entire project state — branch, commits, uncommitted changes, stashes, TODOs, FIXMEs — and sends it to GitHub Copilot CLI as a structured prompt. Copilot acts as the AI analysis engine, synthesizing raw data into a concise summary, suggested next step, and blockers.
Most projects use Copilot to write code. Rekall uses Copilot to power the product — four commands, each with its own Copilot touchpoint:
- rekall context — Copilot synthesizes your project state into summary, next step, and blockers
- rekall pr — Copilot analyzes PR changes with risk assessment and review questions
- rekall explain — Copilot explains your recent commits in natural language
- rekall suggest — Copilot generates commit messages or branch names from your changes
The tool is built in TypeScript (strict mode), has 42 passing unit tests, only 2 runtime dependencies, and works with or without Copilot installed — gracefully falling back to intelligent rule-based analysis.
Demo
GitHub: https://github.com/Jasmin2895/rekall
npm package link: https://www.npmjs.com/package/rekall-cli
npm: npm install -g rekall-cli
Try instantly: npx rekall-cli
Rekall with Github Copilot CLI

Rekall without Github Copilot CLI

$ rekall explain # Copilot explains your recent work
$ rekall suggest # AI commit message suggestions
$ rekall suggest "add dark mode" --type branch # Branch name suggestions
$ rekall --format json | jq '.analysis' # JSON for scripting
Quick Test
cd any-git-repo
npx rekall-cli
npx rekall-cli explain
npx rekall-cli suggest "your feature idea" --type branch
Requirements: Node.js 18+, Git. Optional: gh CLI for PR mode, gh extension install github/gh-copilot for AI-powered analysis.
My Experience with GitHub Copilot CLI
Rekall doesn't just use Copilot CLI during development — it uses Copilot CLI as the product itself. Every command pipes collected project data into gh copilot and parses what comes back. That's the entire architecture.
When you run rekall, your git state and code issues get packed into a prompt and sent to Copilot CLI via execute command. The response is parsed into sections — SUMMARY, NEXT_STEP, BLOCKERS — and rendered as clean terminal output. All four commands follow this same pipeline.
If Copilot isn't installed, Rekall doesn't break. It falls back to a rule-based engine that prioritizes FIXMEs, scores PR risk by file type, and generates commit messages from conventional patterns. It works — but Copilot's output is noticeably better. The tool tells you which mode you're in so there's no guessing.
Building With Copilot CLI
The most useful part of Copilot CLI during development was testing my own prompts. I'd run gh copilot explain with different prompt structures directly in the terminal, see what came back, tweak the wording, and repeat — before writing any parsing code. That saved me from a lot of trial-and-error.
It also caught a shell escaping issue I would've missed. I was passing raw project data (file paths, commit messages) into the prompt string, and Copilot helped me think through what characters could break the shell command. That's how the escaping logic ended up covering backslashes, quotes, dollar signs, and backticks.
It was an overall great learning experience thanks to Dev and Github Team for organising it. 👩💻



Top comments (0)