ツールにこそUXを!fishで実現する“気持ちいいCLI体験”

中山 大悟さん
中山 大悟 Nakayama Daigo フロントエンドエンジニア

2025.7.10 (更新日 2025.7.10)

ツールにこそUXを!fishで実現する“気持ちいいCLI体験”

こんにちは、PIVOTでプロダクト開発に携わっているエンジニアの中山です。

 

私は主にWEBサービスの開発に関わることが多く、プロダクトのUX/UIも含めた品質にこだわって開発を行っているのですが、それと同じくらいこだわっているのが、自分たちが使う「開発環境」そのものの使い心地です。

私はけっこう「おっちょこちょい」なタイプで、気を抜くとついコマンドを間違えたり、違う環境で作業してしまったりなんてこともあります。

でも、それを「性格だから仕方ない」で済ませずに、ミスが起きにくく、操作に迷わないツール環境を作ることこそが、チームとしてのパフォーマンスを上げる鍵だと感じています。

 

今回ご紹介するのは、そんな背景から日々活用しているfishというシェル(コマンドライン用のツール) について。

CLI(コマンドラインインターフェース) と聞くと、「難しそう」「黒い画面で何してるの?」と思われるかもしれませんが、実は使い心地を整えることで、ミスも減って仕事が早くなる“超実用的な道具” なんです。

私たち開発チームがどんな工夫をしているかを通じて、「UXはプロダクトだけでなく、自分たちの働く環境にも必要だ」という視点をお届けできたらと思います。

UXが積み上げる価値の構造
この記事を書いた人
  • profile avatar

    中山 大悟 Nakayama Daigo

    フロントエンドエンジニア

    小学生向けデジタルドリルや自動車関連のシステム開発に携わり、特にJavaScriptを用いたフロントエンド開発が得意。提案活動など業務の幅を広げるためバックエンドの知識習得にも力を入れている。
    几帳面さと自分なりの信念を大切にし、最近は年齢に負けない体づくりに向け日々トレーニングを欠かさない。

もくじ

なぜCLIにもUXが必要なのか?

「UX(ユーザー体験)」という言葉を聞くと、多くの人はWEBサービスやアプリの操作性、デザイン性を思い浮かべるかもしれません。でも実は、UXは自分たちが使う“道具”や“作業環境”にも深く関わるものです。特に開発現場で日常的に使われるコマンドライン(CLI) は、その代表的なツールと言えます。

 

CLIは、GUIに比べて柔軟で強力な操作が可能です。サーバの構築、アプリのデプロイ、ログの調査など、重要な業務の多くがCLI上で行われています。しかし同時に、「コマンドが覚えづらい」「間違えると怖い」「何が起きているのかわかりにくい」といった声も多く聞かれます。

これらはすべて、“UXが整っていない”ことで起きる典型的なストレスです。

私たちは、日々の業務の中で使うCLIだからこそ、UXの向上が大きな価値を持つと考えています。

 

たとえば、入力補完やエラーの予防、分かりやすい表示などが整っていれば、操作にかかる時間や集中力を削減でき、ヒューマンエラーも大幅に減らせます。

CLIにUXを持ち込むことは、単なる「便利」にとどまらず、業務の安全性と生産性を支える土台になるのです。

CLIにもUXが必要な理由

fishとは?その特徴とメリット

CLIの中でも人気の高いfish(Friendly Interactive SHell)は、その名の通り「ユーザーフレンドリー」を追求したコマンドラインシェルです。bashやzshといった従来のシェルと同様に使える一方で、初期状態から高いユーザビリティが実現されているのが特徴です。

 

たとえば、fishには以下のような機能が標準で搭載されています。

自動補完機能

過去のコマンド履歴やmanページ(※)を元に、タイピング中に適切な補完候補がグレーで表示されます。これにより、手元の記憶に頼らずとも高速かつ正確に操作できます。

※ UNIXおよびUnix系オペレーティングシステムの man システムのコンテンツであり、電子化されたドキュメントのこと。
fishの自動補完機能

他にも tab を押すと全ての補完候補から選択することもできます。

fishの自動補完機能

ctrl + r を押せば、コマンド履歴の一覧が表示され、そこから選択できるほか絞り込みも行えます。

fishの自動補完機能

構文ハイライト

コマンドや引数の正誤をリアルタイムに色で示してくれるため、タイプミスや構文エラーにすぐ気づけます。

fishの構文ハイライト

で閉じるのを忘れているのが、赤色でハイライトされ視覚的にわかる。

fishの構文ハイライト

洗練されたデフォルト設定

fishは初期設定の状態でも非常に見やすく、使いやすいプロンプトやカラー設計が施されており、設定ファイルに手を加えなくても快適に使い始めることができます。

WEBベースの設定ツール

設定ファイルを手書きで編集するのではなく、fish_config コマンドを実行することでブラウザベースのGUIツールから設定変更が可能です。

fish_WEBベースの設定ツール

こうした特長により、fishは初心者にもやさしく、上級者にも効率をもたらすツールとして多くの開発者に支持されています。

特に私がfishに注目しているのは、その 「使っていて気持ちいい」体験 が、まさにUXに対する設計思想から生まれていると感じるからです。

