aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* feat: add Hub authentication for future sync + extra features (#3010)Ellie Huxtable2026-02-12
|
* feat(docs): Add Shell Integration and Interoperability docs (#3163)Michelle Tilley2026-02-11
| | | | | | | | | | | | | | | | | | | | This PR adds a new documentation page called "Shell Integration and Interoperability." It explains how Atuin's shell hooks work, and why they may _not_ work by default in an embedded terminal in another tool. It includes suggestions to ensure the shell is launched in interactive mode, or to use a wrapper script if this isn't possible. It also explains the various mechanisms to use to _exclude_ certain commands, or commands from certain tools, from Atuin's history. Closes #3085 Closes #1545 Closes #2983 Related to: #1942, #3047, #1847 --------- Co-authored-by: Koichi Murase <myoga.murase@gmail.com> Co-authored-by: Ellie Huxtable <ellie@atuin.sh>
* feat: `switch-context` (#3149)Lucas Trzesniewski2026-02-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This PR lets you change the current search context to the one of the currently selected command, which lets you easily see the surrounding commands of its session. It adds the following: - `switch-context` and `clear-context` actions - A `has-context` condition - `CTX:` and `C>` prefixes to show we're in another context The `switch-context` behavior is as follows: - The selected command defines the new context - The filter mode is automatically switched to SESSION - The search input is cleared, which gives you a full overview of the other commands executed in the same session - The command which triggered this mode keeps being selected to get a clear overview - The filter mode can be changed to modes such as DIRECTORY, but not to GLOBAL or SESSION+ as IMO those would be confusing in this mode This lets you easily navigate between modes and commands the way you prefer, for instance by switching the context through selected commands or switching back to the default mode with the same key. This could certainly still be improved (the docs are missing for instance), and if you have any feedback I can change the behavior as you see fit. I can add the docs when you'll approve the new names. Closes #2784 ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing --------- Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com>
* chore: update changelogEllie Huxtable2026-02-11
|
* chore(release): prepare for release 18.12.1 (#3172)Ellie Huxtable2026-02-11
| | | | | | | | | | | | <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
* feat: Add original-input-empty keybind condition (#3171)Michelle Tilley2026-02-11
| | | | | | | | | | | | | | | | This PR adds a keybind condition called `original-input-empty` that is true when the TUI was invoked from an empty prompt line; users can use this to change behavior based on the original prompt's contents; for example: ```toml [keymap.emacs] "esc" = [ { when = "original-input-empty", action = "return-query" }, { action = "return-original" } ] ``` Thanks Hazilo in Discord for the suggestion.
* fix(shell): fix ATUIN_SESSION errors in tmux popup (#3170)Kkoi2026-02-11
| | | | | | | | | | | | | | | | | | | | | This PR fixes: + #3154 + #3164 + #3166 It changes the following: + Pass ATUIN_SESSION to tmux popup + Use `command rm` to bypass user-defined configs + Disable tmux popup by default ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing --------- Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com>
* fix: Server start commands for Docker. (#3160)Rob Lazzurs2026-02-11
| | | | | | | | | | | | | With the new atuin-server binary the startup command for the server is now just start rather than server start. This needs reflected in the docker compose and k8s configs. Closes #3159 ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
* feat: expand keybinding system with vim motions, media keys, and inspector ↵Michelle Tilley2026-02-11
| | | | | | | | | | | | | | | | | improvements (#3161) Addresses the keybinding audit (#3157): - Add missing vim-normal bindings: 0, $, w, b, e, x, dd, D, C - Add new CursorWordEnd action for vim 'e' motion - Add VimChangeToEnd action for vim 'C' motion - Add Media key support (play, pause, stop, volume, etc.) - Refactor inspector keymap to be minimal but respect enter_accept and provide vim-style j/k navigation for vim users - Add $ to special character parsing - Replace eprintln! with tracing::warn! for config errors - Document shifted punctuation keys and media keys To be rebased once #3158 is merged
* fix(tui): enter in vim normal mode, shift-tab keybind (#3158)Michelle Tilley2026-02-11
| | | | | | | | | | | Fixes #3156 Fixes #3085 * `Enter` was not bound in the default vim-normal mode keybinds * `Shift-tab` can be reported as `BackTab`; we convert this at detection time to `shift-tab` * `Insert` key was not handled Verified fixes locally.
* chore(deps): bump debian from bookworm-20260112-slim to ↵dependabot[bot]2026-02-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bookworm-20260202-slim (#3150) Bumps debian from bookworm-20260112-slim to bookworm-20260202-slim. [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=debian&package-manager=docker&previous-version=bookworm-20260112-slim&new-version=bookworm-20260202-slim)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): Update to tiny-bip39 2.0.0 (#3151)Cristian Le2026-02-09
| | | | | | | | | | | | | | | | <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing I don't know why the previous PR https://github.com/atuinsh/atuin/pull/2643 got auto-closed after a rebase, so I am re-creating it.
* chore: update changelogEllie Huxtable2026-02-09
|
* chore(release): prepare for release 18.12.0 (#3152)Ellie Huxtable2026-02-09
| | | | | | | | | | | | <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
* docs: Add IRC contact information to READMEEllie Huxtable2026-02-09
|
* docs: update how to use Docker to self-host (#3148)Marius Nuennerich2026-02-08
| | | | | | | | | | | | | | | | The server command changed with the switch to a separate server binary. While here also update the documented postgres version. <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
* fix(powershell): display search stderr (#3146)Lucas Trzesniewski2026-02-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This shows stderr output from `atuin search -i` in PowerShell: The output looks like this: <img width="628" height="149" alt="image" src="https://github.com/user-attachments/assets/c0a4bc9a-5d57-415f-a5b4-9c497744c6e0" /> Currently reproducible with the following config: ```toml [keymap.emacs] "foo" = "bar" "=" = "bar" ``` I started by using `Start-Process` in the first commit, but then rewrote it entirely as using a `Process` object directly should be more stable (`Start-Process` already [caused issues](https://github.com/atuinsh/atuin/pull/2543#issuecomment-2647555114) in the past). This fixes the PowerShell part of #3134 ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
* fix: remove invalid IF EXISTS from sqlite drop column migration (#3145)Ryan2026-02-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing ## Summary SQLite doesn't support an `IF NOT EXISTS` on `ALTER TABLE` > https://www.sqlite.org/lang_altertable.html ``` atuin | Caused by: atuin | Other(while executing migration 20260127000000: error returned from database: (code: 1) near "exists": syntax error atuin | atuin | Caused by: atuin | 0: error returned from database: (code: 1) near "exists": syntax error atuin | 1: (code: 1) near "exists": syntax error ``` The fix works on my setup Ref: https://github.com/atuinsh/atuin/pull/3108#pullrequestreview-3713606584 Signed-off-by: Sped0n <hi@sped0n.com>
* fix: issue with shift and modifier keys (#3143)Ellie Huxtable2026-02-06
| | | | | | | | | | | | | | resolves #3142 <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
* feat(tui): add clear-to-start/end actions (#3141)依云2026-02-06
| | | | | | | | | | | | | | e.g. bash has these mapped to Ctrl-u/k. <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
* chore: update changelogMichelle Tilley2026-02-05
|
* chore(release): prepare for release 18.12.0-beta.4 (#3139)Michelle Tilley2026-02-05
|
* fix(tui): space and F1-F24 keys not handled properly by new keybind system ↵Michelle Tilley2026-02-05
| | | | | | | | | | (#3138) Fixes two keymap issues introduced in #3127: 1. Space key does nothing - Pressing space in the search input didn't insert a space character 2. F12 not recognized - Function keys (F1-F24) couldn't be used in `[keymap]` config
* chore: update changelogEllie Huxtable2026-02-05
|
* chore(release): prepare for release 18.12.0-beta.3 (#3136)Ellie Huxtable2026-02-05
| | | | | | | | | | | | <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
* fix: tab behaving like enter, eprintln (#3135)Ellie Huxtable2026-02-05
| | | | | | | | | | | | | | | | | | | <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> Resolves #3134 Otherwise, I would like to figure out a nicer way for both logging, and for surfacing user-facing errors from the tui. perhaps similar to our current method of shell communication (`__atuin_accept`, etc), just providing an error for the shell integration to log ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
* chore: update changelogEllie Huxtable2026-02-05
|
* chore(release): prepare for release 18.12.0-beta.2 (#3133)Ellie Huxtable2026-02-05
| | | | | | | | | | | | <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
* Add advanced key binding to docs listMichelle Tilley2026-02-05
|
* feat: Add new custom keybinding system for search TUI (#3127)Michelle Tilley2026-02-05
|
* feat(dotfiles): add sort and filter options to alias/var list (#3131)Ethan2026-02-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | groundwork for #2155. These functions can be reused when building the interactive TUI. Adds `--sort-by`, `--reverse`, `--name`, and `--value` flags to `atuin dotfiles alias list` and `atuin dotfiles var list`. Also adds `--exports-only` and `--shell-only` for vars. happy to expand (or reduce?) on this if needed. <details> <summary>**Demo/Examples:**</summary> `$atuin dotfiles alias list --reverse` ```bash vim=nvim py=python3 ll=ls -la k=kubectl gs=git status gp=git push gd=git diff gc=git commit dc=docker-compose d=docker ``` `$atuin dotfiles alias list --sort-by value` ```bash d=docker dc=docker-compose gc=git commit gd=git diff gp=git push gs=git status k=kubectl ll=ls -la vim=nvim py=python3 ``` `$atuin dotfiles alias list -n g` ```bash gc=git commit gd=git diff gp=git push gs=git status ``` `$atuin dotfiles var list --exports-only` ```bash export EDITOR=vim export LANG=en_US.UTF-8 export PAGER=less export RUST_BACKTRACE=1 ``` </details> ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
* feat: replace several files with a sqlite db (#3128)Ellie Huxtable2026-02-04
| | | | | | | | | | | | | | | | | | | | | | | These files have been known to have corruption issues. SQLite will perform better across filesystems for reads/writes across threads, and will lock as expected. I've also put the session file in there, though I'm 50/50 on it - I'll be replacing it with keyring storage asap anyway. The key file is _not_ included. It should ~never be changed, and should be easy for the user to secure + manage themselves In the future, instead of creating more files, we can just use this as a kv store Resolves https://github.com/atuinsh/atuin/issues/2336, resolves https://github.com/atuinsh/atuin/issues/1650 ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
* feat: Add a parameter to the sync to specify the download/upload page (#2408)Matthias Bilger2026-02-03
| | | | | | | | | | | | | | This adds a parameter to change the upload/download page size, this could help if one gets a '413' in a selfhosted scenario. ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing --------- Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com>
* docs: add history deletion guide (#3130)Ellie Huxtable2026-02-03
| | | | | | | | | | | | <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
* fix(search): allow hyphen-prefixed query args like `---` (#3129)Ellie Huxtable2026-02-03
| | | | | | | | | Resolves #3028 ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
* chore: update agents.md (#3126)Ellie Huxtable2026-02-03
| | | | | | | | | | | | <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
* fix: use directories crate for home dir resolution (#3125)Ellie Huxtable2026-02-03
| | | | | | | | | | | | | | | | | | | | | Previously, home_dir() read $HOME directly and panicked if it wasn't set. This could happen in environments like `nix develop -i` which strip the environment. The directories crate (already a dependency) falls back to getpwuid_r when $HOME is not set, resolving the home directory from /etc/passwd. Fixes #3123 <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
* fix: halt sync loop if server returns an empty page (#3122)Ellie Huxtable2026-02-02
| | | | | | | | | | | | | We had an issue where the server was returning an empty page, when it should not, and causing the client to keep looping While such bugs should not happen, putting the client into a loop does not help ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
* docs: update the `[keys]` docs (#3114)Lucas Trzesniewski2026-02-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is related to: - #3090 - #1906 --- ## No longer relevant: ~I often just hold the backspace key to clear the query line in Atuin, and the change in #3090 makes it no longer possible: it accepts the current history entry instead.~ 🤯 ~It may be a muscle memory thing, but it also feels wrong to me for the left key to accept the current entry. I'd prefer for it to do nothing when the cursor is at the start of the line (I've set `exit_past_line_start = false` in my config).~ ~This PR makes the new behavior configurable: it adds an `accept_past_empty_line` setting (naming is *hard*, feel free to find a better name) which lets you disable it. It also updates the `[keys]` docs.~ BTW wouldn't setting the `accept_past_line_start` and `accept_with_backspace` settings to `true` (maybe by default) have the same effect as what #3090 introduced? ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
* docs(CONTRIBUTING): update links (#3117)Zhizhen He2026-02-02
| | | | | | | | | | | | | <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> Update the form link. ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
* fix: larger exit column width on Windows (#3119)Lucas Trzesniewski2026-02-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The default width of the `exit` column is 3, which matches the 0-255 values on Linux. However, on Windows it is a 32-bit integer, and can be anything from -2147483648 to 2147483647. Popular tools such as `winget` apparently make use of that. Here's an example with `columns = ["exit", "time", "duration", "directory", "command"]`: <img width="647" height="416" alt="image" src="https://github.com/user-attachments/assets/d73b0487-3c77-4049-8487-01b2aab29a44" /> This PR changes the default column width to 11 on Windows to match these values. The result is: <img width="601" height="412" alt="image" src="https://github.com/user-attachments/assets/b4b95f40-f223-400d-83c4-74d71e070b3e" /> ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
* fix(powershell): preserve `$LASTEXITCODE` (#3120)Lucas Trzesniewski2026-02-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `$LASTEXITCODE` is an [automatic variable](https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_automatic_variables?view=powershell-7.5#lastexitcode) in PowerShell which holds the exit code of the last *native* program which has run. It's a close equivalent to `$?` in bash (PowerShell also has [its own `$?` variable](https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_automatic_variables?view=powershell-7.5#section-1), but it's a boolean). Atuin is a native program, and the `PSConsoleHostReadLine` function calls `atuin history start`, which resets this variable to 0 (or to something else if it fails). This PR resets this variable to its previous value, as it is that one which the user will expect. Before: <img width="453" height="225" alt="image" src="https://github.com/user-attachments/assets/5fc781d3-dbba-4737-b2ec-7ba73739d006" /> After: <img width="460" height="212" alt="image" src="https://github.com/user-attachments/assets/a2db9bca-343c-48fc-ab45-167e0dd6f7f9" /> Default behavior (without a profile file or Atuin): <img width="351" height="147" alt="image" src="https://github.com/user-attachments/assets/47d6aa28-1ea9-4e55-9879-98359ad3fbcf" /> ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
* chore(deps): update whoami dependency to v2 (#3118)Ben Beasley2026-01-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> In the [2.0.0](https://github.com/ardaku/whoami/releases/tag/v2.0.0) series, `whoami` removed all infallible function variants, and removed the `fallible` module, moving those functions to the root module. Therefore, I replaced `whoami::fallible::hostname` with `whoami::hostname` (the same function with the same signature, just moved to the root module). For `whoami::username`, the infallible function that `atuin` was using before is gone, and we must add error handling. I chose to fall back to the string `"unknown-user"` if getting the username fails, just as `"unknown-host"` is already the fallback when getting the hostname fails. This seemed reasonable to me, but it’s worth double-checking if there could be any unintended consequences, especially if `unknown-user` happens to be a real, valid username on the system. The alternatives I can see would be to panic on failure or to amend the signature of `get_username()` and all of its call sites with some kind of more graceful error handling (what?). ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
* docs(README): update links (#3116)Zhizhen He2026-01-30
|
* Revert "feat: left arrow/backspace on empty to start edit" (#3115)Ellie Huxtable2026-01-29
| | | | | | | | | | Reverts atuinsh/atuin#3090 Can be achieved by setting ``` accept_past_line_start = true accept_with_backspace = true ```
* chore: update changelogEllie Huxtable2026-01-28
|
* chore(release): prepare for release 18.12.0-beta.1 (#3113)Ellie Huxtable2026-01-28
| | | | | | | | | | | | <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
* feat: move atuin-server to its own binary (#3112)Ellie Huxtable2026-01-28
| | | | | | | | | | | | | | | | | | | | | | A combined binary was an early dev decision, when I thought most users would be self hosting. It is now clear that in actual fact, most users do not self host. So let's avoid forcing every user to have a copy of the server literally linked in, and let's stop building server deps over and over. The deployment for this shouldn't change. `dist` will build a binary for this automatically, and will also add it to the installer. The latter is perhaps something we should explore changing too! <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
* feat: add option to use tmux display-popup (#3058)Kkoi2026-01-28
| | | | | | | | | | | | | | | | | | | | | | | | This is a "continuation" of #1177 - which was a draft that used FIFOs (named pipes) to get output from the popup, however this causes popup not being closed properly, so in this PR I use tmpfile to store the result and read after popup closes. @ellie could you review this PR please? P.S. Thank you @immae for sharing your idea! ## Feature + Option to use tmux popup window in `config.toml` + Customize window width/height in `config.toml` + Tmux display-popup for `zsh, bash, fish` ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing --------- Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
* fix: new session on shlvl change (#3111)Ellie Huxtable2026-01-27
| | | | | | | | | eg, the user uses tmux, runs zsh again as a nested session, etc ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing