Works with the AI Agents you already use
Sensitive Data Sanitizer
Find and mask secrets, credentials, and PII in logs and code using a local-first, pattern-based sanitization workflow.
Free
Sensitive Data Sanitizer
Example session with this skill installed
I need to share this web server log with a vendor but it has customer emails and internal IP addresses in it. Can you sanitize access.log for me?
- Read your context and instructions
- Compiled the sensitive data sanitizer
I have processed access.log using the local sanitizer script. A new file access.log.sanitized has been created. I have only read the sanitized version to ensure no sensitive data entered this session.
Sanitized: access.log -> access.log.sanitized
Masked: 14 values across 3 categories
| Category | Count | Lines |
|---|---|---|
| 8 | 4, 5, 12, 15, 16, 18, 22, 23 | |
| internal_ip | 4 | 1, 2, 8, 9 |
| credential | 2 | 12, 15 |
Needs review: High-entropy string on line 42 (possible session hash).
Manual pass: Masked 2 internal project codenames on lines 5 and 10.
Not covered: none
Action needed: Credential patterns were found on lines 12 and 15. If these represent active production tokens, they must be rotated immediately as they have been exposed in the source log.
access.log.sanitized
10.0.0.1 - - [12/Oct/2025:14:00:01 +0000] "GET /api/v1/user/<EMAIL_1> HTTP/1.1" 200
<INTERNAL_IP_1> - - [12/Oct/2025:14:00:05 +0000] "POST /auth/login HTTP/1.1" 401
...
192.168.1.45 - - [12/Oct/2025:14:05:22 +0000] "GET /debug?token=<CREDENTIAL_1> HTTP/1.1" 200
Next steps
- Review line 42 in the sanitized file to decide if the session hash should be masked.
- Verify that the
<INTERNAL_IP>placeholders provide enough context for your vendor to debug the routing issue. - Confirm the rotation of the tokens found on lines 12 and 15.
Connects securely to your tools. The creator never sees your data.
About this skill
Stop leaking secrets in logs and code snippets. Sharing raw debugging data with AI assistants, vendors, or public tickets often leads to accidental exposure of credentials and PII. This skill provides a systematic way to identify, mask, and report sensitive data without compromising the utility of the file.
What it does
- Multi-category detection finds credentials, API keys, emails, IP addresses, and financial identifiers across text-based files.
- Consistent masking replaces sensitive values with stable placeholders like
<EMAIL_1>, ensuring relationships remain visible for debugging. - Local-first processing uses a bundled Python script to sanitize files on your machine before they are ever read by the LLM.
- Structural preservation keeps key names, punctuation, and line counts intact so sanitized files remain parsable and valid.
- Safety reporting generates a summary of findings by category and line number without ever repeating the redacted values.
How it works
- Identify the source and the destination (e.g., public repo, internal ticket, or AI chat) to set the strictness level.
- Execute the sanitizer script against a file or directory to create a separate
.sanitizedversion. - Review the findings report to verify masked counts and identify any high-entropy strings flagged for manual review.
- Perform a contextual pass to catch names, addresses, or project codenames that pattern matching might miss.
Frameworks & tools
Uses a Python 3.8+ script with standard library dependencies. Works with logs, source code, CSVs, and configuration files.
Why this beats prompting it yourself
Generic "redact this" prompts often hallucinate new data, miss edge cases like high-entropy strings, or accidentally repeat the secret in the summary. This skill enforces a "never read before redacting" workflow and uses stable, numbered placeholders that maintain technical context for troubleshooting.
Use cases
- Log sanitization for sharing production errors with external support vendors.
- Config scrubbing before committing templates or example files to public repositories.
- PII removal from CSV exports or database dumps before data analysis.
- Safe AI prompting to ensure keys and tokens are stripped before pasting code into a chat interface.
Known limitations
Supports text-based files only. Cannot sanitize images, PDFs, office documents, or archives. Does not detect IPv6 or short-format phone numbers. Manual review is required for names and free-form text.
How to use
- 1
Connect your agent to the Agensi MCP
Copy the prompt and paste it into Claude, ChatGPT, Cursor or any agent that supports MCP. It sets up the connection for you. Manual setup
- 2
Sign in to Agensi
Your agent shows a sign-in link. Sign in and click Allow.
- 3
Ask for what you need
Your agent loads this skill and uses it on your task. It always asks before any payment.
Reviews
No reviews yet
Be one of the first to try it. Every listed skill passes our trust checks below.
Security scanned
Passed our 8-point scan before listing
1 install
Downloaded by developers to date
Free forever
No account required to browse
Trust & safety
Security scanned
Verified clean 18 days ago
- Free to download with an account