Agent Skills by ALSEL
Anthropic Claudeデータ・分析⭐ リポ 0品質スコア 50/100

zeroize-audit

C/C++/Rustのソースコード内で機密データのゼロ化処理が抜けている箇所を検出し、コンパイラ最適化によって除去されたゼロ化処理をアセンブリレベルの解析と制御フロー検証により特定します。シークレット・暗号鍵・パスワードなどの機密データを扱うコードのセキュリティ監査に活用してください。

description の原文を見る

Detects missing zeroization of sensitive data in source code and identifies zeroization removed by compiler optimizations, with assembly-level analysis, and control-flow verification. Use for auditing C/C++/Rust code handling secrets, keys, passwords, or other sensitive data.

SKILL.md 本文

zeroize-audit — Claude Skill

使用する場合

  • 暗号化実装の監査(鍵、シード、ノンス、秘密)
  • 認証システムのレビュー(パスワード、トークン、セッションデータ)
  • PIIまたは機密認証情報を扱うコードの分析
  • セキュリティ重要コードベースのセキュアなクリーンアップの検証
  • 機密データ処理のメモリセーフティの調査

使用しない場合

  • セキュリティフォーカスのない一般的なコードレビュー
  • パフォーマンス最適化(セキュアワイプと関連する場合を除く)
  • 機密データと関係ないリファクタリングタスク
  • 特定可能な秘密または機密値を含まないコード

目的

ソースコードの機密データのゼロ化漏れを検出し、コンパイラの最適化(例:デッドストア除去)によって削除または弱められたゼロ化を識別します。LLVM IR/アセンブリエビデンスは必須です。機能には以下が含まれます:

  • レジスタスピルとスタック保持のためのアセンブリレベル分析
  • 秘密コピーのデータフロー追跡
  • ヒープアロケータセキュリティ警告
  • ループアンローリングとSSA形式のセマンティックIR分析
  • パスカバレッジ検証のための制御フローグラフ分析
  • ランタイム検証テスト生成

スコープ

  • ターゲットコードベースに対して読み取り専用(監査対象コードを変更せず;分析成果物は一時的な作業ディレクトリに書き込まれます)
  • 構造化されたレポート(JSON)を生成
  • 有効なビルドコンテキスト(compile_commands.json)とコンパイル可能な翻訳単位が必要
  • 「最適化により削除」の検出結果は、コンパイラエビデンス(IR/アセンブリ差分)のみが許可

入力

完全なスキーマについては{baseDir}/schemas/input.jsonを参照してください。主要フィールド:

フィールド必須デフォルト説明
pathyesリポジトリルート
compile_dbnonullC/C++分析用のcompile_commands.jsonへのパス。cargo_manifestが設定されていない場合は必須。
cargo_manifestnonullRustクレート分析用のCargo.tomlへのパス。compile_dbが設定されていない場合は必須。
confignoヒューリスティックスと承認済みワイプを定義するYAML
opt_levelsno["O0","O1","O2"]IR比較用の最適化レベル。O1は診断レベル:ワイプがO1で消失すれば単純なDSE;O2はより積極的な除去をキャッチします。
languagesno["c","cpp","rust"]分析する言語
max_tusnoコンパイルDB から処理される翻訳単位の上限
mcp_modenopreferoffprefer、またはrequire — Serena MCP使用を制御します
mcp_required_for_advancednotrueMCPが利用不可の場合、SECRET_COPYMISSING_ON_ERROR_PATH、およびNOT_DOMINATING_EXITSneeds_reviewにダウングレード
mcp_timeout_msnoMCP セマンティッククエリのタイムアウト予算
poc_categoriesnoall 11 exploitablePoC を生成する検出結果カテゴリ。C/C++検出結果:11カテゴリすべて対応。Rust検出結果:MISSING_SOURCE_ZEROIZESECRET_COPY、およびPARTIAL_WIPEのみ対応;その他のRustカテゴリはpoc_supported=falseとマーク
poc_output_dirnogenerated_pocs/生成されたPoCの出力ディレクトリ
enable_asmnotrueアセンブリ生成と分析を有効にします(ステップ8);STACK_RETENTIONREGISTER_SPILLを生成。emit_asm.shが見つからない場合は自動無効化
enable_semantic_irnofalseセマンティックLLVM IR分析を有効にします(ステップ9);LOOP_UNROLLED_INCOMPLETEを生成
enable_cfgnofalse制御フローグラフ分析を有効にします(ステップ10);MISSING_ON_ERROR_PATHNOT_DOMINATING_EXITSを生成
enable_runtime_testsnofalseランタイムテストハーネス生成を有効にします(ステップ11)

