phx-permissions

Analyze session transcripts to recommend missing Bash permissions for settings.json.

537|38|Updated Feb 12, 2026
One-click install
npx skills add https://github.com/oliver-kriska/claude-elixir-phoenix --skill phx-permissions
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: phx-permissions
Source: https://github.com/oliver-kriska/claude-elixir-phoenix/tree/main/targets/codex/skills/phx-permissions
Command: npx skills add https://github.com/oliver-kriska/claude-elixir-phoenix --skill phx-permissions

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Repeatedly approving the same Bash commands during Claude Code sessions interrupts workflow. This Skill scans recent session transcripts to find commands you keep manually approving, cross-references them against your current settings.json, and recommends the missing permission entries.

Core Features & Use Cases

  • Session-Based Discovery: Extracts Bash commands from the last N days of session JSONL files and identifies which ones are not covered by existing permission patterns.
  • Risk Classification: Classifies each uncovered command as GREEN (auto-recommend), YELLOW (recommend with caution), or RED (never auto-allow, e.g. rm -rf, sudo, mix ecto.reset).
  • Settings Cleanup: Detects redundant entries, garbage patterns like Bash(done), and deprecated :* syntax, then merges approved changes without overwriting existing rules.
  • Use Case: After two weeks of Elixir development, run the analyzer to discover that mkdir, mise exec, and mix test were approved 150+ times combined, then add them to settings.json in one interactive triage pass.

Quick Start

Ask the assistant to run the phx-permissions analyzer with --days=14 and --dry-run to preview which Bash permissions should be added to settings.json.

Frequently Asked Questions about phx-permissions

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I stop repeated Bash permission prompts in Claude Code?

Scan your recent session transcripts to find commands you keep approving, then add them as patterns like Bash(mix test *) to the permissions.allow array in settings.json. This Skill automates that discovery and recommendation process.

How do I analyze Claude Code session JSONL files for command usage?

Run the included Python extraction script, which reads all project JSONL files from the last N days, matches each Bash command against your current permission patterns, and reports uncovered commands with usage counts.

What is the correct permission pattern format for Claude Code settings?

Use the format Bash(command *) with a space before the wildcard, for example Bash(git *). The older colon-star syntax like Bash(git:*) is deprecated and may not match reliably.

Which commands should never be auto-allowed in settings.json?

Never auto-allow destructive or privileged commands such as rm -rf, sudo, kill, curl piped to sh, mix ecto.reset, mix ecto.drop, and git push --force. These are classified as RED and always require manual approval.

Can I preview permission changes before writing to settings.json?

Yes, run the analyzer with the --dry-run flag to see the full recommendation table of additions, removals, and RED-level exclusions without modifying any settings file.