mcpField
A
Atuin

Atuin

公式
github.com開発ツール32.1katuin今日更新
リポジトリ公式サイト

Atuin について

Atuin はシェル履歴を構造化されたデータベースに保存し、強力な検索とクロスデバイス同期を提供します。各コマンドの実行時刻、作業ディレクトリ、終了コードなどのメタデータを記録し、開発者が過去のコマンドを迅速に検索・再利用できます。

主な機能

  1. 01既存のシェル履歴をインポート・統合する
  2. 02コマンド名、タイムスタンプ、終了ステータスで履歴を検索する
  3. 03複数のマシン間で履歴を同期する
  4. 04コマンド実行のコンテキストとメタデータを自動的にキャプチャする

活用シーン

  1. 01大規模プロジェクトで複雑なビルド・テスト・デプロイコマンドを素早く検索・実行する
  2. 02複数の開発マシン間でコマンド履歴の一貫性を保つ
  3. 03シェル履歴を活用するエージェントワークフローを実現する

インストール

OS またはパッケージマネージャーを選び、コマンドをターミナルで実行します。

$
brew install atuin

インストール後にatuin --versionを実行して確認します。

コマンド例

よく使うコマンドを使う順に並べています。

01
atuin import auto
02
atuin search docker

詳細

モードに応じて変わるテキスト。ライト:「とても明るい!」、ダーク:「とても暗い!」

魔法のようなシェル履歴


README の画像 README の画像 README の画像 README の画像 README の画像 README の画像 README の画像

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 をお送りください!

コントリビューター

README の画像

contrib.rocks で作成しました。

コメント