前提条件

実行前に、以下を確認してください。それぞれ定義された失敗モードがあります。

C/C++前提条件:

前提条件不足時の失敗モード
compile_dbパスのcompile_commands.json高速失敗 — 進行しない
PATH上のclang高速失敗 — IR/ASM分析不可
PATH上のuvx(Serena用)mcp_mode=requireの場合:失敗。mcp_mode=preferの場合:MCPなしで継続;信頼度ゲーティングルールに従い影響を受ける検出結果をダウングレード
{baseDir}/tools/extract_compile_flags.py高速失敗 — TUごとのフラグ抽出不可
{baseDir}/tools/emit_ir.sh高速失敗 — IR分析不可
{baseDir}/tools/emit_asm.sh警告して、アセンブリ検出結果をスキップ(STACK_RETENTION、REGISTER_SPILL)
{baseDir}/tools/mcp/check_mcp.sh警告して、MCPが利用不可として扱う
{baseDir}/tools/mcp/normalize_mcp_evidence.py警告して、生のMCP出力を使用

Rust前提条件:

前提条件不足時の失敗モード
cargo_manifestパスのCargo.toml高速失敗 — 進行しない
cargo checkが成功する高速失敗 — クレートはビルド可能である必要があります
PATH上のcargo +nightly高速失敗 — MIRおよびLLVM IR生成にはnightlyが必要
PATH上のuv高速失敗 — Pythonスクリプト分析を実行するために必須
{baseDir}/tools/validate_rust_toolchain.sh警告 — プリフライトを手動で実行してください。すべてのツール、スクリプト、nightly、およびオプションでcargo checkを検証します。マシン可読出力用に--json、クレートがビルドされることも検証するには--manifestを使用
{baseDir}/tools/emit_rust_mir.sh高速失敗 — MIR分析不可(--opt--crate--bin/--lib対応;--outはファイルまたはディレクトリ可)
{baseDir}/tools/emit_rust_ir.sh高速失敗 — LLVM IR分析不可(--opt必須;--crate--bin/--lib対応;--out.llである必要があります)
{baseDir}/tools/emit_rust_asm.sh警告してアセンブリ検出結果をスキップ(STACK_RETENTIONREGISTER_SPILL)。--opt--crate--bin/--lib--target--intel-syntax対応;--out.sファイルまたはディレクトリ可
{baseDir}/tools/diff_rust_mir.sh警告してMIRレベルの最適化比較をスキップ。2つ以上のMIRファイルを受け入れ、正規化、ペアワイズ差分、ゼロ化/ドロップグル パターンが消失する最初の最適化レベルをレポート
{baseDir}/tools/scripts/semantic_audit.py警告してセマンティックソース分析をスキップ
{baseDir}/tools/scripts/find_dangerous_apis.py警告して危険なAPI スキャンをスキップ
{baseDir}/tools/scripts/check_mir_patterns.py警告してMIR分析をスキップ
{baseDir}/tools/scripts/check_llvm_patterns.py警告してLLVM IR分析をスキップ
{baseDir}/tools/scripts/check_rust_asm.py警告してRustアセンブリ分析をスキップ(STACK_RETENTIONREGISTER_SPILL、ドロップグル チェック)。check_rust_asm_x86.py(本番)またはcheck_rust_asm_aarch64.py試験的 — AArch64検出結果は手動検証が必要)にディスパッチ
{baseDir}/tools/scripts/check_rust_asm_x86.pycheck_rust_asm.pyがx86-64分析に必須;不足時は警告してスキップ
{baseDir}/tools/scripts/check_rust_asm_aarch64.pycheck_rust_asm.pyがAArch64分析に必須(試験的);不足時は警告してスキップ

共通前提条件:

前提条件不足時の失敗モード
{baseDir}/tools/generate_poc.py高速失敗 — PoC生成は必須

承認済みワイプAPI

以下は有効なゼロ化として認識されます。{baseDir}/configs/で追加エントリを設定してください。

C/C++

  • explicit_bzero
  • memset_s
  • SecureZeroMemory
  • OPENSSL_cleanse
  • sodium_memzero
  • 揮発性ワイプループ(パターンベース;{baseDir}/configs/default.yamlvolatile_wipe_patternsを参照)
  • IR内:llvm.memset(揮発性フラグ)、揮発性ストア、または除去不可能なワイプ呼び出し

Rust

  • zeroize::Zeroizeトレイト(zeroize()メソッド)
  • Zeroizing<T>ラッパー(ドロップベース)
  • ZeroizeOnDrop派生マクロ

検出結果機能

検出結果は必要なエビデンスごとにグループ化されます。必要なツール が利用可能な検出結果のみ試行してください。

検出結果ID説明必須要件PoC対応
MISSING_SOURCE_ZEROIZEソースにゼロ化が見つからないソースのみはい(C/C++ + Rust)
PARTIAL_WIPE不正なサイズまたは不完全なワイプソースのみはい(C/C++ + Rust)
NOT_ON_ALL_PATHS一部の制御フロー パス でゼロ化が不足(ヒューリスティック)ソースのみはい(C/C++のみ)
SECRET_COPY機密データがゼロ化追跡なしでコピーソース + MCP推奨はい(C/C++ + Rust)
INSECURE_HEAP_ALLOC秘密が非セキュアアロケータを使用(mallocと secure_malloc)ソースのみはい(C/C++のみ)
OPTIMIZED_AWAY_ZEROIZEコンパイラがゼロ化を削除IR差分必須(決してソースのみではない)はい
STACK_RETENTIONスタックフレームがリターン後に秘密を保持する可能性アセンブリ必須(C/C++);LLVM IRalloca+lifetime.endエビデンス(Rust);アセンブリ補強によりconfirmedにアップグレードはい(C/C++のみ)
REGISTER_SPILL秘密がレジスタからスタックにスピルアセンブリ必須(C/C++);LLVM IRload+呼び出しサイトエビデンス(Rust);アセンブリ補強によりconfirmedにアップグレードはい(C/C++のみ)
MISSING_ON_ERROR_PATHエラーハンドリングパスにクリーンアップが不足CFGまたはMCP必須はい
NOT_DOMINATING_EXITSワイプがすべての終了箇所を支配していないCFGまたはMCP必須はい
LOOP_UNROLLED_INCOMPLETEアンロールされたループワイプが不完全セマンティックIR必須はい

エージェント構成

分析パイプラインは8つのフェーズにおいて11のエージェントを使用します。これらはオーケストレータ({baseDir}/prompts/task.md)によりTask経由で呼び出されます。エージェントは永続的な検出結果ファイルを共有作業ディレクトリ(/tmp/zeroize-audit-{run_id}/)に書き込み、並列実行を可能にし、コンテキスト圧力から保護します。

エージェントフェーズ目的出力ディレクトリ
0-preflightフェーズ0プリフライトチェック(ツール、ツールチェーン、コンパイルDB、クレートビルド)、コンフィグ マージ、workdir作成、TU列挙{workdir}/
1-mcp-resolverフェーズ1、Wave 1(C/C++のみ)Serena MCPを介したシンボル、型、ファイル間参照の解決mcp-evidence/
2-source-analyzerフェーズ1、Wave 2a(C/C++のみ)機密オブジェクトの特定、ワイプ検出、正確性検証、データフロー/ヒープsource-analysis/
2b-rust-source-analyzerフェーズ1、Wave 2b(Rustのみ、2aと並列)Rustdoc JSON トレイト認識分析 + 危険なAPI grepsource-analysis/
3-tu-compiler-analyzerフェーズ2、Wave 3(C/C++のみ、TU ごとにN並列)TUごとのIR差分、アセンブリ、セマンティックIR、CFG分析compiler-analysis/{tu_hash}/
3b-rust-compiler-analyzerフェーズ2、Wave 3R(Rustのみ、単一エージェント)クレートレベルのMIR、LLVM IR、アセンブリ分析rust-compiler-analysis/
4-report-assemblerフェーズ3(暫定)+ フェーズ6(最終)すべてのエージェントから検出結果を収集、信頼度ゲートを適用;PoC結果をマージし最終レポート生成report/
5-poc-generatorフェーズ4ビスポーク検証コード(PoC)プログラムを作成(C/C++:すべてのカテゴリ;Rust:MISSING_SOURCE_ZEROIZE、SECRET_COPY、PARTIAL_WIPE)poc/
5b-poc-validatorフェーズ5すべてのPoCをコンパイルして実行poc/
5c-poc-verifierフェーズ5各PoCが主張する検出結果を証明することを検証poc/
6-test-generatorフェーズ7(オプション)ランタイム検証テストハーネス生成tests/