日々の作業でストレスを減らし、ミスを防ぎ、自然と効率が上がる。そんなCLI体験を、fishは実現してくれています。

fishを使って実現する“気持ちいいCLI体験”

私がfishを使い続けている最大の理由は、ただ「便利だから」ではありません。操作していて気持ちいい、ストレスが少ない、自然と使いたくなる──そんなCLI体験が得られるからです。ここでは、実際に私が業務の中で取り入れているfishのカスタマイズや工夫をご紹介します。

1. よく使うコマンドの補完&alias設定

たとえば、デプロイ用の長いコマンドや複雑なスクリプト実行など、日常的に使うコマンドは alias(別名登録)や function で簡略化しています。

fishではこれが非常にシンプルに行える上、登録したコマンドも補完対象になるため、思い出す手間すら省けます。

上記のように登録すれば、ターミナルで「dep」と打つだけで補完候補が表示され、サッとデプロイ作業に入れます。

2. プロンプトに「情報」と「美しさ」を

fishではプロンプト(コマンド入力待ちの表示)も自由にカスタマイズできます。

特に私が気に入っているのがGitの状態を表示するカスタマイズです。「現在のブランチ」や「ファイル変更の状況」が視覚的にわかりやすくなります。

 

これは大きなプロジェクトで特に有効であり、「似た名前の誤ったブランチへの切り替え」や「誤ったファイル操作」を防いでくれます。
私のようにおっちょこちょいなエンジニアにはありがたい機能です。

 プロンプトに「情報」と「美しさ」を

他にも以下のようなカスタマイズを行うことができます。

  • 仮想環境の有無
  • 実行結果のステータスを表示(✅成功/❌失敗)

結果として、一目で状況が把握できる“ダッシュボード的CLI” になり、目線移動も減ってスムーズに作業が進みます。

3. ヒューマンエラーを防ぐ仕掛け

たとえば、重要な操作(rm -rf など)を行う前に一度確認を挟むような function を定義したり、誤操作防止のための「保険」をスクリプトに組み込んだりといった工夫もしています。

これは「気持ちよさ」とは少し違うかもしれませんが、“安心して使えるCLI”という意味でのUXには欠かせない要素です。

CLIも「快適に使えるツール」になる

こうした細かな工夫を通じて、fishによるCLI環境はただの作業場から、“思考を妨げないクリエイティブな空間”へと変わっていきます。

私たちの中では、GUIとCLIはもはや対立するものではなく、どちらもUXを整えるべき「道具」 として並んでいるのです。

ツールを整えることは文化を整えること

UX改善と聞くと、つい「デザインを良くすること」と思いがちですが、私たちが目指しているのは “成果につながる体験の設計” です。

ツールのUXが良くなることで、作業が早くなり、ミスが減り、確認コストが減り、結果としてチーム全体の生産性と安心感が上がります。

つまり、良いUXは「現場の気持ちよさ」にとどまらず、チームのアウトプットに直結する戦略的な投資でもあると私たちは考えています。

これはエンジニアだけの話ではなく、プロジェクトマネージャーや企画担当の方々にもぜひ知っていただきたい視点です。

fishをはじめとしたCLIのカスタマイズは、単に「便利ツールを使っている」という話ではありません。

 

私たちが大切にしているのは、自分たちが使う道具に対しても、プロダクトと同じようにUXの視点を持ち込む姿勢です。

日々の業務で使うCLIは、仕事の“作業場”そのものです。

その作業場が使いにくければ、ストレスがたまり、ミスも起きやすくなります。逆に、直感的で使いやすく、見やすい環境が整っていれば、気持ちも前向きになり、集中力も高まります。

開発環境においても、UXを大切にすることが、良いプロダクトや良いチームを育てる土壌になると私たちは考えています。

fishによって実現する“気持ちいいCLI体験”は、その象徴の一つです。

CLIという一見とっつきにくいツールにも、UXの視点を持ち込み、自分たちが本当に気持ちよく使える環境を整えていく──

これは私たちの開発文化そのものでもあります。

ツールのUXデザイン

UXはツールにも宿る

コマンドラインは地味で、不親切で、難しいもの。そんな印象を持たれがちです。

でも実は、UXの視点から工夫すれば、“使っていて気持ちいい”ツールに生まれ変わるということを、fishは教えてくれます。

 

私たちは、プロダクトだけでなく、自分たちが働く環境そのもののUXにもこだわりを持って開発に取り組んでいます。

小さな改善が、大きな快適さとミスの防止を生み出す。

fishによるCLIカスタマイズは、その取り組みの一つにすぎません。

これからも私たちは、「使っていて気持ちいい」をあらゆる場面に宿す開発チームでありたいと考えています。

Next Column
Columnトップへ戻る

「真ん中に『人』がいる
デジタルサービス」をつくりませんか。

お仕事のご相談やお見積もりのご依頼、具体的なご相談は、こちらからお問い合わせください。

でも何から相談して良いかわからない...

無料

よろず相談窓口

「こんなことでも依頼できる?」
 ふわっとした質問・相談大歓迎

予約はこちら 予約ページより、ご都合の良い時間を選んでご予約いただけます。

資料ダウンロード

費用・制作期間など、PIVOTの各サービスの紹介資料を無料でご参照いただけます。