mcpField
S
superself

superself

github.com/wshobsonエージェントワークフロー41.9k1.5k 回インストール2 週間前に更新
リポジトリ

superself について

superselfは、プロジェクトの目標、決定、作業単位、レポートを別のGitイベントログで管理するCLIとエージェントスキルです。セッションをまたいで文脈を引き継ぎたいエージェントやチーム向けに、状態を都度ログから生成します。

主な機能

  1. 01追記型のプロジェクトイベントログ
  2. 02記録からのコンテキスト生成
  3. 03作業単位の管理と証拠付きレポート
  4. 04決定と目標の記録
  5. 05検索と詳細な作業ブリーフ

活用シーン

  1. 01セッション開始時のプロジェクト文脈の復元
  2. 02作業単位の進捗追跡
  3. 03確定した決定や提案作業の記録

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/wshobson/agents --skill superself

インストール後、Claude Code で/superselfを入力して読み込まれたか確認します。

詳細

Superself

Superself は Apache-2.0 の CLI(npm install -g [email protected]、Node 22.12+)で、プロジェクトの状態 — 目標、決定、作業単位、レポート — を、コードとは別の git リポジトリ内の追記専用イベントログとしてバージョン管理します。状態はオンデマンドで導出されるため、その内容が手作業で保守されることはありません。このスキルは、エージェントが self CLI を通じてその状態を読み書きする方法を説明します。Superself の作者によって保守されています: https://github.com/fxylabs/superself

このスキルが適用される場合

  • プロジェクトの AGENTS.md または CLAUDE.md に、 `` の間のブロックが含まれている、または self setup が このディレクトリが解決されるワークスペース、プロジェクト、ストアを出力する。
  • self --version が失敗する場合はスキルをスキップしてください。そのプロジェクトは Superself を使用しておらず、以下のいずれも手作業ででっち上げるべきではありません。このスキルは [email protected] に対して書かれています。異なるメジャーまたはマイナーバージョンでは 動詞やフラグが移動している可能性があるため、いずれかに依存する前に self <command> --help を確認してください。

セッション開始

  1. self context を実行し、その出力を現在の真実として扱ってください。目標、有効な 決定と規約、未完了の作業、最近のレポート。これはログから折り畳まれたもので、決して手作業で書かれたものではありません。
  2. context に欠けているものは、意図的に描画対象のセットから外されています。 self search <query> は context が除外したライブレコードを検索し、 self work show <id> は 1 つの作業単位の完全なブリーフとレポート履歴を出力します。

作業中

  • 実質的な作業は作業単位に紐付きます。self work add "<required outcome>" で 作成してください — outcome はタスクではなく、真にならなければならないものです — 次に self work start <id>。start はブリーフを読み取り、 このセッションがその単位を引き受けたことを記録します。別のセッションがそれを保持している場合、 CLI は誰がいつから保持しているかを示し、拒否はしません。判断して進めてください。
  • コミット後、進捗を報告してください: self report <id> "<what happened>"。 現在の HEAD コミットは自動的に証拠として添付されます。--evidence <commit|note> は別のものを添付し、--file <path> はより長い ブリーフを添付します。
  • ユーザーが確認した決定を記録してください: self decide "<text>" --why "<reason>"。 ユーザーが確認していない場合は --proposed を使用してください。1 イベントにつき 1 つの決定です。
  • ブロックされていますか? self work block <id> --on decision|dependency|external --why "..."。 置き換えられた、または移動しましたか? self work retire <id> --why "..." [--successor <id>]。 そのような単位を完了とマークしないでください。また、偽ってブロック状態のままにしないでください。
  • 目的と現在の状態の間にギャップを見つけましたか? self work propose と そのブリーフで作業を提案してください。ユーザーが承認または却下します。
  • ユーザーが次のステップまたは継続を承認しましたか? self work add と その背景ですぐに登録してください。会話の中にだけ存在する計画は、 会話が終わると失われます。

終了

  • self work done <id> は、レポートがコミットまたは 成果物を伴う場合、または done 自体が検証可能に何が起きたかを述べている場合にのみ作業単位を閉じます: self work done <id> --report "<what verifiably happened>"。根拠のない主張は 拒否され、宣言された基準はそれぞれが満たされるまでゲートとして機能します。
  • レコードのテキストは一度確認されると不変です。言い直して修正してください: 任意の add 動詞に --supersedes <id> を付けると、新しい文言を記録し、 系譜を保持します。retract は、何も置き換えずにレコードを撤回します。

状態を信頼できるものに保つルール

  • レコード — イベント、意思決定、レポート、規約 — は英語で記述します。 次にそれを開く人が読めるようにするためです。相手への回答は相手の言語で行います。
  • ブランチが main に到達するのはプルリクエストを通じてです。PR レビューと CI がマージ 制御を担います。Superself が担うのはコンテキストと作業グラフであり、マージゲートではありません。
  • 生成された状態ファイルや .superself/ 以下のものを決して手で編集しないでください。
  • superself ブロックのないプロジェクトでは、まず self setup を実行します。それによって ディレクトリが登録済みプロジェクトに解決される場合は、self connect を実行するかどうかを ユーザーに一度だけ尋ねます。これは管理対象ブロックを AGENTS.md または CLAUDE.md に書き込みます。どのプロジェクトにも解決されない場合は、self project init で 登録するかどうかを一度だけ尋ねます。決して自分だけでプロジェクトを登録したり接続したりしないでください。

さらに深く知る

self --help はすべての動詞を一覧表示します。self <command> --help は状態に触れることなく、 1 つのコマンドのフラグを出力します。トピックガイドは CLI に同梱されています。

  • self help agents — セッションがこの CLI を最初から最後までどう操作するか
  • self help context — self context が何をレンダリングするか、そしてなぜ何かがそこから欠落するのか
  • self help records — すべてのレコード種別の背後にある単一のエンティティ、そしてレコードがどう訂正されるか
  • self help placement — スコープ、優先度、露出 — レコードがどうやってコンテキスト内の居場所を得るか
  • self help work — 作業グラフ: 成果、エビデンス、基準、そして提案
  • self help goals — 長期目標、目的、マイルストーン、そして到達するために何が必要か
  • self help workspace — ストア、その中のプロジェクト、そしてマシン間での移動

コメント