evidentloop/sopify
Resumable, traceable AI coding — plans, handoffs, and evidence stay with the repo across hosts.
Sopify – 再開可能で、計画を最優先とするAIコーディング
何であるか – Sopifyは、既存のAIコーディングアシスタント(GitHub Codex、Anthropic Claude、Qoder、GitHub Copilot)の上に軽量なプロトコルレイヤーとして機能するものです。要件が不明な場合にアシスタントが停止し、計画を記録するよう強制し、その計画と検証証拠をGitで追跡される隠しフォルダ .sopify/ に保存します。後で同じリポジトリを任意の対応ホストで開いた場合、~go コマンドを入力することで、保存されたワークフローを次の未完了タスクから自動的に再開できます。
なぜ重要か – 多くのAIコーディングツールはコード生成に直行するため、以下のような問題が生じがちです:
- 情報が得られる前に過剰な変更が行われる
- マシンやLLMホストを切り替えた際にコンテキストが失われる
- 設計決定が文書化されない Sopifyは、計画と意思決定プロセスをプロジェクトアーティファクトとして扱い、リポジトリと共に移動させることでこれらの問題を解決します。
コアコンセプト
| コンセプト | 機能 |
|---|---|
| 管理されたワークフロー | ホストが明確化を求める、設計を作成し、作業をタスクに分割し、計画を .sopify/plan/ に記録する。明示的に承認しない限りコードは出力されない。 |
| 再開ポインタ | Git外の小さなローカルファイルが、どのステップまで進んだかを記憶する。任意のホストで ~go を入力すると、計画を読み取り、次のタスクから再開する。 |
| トレーサビリティ | 要件、設計選択、レビューはすべて .sopify/ にプレーンテキスト/JSON形式で保存される。後で特定のコード行がなぜ存在するのかを確認できる。 |
| ホスト非依存 | 同じ .sopify/ ファイルは Codex、Claude、Qoder、(限定的に)Copilot で理解可能なので、チームはアシスタントを切り替えてもプロセスが壊れない。 |
クイックスタート(READMEから)
# 特定のホスト(ここではCodex、英語米国)にSopifyレイヤーのみをインストール
curl -fsSL https://github.com/evidentloop/sopify/releases/latest/download/install.sh \
| bash -s -- --target codex:en-US
- Python 3.11+ を必要とする。
インストール後、既に .sopify/ フォルダを含むリポジトリを開く(または新規作成)し、以下のコマンドを実行:
~go # ワークフローを開始または再開
~go plan # 計画のみ作成、コードはまだ生成しない
~go finalize # 提供証拠が準備できたら、アクティブな計画を終了
インストーラーは実行前に確認可能(curl … -o install.sh && less install.sh)。Windowsユーザーには同等のPowerShellスクリプトがあります。
設定(例)
# リポジトリルートに配置する sopify.config.yaml
brand: auto
language: en-US
workflow:
mode: adaptive # strict | adaptive | minimal
require_score: 7 # ホストが自動的に進む前に必要な最小信頼スコア
設定はコードと共にあり、バージョン管理される。
ディレクトリ構造(関連部分)
.sopify/
├─ blueprint/ # 基準設計仕様、削減目標
├─ plan/ # 有効な計画 + 検証証拠
└─ history/ # アーカイブ済み(完了済み)の計画
他のソースファイル(sopify_writer/、skills/ など)はプロトコルを実装しているが、エンドユーザーが編集する必要はない。
一般的なワークフロー
- 依頼 – 特定の機能(例:キャッシュレイヤーの追加)をリクエスト。
- 計画 – Sopifyがホストに要件分析、設計作成、タスク分割を促す。計画は
.sopify/plan/に保存される。 - 承認 – 計画を承認すると、ホストがコード生成を開始する。
- コード生成 – ホストがコードを書く際、各変更が元のタスクに紐づく証拠を添付する。
- 再開 – 機能途中で中断しても、ローカルの再開ポインタが最後に完了したタスクを記憶する。別のホストでリポジトリを開き
~goを入力すると、タスクN+1から再開する。 - 完了 – 機能が完了したら、
~go finalizeで計画と証拠を.sopify/history/にアーカイブする。
使用例
- チーム間引き継ぎ – 開発者がCodexで機能を開始し、チームメートがClaudeで引き継ぐ場合、コンテキストの再説明なしに再開可能。
- 監査可能性 – 管理者は
.sopify/plan/ファイルを確認し、特定の実装決定がなぜ行われたかを把握できる。 - 多言語プロジェクト – プロトコルファイルは言語に依存しないため、Python、JavaScriptなど、ホストが対応する言語であれば同じワークフローが利用可能。
アーキテクチャのスナップショット(READMEに記載)
- プロトコルカーネル –
~goコマンドを解釈し、再開ポインタを管理するコアロジック。 - デフォルトワークフロー – スコア閾値、アダプティブモードなど、ホストが明確化を求めるタイミングを規定するルールセット。
- 知識レイヤー – 計画、設計ブループリント、検証証拠を保存する
.sopify/ファイル。Gitリポジトリと共に移動する。
ライセンス
- コード & 設定 – Apache 2.0
- ドキュメント – Creative Commons BY 4.0
まとめ
SopifyはLLMを置き換えるものではなく、計画を強制し、意思決定を保存し、どの対応するAIコーディングホストでも前回のセッションの続きから再開できる、Gitで追跡可能な厳格なプロセスを追加します。AIアシスタントに依存しながらも再現性と監査追跡が必要なチームにとって、Sopifyは低オーバーヘッドでホスト非依存なソリューションを提供します。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト