ワークフロー&基本ツール · vibeshotclub/vsc-skills

vsc

VSC創作スキルの統合エントリポイント。ユーザーが /vsc や $vsc を呼び出した際、VSCで何ができるか尋ねられた際、どのVSCスキルを選ぶべきか不明な際、または現在の創作要求に基づいてVSCスキルを自動選択したい場合に使用します。目標、成果物、および既存の素材に基づいて利用可能なスキルを1つ選択し、直接実行します。ユーザーが既に特定のスキルを明示的に呼び出している場合は、重複して処理を引き継ぐことはありません。

L4 高権限 · 段階的認可と監査V1 コミット固定コマンド実行Dual-pass Audit
Author vibeshotclubGitHub vibeshotclub/vsc-skills ↗Stars 832License 仓库未提供 LICENSE 文件(find 全仓无 LICENSE*;GitHub API license 字段为 null)Commit fcee81beb6
管理レベルは Skill の能力と推奨統制措置を示すものであり、品質や安全性の認証、利用可否の判定ではありません。使用の可否はユーザーおよび管理者が決定します。Agent 環境によって制約が異なるため、自動保護を仮定しないでください。第三者製 Skill の著作権は原著作者に帰属し、利用リスクは利用者が負います。

1仕組みと動作原理

仕組みは「統合エントリ + ローカル検出スクリプト + カタログスナップショット」:まずスクリプトを使用してローカル環境で実際のインストールを特定し、SKILL.md の判定基準に従ってスキルを1つ選択した後、その SKILL.md を完全に読み込んで同一会話内で直接実行します。

vsc/SKILL.md
把用户的创作需求交给一个匹配且可用的 VSC 技能,在当前对话中直接完成工作。
SKILL.md は5つのセクション(要件の復元 / 候補の検出 / スキルの選択 / ロードと直接実行)で構成されています。

カタログスナップショットによってルーティング可能なメンバーが限定され、スクリプトはファイルシステムの検出のみを行い、セマンティックスコアリングや本文の読み込みは行いません。

vsc/SKILL.md
脚本使用 [VSC 目录快照](references/catalog.json) 限定成员,返回能力简介、交付类型、区分信息、状态及真实 `SKILL.md` 路径。它不负责语义评分,也不会加载全部技能正文或执行创作。
catalog.json はビルド成果物(各 SKILL.md の frontmatter から tools/build_vsc_catalog.py によって生成)であり、sha256 コンテンツ検証値を含みます。

利用可能性の判定は sha256 の比較によって行われます。同一ディレクトリ内で同名かつ内容が異なる複数のインストールが存在する場合は conflict としてマークされ、ランダムに1つが選ばれることはありません。

vsc/scripts/discover_skills.py
item.update(status="conflict", paths=[hit["path"] for hit in found])
SKILL.md の該当条項:『`conflict`:同名で内容が異なるインストールが検出された場合、恣意的に1つを選択しない。』

インストール内容がカタログスナップショットと一致しない場合は needs_review を付与し、古いカタログ情報に基づくルーティングを避けるため、まず実際の frontmatter を読み込んで機能をキャリブレーションするようエントリに促します。

vsc/scripts/discover_skills.py
needs_review=found[0]["sha256"] != entry["sha256"]
SKILL.md の対応規定は『絞り込み時は、まず該当候補の実際の frontmatter を読み込む。境界が依然として不明瞭な場合は本文を読み、実際の内容を基準とする』です。

選択の判定基準は「成果物/処理対象/既存の入力/除外範囲」に基づいて比較され、キーワード誤認によるルーティングミスを防ぐため、キーワードは検出目的のみに使用されます。

vsc/SKILL.md
2. 比较交付物、处理对象、已有输入和明确排除范围。关键词只用于发现,不能独自决定。
第3条では、具体的な創作シナリオが汎用的なテーマよりも優先されることが明記され、プール/水着の反例が挙げられています。

一度に選択されるメジャーなスキルは1つのみであり、汎用的な複数スキルのオーケストレーションは行わず、画像生成/動画生成/アーカイブなどを自動で追加することもありません。

vsc/SKILL.md
4. 一次只选一个主技能。已有完整工作流由该技能负责,不拆成多个技能,也不自动追加生图、视频或归档。
SKILL.md には『第1版では汎用的なクロススキルオーケストレーションは行わない』と明記されており、多段階の複合的な要件については、どれを最初に行うかをユーザーに確認します。

選定後は必ずロードして実行する必要があります。選ばれたスキルの SKILL.md を完全に読み込み、その指示に従ってスクリプトパスを解決した上で、方針を1行で説明してから作業を開始し、ユーザーにタスクを再送信させません。

