Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,26 @@ Repository: <https://github.com/Dicklesworthstone/coding_agent_session_search>

---

## [Unreleased]

### Added

- **Codebuff (formerly Manicode) connector.** New agent under `src/connectors/codebuff.rs`
re-exporting `franken_agent_detection::CodebuffConnector`. Indexes chat history stored at
`~/.config/manicode/projects/<project>/chats/<chatId>/chat-messages.json` (and the
rebranded `~/.config/codebuff/...` layout). Walks `manicode-dev` and `manicode-staging`
channels when present. Honors `CODEBUFF_DATA_DIR` / legacy `MANICODE_DATA_DIR` env
overrides, and recovers the originating cwd from the sibling `run-state.json` so sessions
group by real project path rather than the on-disk sanitized basename. Brings the
supported-agent count to 20. Storage layout reverse-engineered from
[getagentseal/codeburn#124](https://github.com/getagentseal/codeburn/pull/124).

### Changed

- Bumped `franken-agent-detection` git pin to include the new Codebuff connector.

---

## [v0.3.7] -- 2026-04-23

**Indexer stall observability + zero-writer deadlock fix.**
Expand Down
2 changes: 1 addition & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 8 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,14 @@ memmap2 = "*"
bytemuck = "*"
fastembed = { version = "*", default-features = false, features = ["ort-download-binaries-rustls-tls"] }
frankensearch = { version = "*", git = "https://github.com/Dicklesworthstone/frankensearch", rev = "3dbab624", default-features = false, features = ["hash", "lexical", "ann", "fastembed-reranker"] }
franken-agent-detection = { version = "*", git = "https://github.com/Dicklesworthstone/franken_agent_detection", rev = "03fa0a3bdff9f0e618471873fb71658b7af386ab", features = ["connectors", "cursor", "chatgpt", "opencode", "crush"] }
## NOTE (Codebuff connector): pinned temporarily at @anandghegde's fork rev
## carrying the new `CodebuffConnector`. The companion FAD PR adds it to
## `connectors::codebuff` upstream; once that PR merges into
## `Dicklesworthstone/franken_agent_detection`, the URL should be flipped
## back and the rev bumped to the merge commit. The build.rs URL contract
## was widened to accept the fork URL only for as long as this fork pin is
## in effect — see the matching note in build.rs.
franken-agent-detection = { version = "*", git = "https://github.com/anandghegde/franken_agent_detection", rev = "ca827f2e9d8c5185bb5a6e58410245d8a2c7024f", features = ["connectors", "cursor", "chatgpt", "opencode", "crush"] }
wide = "*" # Portable SIMD for P0 Opt 2: SIMD dot product
arrayvec = "*" # Stack-based arrays for P1 Opt 1.4: Edge N-gram optimization
bloomfilter = "*" # Probabilistic membership testing for P2 Opt 3.3: Workspace Cache
Expand Down
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
![License](https://img.shields.io/badge/license-MIT%2BOpenAI%2FAnthropic%20Rider-green.svg)

**Unified, high-performance TUI to index and search your local coding agent history.**
Aggregates sessions from Codex, Claude Code, Gemini CLI, Cline, OpenCode, Amp, Cursor, ChatGPT, Aider, Pi-Agent, GitHub Copilot Chat, Copilot CLI, OpenClaw, Clawdbot, Vibe, Crush, Kimi Code, Qwen Code, and Factory (Droid) into a single, searchable timeline.
Aggregates sessions from Codex, Claude Code, Gemini CLI, Cline, OpenCode, Amp, Cursor, ChatGPT, Aider, Pi-Agent, GitHub Copilot Chat, Copilot CLI, OpenClaw, Clawdbot, Vibe, Crush, Kimi Code, Qwen Code, Codebuff (Manicode), and Factory (Droid) into a single, searchable timeline.

<div align="center">

Expand Down Expand Up @@ -368,6 +368,7 @@ Ingests history from 19 local agents, normalizing them into a unified `Conversat
- **Cursor**: `~/Library/Application Support/Cursor/User/` global + workspace storage (SQLite `state.vscdb`)
- **ChatGPT**: `~/Library/Application Support/com.openai.chat` (v1 unencrypted JSON; v2/v3 encrypted—see Environment)
- **Aider**: `~/.aider.chat.history.md` and per-project `.aider.chat.history.md` files (Markdown)
- **Codebuff** (formerly Manicode): `~/.config/manicode/projects/<project>/chats/<chatId>/chat-messages.json` (and the rebranded `~/.config/codebuff/...` layout). Honors `CODEBUFF_DATA_DIR` / legacy `MANICODE_DATA_DIR` overrides; recovers the originating cwd from the sibling `run-state.json` so sessions group by real project path.
- **Pi-Agent**: `~/.pi/agent/sessions` (Session JSONL with thinking content)
- **GitHub Copilot Chat**: VS Code global storage under `github.copilot-chat` (JSON)
- **Copilot CLI**: `~/.copilot/session-state`, legacy `~/.copilot/history-session-state`, and `gh copilot` config paths (JSONL/JSON)
Expand Down
11 changes: 8 additions & 3 deletions build.rs
Original file line number Diff line number Diff line change
Expand Up @@ -80,14 +80,19 @@ const CONTRACTS: &[DependencyContract] = &[
dep_key: "franken-agent-detection",
crate_package_name: "franken-agent-detection",
manifest_package_field: None,
expected_git: "https://github.com/Dicklesworthstone/franken_agent_detection",
expected_rev: "03fa0a3bdff9f0e618471873fb71658b7af386ab",
// Temporarily pointing at @anandghegde's fork that carries the new
// Codebuff connector. Flip back to
// `https://github.com/Dicklesworthstone/franken_agent_detection`
// once the upstream FAD PR adding `connectors::codebuff` merges,
// and bump `expected_rev` to the merge commit.
expected_git: "https://github.com/anandghegde/franken_agent_detection",
expected_rev: "ca827f2e9d8c5185bb5a6e58410245d8a2c7024f",
expected_version: "0.1.3",
expected_features: &["chatgpt", "connectors", "crush", "cursor", "opencode"],
expected_default_features: None,
repo_rel: "../franken_agent_detection",
manifest_rel: "Cargo.toml",
patch_url: Some("https://github.com/Dicklesworthstone/franken_agent_detection"),
patch_url: Some("https://github.com/anandghegde/franken_agent_detection"),
patch_key: Some("franken-agent-detection"),
mode: ValidationMode::StrictOptIn,
},
Expand Down
5 changes: 5 additions & 0 deletions src/connectors/codebuff.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
//! Connector for Codebuff (formerly Manicode) chat sessions.
//!
//! Implementation lives in `franken_agent_detection::connectors::codebuff`.

pub use franken_agent_detection::CodebuffConnector;
1 change: 1 addition & 0 deletions src/connectors/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ pub mod chatgpt;
pub mod claude_code;
pub mod clawdbot;
pub mod cline;
pub mod codebuff;
pub mod codex;
pub mod copilot;
pub mod copilot_cli;
Expand Down