Capture the reasoning behind your code decisions.
IntentFlow automatically saves AI chat sessions from GitHub Copilot and Cursor, versioning the intent and decisions in your repository.
Your agents don't know why you chose Postgres. Neither does the engineer who joined Tuesday.
IntentFlow captures the reasoning behind your code—from agent sessions to team discussions—versioned in your repo.
intentflow/
├── extension/ # VS Code extension
│ ├── src/ # TypeScript source
│ │ ├── storage/ # Storage location and watching
│ │ ├── parsers/ # Copilot/Cursor session parsers
│ │ ├── markdown/ # Markdown rendering
│ │ ├── redaction/ # PII/secret redaction
│ │ └── search/ # Local search
│ └── dist/ # Built extension
├── web/ # Web platform (Next.js)
│ ├── src/app/ # App router pages
│ ├── src/db/ # Database schema
│ └── src/lib/ # Utilities
└── PLAN.md # Development plan
- Automatic Capture: Sessions saved automatically as you work
- Git-Friendly: Markdown exports commit cleanly with your code
- Privacy-First: PII and secrets automatically redacted
- Local Search: Find past decisions without leaving VS Code
- Opt-Out Control: Per-session ignore and global disable options
- Rule Derivation: Generate coding rules from sessions using local LLMs (Ollama)
- Multi-Format Output: Export rules to GitHub Copilot and Cursor formats
- Cloud Sync: Sync sessions to the cloud (optional)
- Full-Text Search: Search across all sessions
- Team Sharing: Share sessions with teammates
- API Access: Integrate with your tools
- Install from VS Code marketplace (or build locally)
- Open a workspace folder
- Start chatting with Copilot or Cursor
- Sessions are saved to
.intentflow/history/
- Clone the repository
- Set up PostgreSQL database
- Configure environment variables
- Run
pnpm run devin theweb/directory
cd extension
pnpm install
pnpm run dev # Watch mode
pnpm run build # Production build
pnpm run package # Create .vsix
pnpm test # Run testscd web
pnpm install
pnpm run dev # Development server
pnpm run build # Production build
pnpm run db:push # Sync database schemaUser chats with Copilot/Cursor
↓
Extension monitors workspace storage
↓
Session parsed and messages extracted
↓
PII/secrets redacted
↓
Markdown exported to .intentflow/history/
↓
(Optional) Synced to cloud
.intentflow/
├── history/ # Markdown exports (committable)
│ └── 2024-01-15_10-30Z-implementing-binary-search.md
├── store/ # Structured JSON (gitignored)
└── backups/ # Rule file backups (gitignored)
| Setting | Default | Description |
|---|---|---|
intentflow.capture.enabled |
true |
Enable automatic capture |
intentflow.capture.sources |
["copilot", "cursor"] |
AI assistants to capture |
intentflow.redaction.enabled |
true |
Redact sensitive information |
intentflow.storagePath |
.intentflow |
Storage directory path |
| Setting | Default | Description |
|---|---|---|
intentflow.ollama.enabled |
true |
Enable Ollama integration |
intentflow.ollama.baseUrl |
http://localhost:11434 |
Ollama server URL |
intentflow.ollama.model |
lfm2.5-thinking |
Model for analysis |
intentflow.ollama.timeout |
120000 |
Request timeout (ms) |
| Setting | Default | Description |
|---|---|---|
intentflow.rules.outputFormats |
["copilot", "cursor"] |
Output targets |
intentflow.rules.createBackup |
true |
Backup before overwrite |
IntentFlow is designed with privacy in mind:
- Local-First: All data stays local by default
- Redaction: Emails, API keys, tokens automatically redacted
- Control: Per-session ignore, global disable options
- Transparency: Markdown format is human-readable
Contributions are welcome! Please read our contributing guidelines.
MIT