Configure Audit
Interactive audit.yaml configuration for pi-ac-audit.
Compatibility Note
Use normal chat questions and confirmations for the interactive steps. Do not assume a separate prompt tool.
Trigger
/skill:ac-audit-configure-audit
Behavior
- Read the 3-tier config resolution and display the current effective config:
- Package defaults:
../../assets/config/audit.default.yaml - User-level:
~/.claude/audit.yaml - Project-level:
./audit.yaml(relative to project root)
- Package defaults:
- Display the current effective settings:
log_dir: audit log output directorylog_permissions: file permissions for log files (max0o600)max_words: word truncation limit forsystemMessagedisplaydisplay_tools: list of tools that triggersystemMessagein the UI
- Ask which setting(s) to customize.
- For each selected setting, present the current value and ask for changes:
log_dir: accept a directory path (supports~expansion)log_permissions: accept an octal value and validate<= 0o600max_words: accept a positive integerdisplay_tools: show the current list and ask for additions/removals
- Ask the target location: project-level (
./audit.yaml) or user-level (~/.claude/audit.yaml). - Generate or update the YAML file at the chosen location.
- Only write overrides; do not duplicate defaults.
- Deep-merge with existing content if the file already exists.
- Validate by loading the merged config and displaying the effective result.
Steps
1. Read ../../assets/config/audit.default.yaml
2. Read ~/.claude/audit.yaml (if it exists)
3. Read ./audit.yaml (if it exists)
4. Display the merged effective config as a table
5. Ask: "Which setting should be customized? (log_dir/log_permissions/max_words/display_tools/all)"
6. For each selected setting:
a. Show the current value
b. Ask for the new value (or skip)
c. For display_tools, show additions/removals explicitly
7. Ask: "Save to project-level or user-level? (project/user)"
8. Write YAML with overrides only
9. Re-read and display the new effective config
Constraints
- Never modify
../../assets/config/audit.default.yaml - Only write overrides; do not duplicate default values
- Validate
log_permissionsdoes not exceed0o600 - Validate
max_wordsis a positive integer - Preserve any existing file content by deep-merging updates