terraphim_agent 1.4.10

Terraphim AI Agent CLI - Command-line interface with interactive REPL and ASCII graph visualization
Documentation
[package]
name = "terraphim_agent"
version = "1.4.10"
edition = "2021"
authors = ["Terraphim Contributors"]
description = "Terraphim AI Agent CLI - Command-line interface with interactive REPL and ASCII graph visualization"
documentation = "https://terraphim.ai"
homepage = "https://terraphim.ai"
repository = "https://github.com/terraphim/terraphim-ai"
keywords = ["cli", "ai", "agent", "search", "repl"]
license = "Apache-2.0"
readme = "../../README.md"

[features]
default = ["repl-interactive"]
repl = ["dep:rustyline", "dep:colored", "dep:comfy-table", "dep:indicatif", "dep:dirs"]
repl-interactive = ["repl", "dep:atty"]
# NOTE: repl-sessions removed from repl-full for crates.io publishing (terraphim_sessions not published yet)
repl-full = ["repl", "repl-chat", "repl-mcp", "repl-file", "repl-custom", "repl-web", "repl-interactive"]
repl-chat = ["repl"]  # Chat functionality
repl-mcp = ["repl"]   # MCP tools integration
repl-file = ["repl"]  # Enhanced file operations
repl-custom = ["repl"]  # Markdown-defined custom commands
repl-web = ["repl"]   # Web operations and configuration
# NOTE: repl-sessions disabled for crates.io publishing (terraphim_sessions not published yet)
# repl-sessions = ["repl", "dep:terraphim_sessions"]  # Session history search

[dependencies]
anyhow = "1.0"
thiserror = "1.0"
clap = { version = "4", features = ["derive"] }
tokio = { version = "1", features = ["full"] }
ratatui = "0.28"
crossterm = "0.29"
futures = "0.3"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
serde_yaml = "0.9"
reqwest = { version = "0.12", features = ["json", "rustls-tls"], default-features = false }
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["fmt", "env-filter"] }
log = "0.4"
jiff = "0.2"
urlencoding = "2.1"
ahash = "0.8"
terraphim_update = { path = "../terraphim_update", version = "1.0.0" }
pulldown-cmark = { version = "0.12", default-features = false, features = ["html"] }
handlebars = "6.0"
regex = "1.0"
walkdir = "2.0"
async-trait = "0.1"
chrono = { version = "0.4", features = ["serde"] }
strsim = "0.11"  # For edit distance / fuzzy matching in forgiving CLI
uuid = { version = "1.19", features = ["v4", "serde"] }

# REPL dependencies - only compiled with features
rustyline = { version = "17.0", optional = true }
colored = { version = "3.0", optional = true }
comfy-table = { version = "7.0", optional = true }
indicatif = { version = "0.18", optional = true }
dirs = { version = "5.0", optional = true }
atty = { version = "0.2", optional = true }

terraphim_types = { path = "../terraphim_types", version = "1.0.0" }
terraphim_settings = { path = "../terraphim_settings", version = "1.0.0" }
terraphim_persistence = { path = "../terraphim_persistence", version = "1.0.0" }
terraphim_config = { path = "../terraphim_config", version = "1.0.0" }
terraphim_automata = { path = "../terraphim_automata", version = "1.0.0" }
terraphim_service = { path = "../terraphim_service", version = "1.0.0" }
terraphim_middleware = { path = "../terraphim_middleware", version = "1.0.0" }
terraphim_rolegraph = { path = "../terraphim_rolegraph", version = "1.0.0" }
terraphim_hooks = { path = "../terraphim_hooks", version = "1.0.0" }
# NOTE: terraphim_sessions commented out for crates.io publishing (not published yet)
# terraphim_sessions = { path = "../terraphim_sessions", version = "0.1.0", optional = true, features = ["cla-full"] }

[dev-dependencies]
serial_test = "3.0"
futures = "0.3"
portpicker = "0.1"
reqwest = { version = "0.12", features = ["json", "rustls-tls"], default-features = false }
tokio = { version = "1", features = ["full"] }
tempfile = "3.0"

# Enable REPL features for testing
terraphim_agent = { path = ".", features = ["repl-full"] }


[[bin]]
name = "terraphim-agent"
path = "src/main.rs"

[package.metadata.deb]
maintainer = "Terraphim Contributors <team@terraphim.ai>"
copyright = "2024, Terraphim Contributors"
license-file = ["../../LICENSE-Apache-2.0", "4"]
extended-description = """
Terraphim Agent - AI Agent CLI Interface for Terraphim.
Command-line interface with interactive REPL and ASCII graph visualization.
Supports search, configuration management, and data exploration."""
depends = "$auto"
section = "utility"
priority = "optional"
assets = [
    ["target/release/terraphim-agent", "usr/bin/", "755"],
    ["../../README.md", "usr/share/doc/terraphim-agent/README", "644"],
]