Agent Skills by ALSEL
Anthropic ClaudeLLM・AI開発⭐ リポ 0品質スコア 50/100

security-patterns

認証フロー、多層防御、入力バリデーション、OWASP Top 10、LLM安全対策、PII マスキングに関するセキュリティパターンを提供します。認証の実装、セキュリティレイヤーの構築、入力サニタイズ、脆弱性対策、プロンプトインジェクション防御、データ秘匿化などを行う際に活用してください。

description の原文を見る

Security patterns for authentication, defense-in-depth, input validation, OWASP Top 10, LLM safety, and PII masking. Use when implementing auth flows, security layers, input sanitization, vulnerability prevention, prompt injection defense, or data redaction.

SKILL.md 本文

セキュリティパターン

強化されたアプリケーション構築のための包括的なセキュリティパターン。各カテゴリは rules/ 内の個別のルールファイルを持ち、オンデマンドで読み込まれます。

クイックリファレンス

カテゴリルール数影響度使用場面
認証3CRITICALJWT トークン、OAuth 2.1/PKCE、RBAC/権限
多層防御2CRITICALマルチレイヤーセキュリティ、ゼロトラストアーキテクチャ
入力検証3HIGHスキーマ検証 (Zod/Pydantic)、出力エンコーディング、ファイルアップロード
OWASP Top 102CRITICALインジェクション防止、認証破壊の修復
LLM セキュリティ3HIGHプロンプトインジェクション防御、出力ガードレール、コンテンツフィルタリング
PII マスキング2HIGHPresidio、Langfuse、LLM Guard による PII 検出/編集
スキャニング3HIGH依存関係監査、SAST (Semgrep/Bandit)、シークレット検出
高度なガードレール2CRITICALNeMo/Guardrails AI バリデーター、レッドティーム、OWASP LLM

合計: 8 カテゴリ全体で 20 ルール

クイックスタート

# Argon2id パスワードハッシング
from argon2 import PasswordHasher
ph = PasswordHasher()
password_hash = ph.hash(password)
ph.verify(password_hash, password)
# JWT アクセストークン (15分有効期限)
import jwt
from datetime import datetime, timedelta, timezone
payload = {
    'sub': user_id, 'type': 'access',
    'exp': datetime.now(timezone.utc) + timedelta(minutes=15),
}
token = jwt.encode(payload, SECRET_KEY, algorithm='HS256')
// Zod v4 スキーマ検証
import { z } from 'zod';
const UserSchema = z.object({
  email: z.string().email(),
  name: z.string().min(2).max(100),
  role: z.enum(['user', 'admin']).default('user'),
});
const result = UserSchema.safeParse(req.body);
# Langfuse を使用した PII マスキング
import re
from langfuse import Langfuse

def mask_pii(data, **kwargs):
    if isinstance(data, str):
        data = re.sub(r'\b[\w.-]+@[\w.-]+\.\w+\b', '[REDACTED_EMAIL]', data)
        data = re.sub(r'\b\d{3}-\d{2}-\d{4}\b', '[REDACTED_SSN]', data)
    return data

langfuse = Langfuse(mask=mask_pii)

認証

OAuth 2.1、Passkeys/WebAuthn、JWT トークン、ロールベースアクセス制御を用いた安全な認証。

ルール説明
auth-jwt.mdJWT 作成、検証、有効期限、リフレッシュトークンローテーション
auth-oauth.mdOAuth 2.1 (PKCE、DPoP、Passkeys/WebAuthn)
auth-rbac.mdロールベースアクセス制御、権限デコレーター、MFA

主要な判断基準: Argon2id > bcrypt | アクセストークン 15 分 | PKCE 必須 | Passkeys > TOTP > SMS

多層防御

単一障害点のない多層セキュリティアーキテクチャ。

ルール説明
defense-layers.md8 層セキュリティアーキテクチャ (エッジから可視性まで)
defense-zero-trust.mdイミュータブルリクエストコンテキスト、テナント分離、監査ログ

主要な判断基準: イミュータブル dataclass コンテキスト | クエリレベルテナントフィルタリング | LLM プロンプトに ID を含めない

sandbox.network.deniedDomains (CC 2.1.113+)

Bash/WebFetch 発信前に強制されるネットワークレイヤーの拒否リスト — フック層の DENY_PATTERNS とペアで多層防御として機能します。設定例:

"sandbox": {
  "network": {
    "deniedDomains": ["*.evil.com", "pastebin.com", "transfer.sh"]
  }
}

