Community画像github.com

EP Insignia (EP徽章処理スキル)

URLから代理店の徽章/ロゴ/パッチ/バッジをダウンロードし、背景を除去して512x512にリサイズし、EP顧客プレフィックスをファイル名にした.pngと.jpgとしてEP Insignia S3バケット (prod-ep-cmh-insignia) にアップロードします。Essential Personnel (EP) で顧客の徽章を追加・置き換え・更新する際に使用します。

EP Insignia (EP徽章処理スキル) とは?

このスキルは、Essential Personnel (EP) システムで使用する代理店徽章画像を処理・アップロードするためのものです。ユーザーが指定した画像URLから徽章を取得し、自動または指定された方法で背景を除去、512x512ピクセルにリサイズ、透過PNGと白背景JPGの2つのファイルを生成し、EP本番S3バケット(prod-ep-cmh-insignia)にアップロードします。画像処理は同梱のPythonスクリプト(process_insignia.py)で行われ、背景除去は自動的に最適な手法(既存透過、接続領域除去、AIセグメンテーション)を選択します。AWS CLIを使用してS3操作を行い、既存ファイルのバックアップや上書き確認などの安全策も組み込まれています。Claude Code、Cursor、Codexなど、ファイルシステムとコマンド実行をサポートするAIエージェントプラットフォームで利用できます。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/rtaylor-talmark/ep-skills/tree/HEAD/skills/ep-insignia

Installed? Explore more 画像 skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

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

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

ドキュメント

EP Insignia(EP徽章)

ソース画像URLをEPが期待する2つの徽章ファイルに変換し、s3://prod-ep-cmh-insignia(EP AWSアカウント 405995789491、リージョン us-east-2)にアップロードします。

バケット内の既存ファイルに合わせた規約:

  • キー:バケットルートに <プレフィックス>.png と <プレフィックス>.jpg。<プレフィックス>はEP顧客プレフィックス(小文字、例:audubonpd、alexanderncsheriff)。
  • 両方とも512x512。徽章はトリミングされ、収まるように拡大縮小され、中央に小さなマージンが付けられます。
  • PNGは透明背景。JPGは白背景。
  • コンテンツタイプは image/png と image/jpeg。バケットはBucketOwnerEnforcedを使用しているため、ACLは設定しないでください。

入力

  1. ソースURL。 ユーザーが指定しなかった場合は、入力を求めます。ローカルファイルパスも使用できます。
  2. 顧客プレフィックス。 提供されなかった場合は、入力を求めます。機関名から推測しないでください。小文字に正規化し、a-z 0-9 - _ 以外は拒否します。

手順

1. 画像を処理する

スクラッチパッド内の新しいワーキングディレクトリ(または mktemp -d)を使用し、次を実行します:

uv run -q <skill_dir>/scripts/process_insignia.py "<url>" "<プレフィックス>" "<workdir>"

uv はスクリプトのインラインメタデータから依存関係をインストールします。初回のAI背景除去実行時に、約180MBのモデルが ~/.u2net にダウンロードされます。

デフォルトの背景モード(--bg auto)は次のように動作します:

  • ソースが既に透明背景の場合、そのまま維持されます。
  • 境界が単一の無地色(通常は白)の場合、エッジに接続された背景のみが除去されます。徽章内部の白い文字や詳細は保持されます。
  • それ以外の場合はAIセグメンテーション(rembg isnet-general-use)を使用します。

上書きオプション:--bg ai、--bg flood、--bg none でモードを強制します。--margin N でパディングをピクセル単位で設定します(デフォルト4)。

ダウンロードが403または429で失敗した場合、URLがSVGや画像ではなくウェブページの場合、ユーザーに伝え、直接画像リンクを求めます。ユーザーが自分でファイルをダウンロードしてローカルパスを渡すこともできます。

2. アップロード前にレビューする

対照的な色の上にPNGを重ね、JPGと並べたプレビューを生成します:

convert \( <workdir>/<プレフィックス>.png -background '#c33' -flatten \) <workdir>/<プレフィックス>.jpg +append <workdir>/preview.png

preview.png をReadツールで開き、以下を確認します:

  • 背景の残骸がないこと(赤い側にハロー、ボックス、フリンジがない)。
  • 徽章の欠落部分がないこと(内部の白が除去された穴、切り取られたテキストなど)。
  • 正しい機関であること。

結果が不適切な場合は、異なる --bg モードで再実行します。プレビューをユーザーに表示し、スクリプトが報告した背景除去方法と、小さなソース画像に関する警告があればそれも伝えます。

3. AWSアクセスと既存ファイルを確認する

aws sts get-caller-identity --query Account --output text   # 期待値:405995789491
aws s3 ls s3://prod-ep-cmh-insignia/<プレフィックス>.

<プレフィックス>.png または <プレフィックス>.jpg が既に存在する場合は、ユーザーに伝えます。これは本番バケットですので、上書き前に明示的な確認を得てください。最初に既存ファイルをバックアップします:

aws s3 cp s3://prod-ep-cmh-insignia/<プレフィックス>.png <workdir>/backup/<プレフィックス>.png
aws s3 cp s3://prod-ep-cmh-insignia/<プレフィックス>.jpg <workdir>/backup/<プレフィックス>.jpg

まだ何も存在しない場合でも、プレビュー表示後にアップロードの確認をユーザーに求めます。

4. アップロード

aws s3 cp <workdir>/<プレフィックス>.png s3://prod-ep-cmh-insignia/<プレフィックス>.png --content-type image/png
aws s3 cp <workdir>/<プレフィックス>.jpg s3://prod-ep-cmh-insignia/<プレフィックス>.jpg --content-type image/jpeg

aws s3 ls s3://prod-ep-cmh-insignia/<プレフィックス>. でアップロードを確認し、両方のS3キー、そのサイズ、およびバックアップの保存場所を報告します。

関連スキル