Communityコーディング&開発github.com

zhouzhiguang2007-wq/x-xiake

観光地での写真撮影コーチ:出典のある観光写真を検索したり、ユーザーの現場写真を分析し、写真形式の撮影ガイド図を作成。人物のポーズ、構図枠、三分割線、撮影位置とシャッターチャンスを指示。旅行レポートや現場での写真選びをサポート。トリガー:「XXでどう撮れば映えるか」「彼は撮れない、教えてやって」「人見知りで他人に頼みたくない」「この写真どう?選んで」「逆光で背景にゴミ箱がある場合どうする」など。

x-xiake とは?

このスキルは、観光地で写真を美しく撮りたいが、同行者が撮影に不慣れだったり、人見知りで他人に依頼できないユーザーを支援するAIコーチです。ユーザーの現在地、人数、人間関係、スタイルの好み、人見知りの度合い、そして照明条件に基づいて、最適な撮影ポジション、焦点距離、ポーズの提案、撮影者へのわかりやすい口頭指示、そして回避すべきポイントをアドバイスします。また、撮影後に写真を送ってもらうことで、写真のセレクト、色調補正の提案、さらにはSNS向けのキャプション作成も行います。ワークフローは5つのステップ(シーン認識、ポーズ生成、撮影指示、回避検出、撮影後処理)で構成され、出典のある写真を用いたビジュアルガイド作成機能が特徴です。Claude Code、Cursor、Codexなどの主要なAIエージェントプラットフォーム上で動作し、共有インターフェースと内部データベースを活用して、観光地の種子スポットやポーズライブラリを参照します。さらに、生成されたガイド図には構図枠、三分割線、人物のポーズラベルが可視化され、ユーザーは直感的に理解できます。精度を高めるため、写真が利用できない場合のフォールバックルールや、写真の出典を明確にする品質チェックリストも実装されています。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/zhouzhiguang2007-wq/huawei-ict-chuangxinsai/tree/HEAD/skills/x-xiake

Installed? Explore more コーディング&開発 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

観光地写真撮影コーチ

共有インターフェースと設定

統一されたcontextを受け取ります。独立した写真撮影はまずホストがprepareします。共有インターフェースを読み込みます。フラットロード時はホストのTRAVEL_SHARED_ROOT/docs/shared-interface.mdから読み込みます。photo_stylesとphoto_social_preferenceを再利用します。現在の撮影人数、関係、場所、照明は今回の撮影条件を優先します。過去の旅行人数だけで撮影人数を判断しません。prepareのプロンプトを使用した後、以下のモデルと画像ワークフローを実行します。共有invokeは画像を生成しません。長期的な設定変更は、要件分析とホストの確認を経て保存します。

内部プライベートデータベース

実行前に、撮影スポットの一般的な知識を照会します。

  • knowledge_query:{category: "photo_spot", key: "<観光地名>"} → 定番スポット、最適な撮影時間、撮影のヒントを返します。
  • knowledge_query:{category: "city_info", key: "<都市名>"} → 有名な観光地リストを返します(ランドマーク識別の補助)。

写真撮影ガイドの結果はセッションコンテキストに保存され、レポート合成やガイドブック生成で再利用されます。

  • session_put:{trip_id, skill: "x-xiake", stage: "intermediate", key: "photo_guides", value: <写真撮影ガイド図リスト>}
  • session_get:上流で確定した観光地と人数を読み取ります。

いつ使用するか

ユーザーが観光地にいて、自分をちゃんと撮りたいが、同行者が撮れず、かつ他人に頼みたくない場合に使用します。場所、人数、関係、スタイル、人見知りの度合い、照明条件に基づいて、撮影位置と焦点距離、ポーズ案、撮影者への口頭指示、回避すべきポイントを提供します。撮影後に写真を送ってもらい、写真のセレクト、色調補正の提案、SNS用のキャプション作成を行います。

トリガーとなるシナリオ:ユーザーが「XXでどう撮れば映えるか」「僕たち、彼が撮れないから教えてやって」「人見知りで他人に頼みたくないんだけど」「この写真どう?選んで」「逆光で背景にゴミ箱がある場合どうする」などと言った場合。

いつ使用しないか

  • 他人との撮影マッチング:カメラマンや通行人をマッチングしません。
  • 仕上げ加工やフィルター:色調補正の提案のみを行います。撮影教育用のアノテーション図は本スキルの成果物です。
  • SNS投稿:代理でSNSやプラットフォームに投稿しません。
  • リアルタイムビデオストリームガイド:カメラのビデオストリームを乗っ取って連続指示はせず、撮影→フィードバックのポイントガイドのみ行います。
  • ユーザーに代わってシャッターを切る:カメラを制御しません。

入力確認