オーケストレータは{baseDir}/workflows/から一度に1つのフェーズあたりのワークフロー ファイルを読み込み、コンテキスト圧縮後の復旧用にorchestrator-state.jsonを保持します。エージェントはコンフィグを値ではなくファイルパス(config_path)で受け取ります。

実行フロー

フェーズ0: 0-preflight エージェント — プリフライト + コンフィグ + workdir作成 + TU列挙
           → orchestrator-state.json、merged-config.yaml、preflight.json を出力
フェーズ1: Wave 1:  1-mcp-resolver              (mcp_mode=off または language_mode=rust の場合スキップ)
         Wave 2a: 2-source-analyzer           (C/C++のみ;compile_db がない場合スキップ)  ─┐ 並列
         Wave 2b: 2b-rust-source-analyzer     (Rustのみ;cargo_manifest がない場合スキップ) ─┘
フェーズ2: Wave 3:  3-tu-compiler-analyzer x N  (C/C++のみ;TUごとに並列)
         Wave 3R: 3b-rust-compiler-analyzer   (Rustのみ;単一クレートレベルエージェント)
フェーズ3: Wave 4:  4-report-assembler          (mode=interim → findings.json;すべてのエージェント出力を読む)
フェーズ4: Wave 5:  5-poc-generator             (C/C++:すべてのカテゴリ;Rust:MISSING_SOURCE_ZEROIZE、SECRET_COPY、PARTIAL_WIPE;その他のRustカテゴリ:poc_supported=false)
フェーズ5: PoC検証と検証
           ステップ1: 5b-poc-validator エージェント      (すべてのPoCをコンパイルして実行)
           ステップ2: 5c-poc-verifier エージェント       (各PoCが主張する検出結果を証明することを検証)
           ステップ3: オーケストレータが AskUserQuestion 経由で検証失敗をユーザーに提示
           ステップ4: オーケストレータがすべての結果を poc_final_results.json にマージ
フェーズ6: Wave 6: 4-report-assembler           (mode=final → PoC結果をマージ、final-report.md)
フェーズ7: Wave 7: 6-test-generator             (オプション)
フェーズ8: オーケストレータ — final-report.md を返す

相互参照規約

ID は並列実行中の衝突を防ぐためにエージェントごとに名前空間化されます:

エンティティパターン割り当て者
機密オブジェクト(C/C++)SO-0001SO-49992-source-analyzer
機密オブジェクト(Rust)SO-5000SO-9999(Rust名前空間)2b-rust-source-analyzer
ソース検出結果(C/C++)F-SRC-NNNN2-source-analyzer
ソース検出結果(Rust)F-RUST-SRC-NNNN2b-rust-source-analyzer
IR検出結果(C/C++)F-IR-{tu_hash}-NNNN3-tu-compiler-analyzer
ASM検出結果(C/C++)F-ASM-{tu_hash}-NNNN3-tu-compiler-analyzer
CFG検出結果F-CFG-{tu_hash}-NNNN3-tu-compiler-analyzer
セマンティックIR検出結果F-SIR-{tu_hash}-NNNN3-tu-compiler-analyzer
Rust MIR検出結果F-RUST-MIR-NNNN3b-rust-compiler-analyzer
Rust LLVM IR検出結果F-RUST-IR-NNNN3b-rust-compiler-analyzer
Rustアセンブリ検出結果F-RUST-ASM-NNNN3b-rust-compiler-analyzer
翻訳単位TU-{hash}オーケストレータ
最終検出結果ZA-NNNN4-report-assembler

