2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

2025年に出会った開発ワークフローを変えた3つのツール

2
Last updated at Posted at 2025-12-11

みなさまこんにちは!エアークローゼットエアークローゼットでエンジニアをしているTada🎉です。

この記事はエアークローゼット Advent Calendar 2025 の11日目の記事です。


TL;DR

  • mise: nodenv/pyenv/direnv を1つに統合。Rust製で爆速
  • mcphub: 複数のMCP Serverを1エンドポイントで管理。Web UIで監視も楽
  • claudecode.nvim: NeovimでもClaude Codeの公式拡張と同等の体験が可能に

はじめに

開発ワークフローを改善するのが好きです。日々の作業をもっと効率的に、もっと快適にできないか、よく考えています。

今年特に「これは手放せない」と感じた3つのツールを紹介します。どれも日々の開発ワークフローを大きく変えてくれました。

振り返ってみると、この3つには共通するテーマがあります。それは「統合」です。バラバラだったものを1つにまとめ、開発者体験を向上させる。そんなツールたちです。


1. mise - 「また 〇〇env か...」からの解放

GitHub: https://github.com/jdx/mise

なぜ mise に出会ったか

皆さんは、言語のバージョン管理をどうしていますか?

これまで、こんな状況でした:

  • Node.js → nodenv
  • Python → pyenv
  • Ruby → rbenv
  • Go → goenv

言語が増えるたびに、新しい「〇〇env」を覚える必要がありました。それぞれの設定ファイル(.node-version.python-version.ruby-version...)がプロジェクトのルートに散乱。新しいPCをセットアップするたびに「えーと、まず nodenv をインストールして...」と同じ作業の繰り返し。

正直、うんざりしていました。

mise との出会い

ある日、Hacker Newsで「asdf alternative」というキーワードで mise を見つけました。asdf は使ったことがありましたが、プラグインのインストールが面倒だったり、動作が遅かったりして、結局 nodenv に戻っていました。

mise は違いました。Rust製で圧倒的に速い。そしてプラグインなしで主要な言語をサポートしています。

実際の使い方

インストールは1行:

curl https://mise.run | sh

使い方もシンプル:

# Node.js 20をインストールして使用
mise use node@20

# 現在のディレクトリでPython 3.12を使用
mise use python@3.12

# グローバルにGoをインストール
mise use -g go@1.21

しかし、mise の真価は mise.toml にあります。このファイル1つで、プロジェクトに必要なすべてを定義できます:

[tools]
node = "20"
python = "3.12"
terraform = "1.6"

[env]
DATABASE_URL = "postgres://localhost/mydb"
RAILS_ENV = "development"

[tasks]
dev = "npm run dev"
test = "npm test"
lint = "npm run lint && python -m flake8"
setup = ["mise install", "npm install", "pip install -r requirements.txt"]

これで mise run dev と打てば開発サーバーが起動。mise run setup で新しいメンバーの環境構築も一発です。

direnv よ、さようなら

以前は環境変数の管理に direnv を使っていました。.envrc ファイルを作って、direnv allow して...。

mise は環境変数管理も内蔵しています。mise.toml[env] セクションに書くだけ。別のツールを入れる必要がなくなりました。

シェルの起動も軽くなりました。以前は nodenv + pyenv + direnv がシェル起動時にロードされていて、体感できるほどの遅延がありました。mise に統一してからは、その遅延がほぼゼロに。


2. mcphub - MCP Server 管理の救世主

GitHub: https://github.com/samanhappy/mcphub

MCP Server が増えすぎた問題

Claude Code を使い始めてから、MCP の便利さにハマりました。「ESA で〇〇について調べて」「Backlog のこのチケットの詳細を見せて」と言うだけで、AI が情報を取ってきてくれる。

調子に乗っていろんな MCP Server を追加していった結果、設定ファイルがこんなことに:

{
  "mcpServers": {
    "esa": { "command": "...", "args": [...] },
    "backlog": { "command": "...", "args": [...] },
    "postgres": { "command": "...", "args": [...] },
    "memory": { "command": "...", "args": [...] },
    "fetch": { "command": "...", "args": [...] },
    "github": { "command": "...", "args": [...] }
    // ... まだまだ続く
  }
}

どの Server にどんなツールがあるのか把握しきれない。新しい Server を追加するたびに JSON を手動編集。Server が落ちても気づかない。カオスでした。

mcphub による統合

mcphub は、複数の MCP Server を1つのエンドポイントで管理できるプラットフォームです。

