aboutsummaryrefslogtreecommitdiffstats
path: root/crates/client
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--crates/client/Cargo.toml103
-rw-r--r--crates/client/build.rs (renamed from crates/turtle/build.rs)0
-rw-r--r--crates/client/src/atuin_client/api_client.rs (renamed from crates/turtle/src/atuin_client/api_client.rs)0
-rw-r--r--crates/client/src/atuin_client/database.rs (renamed from crates/turtle/src/atuin_client/database.rs)0
-rw-r--r--crates/client/src/atuin_client/encryption.rs (renamed from crates/turtle/src/atuin_client/encryption.rs)0
-rw-r--r--crates/client/src/atuin_client/history.rs (renamed from crates/turtle/src/atuin_client/history.rs)0
-rw-r--r--crates/client/src/atuin_client/history/builder.rs (renamed from crates/turtle/src/atuin_client/history/builder.rs)0
-rw-r--r--crates/client/src/atuin_client/history/store.rs (renamed from crates/turtle/src/atuin_client/history/store.rs)0
-rw-r--r--crates/client/src/atuin_client/meta.rs (renamed from crates/turtle/src/atuin_client/meta.rs)0
-rw-r--r--crates/client/src/atuin_client/mod.rs (renamed from crates/turtle/src/atuin_client/mod.rs)0
-rw-r--r--crates/client/src/atuin_client/ordering.rs (renamed from crates/turtle/src/atuin_client/ordering.rs)0
-rw-r--r--crates/client/src/atuin_client/record/encryption.rs (renamed from crates/turtle/src/atuin_client/record/encryption.rs)0
-rw-r--r--crates/client/src/atuin_client/record/mod.rs (renamed from crates/turtle/src/atuin_client/record/mod.rs)0
-rw-r--r--crates/client/src/atuin_client/record/sqlite_store.rs (renamed from crates/turtle/src/atuin_client/record/sqlite_store.rs)0
-rw-r--r--crates/client/src/atuin_client/record/sync.rs (renamed from crates/turtle/src/atuin_client/record/sync.rs)0
-rw-r--r--crates/client/src/atuin_client/secrets.rs (renamed from crates/turtle/src/atuin_client/secrets.rs)0
-rw-r--r--crates/client/src/atuin_client/settings.rs (renamed from crates/turtle/src/atuin_client/settings.rs)0
-rw-r--r--crates/client/src/atuin_client/settings/meta.rs (renamed from crates/turtle/src/atuin_client/settings/meta.rs)0
-rw-r--r--crates/client/src/atuin_client/settings/watcher.rs (renamed from crates/turtle/src/atuin_client/settings/watcher.rs)0
-rw-r--r--crates/client/src/atuin_client/theme.rs (renamed from crates/turtle/src/atuin_client/theme.rs)0
-rw-r--r--crates/client/src/atuin_client/utils.rs (renamed from crates/turtle/src/atuin_client/utils.rs)0
-rw-r--r--crates/client/src/atuin_common/api.rs (renamed from crates/turtle/src/atuin_common/api.rs)0
-rw-r--r--crates/client/src/atuin_common/mod.rs (renamed from crates/turtle/src/atuin_common/mod.rs)0
-rw-r--r--crates/client/src/atuin_common/record.rs (renamed from crates/turtle/src/atuin_common/record.rs)0
-rw-r--r--crates/client/src/atuin_common/shell.rs (renamed from crates/turtle/src/atuin_common/shell.rs)0
-rw-r--r--crates/client/src/atuin_common/tls.rs (renamed from crates/turtle/src/atuin_common/tls.rs)0
-rw-r--r--crates/client/src/atuin_common/utils.rs (renamed from crates/turtle/src/atuin_common/utils.rs)0
-rw-r--r--crates/client/src/atuin_history/mod.rs (renamed from crates/turtle/src/atuin_history/mod.rs)0
-rw-r--r--crates/client/src/atuin_history/sort.rs (renamed from crates/turtle/src/atuin_history/sort.rs)0
-rw-r--r--crates/client/src/atuin_history/stats.rs (renamed from crates/turtle/src/atuin_history/stats.rs)0
-rw-r--r--crates/client/src/atuin_pty_proxy/capture.rs (renamed from crates/turtle/src/atuin_pty_proxy/capture.rs)0
-rw-r--r--crates/client/src/atuin_pty_proxy/debug.rs (renamed from crates/turtle/src/atuin_pty_proxy/debug.rs)0
-rw-r--r--crates/client/src/atuin_pty_proxy/mod.rs (renamed from crates/turtle/src/atuin_pty_proxy/mod.rs)0
-rw-r--r--crates/client/src/atuin_pty_proxy/osc133.rs (renamed from crates/turtle/src/atuin_pty_proxy/osc133.rs)0
-rw-r--r--crates/client/src/atuin_pty_proxy/pty_proxy.rs (renamed from crates/turtle/src/atuin_pty_proxy/pty_proxy.rs)0
-rw-r--r--crates/client/src/atuin_pty_proxy/runtime.rs (renamed from crates/turtle/src/atuin_pty_proxy/runtime.rs)0
-rw-r--r--crates/client/src/atuin_pty_proxy/screen.rs (renamed from crates/turtle/src/atuin_pty_proxy/screen.rs)0
l---------crates/client/src/command/CONTRIBUTORS (renamed from crates/turtle/src/command/CONTRIBUTORS)0
-rw-r--r--crates/client/src/command/client.rs (renamed from crates/turtle/src/command/client.rs)0
-rw-r--r--crates/client/src/command/client/config.rs (renamed from crates/turtle/src/command/client/config.rs)0
-rw-r--r--crates/client/src/command/client/daemon.rs (renamed from crates/turtle/src/command/client/daemon.rs)0
-rw-r--r--crates/client/src/command/client/default_config.rs (renamed from crates/turtle/src/command/client/default_config.rs)0
-rw-r--r--crates/client/src/command/client/history.rs (renamed from crates/turtle/src/command/client/history.rs)0
-rw-r--r--crates/client/src/command/client/info.rs (renamed from crates/turtle/src/command/client/info.rs)0
-rw-r--r--crates/client/src/command/client/init.rs (renamed from crates/turtle/src/command/client/init.rs)0
-rw-r--r--crates/client/src/command/client/init/bash.rs (renamed from crates/turtle/src/command/client/init/bash.rs)0
-rw-r--r--crates/client/src/command/client/init/fish.rs (renamed from crates/turtle/src/command/client/init/fish.rs)0
-rw-r--r--crates/client/src/command/client/init/powershell.rs (renamed from crates/turtle/src/command/client/init/powershell.rs)0
-rw-r--r--crates/client/src/command/client/init/xonsh.rs (renamed from crates/turtle/src/command/client/init/xonsh.rs)0
-rw-r--r--crates/client/src/command/client/init/zsh.rs (renamed from crates/turtle/src/command/client/init/zsh.rs)0
-rw-r--r--crates/client/src/command/client/search.rs (renamed from crates/turtle/src/command/client/search.rs)0
-rw-r--r--crates/client/src/command/client/search/cursor.rs (renamed from crates/turtle/src/command/client/search/cursor.rs)0
-rw-r--r--crates/client/src/command/client/search/duration.rs (renamed from crates/turtle/src/command/client/search/duration.rs)0
-rw-r--r--crates/client/src/command/client/search/engines.rs (renamed from crates/turtle/src/command/client/search/engines.rs)0
-rw-r--r--crates/client/src/command/client/search/engines/daemon.rs (renamed from crates/turtle/src/command/client/search/engines/daemon.rs)0
-rw-r--r--crates/client/src/command/client/search/engines/db.rs (renamed from crates/turtle/src/command/client/search/engines/db.rs)0
-rw-r--r--crates/client/src/command/client/search/engines/skim.rs (renamed from crates/turtle/src/command/client/search/engines/skim.rs)0
-rw-r--r--crates/client/src/command/client/search/history_list.rs (renamed from crates/turtle/src/command/client/search/history_list.rs)0
-rw-r--r--crates/client/src/command/client/search/inspector.rs (renamed from crates/turtle/src/command/client/search/inspector.rs)0
-rw-r--r--crates/client/src/command/client/search/interactive.rs (renamed from crates/turtle/src/command/client/search/interactive.rs)0
-rw-r--r--crates/client/src/command/client/search/keybindings/actions.rs (renamed from crates/turtle/src/command/client/search/keybindings/actions.rs)0
-rw-r--r--crates/client/src/command/client/search/keybindings/conditions.rs (renamed from crates/turtle/src/command/client/search/keybindings/conditions.rs)0
-rw-r--r--crates/client/src/command/client/search/keybindings/defaults.rs (renamed from crates/turtle/src/command/client/search/keybindings/defaults.rs)0
-rw-r--r--crates/client/src/command/client/search/keybindings/key.rs (renamed from crates/turtle/src/command/client/search/keybindings/key.rs)0
-rw-r--r--crates/client/src/command/client/search/keybindings/keymap.rs (renamed from crates/turtle/src/command/client/search/keybindings/keymap.rs)0
-rw-r--r--crates/client/src/command/client/search/keybindings/mod.rs (renamed from crates/turtle/src/command/client/search/keybindings/mod.rs)0
-rw-r--r--crates/client/src/command/client/server.rs (renamed from crates/turtle/src/command/client/server.rs)0
-rw-r--r--crates/client/src/command/client/stats.rs (renamed from crates/turtle/src/command/client/stats.rs)0
-rw-r--r--crates/client/src/command/client/store.rs (renamed from crates/turtle/src/command/client/store.rs)0
-rw-r--r--crates/client/src/command/client/store/pull.rs (renamed from crates/turtle/src/command/client/store/pull.rs)0
-rw-r--r--crates/client/src/command/client/store/purge.rs (renamed from crates/turtle/src/command/client/store/purge.rs)0
-rw-r--r--crates/client/src/command/client/store/push.rs (renamed from crates/turtle/src/command/client/store/push.rs)0
-rw-r--r--crates/client/src/command/client/store/rebuild.rs (renamed from crates/turtle/src/command/client/store/rebuild.rs)0
-rw-r--r--crates/client/src/command/client/store/rekey.rs (renamed from crates/turtle/src/command/client/store/rekey.rs)0
-rw-r--r--crates/client/src/command/client/store/verify.rs (renamed from crates/turtle/src/command/client/store/verify.rs)0
-rw-r--r--crates/client/src/command/client/sync.rs (renamed from crates/turtle/src/command/client/sync.rs)0
-rw-r--r--crates/client/src/command/client/sync/status.rs (renamed from crates/turtle/src/command/client/sync/status.rs)0
-rw-r--r--crates/client/src/command/client/wrapped.rs (renamed from crates/turtle/src/command/client/wrapped.rs)0
-rw-r--r--crates/client/src/command/contributors.rs (renamed from crates/turtle/src/command/contributors.rs)0
-rw-r--r--crates/client/src/command/gen_completions.rs (renamed from crates/turtle/src/command/gen_completions.rs)0
-rw-r--r--crates/client/src/command/mod.rs (renamed from crates/turtle/src/command/mod.rs)0
-rw-r--r--crates/client/src/lib.rs4
-rw-r--r--crates/client/src/main.rs (renamed from crates/turtle/src/main.rs)0
-rw-r--r--crates/client/src/print_error.rs (renamed from crates/turtle/src/print_error.rs)0
-rw-r--r--crates/client/src/shell/.gitattributes (renamed from crates/turtle/src/shell/.gitattributes)0
-rw-r--r--crates/client/src/shell/atuin.bash (renamed from crates/turtle/src/shell/atuin.bash)0
-rw-r--r--crates/client/src/shell/atuin.fish (renamed from crates/turtle/src/shell/atuin.fish)0
-rw-r--r--crates/client/src/shell/atuin.nu (renamed from crates/turtle/src/shell/atuin.nu)0
-rw-r--r--crates/client/src/shell/atuin.ps1 (renamed from crates/turtle/src/shell/atuin.ps1)0
-rw-r--r--crates/client/src/shell/atuin.xsh (renamed from crates/turtle/src/shell/atuin.xsh)0
-rw-r--r--crates/client/src/shell/atuin.zsh (renamed from crates/turtle/src/shell/atuin.zsh)0
-rw-r--r--crates/client/src/sync.rs (renamed from crates/turtle/src/sync.rs)0
92 files changed, 107 insertions, 0 deletions
diff --git a/crates/client/Cargo.toml b/crates/client/Cargo.toml
new file mode 100644
index 00000000..26ee6771
--- /dev/null
+++ b/crates/client/Cargo.toml
@@ -0,0 +1,103 @@
+[package]
+name = "atuin"
+edition = "2024"
+description = "atuin - magical shell history"
+readme = "./README.md"
+
+rust-version = { workspace = true }
+version = { workspace = true }
+authors = { workspace = true }
+license = { workspace = true }
+homepage = { workspace = true }
+repository = { workspace = true }
+
+[dependencies]
+async-trait = "0.1.58"
+atuin-nucleo-matcher = { workspace = true }
+atuin-nucleo = { workspace = true }
+axum = "0.8"
+base64 = "0.22"
+clap = { version = "4.5.7", features = ["derive"] }
+clap_complete = "4.5.8"
+clap_complete_nushell = "4.5.4"
+colored = "2.0.4"
+config = { version = "0.15.8", default-features = false, features = ["toml"] }
+crossterm = {version = "0.29.0", features = ["use-dev-tty", "serde"] }
+crypto_secretbox = "0.1.1"
+dashmap = "6.1.0"
+directories = "6.0.0"
+eyre = "0.6"
+fs-err = "3.1"
+fs4 = "0.13.1"
+fuzzy-matcher = "0.3.7"
+hyper-util = "0.1"
+indicatif = "0.18.0"
+interim = { version = "0.2.0", features = ["time_0_3"] }
+itertools = "0.14.0"
+lasso = { version = "0.7", features = ["multi-threaded"] }
+log = "0.4"
+metrics = "0.24"
+metrics-exporter-prometheus = { version = "0.18", default-features = false }
+minspan = "0.1.5"
+norm = { version = "0.1.1", features = ["fzf-v2"] }
+notify = "7"
+prost = "0.14"
+rand = { version = "0.8.5", features = ["std"] }
+ratatui = "0.30.0"
+regex = "1.10.5"
+reqwest = { version = "0.13", features = ["json", "rustls-no-provider", "stream"], default-features = false }
+rmp = { version = "0.8.14" }
+runtime-format = "0.1.3"
+rustix = { version = "1.1.4", features = ["process", "fs"] }
+rustls = { version = "0.23", default-features = false, features = [ "ring", "std", "tls12", ] }
+rusty_paserk = { version = "0.5.0", default-features = false, features = [ "v4", "serde", ] }
+rusty_paseto = { version = "0.8.0", default-features = false }
+semver = "1.0.20"
+serde = { version = "1.0.202", features = ["derive"] }
+serde_json = "1.0.119"
+serde_regex = "1.1.0"
+serde_with = "3.8.1"
+shellexpand = "3"
+sql-builder = "3"
+sqlx = { version = "0.8", features = ["runtime-tokio-rustls", "time", "postgres", "uuid", "sqlite", "regexp"] }
+thiserror = "2"
+time = { version = "0.3.47", features = [ "serde-human-readable", "macros", "local-offset", "macros", "formatting", "parsing"] }
+tokio = { version = "1", features = ["full"] }
+tokio-stream = { version = "0.1.14", features = ["net"] }
+toml_edit = "0.25.4"
+tonic = "0.14"
+tonic-prost = "0.14"
+tower = "0.5"
+tower-http = { version = "0.6", features = ["trace"] }
+tracing = "0.1"
+tracing-appender = "0.2"
+tracing-subscriber = { version = "0.3", features = ["ansi", "fmt", "registry", "env-filter", "json"] }
+typed-builder = "0.18.2"
+unicode-segmentation = "1.11.0"
+unicode-width = "0.2"
+url = "2.5.2"
+uuid = { version = "1.9", features = ["v4", "v7", "serde"] }
+vt100 = "0.16"
+whoami = "2.1.0"
+
+[target.'cfg(target_os = "linux")'.dependencies]
+arboard = { version = "3.4", default-features = false, features = [ "wayland-data-control", ] }
+listenfd = "1.0.1"
+
+[target.'cfg(unix)'.dependencies]
+daemonize = "0.5.0"
+portable-pty = "0.9"
+signal-hook = "0.3"
+
+[dev-dependencies]
+tokio = { version = "1", features = ["full"] }
+
+[build-dependencies]
+protox = "0.9"
+tonic-prost-build = "0.14"
+
+[package.metadata.docs.rs]
+all-features = true
+
+[lints]
+workspace = true
diff --git a/crates/turtle/build.rs b/crates/client/build.rs
index ad4bc3c8..ad4bc3c8 100644
--- a/crates/turtle/build.rs
+++ b/crates/client/build.rs
diff --git a/crates/turtle/src/atuin_client/api_client.rs b/crates/client/src/atuin_client/api_client.rs
index bd5bf59e..bd5bf59e 100644
--- a/crates/turtle/src/atuin_client/api_client.rs
+++ b/crates/client/src/atuin_client/api_client.rs
diff --git a/crates/turtle/src/atuin_client/database.rs b/crates/client/src/atuin_client/database.rs
index a9eb2058..a9eb2058 100644
--- a/crates/turtle/src/atuin_client/database.rs
+++ b/crates/client/src/atuin_client/database.rs
diff --git a/crates/turtle/src/atuin_client/encryption.rs b/crates/client/src/atuin_client/encryption.rs
index f1c921cb..f1c921cb 100644
--- a/crates/turtle/src/atuin_client/encryption.rs
+++ b/crates/client/src/atuin_client/encryption.rs
diff --git a/crates/turtle/src/atuin_client/history.rs b/crates/client/src/atuin_client/history.rs
index c38d8ccc..c38d8ccc 100644
--- a/crates/turtle/src/atuin_client/history.rs
+++ b/crates/client/src/atuin_client/history.rs
diff --git a/crates/turtle/src/atuin_client/history/builder.rs b/crates/client/src/atuin_client/history/builder.rs
index daa4ef49..daa4ef49 100644
--- a/crates/turtle/src/atuin_client/history/builder.rs
+++ b/crates/client/src/atuin_client/history/builder.rs
diff --git a/crates/turtle/src/atuin_client/history/store.rs b/crates/client/src/atuin_client/history/store.rs
index 9c7771cc..9c7771cc 100644
--- a/crates/turtle/src/atuin_client/history/store.rs
+++ b/crates/client/src/atuin_client/history/store.rs
diff --git a/crates/turtle/src/atuin_client/meta.rs b/crates/client/src/atuin_client/meta.rs
index 079c9926..079c9926 100644
--- a/crates/turtle/src/atuin_client/meta.rs
+++ b/crates/client/src/atuin_client/meta.rs
diff --git a/crates/turtle/src/atuin_client/mod.rs b/crates/client/src/atuin_client/mod.rs
index 851dfbdb..851dfbdb 100644
--- a/crates/turtle/src/atuin_client/mod.rs
+++ b/crates/client/src/atuin_client/mod.rs
diff --git a/crates/turtle/src/atuin_client/ordering.rs b/crates/client/src/atuin_client/ordering.rs
index 84001f52..84001f52 100644
--- a/crates/turtle/src/atuin_client/ordering.rs
+++ b/crates/client/src/atuin_client/ordering.rs
diff --git a/crates/turtle/src/atuin_client/record/encryption.rs b/crates/client/src/atuin_client/record/encryption.rs
index d8587cf6..d8587cf6 100644
--- a/crates/turtle/src/atuin_client/record/encryption.rs
+++ b/crates/client/src/atuin_client/record/encryption.rs
diff --git a/crates/turtle/src/atuin_client/record/mod.rs b/crates/client/src/atuin_client/record/mod.rs
index 4e5774ea..4e5774ea 100644
--- a/crates/turtle/src/atuin_client/record/mod.rs
+++ b/crates/client/src/atuin_client/record/mod.rs
diff --git a/crates/turtle/src/atuin_client/record/sqlite_store.rs b/crates/client/src/atuin_client/record/sqlite_store.rs
index 18f5c869..18f5c869 100644
--- a/crates/turtle/src/atuin_client/record/sqlite_store.rs
+++ b/crates/client/src/atuin_client/record/sqlite_store.rs
diff --git a/crates/turtle/src/atuin_client/record/sync.rs b/crates/client/src/atuin_client/record/sync.rs
index da05533c..da05533c 100644
--- a/crates/turtle/src/atuin_client/record/sync.rs
+++ b/crates/client/src/atuin_client/record/sync.rs
diff --git a/crates/turtle/src/atuin_client/secrets.rs b/crates/client/src/atuin_client/secrets.rs
index 74d47ea6..74d47ea6 100644
--- a/crates/turtle/src/atuin_client/secrets.rs
+++ b/crates/client/src/atuin_client/secrets.rs
diff --git a/crates/turtle/src/atuin_client/settings.rs b/crates/client/src/atuin_client/settings.rs
index 9e14c4c8..9e14c4c8 100644
--- a/crates/turtle/src/atuin_client/settings.rs
+++ b/crates/client/src/atuin_client/settings.rs
diff --git a/crates/turtle/src/atuin_client/settings/meta.rs b/crates/client/src/atuin_client/settings/meta.rs
index cc5afcf7..cc5afcf7 100644
--- a/crates/turtle/src/atuin_client/settings/meta.rs
+++ b/crates/client/src/atuin_client/settings/meta.rs
diff --git a/crates/turtle/src/atuin_client/settings/watcher.rs b/crates/client/src/atuin_client/settings/watcher.rs
index 5eec3692..5eec3692 100644
--- a/crates/turtle/src/atuin_client/settings/watcher.rs
+++ b/crates/client/src/atuin_client/settings/watcher.rs
diff --git a/crates/turtle/src/atuin_client/theme.rs b/crates/client/src/atuin_client/theme.rs
index ec0538e9..ec0538e9 100644
--- a/crates/turtle/src/atuin_client/theme.rs
+++ b/crates/client/src/atuin_client/theme.rs
diff --git a/crates/turtle/src/atuin_client/utils.rs b/crates/client/src/atuin_client/utils.rs
index 989f9fc1..989f9fc1 100644
--- a/crates/turtle/src/atuin_client/utils.rs
+++ b/crates/client/src/atuin_client/utils.rs
diff --git a/crates/turtle/src/atuin_common/api.rs b/crates/client/src/atuin_common/api.rs
index 0868943d..0868943d 100644
--- a/crates/turtle/src/atuin_common/api.rs
+++ b/crates/client/src/atuin_common/api.rs
diff --git a/crates/turtle/src/atuin_common/mod.rs b/crates/client/src/atuin_common/mod.rs
index 635c9fc3..635c9fc3 100644
--- a/crates/turtle/src/atuin_common/mod.rs
+++ b/crates/client/src/atuin_common/mod.rs
diff --git a/crates/turtle/src/atuin_common/record.rs b/crates/client/src/atuin_common/record.rs
index f8f9f8a7..f8f9f8a7 100644
--- a/crates/turtle/src/atuin_common/record.rs
+++ b/crates/client/src/atuin_common/record.rs
diff --git a/crates/turtle/src/atuin_common/shell.rs b/crates/client/src/atuin_common/shell.rs
index 880ff00f..880ff00f 100644
--- a/crates/turtle/src/atuin_common/shell.rs
+++ b/crates/client/src/atuin_common/shell.rs
diff --git a/crates/turtle/src/atuin_common/tls.rs b/crates/client/src/atuin_common/tls.rs
index 3736f878..3736f878 100644
--- a/crates/turtle/src/atuin_common/tls.rs
+++ b/crates/client/src/atuin_common/tls.rs
diff --git a/crates/turtle/src/atuin_common/utils.rs b/crates/client/src/atuin_common/utils.rs
index dbe9dfbc..dbe9dfbc 100644
--- a/crates/turtle/src/atuin_common/utils.rs
+++ b/crates/client/src/atuin_common/utils.rs
diff --git a/crates/turtle/src/atuin_history/mod.rs b/crates/client/src/atuin_history/mod.rs
index 41336a14..41336a14 100644
--- a/crates/turtle/src/atuin_history/mod.rs
+++ b/crates/client/src/atuin_history/mod.rs
diff --git a/crates/turtle/src/atuin_history/sort.rs b/crates/client/src/atuin_history/sort.rs
index 3143fa68..3143fa68 100644
--- a/crates/turtle/src/atuin_history/sort.rs
+++ b/crates/client/src/atuin_history/sort.rs
diff --git a/crates/turtle/src/atuin_history/stats.rs b/crates/client/src/atuin_history/stats.rs
index c53dafb2..c53dafb2 100644
--- a/crates/turtle/src/atuin_history/stats.rs
+++ b/crates/client/src/atuin_history/stats.rs
diff --git a/crates/turtle/src/atuin_pty_proxy/capture.rs b/crates/client/src/atuin_pty_proxy/capture.rs
index 55bc1788..55bc1788 100644
--- a/crates/turtle/src/atuin_pty_proxy/capture.rs
+++ b/crates/client/src/atuin_pty_proxy/capture.rs
diff --git a/crates/turtle/src/atuin_pty_proxy/debug.rs b/crates/client/src/atuin_pty_proxy/debug.rs
index c2a1691c..c2a1691c 100644
--- a/crates/turtle/src/atuin_pty_proxy/debug.rs
+++ b/crates/client/src/atuin_pty_proxy/debug.rs
diff --git a/crates/turtle/src/atuin_pty_proxy/mod.rs b/crates/client/src/atuin_pty_proxy/mod.rs
index e1d01c83..e1d01c83 100644
--- a/crates/turtle/src/atuin_pty_proxy/mod.rs
+++ b/crates/client/src/atuin_pty_proxy/mod.rs
diff --git a/crates/turtle/src/atuin_pty_proxy/osc133.rs b/crates/client/src/atuin_pty_proxy/osc133.rs
index f2a796f1..f2a796f1 100644
--- a/crates/turtle/src/atuin_pty_proxy/osc133.rs
+++ b/crates/client/src/atuin_pty_proxy/osc133.rs
diff --git a/crates/turtle/src/atuin_pty_proxy/pty_proxy.rs b/crates/client/src/atuin_pty_proxy/pty_proxy.rs
index ef4b0c37..ef4b0c37 100644
--- a/crates/turtle/src/atuin_pty_proxy/pty_proxy.rs
+++ b/crates/client/src/atuin_pty_proxy/pty_proxy.rs
diff --git a/crates/turtle/src/atuin_pty_proxy/runtime.rs b/crates/client/src/atuin_pty_proxy/runtime.rs
index 69b3a075..69b3a075 100644
--- a/crates/turtle/src/atuin_pty_proxy/runtime.rs
+++ b/crates/client/src/atuin_pty_proxy/runtime.rs
diff --git a/crates/turtle/src/atuin_pty_proxy/screen.rs b/crates/client/src/atuin_pty_proxy/screen.rs
index 58ebd2eb..58ebd2eb 100644
--- a/crates/turtle/src/atuin_pty_proxy/screen.rs
+++ b/crates/client/src/atuin_pty_proxy/screen.rs
diff --git a/crates/turtle/src/command/CONTRIBUTORS b/crates/client/src/command/CONTRIBUTORS
index 1ca4115a..1ca4115a 120000
--- a/crates/turtle/src/command/CONTRIBUTORS
+++ b/crates/client/src/command/CONTRIBUTORS
diff --git a/crates/turtle/src/command/client.rs b/crates/client/src/command/client.rs
index 6c0e70e8..6c0e70e8 100644
--- a/crates/turtle/src/command/client.rs
+++ b/crates/client/src/command/client.rs
diff --git a/crates/turtle/src/command/client/config.rs b/crates/client/src/command/client/config.rs
index 73d1c35e..73d1c35e 100644
--- a/crates/turtle/src/command/client/config.rs
+++ b/crates/client/src/command/client/config.rs
diff --git a/crates/turtle/src/command/client/daemon.rs b/crates/client/src/command/client/daemon.rs
index 39aa1b1e..39aa1b1e 100644
--- a/crates/turtle/src/command/client/daemon.rs
+++ b/crates/client/src/command/client/daemon.rs
diff --git a/crates/turtle/src/command/client/default_config.rs b/crates/client/src/command/client/default_config.rs
index 4b03c909..4b03c909 100644
--- a/crates/turtle/src/command/client/default_config.rs
+++ b/crates/client/src/command/client/default_config.rs
diff --git a/crates/turtle/src/command/client/history.rs b/crates/client/src/command/client/history.rs
index 9f383a08..9f383a08 100644
--- a/crates/turtle/src/command/client/history.rs
+++ b/crates/client/src/command/client/history.rs
diff --git a/crates/turtle/src/command/client/info.rs b/crates/client/src/command/client/info.rs
index 49c92193..49c92193 100644
--- a/crates/turtle/src/command/client/info.rs
+++ b/crates/client/src/command/client/info.rs
diff --git a/crates/turtle/src/command/client/init.rs b/crates/client/src/command/client/init.rs
index 0db9b143..0db9b143 100644
--- a/crates/turtle/src/command/client/init.rs
+++ b/crates/client/src/command/client/init.rs
diff --git a/crates/turtle/src/command/client/init/bash.rs b/crates/client/src/command/client/init/bash.rs
index c16663e2..c16663e2 100644
--- a/crates/turtle/src/command/client/init/bash.rs
+++ b/crates/client/src/command/client/init/bash.rs
diff --git a/crates/turtle/src/command/client/init/fish.rs b/crates/client/src/command/client/init/fish.rs
index 0a992b9c..0a992b9c 100644
--- a/crates/turtle/src/command/client/init/fish.rs
+++ b/crates/client/src/command/client/init/fish.rs
diff --git a/crates/turtle/src/command/client/init/powershell.rs b/crates/client/src/command/client/init/powershell.rs
index 94d89c67..94d89c67 100644
--- a/crates/turtle/src/command/client/init/powershell.rs
+++ b/crates/client/src/command/client/init/powershell.rs
diff --git a/crates/turtle/src/command/client/init/xonsh.rs b/crates/client/src/command/client/init/xonsh.rs
index 25f867f7..25f867f7 100644
--- a/crates/turtle/src/command/client/init/xonsh.rs
+++ b/crates/client/src/command/client/init/xonsh.rs
diff --git a/crates/turtle/src/command/client/init/zsh.rs b/crates/client/src/command/client/init/zsh.rs
index 96a817d0..96a817d0 100644
--- a/crates/turtle/src/command/client/init/zsh.rs
+++ b/crates/client/src/command/client/init/zsh.rs
diff --git a/crates/turtle/src/command/client/search.rs b/crates/client/src/command/client/search.rs
index 359864cb..359864cb 100644
--- a/crates/turtle/src/command/client/search.rs
+++ b/crates/client/src/command/client/search.rs
diff --git a/crates/turtle/src/command/client/search/cursor.rs b/crates/client/src/command/client/search/cursor.rs
index e13e52b3..e13e52b3 100644
--- a/crates/turtle/src/command/client/search/cursor.rs
+++ b/crates/client/src/command/client/search/cursor.rs
diff --git a/crates/turtle/src/command/client/search/duration.rs b/crates/client/src/command/client/search/duration.rs
index 0d70353a..0d70353a 100644
--- a/crates/turtle/src/command/client/search/duration.rs
+++ b/crates/client/src/command/client/search/duration.rs
diff --git a/crates/turtle/src/command/client/search/engines.rs b/crates/client/src/command/client/search/engines.rs
index 9fbff278..9fbff278 100644
--- a/crates/turtle/src/command/client/search/engines.rs
+++ b/crates/client/src/command/client/search/engines.rs
diff --git a/crates/turtle/src/command/client/search/engines/daemon.rs b/crates/client/src/command/client/search/engines/daemon.rs
index ee92ebaf..ee92ebaf 100644
--- a/crates/turtle/src/command/client/search/engines/daemon.rs
+++ b/crates/client/src/command/client/search/engines/daemon.rs
diff --git a/crates/turtle/src/command/client/search/engines/db.rs b/crates/client/src/command/client/search/engines/db.rs
index 0eb86878..0eb86878 100644
--- a/crates/turtle/src/command/client/search/engines/db.rs
+++ b/crates/client/src/command/client/search/engines/db.rs
diff --git a/crates/turtle/src/command/client/search/engines/skim.rs b/crates/client/src/command/client/search/engines/skim.rs
index e090e40d..e090e40d 100644
--- a/crates/turtle/src/command/client/search/engines/skim.rs
+++ b/crates/client/src/command/client/search/engines/skim.rs
diff --git a/crates/turtle/src/command/client/search/history_list.rs b/crates/client/src/command/client/search/history_list.rs
index e46f37b7..e46f37b7 100644
--- a/crates/turtle/src/command/client/search/history_list.rs
+++ b/crates/client/src/command/client/search/history_list.rs
diff --git a/crates/turtle/src/command/client/search/inspector.rs b/crates/client/src/command/client/search/inspector.rs
index 186dcd3a..186dcd3a 100644
--- a/crates/turtle/src/command/client/search/inspector.rs
+++ b/crates/client/src/command/client/search/inspector.rs
diff --git a/crates/turtle/src/command/client/search/interactive.rs b/crates/client/src/command/client/search/interactive.rs
index b8cf53db..b8cf53db 100644
--- a/crates/turtle/src/command/client/search/interactive.rs
+++ b/crates/client/src/command/client/search/interactive.rs
diff --git a/crates/turtle/src/command/client/search/keybindings/actions.rs b/crates/client/src/command/client/search/keybindings/actions.rs
index 2842d618..2842d618 100644
--- a/crates/turtle/src/command/client/search/keybindings/actions.rs
+++ b/crates/client/src/command/client/search/keybindings/actions.rs
diff --git a/crates/turtle/src/command/client/search/keybindings/conditions.rs b/crates/client/src/command/client/search/keybindings/conditions.rs
index fd993f2b..fd993f2b 100644
--- a/crates/turtle/src/command/client/search/keybindings/conditions.rs
+++ b/crates/client/src/command/client/search/keybindings/conditions.rs
diff --git a/crates/turtle/src/command/client/search/keybindings/defaults.rs b/crates/client/src/command/client/search/keybindings/defaults.rs
index 4d00b475..4d00b475 100644
--- a/crates/turtle/src/command/client/search/keybindings/defaults.rs
+++ b/crates/client/src/command/client/search/keybindings/defaults.rs
diff --git a/crates/turtle/src/command/client/search/keybindings/key.rs b/crates/client/src/command/client/search/keybindings/key.rs
index 5e772238..5e772238 100644
--- a/crates/turtle/src/command/client/search/keybindings/key.rs
+++ b/crates/client/src/command/client/search/keybindings/key.rs
diff --git a/crates/turtle/src/command/client/search/keybindings/keymap.rs b/crates/client/src/command/client/search/keybindings/keymap.rs
index 067d9403..067d9403 100644
--- a/crates/turtle/src/command/client/search/keybindings/keymap.rs
+++ b/crates/client/src/command/client/search/keybindings/keymap.rs
diff --git a/crates/turtle/src/command/client/search/keybindings/mod.rs b/crates/client/src/command/client/search/keybindings/mod.rs
index cdca0406..cdca0406 100644
--- a/crates/turtle/src/command/client/search/keybindings/mod.rs
+++ b/crates/client/src/command/client/search/keybindings/mod.rs
diff --git a/crates/turtle/src/command/client/server.rs b/crates/client/src/command/client/server.rs
index 88b12a7a..88b12a7a 100644
--- a/crates/turtle/src/command/client/server.rs
+++ b/crates/client/src/command/client/server.rs
diff --git a/crates/turtle/src/command/client/stats.rs b/crates/client/src/command/client/stats.rs
index 9ea5e283..9ea5e283 100644
--- a/crates/turtle/src/command/client/stats.rs
+++ b/crates/client/src/command/client/stats.rs
diff --git a/crates/turtle/src/command/client/store.rs b/crates/client/src/command/client/store.rs
index bc57488d..bc57488d 100644
--- a/crates/turtle/src/command/client/store.rs
+++ b/crates/client/src/command/client/store.rs
diff --git a/crates/turtle/src/command/client/store/pull.rs b/crates/client/src/command/client/store/pull.rs
index 3a0865be..3a0865be 100644
--- a/crates/turtle/src/command/client/store/pull.rs
+++ b/crates/client/src/command/client/store/pull.rs
diff --git a/crates/turtle/src/command/client/store/purge.rs b/crates/client/src/command/client/store/purge.rs
index a23f1886..a23f1886 100644
--- a/crates/turtle/src/command/client/store/purge.rs
+++ b/crates/client/src/command/client/store/purge.rs
diff --git a/crates/turtle/src/command/client/store/push.rs b/crates/client/src/command/client/store/push.rs
index 9d66b5b2..9d66b5b2 100644
--- a/crates/turtle/src/command/client/store/push.rs
+++ b/crates/client/src/command/client/store/push.rs
diff --git a/crates/turtle/src/command/client/store/rebuild.rs b/crates/client/src/command/client/store/rebuild.rs
index 6be67cd0..6be67cd0 100644
--- a/crates/turtle/src/command/client/store/rebuild.rs
+++ b/crates/client/src/command/client/store/rebuild.rs
diff --git a/crates/turtle/src/command/client/store/rekey.rs b/crates/client/src/command/client/store/rekey.rs
index 2b379327..2b379327 100644
--- a/crates/turtle/src/command/client/store/rekey.rs
+++ b/crates/client/src/command/client/store/rekey.rs
diff --git a/crates/turtle/src/command/client/store/verify.rs b/crates/client/src/command/client/store/verify.rs
index a39227f9..a39227f9 100644
--- a/crates/turtle/src/command/client/store/verify.rs
+++ b/crates/client/src/command/client/store/verify.rs
diff --git a/crates/turtle/src/command/client/sync.rs b/crates/client/src/command/client/sync.rs
index c29a82fc..c29a82fc 100644
--- a/crates/turtle/src/command/client/sync.rs
+++ b/crates/client/src/command/client/sync.rs
diff --git a/crates/turtle/src/command/client/sync/status.rs b/crates/client/src/command/client/sync/status.rs
index caf3b90f..caf3b90f 100644
--- a/crates/turtle/src/command/client/sync/status.rs
+++ b/crates/client/src/command/client/sync/status.rs
diff --git a/crates/turtle/src/command/client/wrapped.rs b/crates/client/src/command/client/wrapped.rs
index 2ce19bf7..2ce19bf7 100644
--- a/crates/turtle/src/command/client/wrapped.rs
+++ b/crates/client/src/command/client/wrapped.rs
diff --git a/crates/turtle/src/command/contributors.rs b/crates/client/src/command/contributors.rs
index b2a41522..b2a41522 100644
--- a/crates/turtle/src/command/contributors.rs
+++ b/crates/client/src/command/contributors.rs
diff --git a/crates/turtle/src/command/gen_completions.rs b/crates/client/src/command/gen_completions.rs
index 9f13bffc..9f13bffc 100644
--- a/crates/turtle/src/command/gen_completions.rs
+++ b/crates/client/src/command/gen_completions.rs
diff --git a/crates/turtle/src/command/mod.rs b/crates/client/src/command/mod.rs
index 9a648254..9a648254 100644
--- a/crates/turtle/src/command/mod.rs
+++ b/crates/client/src/command/mod.rs
diff --git a/crates/client/src/lib.rs b/crates/client/src/lib.rs
new file mode 100644
index 00000000..82bbc78f
--- /dev/null
+++ b/crates/client/src/lib.rs
@@ -0,0 +1,4 @@
+pub fn test() -> String {
+ dbg!("Hi!");
+ String::new()
+}
diff --git a/crates/turtle/src/main.rs b/crates/client/src/main.rs
index 12858140..12858140 100644
--- a/crates/turtle/src/main.rs
+++ b/crates/client/src/main.rs
diff --git a/crates/turtle/src/print_error.rs b/crates/client/src/print_error.rs
index 0a6303dd..0a6303dd 100644
--- a/crates/turtle/src/print_error.rs
+++ b/crates/client/src/print_error.rs
diff --git a/crates/turtle/src/shell/.gitattributes b/crates/client/src/shell/.gitattributes
index fae8897c..fae8897c 100644
--- a/crates/turtle/src/shell/.gitattributes
+++ b/crates/client/src/shell/.gitattributes
diff --git a/crates/turtle/src/shell/atuin.bash b/crates/client/src/shell/atuin.bash
index 703e8fe2..703e8fe2 100644
--- a/crates/turtle/src/shell/atuin.bash
+++ b/crates/client/src/shell/atuin.bash
diff --git a/crates/turtle/src/shell/atuin.fish b/crates/client/src/shell/atuin.fish
index 2b469383..2b469383 100644
--- a/crates/turtle/src/shell/atuin.fish
+++ b/crates/client/src/shell/atuin.fish
diff --git a/crates/turtle/src/shell/atuin.nu b/crates/client/src/shell/atuin.nu
index d37457e4..d37457e4 100644
--- a/crates/turtle/src/shell/atuin.nu
+++ b/crates/client/src/shell/atuin.nu
diff --git a/crates/turtle/src/shell/atuin.ps1 b/crates/client/src/shell/atuin.ps1
index 431ee2c3..431ee2c3 100644
--- a/crates/turtle/src/shell/atuin.ps1
+++ b/crates/client/src/shell/atuin.ps1
diff --git a/crates/turtle/src/shell/atuin.xsh b/crates/client/src/shell/atuin.xsh
index a0283402..a0283402 100644
--- a/crates/turtle/src/shell/atuin.xsh
+++ b/crates/client/src/shell/atuin.xsh
diff --git a/crates/turtle/src/shell/atuin.zsh b/crates/client/src/shell/atuin.zsh
index 7e7fef27..7e7fef27 100644
--- a/crates/turtle/src/shell/atuin.zsh
+++ b/crates/client/src/shell/atuin.zsh
diff --git a/crates/turtle/src/sync.rs b/crates/client/src/sync.rs
index abe1a201..abe1a201 100644
--- a/crates/turtle/src/sync.rs
+++ b/crates/client/src/sync.rs