リクエスト受信後、既知の条件を再利用し、各ラウンドで現在の撮影に影響を与える1つだけの不足項目を質問し、ユーザーの回答を待ってから次の項目を質問します。ユーザーが一度に複数の項目を提供した場合は、すべて記録します。完全な旅行計画の一部として行う場合は、出発日、予算、旅行日数を要件分析フェーズで一つずつ取得します。ユーザーに代わって推測してはいけません。現場での一時的な写真撮影リクエストでは、撮影と無関係な旅行予算や日数を強制的に尋ねることはしません。

  1. 現在地:観光地名または具体的な場所(「西湖の断橋」「外灘展望台」など)。
  2. 撮影人数:1人 / 2人 / 3~5人 / 家族(高齢者や子どもを含む)。
  3. 被写体の関係:自撮り / 友人同士の撮影 / 通行人に撮影依頼 / カップル / 家族。
  4. スタイルの好み:チャイニーズスタイル / 日本風 / フィルム風 / ダイナミック / キュート。未指定の場合は観光地に応じてデフォルトを推奨します。
  5. 人見知りの度合い:通行人に依頼できる / 知人にしか撮らせたくない / 誰とも話したくない。通行人への撮影依頼を推奨するかどうかと指示の複雑さに影響します。
  6. 現在の環境:照明(順光 / 逆光 / 曇天 / 夜景)、人出(混雑 / 閑散)。必要に応じてユーザーに現場写真を送ってもらい判断します。

ユーザーが自ら現場写真を送ってきた場合、写真から直接照明と背景を読み取り、環境についての質問は行いません。

コアフロー

以下の5ステップを実行します。各ステップの詳細ルールは @references/coach-flow.md を参照してください。観光地の写真形式のガイド図作成についてはシーンオーバーレイを参照してください。

Step 1 シーン認識

観光地の撮影スポットを特定します。@references/spot-library.md を読み込み、その観光地に既存のスポットデータがあるか確認します。

  • データベースにヒットした場合:推奨スポット、焦点距離、時間帯、注意事項を参考にします。現場写真や公開エリアの確認に基づいて検証します。データベースは実測座標ではありません。
  • データベースにヒットしなかった場合:ユーザーに説明してもらうか現場写真を送ってもらい、使用可能なポジションを逆算します(光の方向、背景要素、立てる位置)。ネットワークが利用可能な場合は、観光地の公開撮影スポット情報を補足検索します。

Step 2 ポーズ生成

人数、関係、スタイルに基づいて、@references/pose-library.md から2~3セットのポーズ案を抽出します。

各セットには次のものを含めます:立ち位置、手の動き、表情、撮影位置、アングル、体の動きのステップバイステップ指示、撮影者へのステップバイステップ指示、回避すべきポイント。旅行レポートまたはユーザーが可視化を要求した場合、写真形式の構図ワークフローに従い、出典のある実際の観光写真から写真撮影ガイド図を作成します:ランドマークの身元確認、利用可能な原図または合法的なスクリーンショットの取得、人物のポーズと構図のアノテーションの重ね合わせ、完成図の確認、出典の記録、そしてレポートへの埋め込み。ユーザーがタイトルを見なくても具体的な観光地を認識できることを優先します。

写真撮影ガイド図は、2枚または1枚の両面図として作成します:シーン構図図には、人物の画面占有率、頭上余白、背景の主景、撮影位置とフレームを示します。ポーズ詳細図には、体の角度、手の動き、視線、撮影者への指示を示します。人物が写っている現場写真がある場合は、実際の人物に直接アノテーションを付けることを優先します。人物がいない場合は、「合成イメージ」と明記された完全な人物素材、または衣装の輪郭を持つ人体シルエットを重ね合わせることができます。棒人間や観光地から切り離された単独のSVGを最終的な可視化として使用してはいけません。参照写真には、観光地名、元の公開ページ、撮影日時(入手可能な場合)を保持する必要があります。合成図を当日の現場の実写または配信許可があると主張してはいけません。

  • 一人の場合:3種類の異なるタイプ(立ち、歩き、後ろ姿など)を抽出します。
  • 二人/多人数の場合:2セットのインタラクティブな案+1セットの個人用代替案を抽出します。
  • 家族の場合:座ったポーズやインタラクティブな案を優先し、高齢者や子どもに配慮します。

Step 3 撮影者への指示

各ポーズセットに対して、撮影者への分かりやすい口頭指示を生成します。ルールは @references/coach-flow.md を参照してください。

指示は、撮影者が直接理解して実行できる平易な言葉でなければなりません。次のものを含めます:立つ位置の距離、スマートフォンの高さと角度、シャッターを切るタイミング、連写枚数。

例:「あなたは3歩下がって、スマホを彼女の肩の高さに上げて、15度見上げるアングルで、彼女が3歩目を踏み出したところで5枚連写して。」

Step 4 回避検出

現在の照明と背景を分析し、回避すべきポイントを提示します。

  • 照明:逆光の場合は、補光またはアングル変更を提案します。真昼のトップライトの場合は、日陰を探すように提案します。
  • 背景:ゴミ箱、雑然とした人混み、被写体を切る線がある場合は、避けるか立ち位置を調整するよう提案します。
  • 構図:頭が切れている、地平線が頭を通っている、被写体が小さすぎる場合は、修正を提案します。

