FZ-012 · 開発者ツール
Keep Shipping
リポジトリごとに型付きファイル一つで書く、エンジニア向けのデプロイワークフロー。
- ステータス
- パブリックベータ
- パイプラインの段階
- 検証
- 分野
- 開発者ツール
- 自律性の目標
- レベル4 · 自己最適化
- 構成技術
- 稼働中 3 · 計画中 1
課題
デプロイパイプラインは、誰も完全には理解していない何百行ものYAMLとシェルに膨らんでいきます。
できること
Keep Shippingは、これをリポジトリごとに型付きのワークフローファイル一つに置き換え、実行前に検査する設計です。
しくみ
- イメージのビルド、TerraformまたはOpenTofuのplanとapply、デプロイを、スクリプトではなく型付きステップで
- プッシュする前に、まったく同じパイプラインをノートPCで実行
- エージェントにも出荷させる:何が人を待つかはポリシーが決めます
アーリーアクセスは招待制で、少人数ずつ開放しています。
パイプラインをひとつ変えるために、午後いっぱいを11回のコミットに費やすのはやめましょう。
現在CLI v0.1.0はmacOSとLinux向けに公開されています(MIT)。ホスト型コンソールは非公開で利用中です。
目的
- 自律運用
- デプロイこそ自動化の対象です。リポジトリごとに型付きワークフローファイルを1つ用意し、イメージのビルド、インフラのplanとapply、ロールアウトを行います。何かが実行される前にチェックされるので、壊れたパイプラインは10回目のCI実行ではなく、ノートPC上で見つかります。同じエンジンがローカルでもCIでも動くため、確かめるためにプッシュする必要はありません。
- インテリジェンス
- コーディングエージェントは、同じファイル内のポリシーに囲まれた範囲で、ワークフローを書き、チェックし、実行できます。ポリシーが定めるのは、単独でやってよいことと、指名された担当者を待つことです。decideステップは、型付きの判断モデルであるJevにplanのリスクを尋ねます。Jevはあなたが定義した選択肢のひとつと確信度スコアで答え、低リスクの変更は通すことができ、破壊的変更は常に人を待ちます。エンジン自体は通常のコードです。
- グロース
- 開発者主導。まずは少数ずつ開放するアーリーアクセスリストから始めます。あるチームが書いた型付きでバージョン管理されたブロックを40のリポジトリが再利用する形で、社内に広がります。価格は未定です。成長は、これを通じて出荷されるリポジトリ数で、パイロット以外の最初のチームから数えます。
技術的な詳細
デプロイワークフローエンジンです。リポジトリごとに型付きのワークフローファイルを1つ用意し、それがOCIイメージのビルドと署名、TerraformまたはOpenTofuのプランの作成と適用を行います(applyはレビュアーが承認した正確なプランを実行します)。ファイルで指定された箇所では人間の承認を待ち、Kubernetes、SSH経由のVM、サーバーレスにロールアウトします。すべてのステップには型付きの入力と出力があるため、ダイジェストであるべき場所にタグを配線した場合やステップ名を間違えた場合は、実行前にチェックで失敗します。同じエンジンが、ラップトップでもCIでもファイルを実行します。ステップは型付きでバージョン管理されたブロックとしてパッケージ化し、リポジトリ間で再利用できます。本物のコードが必要なステップは、型付き入力を持つTypeScriptの関数です。コーディングエージェントについては、ファイル内のポリシーで、単独で実行してよいことと、指定の人物の承認が必要なことを定めます。decideステップは、Jev(TypeSafe AI)にプランの評価を依頼し、破棄操作は常に人間に回されます。CLI v0.1.0はmacOSとLinux向けにMITで公開されており、ホスト型コンソールは非公開で利用中です。keepshipping.runのサイトでは早期アクセスリストを受け付けており、エンジン、ステップ、ランナーはまだ構築中です。