vsc/SKILL.md
完整读取入选技能的 `SKILL.md`,随后按其指引读取所需引用,使用实际技能目录解析资源和脚本路径。
同セクションでは『推奨を出力して終了するだけ』の処理が禁止されています。

ルーティングによって権限が拡張されることはなく、エントリポイントで下流の承認ゲートを重複して尋ねることもありません。

vsc/SKILL.md
用户授权和宿主权限继续适用,路由不增加付款、发布、删除或对外沟通权限。
『選定されたスキルに必要な入力または承認ゲートがある場合は対応するステップで処理し、エントリで重複して尋ねない』に対応します。

フォールバックパスが固定化されています。Python が利用できない、またはスクリプトが失敗した場合は、カタログスナップショットの読み取りに切り替え、ホストパスを1つずつ照合します。依存関係のインストールやネットワーク経由でのスキル取得は明示的に禁止されています。

vsc/SKILL.md
Python 不可用或脚本失败时,读取目录快照,并用当前宿主提供的技能路径或本技能同级目录逐一确认相关候选。
これに続いて『ルーティングを完了するために依存関係をインストールしたり、ネットワーク経由でスキルを取得したりしない』と記載されています。

デフォルトの検索範囲は限定的であり、ディスク全体を再帰的に走査することはありません。エントリと同階層のディレクトリ、直近のプロジェクトのスキルディレクトリ、~/.agents/skills、Codex skills(CODEX_HOME を尊重)、~/.claude/skills です。

vsc/scripts/discover_skills.py
roots.extend([home / ".agents" / "skills", codex_home / "skills", home / ".claude" / "skills"])
CODEX_HOME の分岐ロジック:codex_home = Path(env["CODEX_HOME"]) if env.get("CODEX_HOME") else home / ".codex"。

2コア機能

01候補検出:available / missing / invalid / conflict の4つの状態と実際の SKILL.md 絶対パスを出力
02コンテンツ検証:sha256 を使用してインストール内容とカタログスナップショットを比較し、needs_review プロンプトを生成
03カスタム検索ルート:--root を複数回指定して、デフォルトの検索範囲全体を置き換え可能
04カタログ形式のセルフチェック:schema_version、スキル命名規則、完全な機能フィールド、成果物タイプのホワイトリストを検証
05ルーティングの誤判定防止:キーワードは検出のみに使用し、成果物/対象/入力/除外範囲で比較。一度に選択するのは1つのみ
06成果物スコープの防御:プロンプトのみが必要な場合は画像生成を呼び出さず、Vlog構成案のみの場合は完成動画ワークフローを起動せず、既存の画像アーカイブに対して追加生成を行わない
07機能ギャップの正確な報告:最適なスキルが未インストールの場合、名前と不足している機能を説明し、無理な代替選定を行わない
08コンテキストがない場合のナビゲーションモード:機能カテゴリと2〜3個の入力例を紹介するのみにとどめ、創作処理は実行しない

3外部依存関係

KindDependency / Endpoint
clipython3(3.10+,仅标准库;缺失时入口降级为读目录快照)

4推奨統制措置と判定根拠

安全運用のための推奨統制措置
Agent 向け
段階的・都度認可、サンドボックス推奨
管理者向け
承認フロー、ロールバック可能、全履歴監査
判定根拠(ファイルパスと抜粋)
  • scripts/: ローカルスクリプトまたはコマンドの実行: python3 "<vsc 技能目录>/scripts/discover_skills.py"(SKILL.md で指定された唯一のスクリプト。純粋な標準ライブラリを使用し、ファイルシステムに対しては読み取り専用)
監査ノート: ローカル Python スクリプトを内蔵していますが、ファイルシステム検出とハッシュ比較のみを実行します。外部へのネットワーク送信、認証情報の読み取り、ローカルへの書き込み、子プロセスの生成は一切行いません。「ローカル CLI の呼び出しのみ/ローカルの読み書きのみ」の基準に従い、青判定(Blue)に分類されます。留意事項:① ~/.agents/skills、~/.codex/skills、~/.claude/skills などのプロジェクトおよびユーザーディレクトリをスキャンするため、ローカルスキルのインストール状況の列挙に該当します(読み取り専用ですが、パス一覧が露出します)。② ルーティング結果は各スキルの SKILL.md テキストに依存します。ローカルのインストール内容が改ざんされた場合(needs_review/conflict 以外でスナップショットと一致した状態で毒入れされた場合)、エントリは信頼できない指示をコンテキストに読み込むことになります。ハッシュ比較は「スナップショットとの不一致」に対してのみ警告可能であり、改ざんされた同一のカタログスナップショット自体を自己証明することはできません。

