[package]
edition = "2024"
rust-version = "1.85"
name = "theway-daemon"
version = "0.1.21"
authors = ["theway contributors"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "theway daemon — the single agent-runtime kernel (bin `thewayd`): harness assembly, local/sandbox tool policy, triggers/cron/session/DAG runtime, skills, MCP/LSP wiring, serving the gRPC/HTTP/MCP transports from theway-transport. Terminal UI lives in the theway-tui crate."
homepage = "https://github.com/ptlzc/theway"
readme = "README.md"
license = "MIT"
repository = "https://github.com/ptlzc/theway"
resolver = "2"
[features]
default = ["local"]
local = []
sandbox = []
[lib]
name = "theway_daemon"
path = "src/lib.rs"
[[bin]]
name = "thewayd"
path = "src/bin/thewayd.rs"
[[example]]
name = "sdk_embed"
path = "examples/sdk_embed.rs"
[[test]]
name = "bug_report_e2e"
path = "tests/bug_report_e2e.rs"
[[test]]
name = "cli_session"
path = "tests/cli_session.rs"
[[test]]
name = "cli_skills"
path = "tests/cli_skills.rs"
[[test]]
name = "commands_e2e_main"
path = "tests/commands_e2e_main.rs"
[[test]]
name = "daemon_client_e2e"
path = "tests/daemon_client_e2e.rs"
[[test]]
name = "deepseek_anchor_extension"
path = "tests/deepseek_anchor_extension.rs"
[[test]]
name = "dynamic_trigger_e2e_main"
path = "tests/dynamic_trigger_e2e_main.rs"
[[test]]
name = "e2e_llm"
path = "tests/e2e_llm.rs"
[[test]]
name = "executor"
path = "tests/executor.rs"
[[test]]
name = "export_e2e"
path = "tests/export_e2e.rs"
[[test]]
name = "git_tool_e2e"
path = "tests/git_tool_e2e.rs"
[[test]]
name = "goal_hook_e2e"
path = "tests/goal_hook_e2e.rs"
[[test]]
name = "graph_tools_e2e"
path = "tests/graph_tools_e2e.rs"
[[test]]
name = "harness_bridge_v2"
path = "tests/harness_bridge_v2.rs"
[[test]]
name = "harness_event_names"
path = "tests/harness_event_names.rs"
[[test]]
name = "harness_lifecycle_config"
path = "tests/harness_lifecycle_config.rs"
[[test]]
name = "harness_lifecycle_disposer"
path = "tests/harness_lifecycle_disposer.rs"
[[test]]
name = "harness_lifecycle_services"
path = "tests/harness_lifecycle_services.rs"
[[test]]
name = "hook_executors"
path = "tests/hook_executors.rs"
[[test]]
name = "hooks_e2e"
path = "tests/hooks_e2e.rs"
[[test]]
name = "lsp_framing"
path = "tests/lsp_framing.rs"
[[test]]
name = "mcp_e2e"
path = "tests/mcp_e2e.rs"
[[test]]
name = "sandbox_tool_gate"
path = "tests/sandbox_tool_gate.rs"
[[test]]
name = "subagent_tool_e2e"
path = "tests/subagent_tool_e2e.rs"
[[test]]
name = "templates_loader"
path = "tests/templates_loader.rs"
[[test]]
name = "tgrep_e2e"
path = "tests/tgrep_e2e.rs"
[[test]]
name = "tools"
path = "tests/tools.rs"
[[test]]
name = "trigger_execution"
path = "tests/trigger_execution.rs"
[[test]]
name = "ts_extension_dispatcher"
path = "tests/ts_extension_dispatcher.rs"
[[test]]
name = "ts_extension_live_events"
path = "tests/ts_extension_live_events.rs"
[[test]]
name = "ts_extension_packages"
path = "tests/ts_extension_packages.rs"
[[test]]
name = "ts_extension_registrations"
path = "tests/ts_extension_registrations.rs"
[[test]]
name = "ts_extension_reload"
path = "tests/ts_extension_reload.rs"
[[test]]
name = "ts_extension_security"
path = "tests/ts_extension_security.rs"
[[test]]
name = "ts_extension_state"
path = "tests/ts_extension_state.rs"
[[test]]
name = "ts_extensions"
path = "tests/ts_extensions.rs"
[[test]]
name = "tui_docs_extension"
path = "tests/tui_docs_extension.rs"
[[test]]
name = "web_fetch_e2e"
path = "tests/web_fetch_e2e.rs"
[dependencies.anyhow]
version = "1"
[dependencies.async-trait]
version = "0.1"
[dependencies.base64]
version = "0.22"
[dependencies.chrono]
version = "0.4"
features = [
"clock",
"serde",
]
default-features = false
[dependencies.clap]
version = "4"
features = ["derive"]
[dependencies.directories]
version = "5"
[dependencies.fs4]
version = "0.13"
[dependencies.futures]
version = "0.3"
[dependencies.hex]
version = "0.4"
[dependencies.ignore]
version = "0.4"
[dependencies.once_cell]
version = "1"
[dependencies.opentelemetry]
version = "0.31"
features = [
"metrics",
"trace",
]
[dependencies.opentelemetry-otlp]
version = "0.31"
features = [
"http-proto",
"metrics",
"reqwest-blocking-client",
"reqwest-rustls",
"trace",
]
default-features = false
[dependencies.opentelemetry_sdk]
version = "0.31"
features = [
"metrics",
"trace",
]
[dependencies.oxc-browserslist]
version = "=2.0.13"
[dependencies.oxc_allocator]
version = "0.75.1"
[dependencies.oxc_codegen]
version = "0.75.1"
[dependencies.oxc_parser]
version = "0.75.1"
[dependencies.oxc_semantic]
version = "0.75.1"
[dependencies.oxc_span]
version = "0.75.1"
[dependencies.oxc_transformer]
version = "0.75.1"
[dependencies.parking_lot]
version = "0.12"
[dependencies.prometheus]
version = "0.14"
[dependencies.regex]
version = "1"
[dependencies.reqwest]
version = "0.12"
features = [
"rustls-tls",
"gzip",
"stream",
]
default-features = false
[dependencies.rmcp]
version = "3"
features = [
"server",
"transport-io",
]
[dependencies.rquickjs]
version = "0.11.0"
features = ["loader"]
default-features = false
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.serde_yaml]
version = "0.9"
[dependencies.sha2]
version = "0.10"
[dependencies.strum]
version = "0.28"
features = ["derive"]
[dependencies.theway-contract]
version = "0.1.5"
[dependencies.theway-core]
version = "0.1.5"
[dependencies.theway-extensions]
version = "0.1.5"
[dependencies.theway-llm-provider]
version = "0.1.5"
features = ["all-providers"]
default-features = false
[dependencies.theway-mcp]
version = "0.1.5"
[dependencies.theway-storage]
version = "0.1.5"
[dependencies.theway-transport]
version = "0.1.5"
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = [
"macros",
"rt-multi-thread",
"sync",
"time",
"fs",
"io-util",
"io-std",
"net",
"process",
"signal",
]
[dependencies.tokio-tungstenite]
version = "0.26"
features = [
"connect",
"rustls-tls-webpki-roots",
]
default-features = false
[dependencies.tokio-util]
version = "0.7"
features = ["io"]
[dependencies.toml]
version = "0.8"
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-appender]
version = "0.2"
[dependencies.tracing-subscriber]
version = "0.3"
features = [
"env-filter",
"json",
]
[dependencies.tree-sitter]
version = "0.25"
[dependencies.tree-sitter-go]
version = "0.25"
[dependencies.tree-sitter-javascript]
version = "0.25"
[dependencies.tree-sitter-python]
version = "0.25"
[dependencies.tree-sitter-rust]
version = "0.24"
[dependencies.tree-sitter-typescript]
version = "0.23"
[dependencies.uuid]
version = "1"
features = [
"v7",
"v4",
"serde",
]
[dependencies.zeroize]
version = "1"
[dev-dependencies.opentelemetry_sdk]
version = "0.31"
features = ["testing"]
[dev-dependencies.qrcode]
version = "0.14"
default-features = false
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.tests-bridge-macro]
version = "0.1.5"
[target."cfg(unix)".dependencies.libc]
version = "0.2"
[lints.clippy]
await_holding_lock = "allow"
field_reassign_with_default = "allow"
large_enum_variant = "allow"
manual_div_ceil = "allow"
module_inception = "allow"
new_without_default = "allow"
redundant_guards = "allow"
too_many_arguments = "allow"
type_complexity = "allow"