mcpField
L
library-selection

library-selection

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

library-selection について

Arduino ファームウェア開発者向けのライブラリ評価手順です。ハードウェア、アーキテクチャ、ツールチェーンの条件を先に確認し、適合性と影響を比較します。バージョン固定、コンパイル、実行時の検証も含みます。

主な機能

  1. 01ボードとツールチェーンの制約記録
  2. 02上流バージョン・ライセンス・対応アーキテクチャの確認
  3. 03API 適合性・使用量・動作の比較
  4. 04バージョン固定と選定理由の記録
  5. 05コンパイルと実行時動作の検証

活用シーン

  1. 01候補ライブラリ間の互換性評価
  2. 02対象ボードとフレームワークへの対応確認
  3. 03依存ライブラリのメモリ影響とライセンスの確認
  4. 04デバイス更新に向けた依存元情報の管理

インストール

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

$npx skills add https://github.com/wedsamuel1230/arduino-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 スキル契約を使用します。前提条件、必要なツールとバージョン、実装手順、検証段階ごとのテスト/証拠、既知の制限事項、復旧/セキュリティに関する注記を記載してください。

コメント