すべての検出結果JSONオブジェクトはrelated_objectsrelated_findings、およびevidence_filesフィールドを含み、エージェント間の相互参照を可能にします。


検出戦略

分析は2つのフェーズで実行されます。ステップバイステップのガイダンスについては、{baseDir}/references/detection-strategy.mdを参照してください。

フェーズステップ生成される検出結果必須ツール
フェーズ1(ソース)1–6MISSING_SOURCE_ZEROIZEPARTIAL_WIPENOT_ON_ALL_PATHSSECRET_COPYINSECURE_HEAP_ALLOCソース + コンパイルDB
フェーズ2(コンパイラ)7–12OPTIMIZED_AWAY_ZEROIZESTACK_RETENTIONREGISTER_SPILLLOOP_UNROLLED_INCOMPLETE†、MISSING_ON_ERROR_PATH‡、NOT_DOMINATING_EXITSclang、IR/ASMツール

* enable_asm=trueが必要(デフォルト) † enable_semantic_ir=trueが必要 ‡ enable_cfg=trueが必要


出力形式

各実行は2つの出力を生成します:

  1. final-report.md — 包括的なマークダウンレポート(主要な人間可読出力)
  2. findings.json{baseDir}/schemas/output.jsonに一致する構造化JSON(マシン処理および下流ツール用)

マークダウンレポート構造

マークダウンレポート(final-report.md)には、これらのセクションが含まれます:

  • ヘッダー:実行メタデータ(run_id、タイムスタンプ、リポジトリ、compile_db、コンフィグ概要)
  • エグゼクティブサマリー:重要度、信頼度、カテゴリ別の検出結果数
  • 機密オブジェクトインベントリ:すべての特定されたオブジェクトのテーブル(ID、型、場所)
  • 検出結果:重要度で、その後信頼度でグループ化。各検出結果には場所、オブジェクト、すべてのエビデンス(ソース/IR/ASM/CFG)、コンパイラエビデンスの詳細、推奨修正が含まれます
  • 後継検出結果:CFGに基づく検出結果に置き換えられたソース検出結果
  • 信頼度ゲートサマリー:適用されたダウングレードと拒否されたオーバーライド
  • 分析範囲:分析されたTU、エージェント成功/失敗、有効な機能
  • 付録:エビデンスファイル:検出結果IDからエビデンスファイルパスへのマッピング

構造化JSON

findings.jsonファイルは{baseDir}/schemas/output.jsonのスキーマに従います。各Findingオブジェクト:

{
  "id": "ZA-0001",
  "category": "OPTIMIZED_AWAY_ZEROIZE",
  "severity": "high",
  "confidence": "confirmed",
  "language": "c",
  "file": "src/crypto.c",
  "line": 42,
  "symbol": "key_buf",
  "evidence": "store volatile i8 0 count: O0=32, O2=0 — ワイプはDSEにより除去された",
  "compiler_evidence": {
    "opt_levels": ["O0", "O2"],
    "o0": "key_buf を対象とした32個の揮発性ストア",
    "o2": "0個の揮発性ストア(すべて除去された)",
    "diff_summary": "すべての揮発性ワイプストアはO2で削除 — 典型的なDSEパターン"
  },
  "suggested_fix": "memsetを explicit_bzero に置き換えるか、ワイプ後に compiler_fence(SeqCst) を追加します",
  "poc": {
    "file": "generated_pocs/ZA-0001.c",
    "makefile_target": "ZA-0001",
    "compile_opt": "-O2",
    "requires_manual_adjustment": false,
    "validated": true,
    "validation_result": "exploitable"
  }
}

完全なスキーマと列挙値については{baseDir}/schemas/output.jsonを参照してください。


信頼度ゲーティング

エビデンス閾値

検出結果がconfirmedとマークされるには、最低2つの独立したシグナルが必要です。1つのシグナルでlikelyとマーク。強いシグナルがない(名前パターンマッチのみ)場合はneeds_reviewとマーク。

