Skip to content

Latest commit

 

History

125 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Gigai Chronicle — git blame says who; chronicle why says what was asked

Gigai Chronicle

Build software with AI. Never lose the journey.

npm VS Code Marketplace Open VSX GitHub stars MIT Node Zero network


Git answers what changed. It has never answered what was asked.

As AI writes more of your code, that second history — the prompts, the attempts, the reasoning, the things you rejected — is scattered across tool-specific log files or thrown away. Chronicle keeps it: an append-only, plain-text record of your AI-assisted development, inside your own repo, that travels by git clone like everything else.

No account. No server. No network. It never calls a model.

The question it answers

$ chronicle why packages/core/src/prompts/prompts.ts

why packages/core/src/prompts/prompts.ts looks like this — 1 prompt(s):

  2026-07-17 07:33     +65 −1  "histry not like that UI make like git tree view this is very basic"
                               ⏪ chronicle restore evt_01KXQFWE3F8BCXD1MZ7K3HFNEX

git blame says you wrote those 65 lines. Chronicle says what you asked for — and can put the code back to the moment before you asked.

What you get

🔍 chronicle why <file> The prompt behind each change — the question git blame can't answer
chronicle restore <evt> Put your code back to how it was at any prompt. Always safety-checkpointed — nothing is lost
▶️ chronicle replay <session> Step through what happened: prompts, responses, tools, commits, interleaved
📚 chronicle prompt save --from-last Keep the prompt that worked. Versioned, diffable, shared by git
🩺 chronicle doctor The trust anchor: log integrity, secret audit, and a proof that nothing leaves your machine

Plus a VS Code extension: history in the sidebar, prompt version history as a git-style graph, and Why is this file like this? in the editor.

Beyond why — memory & intelligence

The captured journey becomes persistent project knowledge and development intelligence — all local, deterministic, and model-free (Chronicle never calls a model):

🧠 Project Memory Decisions, constraints, known issues, failed approaches — derived from history, each traceable to its source. chronicle memory rebuild / list / verify
🤝 AI Continuity Any AI (Claude, Codex, Gemini, Cursor…) continues where the last stopped. chronicle bootstrap / project context / continue / handoff
🛡 chronicle preflight "<task>" Before you code: risks, contradictions, previous attempts, a verdict
chronicle why-not <file> Negative knowledge — what not to change, and why
chronicle risk <file> An explainable risk score — every point a named signal
chronicle health · onboarding-test Project health · can a new AI understand this project?

New here? → Quick Start · Why Chronicle? · Features

Install

Requires Node ≥ 20.19 and git.

The CLIon npm:

npm install -g gigai-chronicle
chronicle --help

The editor extension (VS Code, Cursor, Windsurf) — grab the .vsix from Releases → Command Palette → Extensions: Install from VSIX…. (Marketplace and Open VSX listings are rolling out.)

Or build from source
git clone https://github.com/cbsshekhawat18-lab/gigai-chronicle.git
cd gigai-chronicle
corepack pnpm install && corepack pnpm build
cd apps/cli && npm link          # exposes `chronicle`

Quickstart (60 seconds)

cd your-git-repo

chronicle init   # 3 questions, all skippable — or --yes
                 # starts live capture too (hooks merge into .claude/settings.json)

That's it. Work normally. Every prompt is now recorded — and every prompt checkpoints your code, so you can always go back.

chronicle timeline          # what happened
chronicle sessions          # who/what did the work, with model badges
chronicle why src/auth.ts   # what was ASKED that made this file
chronicle doctor            # prove it's all local and intact

Already have history? Backfill it — idempotent, reads transcripts you already have on disk:

chronicle import claude-code

Commands

Command Purpose
chronicle init [--yes] [--metadata-only] [--private-sessions] Initialize. Prints its complete footprint — 4 paths, named
chronicle why <file> [--limit n] [--evolution] What was asked that made this file (ADR-0013); --evolution shows how the ask sharpened
chronicle diff [<evtA> <evtB>] The wording delta between two prompts you typed — no args = the last two
chronicle knowledge [--type decision|todo] The decisions & TODOs buried in your sessions, surfaced with provenance (model-free)
chronicle context <file> [--copy] Brief your AI tool — the prompts + decisions that shaped a file, as paste-ready Markdown
chronicle restore <evt> [--force] ⏪ Code time-travel to any prompt (ADR-0012)
chronicle replay <session> [--at evt] Step through a session
chronicle timeline [--since --until --branch --type…] The journey, filtered
chronicle sessions [--provider --model] Sessions with provider/model badges
chronicle prompt save|list|show|versions|diff|use|compare|revert The prompt library: save research for later or promote what you typed (--from-last), use any version, --note why it changed, revert without rewriting — with ● used / ○ saved status derived from real capture
chronicle inspect <id|sha> The git show of Chronicle
chronicle session privatize|promote <id> Move a session off the shared record, or back
chronicle import <provider> Backfill from existing transcripts (claude-code, codex)
chronicle hooks install|uninstall <provider> Live capture (merges, never clobbers)
chronicle doctor [--reindex] [--scan-secrets] Integrity, secret audit, zero-egress proof
chronicle log <message> Manual capture — the universal floor

