mcpField
L
library-selection

library-selection

github.com/wedsamuel1230開発2852 回インストール2 週間前に更新
リポジトリ

library-selection について

特定のボードやソフトウェア構成に使うファームウェアライブラリを選ぶスキルです。出典、互換性、依存関係、リソースへの影響を調べ、バージョンを固定してコンパイルと動作を検証します。

主な機能

  1. 01上流のソース・リリース・ライセンスを確認
  2. 02アーキテクチャとフレームワークの互換性を評価
  3. 03依存関係・リソース・ハードウェア前提を確認
  4. 04バージョンを固定し選定理由を記録
  5. 05コンパイルと動作チェックで検証

活用シーン

  1. 01ボードとフレームワークに合うライブラリ選定
  2. 02メモリやバスへの影響の評価
  3. 03依存バージョンと実行時動作の確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/wedsamuel1230/embedded-engineering-skills --skill library-selection

インストール後、Claude Code で/library-selectionを入力して読み込まれたか確認します。

詳細

ライブラリの選定

ライブラリは、ファームウェアとハードウェアの契約の一部として扱います。あるアーキテクチャでコンパイルできる人気のパッケージでも、別のアーキテクチャでは、ピン、タイマー、メモリ、バスに関する前提、または API に互換性がない場合があります。

受け入れ

正確なボード/モジュール、アーキテクチャ、Arduino コアまたはベンダー SDK、コンパイラー、ツールチェーン、必要な API、バス/ピンの制約、メモリ予算、ライセンスの適用範囲、更新ポリシー、およびデバイスが接続型か現場で更新可能かを記録します。

プロセス

  1. アップストリームのソース、リリース/タグ、ライセンス、対応アーキテクチャ、フレームワークの手順を確認します。一次リポジトリと最新のリリースノートを優先します。
  2. 候補の API との適合性、ボードのバリエーション、推移的依存関係、フラッシュ/SRAM/ヒープへの影響、ブロッキング動作、並行処理、バス/プルアップに関する前提、エラー/復旧動作を比較します。
  3. オープンな課題やメンテナンス状況を示す情報を確認します。ただし、スター数やインストール数を互換性の証明とみなしてはいけません。
  4. バージョンを固定し、来歴と選定理由を記録して、サポート対象外のボード/フレームワークの分岐を文書化します。
  5. 最小限のコンパイル用フィクスチャを実行し、その後、シミュレーションまたは対象環境での動作を確認します。

不合理な判断の正当化を防ぐ

安易な判断対応
「インストール数が多いです。」アーキテクチャ、コアのバージョン、API、ハードウェアの契約を確認します。
「最新バージョンが最適です。」リリースノート、互換性、フットプリント、リグレッションの履歴を確認します。
「I2C スキャナーで検出できました。」ライブラリの初期化、レジスターの読み取り、タイミング、エラー処理経路をテストします。
「AVR では動作しました。」ESP32/S3/Pico のアーキテクチャ、ピン、タイマー、メモリを再確認します。
「依存関係は単なるヘルパーです。」推移的なコードも含め、ライセンスとセキュリティを確認します。

検証

  • 候補の比較に、ソース、バージョン、アーキテクチャ、ライセンスが含まれています。
  • 最小コンパイルの出力に、正確な FQBN/環境と依存関係の解決結果が示されています。
  • メモリの差分と、ランタイムまたはシミュレーションでの動作確認結果を 1 件記録しています。
  • 接続型デバイスには、依存関係の更新計画とシークレットの取り扱い計画があります。

共通の出力契約

共通の Arduino スキル契約を使用します。前提条件、必要なツールとバージョン、実装手順、検証段階ごとのテスト/証拠、既知の制限事項、復旧/セキュリティに関する注記を記載してください。

コメント