シグナルには:名前パターンマッチ、型ヒントマッチ、明示的なアノテーション、IRエビデンス、ASMエビデンス、MCP相互参照、CFGエビデンス、PoC検証が含まれます。

PoC検証をエビデンスシグナルとして

すべての検出結果は、ビスポークPoCに対して検証されます。コンパイルと実行の後、各PoCも検証され、実際に主張された脆弱性をテストすることが確認されます。結合された結果はエビデンスシグナルです:

PoC結果検証済み影響
終了コード 0(exploitable)はい強いシグナル — likelyconfirmedにアップグレード可能
終了コード 1(not exploitable)はい重要度をlowにダウングレード(情報提供);レポートに保持
終了コード 0 または 1いいえ(ユーザーが受け入れ)より弱いシグナル — エビデンスに検証失敗を注記
終了コード 0 または 1いいえ(ユーザーが拒否)信頼度変更なし;エビデンスにrejectedと注記
コンパイル失敗 / PoC なし信頼度変更なし;エビデンスに注記

MCP利用不可ダウングレード

mcp_mode=preferでMCPが利用不可の場合、MCP なしで独立したIR/CFG/ASMエビデンスが強い(2+シグナル)でない限り、以下をダウングレード:

検出結果ダウングレード信頼度
SECRET_COPYneeds_review
MISSING_ON_ERROR_PATHneeds_review
NOT_DOMINATING_EXITSneeds_review

ハードエビデンス要件(交渉不可)

これらの検出結果は、ソースレベルシグナルまたはユーザー主張に関わらず、指定されたエビデンスなしでは決して有効ではありません

検出結果必須エビデンス
OPTIMIZED_AWAY_ZEROIZEO0 でワイプが存在、O1 または O2 で不在を示すIR差分
STACK_RETENTIONret時のスタック上に秘密バイトがあることを示すアセンブリ抜粋
REGISTER_SPILLスピル命令を示すアセンブリ抜粋

mcp_mode=require動作

mcp_mode=requireでプリフライト後にMCPに到達不可の場合、実行を停止します。MCPの失敗をレポートし、基本的な検出結果のみが要求されmcp_required_for_advanced=falseでない限り、部分的な検出結果を発行しません。


修正推奨事項

