smc_cli_cc/lib.rs
1//! # smc — Search My Claude
2//!
3//! Programmatic access to Claude Code conversation logs.
4//!
5//! Claude Code stores every conversation as JSONL files — messages, tool calls,
6//! thinking blocks, timestamps, git context. This library provides fast, parallel
7//! search and analysis across all of them.
8//!
9//! ## Quick Start
10//!
11//! ```no_run
12//! use smc_cli_cc::{config::Config, search::{self, SearchOpts}};
13//!
14//! let cfg = Config::new(None).unwrap();
15//! let files = cfg.discover_jsonl_files().unwrap();
16//!
17//! let opts = SearchOpts {
18//! queries: vec!["authentication".to_string()],
19//! is_regex: false,
20//! and_mode: false,
21//! role: None,
22//! tool: None,
23//! project: Some("myapp".to_string()),
24//! after: None,
25//! before: None,
26//! branch: None,
27//! max_results: 10,
28//! stdout_md: false,
29//! md_file: None,
30//! count_mode: false,
31//! summary_mode: false,
32//! json_mode: false,
33//! include_smc: false,
34//! exclude_session: None,
35//! };
36//!
37//! search::search(&files, &opts).unwrap();
38//! ```
39
40pub mod analytics;
41pub mod config;
42pub mod display;
43pub mod models;
44pub mod search;
45pub mod session;