[package]
edition = "2024"
name = "phi-agent"
version = "0.2.7"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "phi-agent — General-purpose AI Agent framework (builder factory, renderer, config, session management)"
readme = "README.md"
keywords = [
"agent",
"ai",
"llm",
"framework",
"cli",
]
categories = [
"development-tools",
"command-line-utilities",
"asynchronous",
]
license = "MIT"
repository = "https://github.com/hibuka-labs/phi-agent"
[features]
default = [
"tools",
"telemetry",
"logging",
]
logging = ["log-core"]
telemetry = ["phi-telemetry"]
tools = ["phi-tools"]
[lib]
name = "phi_agent"
path = "src/lib.rs"
[[bin]]
name = "phi"
path = "src/bin/phi/main.rs"
required-features = [
"tools",
"telemetry",
"logging",
]
[[example]]
name = "custom-policy"
path = "examples/custom-policy.rs"
[[example]]
name = "custom-tool"
path = "examples/custom-tool.rs"
[[example]]
name = "focus-demo"
path = "examples/focus-demo.rs"
[[example]]
name = "hello-agent"
path = "examples/hello-agent.rs"
[[example]]
name = "multi-tool"
path = "examples/multi-tool.rs"
[[test]]
name = "bridge_test"
path = "tests/bridge_test.rs"
[[test]]
name = "integration_test"
path = "tests/integration_test.rs"
[dependencies.agent-base]
version = "0.1.11"
[dependencies.agent-works]
version = "0.1.5"
[dependencies.anyhow]
version = "1"
[dependencies.async-trait]
version = "0.1"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.clap]
version = "4"
features = [
"derive",
"env",
]
[dependencies.dotenvy]
version = "0.15"
[dependencies.fs2]
version = "0.4"
[dependencies.log-core]
version = "0.1.3"
optional = true
[dependencies.phi-telemetry]
version = "0.1.4"
optional = true
[dependencies.phi-tools]
version = "0.1.3"
optional = true
[dependencies.regex]
version = "1"
[dependencies.rustyline]
version = "15"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.tokio]
version = "1"
features = ["full"]
[dependencies.tokio-util]
version = "0.7"
features = ["rt"]
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-appender]
version = "0.2"
[dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]
[dependencies.uuid]
version = "1"
features = ["v4"]
[dev-dependencies.futures-core]
version = "0.3"
[dev-dependencies.tempfile]
version = "3"