计划执行与检查节点
executing-plans
按既定实施计划完成工作,保持过程检查和反馈。
render-icon-pipeline【效率与协作】既存のグリフからアイコンをレンダリングするためにvizパイプラインを実行する。パレット 生成、データ構築、マニフェスト作成、スキル・エージェント・チームのアイコンレンダリングを カバーするvizサブプロジェクトのエントリポイント。常に build.sh をパイプラインの エントリポイントとして使用し、Rscript を直接呼び出さない。
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
既存のグリフからアイコンをレンダリングするためにvizパイプラインをエンドツーエンドで実行する。パレット生成、データ構築、マニフェスト作成、スキル・エージェント・チームのアイコンレンダリングをカバーする。
正規のエントリポイント: プロジェクトルートから bash viz/build.sh [flags]、または viz/ から bash build.sh [flags]。このスクリプトはプラットフォーム検出(WSL、Docker、ネイティブ)、Rバイナリの選択、ステップの順序付けを処理する。ビルドスクリプトに対して Rscript を直接呼び出してはならない — そのパスは MCP サーバー構成専用である。
skill、agent、team、または all(デフォルト: all)all(デフォルト: all)git、design)full、incremental、または dry-run(デフォルト: incremental)レンダリングのための環境が整っていることを確認する。
viz/build.sh の存在を確認する:
ls -la viz/build.sh
node --version
viz/config.yml が存在することを確認する(プラットフォーム固有のRパスプロファイル):
ls viz/config.yml
build.sh はRバイナリの解決を自動的に処理する — Rパスを手動で検証する必要はない。WSL では /usr/local/bin/Rscript(WSL ネイティブ R)を使用し、Docker ではコンテナの R を使用し、ネイティブの Linux/macOS では PATH から Rscript を使用する。
期待される結果: build.sh、Node.js、config.yml が存在する。
失敗時: config.yml が不足している場合、パイプラインはシステムデフォルトにフォールバックする。Node.jsが不足している場合はnvm経由でインストールする。
build.sh は 5 つのステップを順番に実行する:
palette-colors.json + colors-generated.jsskills.jsonicon-manifest.json、agent-icon-manifest.json、team-icon-manifest.jsonicons/ および icons-hd/ の WebP ファイルcli/lib/glyph-data.jsonフルパイプライン(全タイプ、全パレット、標準 + HD):
bash viz/build.sh
インクリメンタル(ディスク上に既に存在するアイコンをスキップ):
bash viz/build.sh --skip-existing
単一ドメイン(スキルのみ):
bash viz/build.sh --only design
単一エンティティタイプ:
bash viz/build.sh --type skill
bash viz/build.sh --type agent
bash viz/build.sh --type team
ドライラン(レンダリングなしのプレビュー):
bash viz/build.sh --dry-run
標準サイズのみ(HDをスキップ):
bash viz/build.sh --no-hd
build.sh の後のすべてのフラグは build-all-icons.R にパススルーされる。
期待される結果: アイコンが viz/public/icons/<palette>/ と viz/public/icons-hd/<palette>/ にレンダリングされる。
失敗時:
.Rprofile は renv/activate.R をバイパスし、.libPaths() を直接設定する。viz/ から実行することを確認する(build.sh は cd "$(dirname "$0")" により自動的にこれを行う)build.sh が選択する R 環境から Rscript -e "install.packages(c('ggplot2', 'ggforce', 'ggfx', 'ragg', 'magick', 'future', 'furrr', 'digest'))" を実行するcreate-glyph スキルを使用するレンダリングが正常に完了したことを確認する。
find viz/public/icons/cyberpunk -name "*.webp" | wc -l
find viz/public/icons-hd/cyberpunk -name "*.webp" | wc -l
audit-icon-pipeline スキルを実行する期待される結果: ファイル数がマニフェストのエントリ数と一致する。ファイルサイズが想定範囲内。
失敗時: カウントが一致しない場合、レンダリング中に一部のグリフがエラーになった可能性がある。ビルドログの [ERROR] 行を確認する。
すべてのフラグは build.sh を通じて build-all-icons.R にパススルーされる:
| Flag | Default | 説明 |
|---|---|---|
--type <types> | all | カンマ区切り: skill, agent, team |
--palette <name> | all | 単一パレットまたは all(9パレット) |
--only <filter> | なし | ドメイン(スキル)またはエンティティID(エージェント/チーム) |
--skip-existing | オフ | 既存のWebPファイルがあるアイコンをスキップ |
--dry-run | オフ | 生成されるものを一覧表示 |
--size <n> | 512 | 出力寸法(ピクセル) |
--glow-sigma <n> | 4 | グローぼかし半径 |
--workers <n> | 自動 | 並列ワーカー数(detectCores()-1) |
--no-cache | オフ | コンテンツハッシュキャッシュを無視 |
--hd | オン | HDバリアント(1024px)を有効化 |
--no-hd | オフ | HDバリアントをスキップ |
--strict | オフ | 最初のサブスクリプト失敗時に終了 |
参照のみ — これらのステップを手動で実行しないこと:
cd viz/
# 1. Platform detection: sets R_CONFIG_ACTIVE (wsl, docker, or unset)
# 2. R binary selection: WSL → /usr/local/bin/Rscript, Docker → same, native → Rscript
# 3. $RSCRIPT generate-palette-colors.R
# 4. node build-data.js
# 5. node build-icon-manifest.js --type all
# 6. $RSCRIPT build-all-icons.R "$@" (flags passed through)
# 7. node build-terminal-glyphs.js
パイプラインはDocker内でも実行可能:
cd viz
docker compose up --build
これは分離されたLinux環境でフルパイプラインを実行し、ポート8080で結果を提供する。
bash viz/build.sh を実行した(裸の Rscript ではない)Rscript build-icons.R や Rscript generate-palette-colors.R を手動で実行してはならない。常に bash build.sh [flags] を使用する。Rscript を直接呼び出すと、プラットフォーム検出がバイパスされ、誤ったRバイナリが使用される可能性がある(/usr/local/bin/Rscript の WSL ネイティブ R ではなく、~/bin/Rscript ラッパー経由の Windows R が使用される)。注意: CLAUDE.md およびガイド内の Windows R パスはMCP サーバー構成専用であり、ビルドスクリプト用ではない。build.sh は自動的に自身のディレクトリに cd する(cd "$(dirname "$0")")ため、どこからでも呼び出せる: プロジェクトルートからの bash viz/build.sh は正しく動作する。build.sh はステップ 1-5 を順番に実行するため、マニフェストはレンダリング前に常に再生成される。レンダリングなしでマニフェストだけが必要な場合は、node viz/build-data.js && node viz/build-icon-manifest.js を使用する(Node のステップには R は不要)。.Rprofile の回避策は viz/ からの実行を必要とする — build.sh がこれを処理する。--vanilla フラグの使用や別のディレクトリからの R の実行はスキップされる。config.yml を通じて multisession を自動選択する。