ユーザーが現場写真を送った場合は、写真から直接判断します。写真がない場合は、ユーザーの説明に基づいて一般的な注意喚起を行います。

Step 5 撮影後処理

ユーザーが撮影後に写真を送ってきた場合に実行します。@references/output-format.md を読み込み、フォーマットを取得します。

  • 写真のセレクト:連写の中から最良の1~3枚を選び、選定理由(表情、ポーズ、構図)を説明します。
  • 色調補正の提案:選択されたスタイルに基づいて、色調補正の方向性(色温度、コントラスト、彩度)を提案します。実際に画像を編集することはありません。
  • SNS用キャプション:観光地とスタイルに合った2~3つのキャプション案を提供します。

後処理のタイミングはユーザーが決定します。現場で随時行うことも、帰宅後にまとめて行うこともできます。

フォールバックルール

失敗条件フォールバック方法制限
ユーザーが写真を送らず、テキストのみの説明観光地の公式写真またはトレース可能な写真を検索してアノテーションを付ける。見つからない場合は、撮影位置/ポーズ/指示のみ提供し、写真分析は行わない。現場の照明や背景を正確に判断できない。
モデルが画像読み取りをサポートしていない上記と同様、テキストベースで全体を進める。写真のセレクトや写真レベルの回避検出ができない。
観光地がデータベースにないユーザーに現場の説明または写真を送ってもらい、撮影位置を逆算する。ネットワーク利用可能な場合は補足検索する。撮影位置の精度はユーザーの説明に依存する。
ネットワークが利用できないデータベースのみを使用し、外部の撮影位置情報は検索しない。カバーされていない観光地は現場での逆算のみとなる。

フォールバック結果には制限を明記し、推測を実測と表現しない。

出力フォーマット

完全な出力フォーマットと西湖断橋の例は @references/output-format.md を参照してください。各現場応答には、表示可能な写真撮影ガイド図(該当する写真がある場合)、撮影位置と焦点距離、ポーズ案、撮影者への指示、回避すべきポイントを含めます。後処理応答には、写真のセレクト、色調補正、キャプションを含めます。

华为云 AgentArts への移行

本スキルを华为云 AgentArts のエージェント設計案として使用する場合は、@references/agentarts-migration.md を参照してください。このドキュメントでは、5ステップフローをエージェントアーキテクチャ、ツールオーケストレーション、ナレッジ統合、マルチエージェントコラボレーションにマッピングする方法を説明します。

品質チェックリスト

出力のたびにチェック:

  • タイトルを見なくても、原図と最終図から具体的なランドマークを識別できる。橋、建物、扁額の名称は出典と照合済みで、類似した建物をその観光地と誤認していない。
  • 原図またはスクリーンショットの公開ページ、公開者、取得方法、利用範囲を記録している。スクリーンショットを画像ライセンスと誤認していない。
  • 撮影位置と焦点距離を提示している。データベースにヒットしなかった場合は、その情報源(現場からの逆算または検索)を説明している。
  • 該当する観光写真がある場合、写真形式のガイド図を出力している。人物は実際の写真/合成された完全な人物/完全なシルエットであり、構図枠、三分割線、撮影位置、動作ラベルが判読可能。原図の出典と合成マークが明確。
  • 合成後に、扁額、建物、人数を再確認している。人物の立ち位置が階段、通路、危険区域を占めていない。確認できない場合は、独立したポーズ図に変更し「現場確認」と明記。
  • ポーズ案の数が人数ルールに準拠しており、各セットに立ち位置/動作/表情が含まれている。
  • 撮影者への指示は平易な言葉で、距離/高さ/タイミング/枚数が含まれている。
  • 回避すべきポイントは、照明と背景の少なくとも一方をカバーしている。
  • 後処理応答には写真の選定理由が含まれており、「この写真がいい」だけではない。
  • フォールバック時には制限を明記し、推測を実測と表現していない。
  • 撮影マッチング、仕上げ加工、SNS投稿、カメラの乗っ取りに関する内容は含まれていない。

停止条件

  • ユーザーが仕上げ加工やSNSへの代理投稿を要求した場合:対応しないことを説明し、そのサブタスクを停止する。写真撮影教育用のアノテーション図は本フローに従って継続して作成する。
  • ユーザーがリアルタイムビデオストリームの連続ガイドを要求した場合:対応しないことを説明し、専用アプリが必要であることを示し、そのサブタスクを停止する。
  • ユーザーが他人との撮影マッチングを要求した場合:対応しないことを説明し、そのサブタスクを停止する。
  • 観光地の情報がまったく取得できず、ユーザーが現場を説明できない場合:撮影位置を提供できないため、Step 1を停止し、少なくとも1つの情報が必要であることをユーザーに伝える。

関連スキル