Files
dotfiles/dot_local/bin/executable_atuin-pick.py
T
Prad Nukala 42d17e825e chs: re-add drifted files
dot_agents/dot_skill-lock.json
2026-08-14 13:53:55 -04:00

28 lines
901 B
Python
Executable File

#!/usr/bin/env python3
"""atuin-pick: atuin history picker for a kitty split (ctrl+shift+p).
atuin search -i draws its TUI on the tty and prints the selected command
to stdout (Esc prints nothing). Filter to history from the current
directory. Run the selection with rc loaded so aliases and functions
resolve, then drop to an interactive shell.
"""
import os
import subprocess
import sys
# kitty launches this outside a shell, so atuin's init never ran.
if "ATUIN_SESSION" not in os.environ:
os.environ["ATUIN_SESSION"] = subprocess.run(
["atuin", "uuid"], stdout=subprocess.PIPE, text=True
).stdout.strip()
sel = subprocess.run(
["atuin", "search", "-i", "--filter-mode", "directory"],
stdout=subprocess.PIPE,
text=True,
).stdout.strip()
if sel:
print(f"\u276f {sel}", file=sys.stderr)
subprocess.run(["zsh", "-ic", "--", sel])
os.execvp("zsh", ["zsh", "-i"])