{
  "permissions": {
    "allow": [
      "Read(//*)",
      "WebFetch",
      "WebSearch",
      "Bash(cat //*)",
      "Bash(head //*)",
      "Bash(tail //*)",
      "Bash(ls //*)",
      "Bash(find //*)",
      "Bash(grep *)",
      "Bash(rg //*)",
      "Bash(wc *)",
      "Bash(diff //*)",
      "Bash(which //*)",
      "Bash(file //*)",
      "Bash(stat //*)",
      "Bash(readlink //*)",
      "Bash(lsof *)",
      "Bash(rtk read *)",
      "Bash(rtk ls *)",
      "Bash(rtk tree *)",
      "Bash(rtk find *)",
      "Bash(rtk grep *)",
      "Bash(rtk rg *)",
      "Bash(rtk wc *)",
      "Bash(rtk diff *)",
      "Bash(rtk json *)",
      "Bash(rtk log *)",
      "Bash(rtk deps *)",
      "Bash(rtk env *)",
      "Bash(rtk smart *)",
      "Bash(rtk gain *)",
      "Bash(bun ~/.pal/skills/*/tools/*.ts *)",
      "Bash(bun ~/.pal/tools/*.ts *)",
      "Bash(node --experimental-strip-types ~/.pal/skills/consulting-report/tools/generate-pdf.ts *)",
      "Bash(pal cli skill run *)",
      "Bash(pal cli algorithm-reflect *)",
      "Bash(pal cli algorithm-synthesize *)",
      "Bash(pal cli analyze *)",
      "Bash(pal cli handoff-note *)",
      "Bash(pal cli project *)",
      "Bash(pal cli relationship-note *)",
      "Bash(pal cli synthesize *)",
      "Bash(pal cli thread *)",
      "Bash(pal cli wisdom-frame *)"
    ]
  },
  "skillOverrides": {
    "claude-api": "off",
    "update-config": "off",
    "deep-research": "off",
    "code-review": "off"
  },
  "attribution": {
    "commit": "",
    "pr": "",
    "sessionUrl": false
  },
  "showClearContextOnPlanAccept": true,
  "respectGitignore": true,
  "spinnerTipsEnabled": true,
  "spinnerTipsOverride": {
    "tips": [
      "Need something reusable? Use the /create-skill command.",
      "PAL learns from your feedback and improves over time. Don't be shy to give feedback!",
      "For simple PDFs use the /create-pdf skill. Need a styled one? Use /consulting-report instead.",
      "Use the /research skill to run comprehensive web research with multiple parallel agents.",
      "Create presentations in HTML using the /presentation skill.",
      "PAL can \"see\" what you are doing in the browser with the /playwright skill.",
      "Want PAL to watch a youtube video? There's /analyze-youtube for that."
    ]
  },
  "hooks": {
    "SessionStart": [
      {
        "matcher": "",
        "hooks": [
          {
            "type": "command",
            "command": "bun run {{PKG_ROOT}}/src/hooks/LoadContext.ts --agent=claude"
          }
        ]
      },
      {
        "matcher": "compact",
        "hooks": [
          {
            "type": "command",
            "command": "bun run {{PKG_ROOT}}/src/hooks/CompactRecover.ts --agent=claude"
          }
        ]
      }
    ],
    "PreCompact": [
      {
        "matcher": "",
        "hooks": [
          {
            "type": "command",
            "command": "bun run {{PKG_ROOT}}/src/hooks/PreCompactPersist.ts --agent=claude"
          }
        ]
      }
    ],
    "UserPromptSubmit": [
      {
        "matcher": "",
        "hooks": [
          {
            "type": "command",
            "command": "bun run {{PKG_ROOT}}/src/hooks/UserPromptOrchestrator.ts --agent=claude"
          }
        ]
      }
    ],
    "PreToolUse": [
      {
        "matcher": "Bash|Write|Edit",
        "hooks": [
          {
            "type": "command",
            "command": "bun run {{PKG_ROOT}}/src/hooks/SecurityValidator.ts --agent=claude"
          }
        ]
      },
      {
        "matcher": "Skill",
        "hooks": [
          {
            "type": "command",
            "command": "bun run {{PKG_ROOT}}/src/hooks/SkillGuard.ts --agent=claude"
          }
        ]
      },
      {
        "matcher": "Bash",
        "hooks": [
          {
            "type": "command",
            "command": "bun run {{PKG_ROOT}}/src/hooks/RtkWrap.ts --agent=claude"
          }
        ]
      },
      {
        "matcher": "Write|Edit",
        "hooks": [
          {
            "type": "command",
            "command": "bun run {{PKG_ROOT}}/src/hooks/LedgerSnapshot.ts --agent=claude"
          }
        ]
      }
    ],
    "PostToolUse": [
      {
        "matcher": "Write|Edit",
        "hooks": [
          {
            "type": "command",
            "command": "bun run {{PKG_ROOT}}/src/hooks/LedgerCommit.ts --agent=claude"
          }
        ]
      }
    ],
    "PostToolUseFailure": [
      {
        "matcher": "Write|Edit",
        "hooks": [
          {
            "type": "command",
            "command": "bun run {{PKG_ROOT}}/src/hooks/LedgerUnapplied.ts --agent=claude"
          }
        ]
      }
    ],
    "PermissionDenied": [
      {
        "matcher": "Write|Edit",
        "hooks": [
          {
            "type": "command",
            "command": "bun run {{PKG_ROOT}}/src/hooks/LedgerUnapplied.ts --agent=claude"
          }
        ]
      }
    ],
    "Stop": [
      {
        "matcher": "",
        "hooks": [
          {
            "type": "command",
            "command": "bun run {{PKG_ROOT}}/src/hooks/StopOrchestrator.ts --agent=claude"
          }
        ]
      }
    ],
    "SessionEnd": [
      {
        "matcher": "prompt_input_exit|logout|other",
        "hooks": [
          {
            "type": "command",
            "command": "bun run {{PKG_ROOT}}/src/hooks/SessionClose.ts --agent=claude"
          }
        ]
      }
    ]
  },
  "autoMemoryEnabled": false
}