5二重目の独立検証

  • [ok] 脚本行为 vs SKILL.md 描述的一致性 — 四态判定 available/missing/invalid/conflict 与 needs_review 在 discover() 中逐一可实现:found 空则 missing、errors 非空则 invalid、哈希多于一个则 conflict、否则 available 并比对 sha256。
  • [ok] catalog.json 成员面与「vsc 不入册」验证 — 实读 catalog.json:schema_version=1,skills 数组含 7 个叶子技能(character-candid-photography / codex-image-to-eagle / rare-style-explorer / shan-ze-school / summer-boyfriend-pov / vibeshot-candid-photography / virtual-couple-travel-vlog),无 vsc;load_catalog() 亦显式拒绝 name == "vsc"。
  • [ok] 搜索范围是否真如文档所述(不递归全盘) — default_roots() 只加入入口同级目录、最近项目的 .agents/.codex/.claude 下 skills、~/.agents/skills、CODEX_HOME/skills、~/.claude/skills;无 os.walk/rglob 全盘扫描。
  • [ok] 外部依赖条目反查 — 脚本 import 仅标准库;无 requirements、无网络库;README 亦说明『运行技能发现脚本需要 Python 3.10+,无需额外 Python 包』。
  • [ok] 安全结论反例搜索(写盘/子进程/网络) — 该目录 4 个文件逐 token 扫描:无 open(...,'w')/write_text/mkdir、无 subprocess/os.system、无 socket/urllib/requests;唯一 env 读取是 CODEX_HOME。
  • [ok] 路由边界说法与其他技能是否闭环 — vsc/SKILL.md 的路由示例(泳池边喝咖啡走生活抓拍、角色 COS n=10 走角色抓拍、泳装朋友视角单图走夏季 POV)与三个被指向技能各自的 vsc-distinction 描述一致,双向闭环。
  • [ok] 『不联网安装技能』承诺是否与仓库其它脚本冲突 — vsc 目录内无安装类代码;tools/build_vsc_catalog.py 是维护者工具(需 PyYAML),README 明确『维护工具需要 PyYAML,用户运行入口不需要安装它』,不构成入口运行期依赖。

6結論

  • マルチスキルリポジトリで最も一般的な課題を解決:ユーザーがスキル名を覚える必要がなく、エントリが成果物に基づいて1つを選択して直接実行するため、「おすすめリスト」でお茶を濁すことがありません。
  • ルーティングの判定基準(成果物/処理対象/既存の入力/除外範囲)が検証可能であり、キーワード単体では決定できないことを明記しているため、誤ルーティングを低減します。
  • インストールの曖昧さに対するエンジニアリング的解決:名前で最初の一致を取得するのではなく、sha256 比較によって conflict / needs_review を明示します。
  • 権限の不変条件が指示内に明記されており、ルーティングによって支払い、公開、削除などの新たな権限が持ち込まれることはありません。
  • 純粋な標準ライブラリ、オフライン動作、書き込みなし。Python が存在しない場合でもスナップショットを読み取るフォールバックパスがあります。
  • 最適な用途: 複数の VSC 創作スキルをインストールしているもののスキル名を覚えたくないユーザーに最適:作品について一言説明するだけでエントリが選定して直接実行します。また、スキルの作者やメンテナが discover_skills.py を使用してインストール場所と実際に使用されているバージョン(available/conflict/needs_review)をトラブルシューティングする際にも適しています。
    不向きな用途: エントリによる複数スキルの自動パイプライン連携を期待するユーザーには不向きです(オーケストレーションは明確に対象外)。vsc ディレクトリのみがインストールされ、創作スキルが導入されていない環境にも不向きです(README に記載の通り、vsc をコピーしても他のスキルは自動インストールされません)。また、コンテンツ審査は行わずファイルシステム検出とハッシュ比較のみを行うため、本ルーティングを「セキュリティゲートウェイ」として扱うシナリオにも不向きです。
    Install Agent-Ready
    ① Verified Mirror 2026-09-15
    Option A · Direct DownloadDownload vsc.tar.gz
    sha256: b9f7fae71ecb9783…
    Option B · Copy Guide for Agent
    install.json
    Agent はこの JSON ガイドから自動的にダウンロードして検証します。
    ② Upstream GitHub
    GitHub Repo ↗
    Pinned to commit fcee81beb6.