--- name: reflection description: 開発の記録や成果を根拠に振り返り、次回試す行動を一つ決める。設定に応じてSlackプラグインで対応チャンネルへ共有し、希望があれば今回の変更をGitHubへpushする。「ふりかえり」「振り返りをしたい」「今日の開発を整理して」と依頼されたときに使う。 --- # ふりかえり 次の開発を改善するために、起きたことと判断を振り返ります。日本語で対話し、ユーザーが別の言語を指定した場合はそれに従います。 ## 共有先と本人の希望を確かめる 最初に、この会話の指示、使えるSlackプラグイン・コネクタ、作業中のリポジトリを確かめます。次に、端末のユーザー用設定を読みます。macOS・Linuxは`~/.config/team-ai-connectors/profile.json`、Windowsは`%APPDATA%/team-ai-connectors/profile.json`です。`nickname`と、`projects`内の今回のプロジェクト設定を使います。設定の読み方と実行条件は[共有とGitの手順](references/sharing-and-git.md)に従います。 あだ名、投稿先、投稿方法、pushの希望が足りなければ、不明な項目だけをまとめて聞きます。例えば「ふりかえりで使うあだ名は何ですか。Slackの投稿先も教えてください。投稿は毎回確認する形で、GitHubへのpushは希望した回だけでよいですか」と聞きます。アカウント名からあだ名を決めません。Slackを使わない回も振り返りを続けます。 各プロジェクトの既定値は`slack.post_mode: confirm`と`github.push_mode: ask`です。本人が明示して選んだ`auto`は、そのプロジェクトだけの継続した許可として扱い、同じ許可を毎回求めません。別のプロジェクトへ流用せず、Gitのremoteやブランチが設定と違う場合も変更前に確認します。今回の指示で変更された場合は、その指示を優先します。設定を保存するときは`setup`の手順を使い、他のプロジェクト設定を残します。トークン・パスワードを保存したり、個人設定を共有リポジトリへcommitしたりしません。端末の設定を扱えないAIでは、この会話で希望を確かめ、保存済みとは報告しません。 ## 根拠を集める ユーザーの説明、今回のタスク、変更したコード、レビュー、テスト結果を、許可された範囲で読みます。作業の目的や結果が分からなければ、その点を聞きます。関係のないメンバーの履歴は調べません。 次の3つを分けます。 - 事実。実際に行った操作や得られた結果を、分かる範囲で成果物や記録に結び付けます。 - 解釈。うまくいった理由や難しかった理由の候補を、不確かさが分かる形で示します。 - 未確認事項。結論を出す前に必要な情報を残します。 プロンプトの回数、AIを使った時間、生成したコード量を、そのまま能力の指標にしません。一度の作業から本人の能力全体を決めたり、別の人の評価を流用したりしません。 ## 判断を振り返る 今回の作業に合う質問を選びます。 - 何を目指し、実際にはどこまでできたか。 - 進みやすくなった判断、進みにくくなった判断は何か。その根拠はあるか。 - AIに何を任せ、本人は何を確認・修正したか。 - 仲間の助言やレビューで、どの判断が変わったか。 - 完成したものについて、何がまだ分からないか。 正式な評価を依頼された場合は、指定された基準と観察事実を対応させます。根拠がなければ未評価とし、点数や人物像を作りません。 AIの使い方を4Dなどの基準で振り返る場合も、基準の定義と今回の観察事実を対応させます。定義が手元になければ確認し、名前だけで点数を付けません。本人への評価の詳細をチームのSlackへ載せるかどうかは、通常の作業報告と分けて確かめます。 ## 次回の行動を一つ決める 次回試す小さな変更を一つ提案します。「いつ何をするか」「改善したと判断できる結果」「いつ見直すか」を具体化します。ユーザーが選ぶまでは提案として扱います。 ## 希望に応じてGitHubへpushする 今回のプロジェクトの`github.push_mode`と依頼を確かめ、[共有とGitの手順](references/sharing-and-git.md)に従います。`ask`で許可がまだなければ、今回の変更をcommitしてpushするか聞きます。明示された許可や、remote・ブランチまで一致する`auto`があれば、その範囲で進めます。`off`なら実行しません。リポジトリがない場合や、pushするcommitも新しい変更もない場合は、その結果を伝えます。 作業ツリー、差分、現在のブランチ、remote、リモートとの進み・遅れを確かめます。今回の対象だけを選んでcommitし、通常のpushを使います。他人や別の作業の変更を混ぜません。force push、勝手なstash、履歴の書き換えは行いません。失敗した操作と、残っている変更をそのまま報告します。 ## Slackへふりかえりを共有する 作業の結果、役に立つ学び、次回試すことを短くまとめます。あだ名、対象の作業、実際に確認できた根拠、未確認事項を含め、GitHubへpushした場合はcommitやPRのURLも添えます。次回の行動をまだ選んでいなければ「提案」と書きます。成績、個人情報、秘密情報、関係のないメンバーの発言は本文に含めません。 Slackプラグイン・コネクタのネイティブツールで、今回のプロジェクトに指定されたワークスペースとチャンネルIDを確認します。チャンネル名だけで投稿先を決めません。`confirm`では完成した本文と投稿先を示して確認し、今回すでにその投稿が許可されていれば確認を繰り返しません。`auto`では本人がそのプロジェクトに選んだ投稿先と範囲へ共有します。`off`では下書きだけを返します。 Slackの接続がなければ、`setup`かクライアントの接続画面を案内し、下書きを残します。投稿先や投稿権限が確認できない場合も、推測で別の場所へ送らず、その確認だけを求めます。Webhookへの置き換えは行いません。送信結果で成功を確かめ、取得できれば投稿URLを返します。応答が不明なときは、重複投稿を避けるため送信済みかを調べてから再試行します。 最後に、ふりかえり本文、Slackへの投稿結果、GitHubへのpush結果、残っている作業を短く伝えます。下書き、投稿済み、未pushを区別し、実際に終わった操作だけを完了と報告します。