CLAUDIT-SEC CLI

An audit script for macOS and Windows that shows what widens the agent's reach in Claude Desktop and changes nothing itself

  • 300 ★ on the repository
  • Last commit
  • Apache-2.0
CLI

Extended access

Why this level

  • The script runs with user rights and reads application configs, and as root it walks the profiles of all users
  • The report lists MCP server commands and environment variable names, so treat the HTML and JSON as sensitive files
All reasons and checks

harmonicsecurity/claudit-sec

Install

Manual install

git clone https://github.com/HarmonicSecurity/claudit-sec.git && cd claudit-sec && chmod +x claude_audit.sh && ./claude_audit.sh

macOS needs `jq`: `brew install jq`.

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • The script runs with user rights and reads application configs, and as root it walks the profiles of all users
  • The report lists MCP server commands and environment variable names, so treat the HTML and JSON as sensitive files

This is third-party code. Review the repository files before installing.

What it does

CLAUDIT-SEC reads the local Claude Desktop configuration and prints a report of what is set up and which parts widen the agent's reach. On macOS it is the zsh script `claude_audit.sh`, on Windows the PowerShell script `claude_audit.ps1`. The report opens with CoWork settings and MCP servers with their commands, arguments and environment variable names. DXT extensions with signature status, plugins with hooks and OAuth connectors follow. The script also collects skills from nine directories and scheduled tasks, with cron expressions translated to plain language. Each finding gets a level: WARN for what widens the attack surface, such as an unsigned extension, REVIEW where a human must decide, and INFO for reference. Secrets, OAuth tokens and API keys in the output are replaced with [REDACTED]. The report comes as colored terminal output, a standalone HTML page (`--html`) or structured JSON (`--json`) for a SIEM.

Who it is for. For security engineers and administrators of workstations with Claude Desktop.

Good fit when

  • You need an inventory of MCP servers, extensions and connectors on an employee laptop before or after Claude Desktop is rolled out
  • You want to find unsigned extensions, plugins with hooks and tasks that start without you
  • A SIEM needs JSON: the `--json` flag returns structure, and a multi-user machine yields an array
  • You must push the check through MDM, for example Jamf, Mosyle, FleetDM or Intune, and collect reports for all users
  • You are preparing a report for management and take the standalone HTML page with 0600 permissions

Not a fit when

  • You need to guard agent actions at run time: the script only reads configuration and blocks nothing
  • You need a review of project code or dependencies: the tool looks at application settings and ignores source code
  • Most of the work happens in the terminal Claude Code: its settings get a shallow check and the focus is on Desktop
  • You need solid Windows support: the Windows version is still being finished

Example request

Run `./claude_audit.sh --html` and tell me which unsigned extensions and scheduled tasks exist in my Claude Desktop.

Limitations

The macOS version needs jq and zsh, and Windows needs PowerShell 5.1 or newer, with that version still being finished. Checking a multi-user machine runs as root or administrator, otherwise only the current profile is read. The output does not replace human judgment: the REVIEW level means you must assess the finding yourself. There are no packages in registries, and the script runs from a clone. Before running it on a work machine, read the script in full: it is one file per platform and quick to review.

How to disable. There is nothing installed: delete the cloned claudit-sec folder. The script writes nothing into the audited files, and HTML and JSON reports stay wherever you saved them.

FAQ

How do I run CLAUDIT-SEC on macOS?

Clone the repository, run `chmod +x claude_audit.sh` and launch `./claude_audit.sh`. You need zsh and jq, which installs with `brew install jq`.

Does the script change anything in Claude settings?

No, it only reads. It makes no network requests. Files appear only with the `--html` and `--json` flags.

How do I get a report for a SIEM?

Run `./claude_audit.sh --json > audit.json`. Secrets in the JSON are already redacted, and a multi-user check returns an array.

Can I audit every user on the machine at once?

Yes, running as root checks everyone who has Claude data, and `--user name` limits the check to a single profile. On Windows `-AllUsers` does this and needs administrator rights.

Does the script check Claude Code?

Only shallowly: it reads `~/.claude/settings.json`. The main checks cover Claude Desktop, including its CoWork features. The built-in Code feature of Desktop and the terminal Claude Code are different things.

Discussion

No questions or reviews yet.

CLI tools

AgentShield audits the .claude folder for plaintext keys, broad permissions, dangerous hooks and risky MCP servers and grades the setup from A to F

CLIExtended access1.3KRepository stars

MCP-Shield finds your MCP configs, connects to servers and scans tool descriptions for hidden commands, exfiltration channels and tool shadowing

MCP serverBroad access555Repository stars

A marketplace of 22 hook plugins for Claude Code: safety, cost control, observability and automation

PluginExtended access567Repository stars

Claude Code settings and practices from Trail of Bits: sandbox, permissions, hooks, skills and MCP servers. It is a set of recommendations rather than a package

SkillExtended access2.1KRepository stars

A plugin and approval server for Claude Code and Codex: a risky tool call waits for your decision before it runs

PluginBroad access313Repository stars
Needs a VPN

An Anthropic GitHub Action that checks pull request changes for vulnerabilities with Claude and leaves comments

PluginExtended access6.6KRepository stars

Comparison with similar tools

Entries that share the main search query, and how they differ.

EntryOfficialRepository starsMain difference
CLAUDIT-SEC (this entry)no300
HOL Guardyes1,012checks agent commands as they run and holds risky actions for approval
Ship Safeno868scans code, dependencies and CI for vulnerabilities

README in short

Besides the README, the docs folder holds a findings reference: each check explains what it means, why it matters and what to do. The security properties are stated outright: the script only reads, makes no network calls and redacts secrets.

README badge

Report a problem

Foxx AICLAUDIT-SEC
Foxx AI

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.