limit_cli/lib.rs
1//! # limit-cli
2//!
3//! AI-powered terminal coding assistant with TUI interface.
4//!
5//! This crate provides the main entry point for the Limit AI coding assistant.
6//! It includes session management, tool execution, and TUI interface.
7//!
8//! ## Features
9//!
10//! - **Multi-provider LLM**: Anthropic Claude, OpenAI GPT, z.ai GLM, and local models
11//! - **18 built-in tools**: File I/O, bash execution, git operations, code analysis
12//! - **Session persistence**: Auto-save and restore conversations
13//! - **File autocomplete**: Type `@` to quickly reference files
14//!
15//! ## Usage
16//!
17//! ```bash
18//! lim
19//! ```
20//!
21//! ## Modules
22//!
23//! | Module | Description |
24//! |--------|-------------|
25//! | [`agent_bridge`] | Bridge between LLM agent and CLI |
26//! | [`session`] | Session management and persistence |
27//! | [`tools`] | Built-in tool implementations |
28//! | [`tui`] | Terminal UI components |
29//! | [`syntax`] | Syntax highlighting |
30//! | [`file_finder`] | File autocomplete with fuzzy matching |
31//! | [`session_share`] | Export sessions to various formats |
32
33pub mod agent_bridge;
34pub mod clipboard;
35pub mod session_share;
36pub mod session_tree;
37pub mod system_prompt;
38
39pub use session_tree::{
40 generate_entry_id, SerializableMessage, SessionEntry, SessionEntryType, SessionTree,
41};
42
43pub mod error;
44pub mod file_finder;
45pub mod logging;
46pub mod session;
47pub mod syntax;
48pub mod tools;
49pub mod tui;
50pub mod tui_bridge;
51
52pub use agent_bridge::{AgentBridge, AgentEvent};
53pub use error::CliError;
54pub use file_finder::{FileFinder, FileMatch};
55pub use logging::init_logging;
56pub use session::SessionManager;
57pub use session_share::{ExportFormat, SessionExport, SessionShare};
58pub use syntax::SyntaxHighlighter;
59pub use tui::{FileAutocompleteState, TuiState};
60pub use tui_bridge::{TuiApp, TuiBridge};