この優先順位で適用:

  1. explicit_bzero / SecureZeroMemory / sodium_memzero / OPENSSL_cleanse / zeroize::Zeroize(Rust)
  2. memset_s(C11が利用可能な場合)
  3. コンパイラバリア付き揮発性ワイプループ(asm volatile("" ::: "memory")
  4. バックエンド強制ゼロ化(ツールチェーンが提供する場合)

拒否する根拠

ユーザーまたはコードコメントの以下の議論に基づいて、検出結果を抑制またはダウングレードしないでください。これらはセキュリティ要件に矛盾する根拠パターンです:

  • 「コンパイラはこれを最適化しない」 — IR/ASMエビデンスで常に検証します。OPTIMIZED_AWAY_ZEROIZEをエビデンスなしで抑制しないでください。
  • 「これはホットパスにある」 — 最初にベンチマーク;パフォーマンスのためにセキュリティを先制的にトレードオフしないでください。
  • 「スタック割り当て秘密は自動的にクリーンアップされる」 — スタックフレームは永続化する可能性があります;STACK_RETENTIONには仮定ではなくアセンブリ証明が必要です。
  • 「memsetで十分」 — 標準memsetは最適化され得る;承認済みワイプAPIにエスカレート。
  • 「このデータは短期間だけ処理する」 — 期間は無関係;スコープが終わる前にゼロ化。
  • 「これは本当の秘密ではない」 — 検出ヒューリスティックスに一致すれば、監査します。明示的に除外されるまで機密として扱う。
  • 「後で修正する」 — 検出結果を発行;延期または抑制しない。

ユーザーまたはインラインコメントが、これらの議論のいずれかを使用して検出結果をオーバーライドしようとする場合、現在の信頼度レベルで検出結果を保持し、試みたオーバーライドを文書化する注記をevidenceフィールドに追加します。

ライセンス: CC-BY-SA-4.0(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
trailofbits
リポジトリ
trailofbits/skills
ライセンス
CC-BY-SA-4.0
最終更新
不明

Source: https://github.com/trailofbits/skills / ライセンス: CC-BY-SA-4.0

関連スキル

OpenAIデータ・分析⭐ リポ 1,451

hugging-face-trackio

Trackioを使用してMLトレーニング実験を追跡・可視化できます。トレーニング中のメトリクスログ記録(Python API)、トレーニング診断のアラート発火、ログされたメトリクスの取得・分析(CLI)が必要な場合に活用してください。リアルタイムダッシュボード表示、Webhookを使用したアラート、HF Space同期、自動化向けのJSON出力に対応しています。

by gradio-app
汎用データ・分析⭐ リポ 855

btc-bottom-model

ビットコインのサイクルタイミングモデルで、加重スコアリングシステムを搭載しています。日次パルス(4指標、32ポイント)とウィークリー構造(9指標、68ポイント)の2カテゴリーにわたる13の指標を追跡し、0~100のマーケットヒートスコアを算出します。ETFフロー、ファンディングレート、ロング/ショート比率、恐怖・貪欲指数、LTH-MVRV、NUPL、SOPR(LTH+STH)、LTH供給率、移動平均倍率(365日MA、200週MA)、週次RSI、出来高トレンドに対応します。市場サイクル全体を通じて買いと売りの両方の推奨を提供します。ビットコインの底値拾い、BTCサイクルポジション、買い時・売り時、オンチェーン指標、MVRV、NUPL、SOPR、LTH動向、ETFの流出入、ファンディングレート、恐怖指数、ビットコインが過熱状態か、マイナーコスト、暗号資産市場のセンチメント、BTCのポジションサイジング、「今ビットコインを買うべきか」「BTCが天井をつけているか」「オンチェーン指標は何を示しているか」といった質問の際にこのスキルを活用します。

by star23
Anthropic Claudeデータ・分析⭐ リポ 380

protein_solubility_optimization

タンパク質の溶解性最適化 - タンパク質の溶解性を最適化します。タンパク質の特性を計算し、溶解性と親水性を予測し、有効な変異を提案します。タンパク質配列の特性計算、タンパク質機能の予測、親水性計算、ゼロショット配列予測を含むタンパク質エンジニアリング業務に使用できます。3つのSCPサーバーから4つのツールを統合しています。

by SpectrAI-Initiative
Anthropic Claudeデータ・分析⭐ リポ 1,743

research-lookup

Parallel Chat APIまたはPerplexity sonar-pro-searchを使用して、最新の研究情報を検索できます。学術論文の検索にも対応しています。クエリは自動的に最適なバックエンドにルーティングされるため、論文の検索、研究データの収集、科学情報の検証に活用できます。

by K-Dense-AI
Anthropic Claudeデータ・分析⭐ リポ 299

tree-formatting

ggtree(R)またはiTOL(ウェブ)を使用して、系統樹の可視化とフォーマットを行います。系統樹を図として描画する際、ツリーレイアウトの選択、分類学に基づく枝やラベルの色付け、クレードの折りたたみ、サポート値の表示、またはツリーへのオーバーレイ追加が必要な場合に使用してください。系統推定(protein-phylogenyスキルを使用)やドメイン注釈(今後の独立したスキル)には使用しないでください。

by majiayu000
汎用データ・分析⭐ リポ 145

querying-indonesian-gov-data

インドネシア政府の50以上のAPIとデータソースに接続できます。BPJPH(ハラール認証)、BOM(食品安全)、OJK(金融適正性)、BPS(統計)、BMKG(気象・地震)、インドネシア中央銀行(為替レート)、IDX(株式)、CKAN公開データポータル、pasal.id(第三者法MCP)に対応しています。インドネシア政府データを活用したアプリ開発、.go.idウェブサイトのスクレイピング、ハラール認証の確認、企業の法的適正性の検証、金融機関ステータスの照会、またはインドネシアMCPサーバーへの接続時に使用できます。CSRF処理、CKAN API使用方法、IP制限回避など、すぐに実行可能なPythonパターンを含んでいます。

by suryast
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: trailofbits · trailofbits/skills · ライセンス: CC-BY-SA-4.0