主な特徴:

  1. Web UI - ブラウザで全 Server を一覧・管理
  2. 1エンドポイント - Claude からは1つの Server に見える
  3. Smart Routing - AI が最適なツールを自動選択
  4. Hot-Swappable - Server の追加・削除が再起動不要
  5. ヘルスチェック - Server の状態を常に監視

セットアップ後の設定はシンプルになりました:

{
  "mcpServers": {
    "mcphub": {
      "url": "http://localhost:3000/sse"
    }
  }
}

これだけで、mcphub 経由で全ての MCP Server にアクセスできます。

実際の運用

Web UI で Server の状態が一目でわかるのが安心です。「あれ、ESA の検索が動かない」と思ったら、UI を見れば Server が落ちているかどうかすぐわかります。

また、Smart Routing 機能が便利です。「ドキュメントを検索して」と言うと、ESA Server を自動で選んでくれます。どの Server にどんなツールがあるか、いちいち覚えなくて良い。

チームで共有の mcphub インスタンスを立てれば、MCP Server の設定を個人ごとに管理する必要もなくなります。


3. claudecode.nvim - Neovim ユーザーの福音

GitHub: https://github.com/coder/claudecode.nvim

Neovim ユーザーの悩み

Neovim に慣れてしまって、もう VSCode には戻れません。

しかし、Claude Code が登場したとき、少し羨ましく思いました。公式の IDE 拡張は VSCode と JetBrains 向けのみ。Neovim ユーザーは蚊帳の外でした。

もちろん、ターミナルで Claude Code CLI を使うことはできます。でも、エディタとの連携がありません:

  • 今開いているファイルを Claude に認識させたい → 手動でパスを入力
  • 選択したコードについて質問したい → コピペ
  • Claude が提案したコードを適用したい → またコピペ

正直、面倒でした。

claudecode.nvim との出会い

GitHub で検索していたら、coder 社が開発した claudecode.nvim を発見。「100% Protocol Compatible — Same WebSocket MCP implementation as official extensions」という説明に惹かれました。

公式拡張と同じプロトコルを実装している。つまり、VSCode ユーザーと同じ体験ができるということです。

普段のワークフロー

tmux で画面を左右に分割し、左に Neovim、右に Claude CLI を配置しています:

┌─────────────────────┬─────────────────────┐
│                     │                     │
│      Neovim         │    Claude CLI       │
│                     │                     │
│  - Code editing     │  - Code questions   │
│  - File operations  │  - Refactor suggest │
│  - LSP/completion   │  - Bug investigation│
│                     │  - Design consult   │
│                     │                     │
└─────────────────────┴─────────────────────┘

Claude CLI で /ide と入力すると、Neovim が接続されます。これで準備完了。

実際の開発フロー

claudecode.nvim の真価は、シームレスなコンテキスト共有にあります。

選択したコードを自動認識

Neovim でコードを Visual 選択すると、Claude が自動的にそのコードを認識します。わざわざコピペする必要がありません。「この関数をリファクタリングして」と言えば、選択中のコードに対して提案してくれます。

diff ビューで変更を確認

Claude が変更を提案すると、Neovim にネイティブの diff ビューが開きます。変更内容を確認して、問題なければ :w で適用、嫌なら :q で却下。

Copilot との使い分け

GitHub Copilot も併用しています。使い分けはこうです:

  • Copilot: 1行〜数行の補完。タイピング中にサッと提案してくれる
  • Claude Code: 複数ファイルにまたがる変更、設計相談、バグ調査、コードレビュー

両方を組み合わせると、コーディングがかなり快適になりました。


まとめ

今年出会った3つのツールを紹介しました:

ツール 統合するもの 解決した課題
mise 言語バージョン・環境変数・タスク 複数ツールの管理地獄
mcphub 複数のMCP Server 設定の複雑さ、監視の難しさ
claudecode.nvim NeovimとAI エディタとAIの分断

どれも「バラバラだったものを1つにまとめる」というコンセプトが共通しています。

開発者体験(DX)の向上は、こうした統合から生まれるのかもしれません。個々のツールが優秀でも、それらがうまく連携しないと、切り替えのコストが積み重なっていきます。

2025年もワークフロー改善の旅は続きます。また良いツールに出会えたら、記事にしたいと思います。皆さんのおすすめツールもぜひ教えてください!


最後までご覧いただきありがとうございました!

エアークローゼット Advent Calendar 2025はまだまだ続きますので、ぜひ他のエンジニア、デザイナー、PMの記事もご覧いただければと思います。

また、エアークローゼットはエンジニア採用活動も行っておりますので、興味のある方はぜひご覧ください!

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?