aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichelle Tilley <michelle@michelletilley.net>2026-03-19 15:30:08 -0700
committerGitHub <noreply@github.com>2026-03-19 22:30:08 +0000
commit5dfc6cdd50cec72329e17cb973577beb3c0cf353 (patch)
tree0b865fc7bb11c1b180f12a2b342a83376244315c
parentfix: remove per-event mouse capture toggling that leaked ANSI to stdout (#3299) (diff)
downloadatuin-5dfc6cdd50cec72329e17cb973577beb3c0cf353.zip
fix: Clarify what data is sent when using Atuin AI during setup (only OS and shell) (#3290)
Clarifies during `atuin setup` that Atuin AI does not send any shell history to the AI provider.
-rw-r--r--crates/atuin/src/command/client/setup.rs14
1 files changed, 12 insertions, 2 deletions
diff --git a/crates/atuin/src/command/client/setup.rs b/crates/atuin/src/command/client/setup.rs
index acdf0cad..8de73d62 100644
--- a/crates/atuin/src/command/client/setup.rs
+++ b/crates/atuin/src/command/client/setup.rs
@@ -9,11 +9,15 @@ pub async fn run(_settings: &Settings) -> Result<()> {
let enable_ai = prompt(
"Atuin AI",
"This will enable command generation and other AI features via the question mark key",
+ Some(
+ "By default, Atuin AI only has access to the name and version of your operating system and shell - your shell history is not sent to the AI.",
+ ),
)?;
let enable_daemon = prompt(
"Atuin Daemon",
"This will enable improved search and history sync using a persistent background process",
+ None,
)?;
let config_file = Settings::get_config_path()?;
@@ -56,12 +60,18 @@ pub async fn run(_settings: &Settings) -> Result<()> {
Ok(())
}
-pub fn prompt(feature: &str, description: &str) -> Result<bool> {
+pub fn prompt(feature: &str, description: &str, note: Option<&str>) -> Result<bool> {
println!(
"> Enable {feature}?",
feature = feature.bold().bright_blue()
);
- print!(" {description} {q} ", q = "[Y/n]".bold());
+ if let Some(note) = note {
+ println!(" {description}");
+ print!(" {note} {q} ", q = "[Y/n]".bold());
+ } else {
+ print!(" {description} {q} ", q = "[Y/n]".bold());
+ }
+
io::stdout().flush().ok();
let mut input = String::new();