ワイルドカード対応 (*.example.comevil.com/*/malicious/*)。プラグインは src/settings/ork.settings.json 内にベースラインリストを付属します。プロジェクト設定でこれを拡張できます。用途: プロンプトインジェクション流出シンク、既知の悪質なレジストリ、監査をバイパスするペーストサービス。

入力検証

Zod v4 と Pydantic を使用したすべての信頼できない入力の検証とサニタイゼーション。

ルール説明
validation-input.mdZod v4 と Pydantic を使用したスキーマ検証、型強制
validation-output.mdHTML サニタイゼーション、出力エンコーディング、XSS 防止
validation-schemas.md判別ユニオン、ファイルアップロード検証、URL ホワイトリスト

主要な判断基準: ブロックリストではなくホワイトリスト | 常にサーバー側で検証 | 拡張子ではなくマジックバイトで検証

OWASP Top 10

最も重大な Web アプリケーションセキュリティリスクに対する防止。

ルール説明
owasp-injection.mdSQL/コマンドインジェクション、パラメータ化クエリ、SSRF 防止
owasp-broken-auth.mdJWT アルゴリズム混同、CSRF 保護、タイミング攻撃

主要な判断基準: パラメータ化クエリのみ | JWT アルゴリズムをハードコード | SameSite=Strict クッキー

LLM セキュリティ

コンテキスト分離と出力検証を含む LLM 統合のセキュリティパターン。

ルール説明
llm-prompt-injection.mdコンテキスト分離、プロンプト監査、禁止パターン
llm-guardrails.md出力検証パイプライン: スキーマ、根拠、安全性、サイズ
llm-content-filtering.md事前 LLM フィルタリング、事後 LLM 属性付け、3 フェーズパターン

主要な判断基準: ID は LLM を通さず、その周辺を流す | 属性付けは決定的 | すべてのプロンプトを監査

コンテキスト分離 (CRITICAL)

機密 ID とデータは LLM を通さず、その周辺を流します。LLM はコンテンツのみを見て、エンティティへのマッピングはその後決定的に行われます。

# 正: ID は LLM をバイパス
context = {"user_id": user_id, "tenant_id": tenant_id}  # サーバー側で保持
llm_input = f"Summarize this document:\n{doc_text}"       # プロンプトに ID なし
llm_output = call_llm(llm_input)
result = {"summary": llm_output, **context}               # その後 ID を再度添付

出力検証パイプライン

すべての LLM レスポンスはユーザーに到達する前に 4 段階のガードレールパイプラインを通過する必要があります:

def validate_llm_output(raw_output: str, schema, sources: list[str]) -> str:
    # 1. スキーマ — 期待される構造に一致するか?
    parsed = schema.parse(raw_output)
    # 2. 根拠 — クレームは元のドキュメントで支持されているか?
    assert_grounded(parsed, sources)
    # 3. 安全性 — 毒性、PII 漏洩、プロンプト漏洩
    assert_safe(parsed, max_toxicity=0.5)
    # 4. サイズ — トークン爆弾レスポンスを防止
    assert len(parsed.text) < MAX_OUTPUT_CHARS
    return parsed.text

PII マスキング

LLM 可視性パイプラインとログの PII 検出と編集。

ルール説明
pii-detection.mdMicrosoft Presidio、正規表現パターン、LLM Guard Anonymize
pii-redaction.mdLangfuse マスクコールバック、structlog/loguru プロセッサー、Vault の匿名化解除

主要な判断基準: エンタープライズは Presidio | 型トークンで置換 | 初期化時にマスクコールバックを使用

スキャニング

依存関係、コード、シークレットの自動セキュリティスキャニング。

ルール説明
scanning-dependency.mdnpm audit、pip-audit、Trivy コンテナスキャニング、CI ゲーティング
scanning-sast.mdSemgrep と Bandit 静的分析、カスタムルール、プリコミット
scanning-secrets.mdGitleaks、TruffleHog、ベースライン管理付き detect-secrets

主要な判断基準: プリコミットフックで左シフト | Critical/High でブロック | Gitleaks + detect-secrets ベースライン

高度なガードレール

NeMo Guardrails、Guardrails AI バリデーター、DeepTeam レッドティーミングによる本番 LLM セキュリティ。

ルール説明
guardrails-nemo.mdNeMo Guardrails、Colang 2.0 フロー、Guardrails AI バリデーター、階層化検証
guardrails-llm-validation.mdDeepTeam レッドティーム (40+ 脆弱性)、OWASP LLM Top 10 準拠

主要な判断基準: フロー用 NeMo、バリデーター用 Guardrails AI | 毒性閾値 0.5 | リリース前のレッドティーム + 四半期ごと

管理フック階層 (CC 2.1.49)

プラグイン設定は 3 層の優先順位に従います:

ソースオーバーライド可能?
1. 管理 (プラグイン settings.json)プラグイン作成者がデフォルトを配信はい、ユーザーが可能
2. プロジェクト (.claude/settings.json)リポジトリ設定はい、ユーザーが可能
3. ユーザー (~/.claude/settings.json)個人設定最終的な権限

OrchestKit が配信するセキュリティフックは管理デフォルトです — ユーザーはそれを無効化できますが警告されます。エンタープライズ管理者は管理プロファイルを介して設定をロックできます。

アンチパターン (禁止)

# 認証
user.password = request.form['password']       # 平文パスワード保存
response_type=token                             # 暗黙的 OAuth グラント (廃止予定)
return "Email not found"                        # 情報開示

# 入力検証
"SELECT * FROM users WHERE name = '" + name + "'"  # SQL インジェクション
if (file.type === 'image/png') {...}               # Content-Type ヘッダーを信頼

# LLM セキュリティ
prompt = f"Analyze for user {user_id}"             # プロンプト内に ID
artifact.user_id = llm_output["user_id"]           # LLM 生成 ID を信頼

# PII
logger.info(f"User email: {user.email}")           # ログ内の生 PII
langfuse.trace(input=raw_prompt)                   # マスク解除された可視性データ

詳細ドキュメント

Read("${CLAUDE_SKILL_DIR}/references/<file>") でオンデマンド読み込み:

ファイル内容
oauth-2.1-passkeys.mdOAuth 2.1、PKCE、DPoP、Passkeys/WebAuthn
request-context-pattern.mdID フロー用のイミュータブルリクエストコンテキスト
tenant-isolation.mdテナントスコープリポジトリ、ベクトル/全文検索
audit-logging.mdサニタイズされた構造化ログ、コンプライアンス
zod-v4-api.mdZod v4 タイプ、強制、変換、改善
vulnerability-demos.mdOWASP の脆弱性対安全なコード例
context-separation.mdLLM コンテキスト分離アーキテクチャ
output-guardrails.md出力検証パイプライン実装
pre-llm-filtering.mdテナントスコープ検索、コンテンツ抽出
post-llm-attribution.md決定的な属性付けパターン
prompt-audit.mdプロンプト監査パターン、安全なプロンプトビルダー
presidio-integration.mdMicrosoft Presidio セットアップ、カスタム認識器
langfuse-mask-callback.mdLangfuse SDK マスク実装
llm-guard-sanitization.mdLLM Guard Anonymize/Deanonymize with Vault
logging-redaction.mdstructlog/loguru プリログ編集

関連スキル

  • api-design-framework - API セキュリティパターン
  • ork:rag-retrieval - テナントスコープ検索を必要とする RAG パイプラインパターン
  • llm-evaluation - 幻覚検出を含む出力品質評価

機能の詳細

authentication

キーワード: password、hashing、JWT、token、OAuth、PKCE、passkey、WebAuthn、RBAC、session 解決する問題:

  • モダン標準を使用した安全な認証の実装
  • 適切な有効期限を持つ JWT トークン管理
  • PKCE フロー付き OAuth 2.1
  • Passkeys/WebAuthn 登録とログイン
  • ロールベースアクセス制御

defense-in-depth

キーワード: defense in depth、security layers、multi-layer、request context、tenant isolation 解決する問題:

  • AI アプリケーションをエンドツーエンドで保護する方法
  • 8 層セキュリティアーキテクチャの実装
  • イミュータブルリクエストコンテキストの作成
  • クエリレベルでのテナント分離の確保

cc-subprocess-hardening (CC 2.1.98)

キーワード: subprocess、sandbox、PID namespace、env scrub、script caps 解決する問題:

  • 暴走フックスクリプトの制限: CLAUDE_CODE_SCRIPT_CAPS=100
  • サブプロセスから認証情報を削除: CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1
  • Linux でのサブプロセスサンドボックス用 PID 名前空間分離
  • バックスラッシュエスケープと複合コマンドによる Bash 権限昇格の防止

CC 2.1.128 — SDK ホスト "常に許可" の永続化: SDK ホスト内で Bash 権限プロンプトから "常に許可" を選択したユーザーの場合、付与はセッション終了時に蒸発するのではなく .claude/settings.local.json 経由で永続化するようになりました。.claude/settings.local.json.gitignore に含まれることを確認するように SDK コンシューマーの設定を監査してください — コミットするとデベロッパー別 Bash 認証付与がリークします。プロジェクトコミット済み .claude/settings.json は変更されません。ユーザー機械ローカルファイルのみが新しいエントリを受け取ります。

input-validation

キーワード: schema、validate、Zod、Pydantic、sanitize、HTML、XSS、file upload 解決する問題:

  • スキーマに対する入力検証 (Zod v4、Pydantic)
  • ホワイトリストを使用したインジェクション攻撃の防止
  • HTML のサニタイゼーションと XSS 防止
  • マジックバイトによるファイルアップロード検証

owasp-top-10

キーワード: OWASP、sql injection、broken access control、CSRF、XSS、SSRF 解決する問題:

  • OWASP Top 10 脆弱性の修復
  • SQL およびコマンドインジェクションの防止
  • CSRF 保護の実装
  • 認証破壊の修復

llm-safety

キーワード: prompt injection、context separation、guardrails、hallucination、LLM output 解決する問題:

  • プロンプトインジェクション攻撃の防止
  • コンテキスト分離 (LLM の周辺に ID) の実装
  • ガードレールパイプラインによる LLM 出力検証
  • 決定的な事後 LLM 属性付け

pii-masking

キーワード: PII、masking、Presidio、Langfuse、redact、GDPR、privacy 解決する問題:

  • LLM パイプラインの PII 検出と編集
  • Langfuse 可視性への編集の統合
  • プリログ編集の実装
  • GDPR 準拠データ処理

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

詳細情報

作者
yonatangross
リポジトリ
yonatangross/orchestkit
ライセンス
MIT
最終更新
不明

Source: https://github.com/yonatangross/orchestkit / ライセンス: MIT

関連スキル

OpenAILLM・AI開発⭐ リポ 6,054

agent-browser

AI エージェント向けのブラウザ自動化 CLI です。ウェブサイトとの対話が必要な場合に使用します。ページ遷移、フォーム入力、ボタンクリック、スクリーンショット取得、データ抽出、ウェブアプリのテスト、ブラウザ操作の自動化など、あらゆるブラウザタスクに対応できます。「ウェブサイトを開く」「フォームに記入する」「ボタンをクリックする」「スクリーンショットを取得する」「ページからデータを抽出する」「このウェブアプリをテストする」「サイトにログインする」「ブラウザ操作を自動化する」といった要求や、プログラマティックなウェブ操作が必要なタスクで起動します。

by JimmyLv
汎用LLM・AI開発⭐ リポ 1,982

anyskill

AnySkill — あなたのプライベート・スキルクラウド。GitHubを基盤としたリポジトリからエージェントスキルを管理、同期、動的にロードできます。自然言語でクラウドスキルを検索し、オンデマンドでプロンプトを自動ロード、カスタムスキルのアップロードと共有、スキルバンドルの一括インストールが可能です。OpenClaw、Antigravity、Claude Code、Cursorに対応しています。

by LeoYeAI
汎用LLM・AI開発⭐ リポ 1,982

engram

AIエージェント向けの永続的なメモリシステムです。バグ修正、意思決定、発見、設定変更の後はmem_saveを使用してください。ユーザーが「覚えている」「記憶している」と言及した場合、または以前のセッションと重複する作業を開始する際はmem_searchを使用します。セッション終了前にmem_session_summaryを使用して、コンテキストを保持してください。

by LeoYeAI
汎用LLM・AI開発⭐ リポ 21,584

skyvern

AI駆動のブラウザ自動化により、任意のウェブサイトを自動化できます。フォーム入力、データ抽出、ファイルダウンロード、ログイン、複数ステップのワークフロー実行など、ユーザーがウェブサイトと連携する必要があるときに使用します。Skyvernは、LLMとコンピュータビジョンを活用して、未知のサイトも自動操作可能です。Python SDK、TypeScript SDK、REST API、MCPサーバー、またはCLIを通じて統合できます。

by Skyvern-AI
汎用LLM・AI開発⭐ リポ 1,149

pinchbench

PinchBenchベンチマークを実行して、OpenClawエージェントの実世界タスクにおけるパフォーマンスを評価できます。モデルの機能テスト、モデル間の比較、ベンチマーク結果のリーダーボード提出、またはOpenClawのセットアップがカレンダー、メール、リサーチ、コーディング、複数ステップのワークフローにどの程度対応しているかを確認する際に使用します。

by pinchbench
汎用LLM・AI開発⭐ リポ 4,693

openui

OpenUIとOpenUI Langを使用してジェネレーティブUIアプリを構築できます。これらはLLM生成インターフェースのためのトークン効率的なオープン標準です。OpenUI、@openuidev、ジェネレーティブUI、LLMからのストリーミングUI、AI向けコンポーネントライブラリ、またはjson-render/A2UIの置き換えについて述べる際に使用します。スキャフォルディング、defineComponent、システムプロンプト、Renderer、およびOpenUI Lang出力のデバッグに対応しています。

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