[package]
edition = "2024"
name = "heddle-cli"
version = "0.4.0"
authors = ["Luke"]
build = false
exclude = [
"tests/realworld_git/fixtures/*",
"tests/snapshots/**/*",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "An AI-native version control system"
readme = "README.md"
keywords = [
"vcs",
"version-control",
"ai",
"git",
]
categories = ["development-tools"]
license = "Apache-2.0"
repository = "https://github.com/HeddleCo/heddle"
resolver = "2"
[features]
client = [
"dep:heddle-client",
"dep:tokio-tungstenite",
]
default = [
"git-overlay",
"native",
"local",
"mount",
"semantic",
"zstd",
]
git-overlay = [
"repo/git-overlay",
"ingest",
]
ingest = []
local = []
mount = [
"dep:mount",
"mount?/fuse",
"mount?/fskit",
"mount?/projfs",
"mount?/nfs",
]
native = ["repo/native"]
observability = [
"dep:opentelemetry",
"dep:opentelemetry-otlp",
"dep:opentelemetry_sdk",
"dep:tracing-opentelemetry",
]
s3 = ["repo/s3"]
semantic = [
"dep:semantic",
"repo/tree-sitter-symbols",
]
semantic-extended = [
"semantic",
"semantic?/extended-languages",
]
zstd = [
"objects/zstd",
"wire/zstd",
"repo/zstd",
"ingest/zstd",
]
[lib]
name = "cli"
path = "src/lib.rs"
[[bin]]
name = "heddle"
path = "src/main.rs"
[[bin]]
name = "heddle-fuse-worker"
path = "src/bin/heddle-fuse-worker.rs"
required-features = ["mount"]
[[example]]
name = "gen_ts_types"
path = "examples/gen_ts_types.rs"
[[test]]
name = "advice_lint"
path = "tests/advice_lint.rs"
[[test]]
name = "agent_api_schema"
path = "tests/agent_api_schema.rs"
[[test]]
name = "cli_integration"
path = "tests/cli_integration.rs"
[[test]]
name = "commit_conformance"
path = "tests/commit_conformance.rs"
[[test]]
name = "comprehensive"
path = "tests/comprehensive.rs"
[[test]]
name = "concurrent_access"
path = "tests/concurrent_access.rs"
[[test]]
name = "conflict_resolution"
path = "tests/conflict_resolution.rs"
[[test]]
name = "core_functionality"
path = "tests/core_functionality.rs"
[[test]]
name = "formal_specs"
path = "tests/formal_specs.rs"
[[test]]
name = "git_bridge_integration"
path = "tests/git_bridge_integration.rs"
[[test]]
name = "git_process_lint"
path = "tests/git_process_lint.rs"
[[test]]
name = "idempotency_lint"
path = "tests/idempotency_lint.rs"
[[test]]
name = "lazy_blob_hydration_kernel"
path = "tests/lazy_blob_hydration_kernel.rs"
[[test]]
name = "multi_agent_worktrees"
path = "tests/multi_agent_worktrees.rs"
[[test]]
name = "op_id_coverage"
path = "tests/op_id_coverage.rs"
[[test]]
name = "performance"
path = "tests/performance.rs"
[[test]]
name = "presence_publish"
path = "tests/presence_publish.rs"
[[test]]
name = "production_features"
path = "tests/production_features.rs"
[[test]]
name = "render_lint"
path = "tests/render_lint.rs"
[[test]]
name = "roundtrip_fidelity"
path = "tests/roundtrip_fidelity.rs"
[[test]]
name = "semantic_diff_integration"
path = "tests/semantic_diff_integration.rs"
required-features = ["semantic"]
[[test]]
name = "serve_local"
path = "tests/serve_local.rs"
[[test]]
name = "stack_rebase"
path = "tests/stack_rebase.rs"
[[test]]
name = "state_management"
path = "tests/state_management.rs"
[[test]]
name = "tier_coverage"
path = "tests/tier_coverage.rs"
[[test]]
name = "ts_types_in_sync"
path = "tests/ts_types_in_sync.rs"
[[test]]
name = "typed_error_lint"
path = "tests/typed_error_lint.rs"
[[bench]]
name = "clonefile_threads"
path = "benches/clonefile_threads.rs"
harness = false
[[bench]]
name = "local_ops"
path = "benches/local_ops.rs"
harness = false
required-features = ["semantic"]
[dependencies.anstyle]
version = "1"
[dependencies.anyhow]
version = "1"
[dependencies.async-trait]
version = "0.1"
[dependencies.base64]
version = "0.22"
[dependencies.blake3]
version = "1"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.clap]
version = "4"
features = [
"derive",
"env",
]
[dependencies.clap_complete]
version = "4"
[dependencies.cli-shared]
version = "0.4"
package = "heddle-cli-shared"
[dependencies.crypto]
version = "0.4"
package = "heddle-crypto"
[dependencies.daemon]
version = "0.4"
package = "heddle-daemon"
[dependencies.futures]
version = "0.3"
[dependencies.grpc]
version = "0.7"
package = "heddle-grpc"
[dependencies.heddle-client]
version = "0.4"
optional = true
[dependencies.hex]
version = "0.4"
[dependencies.hyper-util]
version = "0.1"
features = [
"tokio",
"server-auto",
]
[dependencies.ignore]
version = "0.4"
[dependencies.ingest]
version = "0.4"
default-features = false
package = "heddle-ingest"
[dependencies.libc]
version = "0.2"
[dependencies.merge]
version = "0.4"
package = "heddle-merge"
[dependencies.notify]
version = "8"
[dependencies.objects]
version = "0.4"
features = ["memory-backend"]
package = "heddle-objects"
[dependencies.opentelemetry]
version = "0.32"
optional = true
[dependencies.opentelemetry-otlp]
version = "0.32"
features = [
"grpc-tonic",
"trace",
"metrics",
]
optional = true
[dependencies.opentelemetry_sdk]
version = "0.32"
optional = true
[dependencies.oplog]
version = "0.4"
package = "heddle-oplog"
[dependencies.prost-types]
version = "0.14"
[dependencies.refs]
version = "0.4"
package = "heddle-refs"
[dependencies.repo]
version = "0.4"
default-features = false
package = "heddle-repo"
[dependencies.rmp-serde]
version = "1"
[dependencies.rustls]
version = "0.23"
features = [
"ring",
"logging",
"std",
"tls12",
]
default-features = false
[dependencies.schemars]
version = "1.2"
features = ["chrono04"]
[dependencies.semantic]
version = "0.4"
optional = true
package = "heddle-semantic"
[dependencies.serde]
version = "1"
features = [
"derive",
"rc",
]
[dependencies.serde_json]
version = "1"
[dependencies.sha2]
version = "0.10"
features = ["oid"]
[dependencies.sley]
version = "0.1.0"
features = [
"mmap",
"fast-sha1",
]
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = [
"rt",
"macros",
"net",
"signal",
"sync",
"time",
"io-util",
"process",
"fs",
"rt-multi-thread",
]
default-features = false
[dependencies.tokio-tungstenite]
version = "0.29"
features = ["rustls-tls-webpki-roots"]
optional = true
[dependencies.toml]
version = "1.1"
[dependencies.tonic]
version = "0.14"
features = [
"transport",
"tls-webpki-roots",
]
[dependencies.tonic-health]
version = "0.14"
[dependencies.tower]
version = "0.5"
features = ["util"]
default-features = false
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-opentelemetry]
version = "0.33"
optional = true
[dependencies.tracing-subscriber]
version = "0.3"
features = [
"env-filter",
"json",
]
[dependencies.uuid]
version = "1"
features = [
"v4",
"v7",
"serde",
]
[dependencies.walkdir]
version = "2"
[dependencies.weft-client-shim]
version = "0.4"
package = "weft-client-shim"
[dependencies.wire]
version = "0.4"
default-features = false
package = "heddle-wire"
[dev-dependencies.criterion]
version = "0.8"
[dev-dependencies.hyper-util]
version = "0.1"
features = [
"tokio",
"server-auto",
]
[dev-dependencies.ntest]
version = "0.9"
[dev-dependencies.proptest]
version = "1"
[dev-dependencies.serial_test]
version = "3"
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.tokio-tungstenite]
version = "0.29"
features = ["rustls-tls-webpki-roots"]
[dev-dependencies.uuid]
version = "1"
features = [
"v4",
"v7",
"serde",
]
[target.'cfg(target_os = "linux")'.dependencies.mount]
version = "0.4"
optional = true
package = "heddle-mount"
[target.'cfg(target_os = "macos")'.dependencies.mount]
version = "0.4"
optional = true
package = "heddle-mount"
[target.'cfg(target_os = "windows")'.dependencies.mount]
version = "0.4"
optional = true
package = "heddle-mount"