/audit-rules
audit ルールを閲覧、有効化、無効化、カスタマイズします。
$ npx -y skills add runkids/skillshare --agent claude-codeHow it fires
How this command gets triggered: by you, by Claude, or both.
- Fires itselfClaude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/audit-rules
Context preview
What this command does when you run it.
audit ルールを閲覧、有効化、無効化、カスタマイズします。
Command definition
audit-rules.mdsidebar_position: 4
audit rules
audit ルールを閲覧、有効化、無効化、カスタマイズします。
skillshare audit rules # インタラクティブ TUI ルールブラウザ
skillshare audit rules --no-tui # プレーンテキストのテーブル
skillshare audit rules --pattern credential-access # パターンでフィルタ
skillshare audit rules --severity high # 重大度でフィルタ
skillshare audit rules --disabled # 無効化されたルールのみ表示
skillshare audit rules --format json # JSON 出力
skillshare audit rules disable prompt-injection-0 # 単一ルールを無効化
skillshare audit rules disable --pattern credential-access # グループ全体を無効化
skillshare audit rules enable prompt-injection-0 # ルールを再有効化
skillshare audit rules enable --pattern credential-access # グループを再有効化
skillshare audit rules severity destructive-commands-2 medium # 単一ルールを引き下げ
skillshare audit rules severity --pattern destructive-commands low # グループ全体を引き下げ
skillshare audit rules reset # カスタムルールをすべて削除し、デフォルトに戻す
skillshare audit rules init # スターター用の audit-rules.yaml を作成
skillshare audit rules init -p # project レベルのルールファイルを作成
パターン単位のルール
`audit-rules.yaml` で、パターングループ全体を無効化またはオーバーライドできます。
rules:
# すべての credential-access ルールを無効化する
- pattern: credential-access
enabled: false
# ただし .env の検出は維持する
- id: credential-access-env-file
enabled: true
# すべての destructive-commands を MEDIUM に引き下げる
- pattern: destructive-commands
severity: MEDIUMパターン単位のエントリは `id` なしで `pattern` を使用します。マージ順序: まずパターン単位のルールが適用され、その後 id 単位のルールが、無効化されたグループ内の個々のエントリを上書きできます。
カスタムルール {#custom-rules}
YAML ファイルを使って audit ルールを追加、オーバーライド、無効化できます。ルールは **built-in → global user → project user** の順にマージされます。
コメント付きの例を含むスターターファイルを作成するには `--init-rules`(または `audit rules init`)を使用します。
skillshare audit --init-rules # グローバルなルールファイルを作成
skillshare audit -p --init-rules # project のルールファイルを作成
ファイルの場所
| スコープ | パス | |-------|------| | グローバル | `~/.config/skillshare/audit-rules.yaml` | | Project | `.skillshare/audit-rules.yaml` |
フォーマット
rules:
# 新しいルールを追加する
- id: my-custom-rule
severity: HIGH
pattern: custom-check
message: "Custom pattern detected"
regex: 'DANGEROUS_PATTERN'
# exclude 付きのルールを追加する(特定の行での一致を抑制する)
- id: url-check
severity: MEDIUM
pattern: url-usage
message: "External URL detected"
regex: 'https?://\S+'
exclude: 'https?://(localhost|127\.0\.0\.1)'
# 既存の built-in ルールをオーバーライドする(id で一致させる)
- id: destructive-commands-2
severity: MEDIUM
pattern: destructive-commands
message: "Sudo usage (downgraded to MEDIUM)"
regex: '(?i)\bsudo\s+'
# built-in ルールを無効化する
- id: insecure-http-0
enabled: false
# dangling-link 構造チェックを無効化する
- id: dangling-link
enabled: falseフィールド
| フィールド | 必須 | 説明 | |-------|----------|------| | `id` | はい | 安定した識別子。一致する ID は built-in ルールを上書きする。 | | `severity` | はい* | `CRITICAL`, `HIGH`, `MEDIUM`, `LOW`, または `INFO` | | `pattern` | はい* | ルールのカテゴリ名(例: `prompt-injection`) | | `message` | はい* | findings に表示される人間可読な説明 | | `regex` | はい* | 各行と照合する正規表現 | | `exclude` | いいえ | 行が `regex` と `exclude` の両方に一致した場合、finding は抑制される | | `enabled` | いいえ | `false` に設定するとルールを無効化する。無効化する場合は `id` のみが必要。 |
*`enabled: false` の場合を除き必須。
マージのセマンティクス
各レイヤー(global、次に project)は、前のレイヤーの上に適用されます。
- **同じ `id`** + `enabled: false` → ルールを無効化する
- **同じ `id`** + 他のフィールド → ルール全体を置き換える
- **新しい `id`** → カスタムルールとして追加する
- **`pattern` のみ**(`id` なし)+ `enabled: false` → そのパターンに一致するすべてのルールを無効化する
- **`pattern` のみ** + `severity` → 一致するすべてのルールの重大度を上書きする
- **パターンの後に id** → id 単位のエントリは、無効化されたパターングループ内の個々のルールを再有効化できる
実用的なテンプレート
実際のポリシー調整のための出発点として、これを使用してください。
rules:
# 教育用/リファレンス用の Skill 向けに hardcoded-secret を MEDIUM に引き下げる
- pattern: hardcoded-secret
severity: MEDIUM
# 内部の許可リストで built-in の suspicious-fetch を上書きする
- id: suspicious-fetch-0
severity: MEDIUM
pattern: suspicious-fetch
message: "External URL used in command context"
regex: '(?i)(curl|wget|invoke-webrequest|iwr)\s+https?://'
exclude: '(?i)https?://(localhost|127\.0\.0\.1|artifacts\.company\.internal|registry\.company\.internal)'
# ガバナンス例外: ノイズの多い insecure-http のシグナルを無効化する
- id: insecure-http-0
enabled: false`init` で始める
`audit rules init`(または `audit --init-rules`)は、コメントアウトされた例を含むスターター用の `audit-rules.yaml` を作成します。これをアンコメントして調整できます。
skillshare audit rules init # → ~/.config/skillshare/audit-rules.yaml
skillshare audit rules init -p # → .skillshare/audit-rules.yaml
生成されるファイルは次のようになります。
# Custom audit rules for skillshare.
# Rules are merged on top of built-in rules in order:
# built-in → global (~/.config/skillshare/audit-rules.yaml)
# → project (.skillshare/audit-rules.yaml)
#
# Each rule needs: id, severity, pattern, message, regex.
# Optional: exclude (suppress match), enabled (false to disable).
rules:
# Example: flag TODO comments as informational
# - id: flag-todo
# severity: MEDIUM
# pattern: todo-comment
# message: "TODO comment found"
# regex: '(?i)\bTODO\b'
# Example: disable a built-in rule by id
# - id: insecure-http-0
# enabled: false
# Example: disable the dangling-link structural check
# - id: dangling-link
# enabled: false
# Example: override a built-in rule (match by id, change severity)
# - id: destructive-commands-2
# severity: MEDIUM
# pattern: destructive-commands
# message: "Sudo usage (downgraded)"
# regex: '(?i)\bsudo\s+'
ファイルが既に存在する場合、`init` はエラーで終了します — 既存のルールを上書きすることはありません。
ワークフロー: 誤検知の修正
ルールをカスタマイズする一般的な理由は、正当な Skill が built-in ルールに引っかかる場合です。ステップバイステップの例を示します。
**1. audit を実行して誤検知を確認する:**
$ skillshare audit ci-helper
[1/1] ! ci-helper 0.2s
└─ HIGH: Destructive command pattern (SKILL.md:42)
"sudo apt-get install -y jq"**2. [built-in ルールのテーブル](#built-in-rule-ids)からルール ID を特定する:**
`sudo`
Read more
sidebar_position: 4
audit rules
audit ルールを閲覧、有効化、無効化、カスタマイズします。
skillshare audit rules # インタラクティブ TUI ルールブラウザ skillshare audit rules --no-tui # プレーンテキストのテーブル skillshare audit rules --pattern credential-access # パターンでフィルタ skillshare audit rules --severity high # 重大度でフィルタ skillshare audit rules --disabled # 無効化されたルールのみ表示 skillshare audit rules --format json # JSON 出力 skillshare audit rules disable prompt-injection-0 # 単一ルールを無効化 skillshare audit rules disable --pattern credential-access # グループ全体を無効化 skillshare audit rules enable prompt-injection-0 # ルールを再有効化 skillshare audit rules enable --pattern credential-access # グループを再有効化 skillshare audit rules severity destructive-commands-2 medium # 単一ルールを引き下げ skillshare audit rules severity --pattern destructive-commands low # グループ全体を引き下げ skillshare audit rules reset # カスタムルールをすべて削除し、デフォルトに戻す skillshare audit rules init # スターター用の audit-rules.yaml を作成 skillshare audit rules init -p # project レベルのルールファイルを作成
パターン単位のルール
`audit-rules.yaml` で、パターングループ全体を無効化またはオーバーライドできます。
rules:
# すべての credential-access ルールを無効化する
- pattern: credential-access
enabled: false
# ただし .env の検出は維持する
- id: credential-access-env-file
enabled: true
# すべての destructive-commands を MEDIUM に引き下げる
- pattern: destructive-commands
severity: MEDIUMパターン単位のエントリは `id` なしで `pattern` を使用します。マージ順序: まずパターン単位のルールが適用され、その後 id 単位のルールが、無効化されたグループ内の個々のエントリを上書きできます。
カスタムルール {#custom-rules}
YAML ファイルを使って audit ルールを追加、オーバーライド、無効化できます。ルールは **built-in → global user → project user** の順にマージされます。
コメント付きの例を含むスターターファイルを作成するには `--init-rules`(または `audit rules init`)を使用します。
skillshare audit --init-rules # グローバルなルールファイルを作成 skillshare audit -p --init-rules # project のルールファイルを作成
ファイルの場所
| スコープ | パス | |-------|------| | グローバル | `~/.config/skillshare/audit-rules.yaml` | | Project | `.skillshare/audit-rules.yaml` |
フォーマット
rules:
# 新しいルールを追加する
- id: my-custom-rule
severity: HIGH
pattern: custom-check
message: "Custom pattern detected"
regex: 'DANGEROUS_PATTERN'
# exclude 付きのルールを追加する(特定の行での一致を抑制する)
- id: url-check
severity: MEDIUM
pattern: url-usage
message: "External URL detected"
regex: 'https?://\S+'
exclude: 'https?://(localhost|127\.0\.0\.1)'
# 既存の built-in ルールをオーバーライドする(id で一致させる)
- id: destructive-commands-2
severity: MEDIUM
pattern: destructive-commands
message: "Sudo usage (downgraded to MEDIUM)"
regex: '(?i)\bsudo\s+'
# built-in ルールを無効化する
- id: insecure-http-0
enabled: false
# dangling-link 構造チェックを無効化する
- id: dangling-link
enabled: falseフィールド
| フィールド | 必須 | 説明 | |-------|----------|------| | `id` | はい | 安定した識別子。一致する ID は built-in ルールを上書きする。 | | `severity` | はい* | `CRITICAL`, `HIGH`, `MEDIUM`, `LOW`, または `INFO` | | `pattern` | はい* | ルールのカテゴリ名(例: `prompt-injection`) | | `message` | はい* | findings に表示される人間可読な説明 | | `regex` | はい* | 各行と照合する正規表現 | | `exclude` | いいえ | 行が `regex` と `exclude` の両方に一致した場合、finding は抑制される | | `enabled` | いいえ | `false` に設定するとルールを無効化する。無効化する場合は `id` のみが必要。 |
*`enabled: false` の場合を除き必須。
マージのセマンティクス
各レイヤー(global、次に project)は、前のレイヤーの上に適用されます。
- **同じ `id`** + `enabled: false` → ルールを無効化する
- **同じ `id`** + 他のフィールド → ルール全体を置き換える
- **新しい `id`** → カスタムルールとして追加する
- **`pattern` のみ**(`id` なし)+ `enabled: false` → そのパターンに一致するすべてのルールを無効化する
- **`pattern` のみ** + `severity` → 一致するすべてのルールの重大度を上書きする
- **パターンの後に id** → id 単位のエントリは、無効化されたパターングループ内の個々のルールを再有効化できる
実用的なテンプレート
実際のポリシー調整のための出発点として、これを使用してください。
rules:
# 教育用/リファレンス用の Skill 向けに hardcoded-secret を MEDIUM に引き下げる
- pattern: hardcoded-secret
severity: MEDIUM
# 内部の許可リストで built-in の suspicious-fetch を上書きする
- id: suspicious-fetch-0
severity: MEDIUM
pattern: suspicious-fetch
message: "External URL used in command context"
regex: '(?i)(curl|wget|invoke-webrequest|iwr)\s+https?://'
exclude: '(?i)https?://(localhost|127\.0\.0\.1|artifacts\.company\.internal|registry\.company\.internal)'
# ガバナンス例外: ノイズの多い insecure-http のシグナルを無効化する
- id: insecure-http-0
enabled: false`init` で始める
`audit rules init`(または `audit --init-rules`)は、コメントアウトされた例を含むスターター用の `audit-rules.yaml` を作成します。これをアンコメントして調整できます。
skillshare audit rules init # → ~/.config/skillshare/audit-rules.yaml skillshare audit rules init -p # → .skillshare/audit-rules.yaml
生成されるファイルは次のようになります。
# Custom audit rules for skillshare. # Rules are merged on top of built-in rules in order: # built-in → global (~/.config/skillshare/audit-rules.yaml) # → project (.skillshare/audit-rules.yaml) # # Each rule needs: id, severity, pattern, message, regex. # Optional: exclude (suppress match), enabled (false to disable). rules: # Example: flag TODO comments as informational # - id: flag-todo # severity: MEDIUM # pattern: todo-comment # message: "TODO comment found" # regex: '(?i)\bTODO\b' # Example: disable a built-in rule by id # - id: insecure-http-0 # enabled: false # Example: disable the dangling-link structural check # - id: dangling-link # enabled: false # Example: override a built-in rule (match by id, change severity) # - id: destructive-commands-2 # severity: MEDIUM # pattern: destructive-commands # message: "Sudo usage (downgraded)" # regex: '(?i)\bsudo\s+'
ファイルが既に存在する場合、`init` はエラーで終了します — 既存のルールを上書きすることはありません。
ワークフロー: 誤検知の修正
ルールをカスタマイズする一般的な理由は、正当な Skill が built-in ルールに引っかかる場合です。ステップバイステップの例を示します。
**1. audit を実行して誤検知を確認する:**
$ skillshare audit ci-helper
[1/1] ! ci-helper 0.2s
└─ HIGH: Destructive command pattern (SKILL.md:42)
"sudo apt-get install -y jq"**2. [built-in ルールのテーブル](#built-in-rule-ids)からルール ID を特定する:**
`sudo`
📚 Sync skills across all AI CLI tools with one command and simplify team sharing. Supporting Codex, Claude Code, OpenClaw & more
Repo: runkids/skillshare