--json on every command ({"apiVersion":1,…}) — the machine contract. Exit codes: 0 ok · 1 failure · 2 usage · 3 not a Chronicle project.

How it works

Your AI tool ──hooks──▶ Event Engine ──▶ .chronicle/  ──▶ Replay ──▶ CLI / VS Code
                        VALIDATE          (JSONL,           │
                        REDACT             plain text,      └─▶ why · restore
                        ENRICH             in your repo)
                        NORMALIZE
  • The store is a directory in your git repo. Files are the API; git is the transport. That one choice is why there is no infrastructure to run.
  • The Event Engine is the only way in. Secrets are redacted before the first byte reaches disk.
  • Checkpoints are git-native. Every prompt snapshots your tree into a hidden ref (refs/chronicle/ckpt/*) in your own object store — never touching HEAD, your branches, or your history.
  • The index is a disposable cache. Deleting .chronicle/.cache/ is always safe.

Deep dive: ARCHITECTURE.md.

Privacy

Built for people who cannot send their prompts to a vendor.

  • Zero network by default — and it proves it on demand:
    $ chronicle doctor
    egress   zero-network (no endpoints configured, telemetry: none)
  • Never calls a model. Never phones home. Never stores your file contents.
  • Secrets are redacted at capture, irreversibly, before anything is written — including your own shapes via capture.redaction.customPatterns.
  • --metadata-only records event shapes and timings with no prompt text, for repos where the words themselves are sensitive.
  • Sessions can be born private (--private-sessions) or moved off the shared record any time (chronicle session privatize).
  • Never scores developers. No leaderboards, no per-author metrics. Ever.

⚠️ Understand the default: your journey is shared — it commits with your repo and pushes with it. That's the point (a teammate clones and inherits the whole story), but it means your prompts are exactly as public as your repository. Read docs/privacy.md before pushing anything sensitive.

For teams

A teammate clones and immediately has the journey — no setup, no account:

$ chronicle replay ses_01KXQGDTFD0GSQ92AWZ1E9XPJN
[07:44] you      one think, we give user only histry and version control system…
[09:40] you      check now
[09:40] tool     Bash → success

Prompts saved to the library travel the same way — review them in a PR like any other file.

Honest limit: why and restore are local-only. Checkpoints live in git refs that aren't pushed, so a fresh clone can replay the story but cannot attribute lines. Replay is the team surface; why is your personal one.

Documentation

Doc What it is
QUICKSTART.md Up and running in 5 minutes
WHY-CHRONICLE.md The problem, and how Chronicle is different
FEATURES.md Every capability in plain English
COOKBOOK.md Real-world recipes
GUIDE.md The complete guide — what/why/how, install, workflows, FAQ
project-memory.md · ai-continuity.md Project Memory & AI Continuity
development-intelligence.md · context-engine.md Development Intelligence & the Context Engine
TROUBLESHOOTING.md Symptom → cause → solution
ARCHITECTURE.md The technical spec — pipeline, event model, store format
privacy.md The privacy model, in full
CAPTURE-SURFACES.md Every lawful capture mechanism, per tool, audited
DELIVERY-SURFACES.md What we may write into another tool's territory
PROVIDERS.md Provider capability matrix — honest about fidelity
ROADMAP.md What's shipped, what's next (prompt evolution, the Dashboard)
SPEC-ROADMAP.md The Chronicle Spec as an open standard
VISION.md The OpenTelemetry-for-AI-development endgame
adr/ Architecture Decision Records — every decision, and what it cost

Development

corepack pnpm install
corepack pnpm build        # turbo: all packages
corepack pnpm test         # every suite (network denied by the harness)
corepack pnpm typecheck
corepack pnpm lint         # architecture boundary checks
corepack pnpm test:scripts # repo tooling + cold-start budget

Contributions welcome — see CONTRIBUTING.md (DCO sign-off, conventional commits, tests with every PR). Security reports: SECURITY.md.

The promises

Local-first · plain text · zero network by default · never calls a model · never writes your git history · never scores developers · your data is yours.

Free and open. MIT for the code, CC-BY for the spec.

About

Version control for the AI development journey — git records what changed, Chronicle records what was asked. Local-first, plain-text, in your git repo. CLI + VS Code/Cursor extension.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages