Scalaのビルドツールsbtには1.xからLanguage Server Protocol 3.0に対応したサーバモードが実装されており、常駐させたサーバに別プロセスから接続してコマンドを実行することができます。サーバモードはIDEやエディタプラグインのために実装されたものだと思いますが、sbtにはクライアントモードも実装されており、コマンドラインで動作を確認することもできます。 たとえばあるプロジェクトでsbtのプロセスを立ち上げておき、 $ sbt ... sbt:gitbucket> 別のターミナルから以下のようにしてコマンドを送信します。 $ sbt client clean ... [info] entering *experimental* thin client - BEEP WHIRR > compile サーバ側ではこんな感じのログが表示されます。 [info] new