Atuin について
Atuin はシェル履歴を構造化されたデータベースに保存し、強力な検索とクロスデバイス同期を提供します。各コマンドの実行時刻、作業ディレクトリ、終了コードなどのメタデータを記録し、開発者が過去のコマンドを迅速に検索・再利用できます。
主な機能
- 01既存のシェル履歴をインポート・統合する
- 02コマンド名、タイムスタンプ、終了ステータスで履歴を検索する
- 03複数のマシン間で履歴を同期する
- 04コマンド実行のコンテキストとメタデータを自動的にキャプチャする
活用シーン
- 01大規模プロジェクトで複雑なビルド・テスト・デプロイコマンドを素早く検索・実行する
- 02複数の開発マシン間でコマンド履歴の一貫性を保つ
- 03シェル履歴を活用するエージェントワークフローを実現する
インストール
OS またはパッケージマネージャーを選び、コマンドをターミナルで実行します。
インストール後にatuin --versionを実行して確認します。
コマンド例
よく使うコマンドを使う順に並べています。
詳細
魔法のようなシェル履歴
Atuin は既存のシェル履歴を SQLite データベースに置き換え、コマンドの追加コンテキストも記録します。また、Atuin サーバーを介して、履歴をマシン間で任意に_完全に暗号化_して同期できます。
終了コード、所要時間、時刻、コマンドを表示
検索 UI のほか、次のようなこともできます。
# search for all successful `make` commands, recorded after 3pm yesterday
atuin search --exit 0 --after "yesterday 3pm" make
私がホストするサーバーを使うことも、自分でホストすることもできます!あるいは、同期をまったく使わないこともできます。履歴の同期はすべて暗号化されるため、たとえ私が望んだとしても、あなたのデータにアクセスすることはできません。そして、本当に望んでいません。
機能
ctrl-rとup(設定可能)を、全画面の履歴検索 UI に割り当てます- シェル履歴を sqlite データベースに保存します
- シェル履歴を暗号化してバックアップおよび同期します
- ターミナル、セッション、マシンをまたいで同じ履歴を使用できます
- 終了コード、cwd、ホスト名、セッション、コマンドの所要時間などを記録します
- 「最もよく使うコマンド」などの統計を計算します
- 古い履歴ファイルは置き換えられません
- Alt-<num> で以前の項目にすばやくジャンプできます
- ctrl-r でフィルターモードを切り替え、現在のセッション、ディレクトリ、または全体の履歴を検索できます
- Enter キーでコマンドを実行し、Tab キーで編集します
ドキュメント
対応プラットフォーム
Atuin は zsh、bash、fish、nushell、xonsh、PowerShell に対応しています。全体の対応状況と各ティアの意味については、対応プラットフォームをご覧ください。
コミュニティ
フォーラム
Atuin にはコミュニティフォーラムがあります。ヘルプやサポートが必要な場合は、こちらで質問してください:https://forum.atuin.sh/
IRC
libera.chat の #atuin でもご利用いただけます。
Discord
Atuin にはコミュニティ Discord もあります。こちらから参加できます。
クイックスタート
この手順で Atuin Cloud 同期サーバーに登録します。すべてエンドツーエンドで暗号化されるため、秘密情報は安全です!
オフライン設定、セルフホストサーバーなどについては、ドキュメントをご覧ください。
curl --proto '=https' --tlsv1.2 -LsSf https://setup.atuin.sh | sh
atuin register -u <USERNAME> -e <EMAIL>
atuin import auto
atuin sync
その後、シェルを再起動してください!
メモ
Bash ユーザー向け:上記の手順では、必要なフックのために
bash-preexecを設定しますが、bash-preexecには制限があります。詳細については、シェルプラグインのドキュメントのBashのセクションをご覧ください。
関連プロジェクト
ほかにもあれば、PR をお送りください!
コントリビューター
contrib.rocks で作成しました。