mcpField
B
backend-principle-eng-cpp-pro-max

backend-principle-eng-cpp-pro-max

github.com/praxstack開発1104 回インストール5 日前に更新
リポジトリ

backend-principle-eng-cpp-pro-max について

backend-principle-eng-cpp-pro-maxは、C++バックエンドやインフラを担当するプリンシパルエンジニア向けの指針スキルです。設計、レビュー、テスト、インシデント対応で、正確性、メモリ安全性、予測可能な性能を優先します。

主な機能

  1. 01RAII、境界検査、不変条件の重視
  2. 02タイムアウト、バックプレッシャー、正常終了の設計
  3. 03安全な解析とビルド強化の指針
  4. 04レイテンシ、メモリ割り当て、可観測性への配慮
  5. 05サニタイザー、ファジング、負荷テストの活用

活用シーン

  1. 01C++バックエンドサービスの設計・リファクタリング
  2. 02メモリ安全性、並行性、レイテンシのレビュー
  3. 03高スループットなネットワーク・ストレージの構築
  4. 04性能劣化やインシデントの調査

インストール

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

$npx skills add https://github.com/praxstack/skills-and-personas --skill backend-principle-eng-cpp-pro-max

インストール後、Claude Code で/backend-principle-eng-cpp-pro-maxを入力して読み込まれたか確認します。

同梱ファイルreferences/cpp-core.md

詳細

バックエンドエンジニアリング原則 C++ Pro Max

C++ バックエンドシステム、低レイテンシサービス、インフラストラクチャ向けのプリンシパルレベルの指針です。正確性、メモリ安全性、予測可能なパフォーマンスを重視します。

適用する場面

  • C++ バックエンドサービスやインフラストラクチャの設計またはリファクタリング
  • メモリ安全性、並行性、レイテンシの回帰についてのコードレビュー
  • 高スループットのネットワーク、ストレージ、コンピューティングシステムの構築
  • インシデント対応とパフォーマンスの回帰

優先度モデル(高い順)

優先度カテゴリ目標指標
1正確性と未定義動作の回避未定義動作を発生させないRAII、不変条件、入力検証
2信頼性とレジリエンス負荷時も安全に失敗するタイムアウト、バックプレッシャー、グレースフルシャットダウン
3セキュリティ悪用を困難にする強化ビルド、安全なパース、最小権限
4パフォーマンスとレイテンシP99 を予測可能にする安定したアロケーション、上限付きキュー、安全な場合のゼロコピー
5可観測性と運用性迅速なトリアージトレース ID、構造化ログ、メトリクス
6スケーラビリティと進化安全な拡張ステートレス化、シャーディング、プロトコルのバージョニング
7ツールとテスト持続可能な開発速度サニタイザー、ファジング、CI ゲート

クイックリファレンス(ルール)

1. 正確性と未定義動作の回避(重大)
  • raii - RAII と決定的なライフタイムでリソースを所有する
  • no-raw-ownership - 生ポインターは非所有参照にのみ使用する
  • bounds - 境界でインデックスとサイズをすべて検証する
  • invariants - コアとなる不変条件と状態遷移をアサートする
  • time - 経過時間の計測には単調クロックを使用する
2. 信頼性とレジリエンス(重大)
  • timeouts - すべての外部呼び出しに明示的なタイムアウトを設定する
  • backpressure - 上限付きキューを使用し、負荷遮断を適用する
  • shutdown - 期限を設けて処理中の作業を完了させる
  • bulkheads - 依存先ごとにスレッドプールを分離する
3. セキュリティ(重大)
  • safe-parse - 信頼できない入力を検証し、安全でない文字列操作を避ける
  • harden - スタック保護、PIE、RELRO、FORTIFY を有効にしてコンパイルする
  • secrets - ログやコアダンプにシークレットを含めない
  • least-priv - 可能な場合は権限を下げ、サンドボックス化する
4. パフォーマンスとレイテンシ(高)
  • allocs - ホットパスでのアロケーションを最小限にする
  • copy - 不要なコピーを避け、ムーブまたはビューを優先する
  • cache - 局所性を高め、偽共有を避ける
  • io - 適切な場合は非同期 I/O を使用する
  • profiling - 最適化の前に測定する
5. 可観測性と運用性(高)
  • logs - リクエスト ID とトレース ID を含む構造化ログを使用する
  • metrics - RED/USE とビジネス KPI を使用する
  • tracing - スレッド間でトレースコンテキストを伝播する
  • crash - シンボル化されたクラッシュレポートとコアダンプのポリシーを整備する
6. スケーラビリティと進化(中)
  • stateless - 状態を外部化し、水平スケーリングを可能にする
  • partitioning - 安定したキーでシャード化する
  • versioning - プロトコルとスキーマをバージョニングする
  • limits - ペイロードとキューサイズに明示的な上限を設ける
7. ツールとテスト(中)
  • sanitizers - CI で ASan、UBSan、TSan を使用する
  • fuzzing - パーサーとプロトコルハンドラーをファジングする
  • tests - ユニットテスト、統合テスト、負荷テストを実施する
  • lint - clang-tidy、clang-format を使用し、警告をエラーとして扱う

実行ワークフロー

  1. レイテンシ/SLO、スループット、コストの予算を明確にする
  2. データフロー、スレッドモデル、障害モードを把握する
  3. インターフェースとメモリ所有権の契約を定義する
  4. 上限付きキューと明示的なタイムアウトを用いて実装する
  5. 可観測性とクラッシュ診断を追加する
  6. サニタイザー、ファジング、負荷テストで検証する
  7. リスクをレビューし、運用手順書を公開する

言語固有のガイダンス

ツールチェーンのデフォルト設定、並行処理パターン、強化については references/cpp-core.md を参照してください。

コメント