Sunglasses — AI skill for Claude Code
Open source input firewall for AI agents, beta.
How to install Sunglasses
This entry records only its repository, not the path inside it, so there is no
exact command to give. Open sunglasses-dev/sunglasses and copy the folder into
~/.claude/skills/, or the file into ~/.claude/agents/.
What Sunglasses does
Open source input firewall for AI agents, beta. A local scanner checks text, code, PDFs, images, QR codes, audio and video with 1,540 patterns across 118 categories and reports findings and incomplete scans. A Claude Code hook blocks credential leaks and policy violations before tools run.
Alternatives in AI
- AGENTS.md - Skill Seekers — Concise reference for AI coding agents 11.1k ★
- Generative Media Skills — Multi-modal Generative Media Skills for AI Agents (Claude Code, Cursor, Gemini CLI) 3k ★
- Qwen Audio Agent — A realtime voice runtime that keeps Agents talking, working, and present 2.3k ★
README
SUNGLASSES
[](https://github.com/sunglasses-dev/sunglasses/actions/workflows/pattern-integrity.yml) [](https://pypi.org/project/sunglasses/) [](https://github.com/sunglasses-dev/sunglasses/blob/main/.github/workflows/pattern-integrity.yml) [](LICENSE) [](https://pypistats.org/packages/sunglasses)
**Open source input firewall for AI agents, beta.** A local scanner checks text, code, PDFs, images, QR codes, audio and video with 1,540 patterns across 118 categories and reports findings and incomplete scans. A Claude Code hook blocks credential leaks and policy violations before tools run.
Sunglasses is a local, open-source scanner for text and supported files. It reports what it matched **and what it could not read**, so you can decide what to pass onward. It produces findings and an exit status; a CI job, a Claude Code hook or your own code acts on that result.
Four exit statuses, deliberately different signals:
| exit | meaning |
|---|---|
0 |
inspection completed in the supported scope, and nothing matched |
1 |
threat found — the inspection may still have been incomplete, and that is reported alongside |
3 |
incomplete — nothing matched in the part that was inspected; some component was not |
2 |
usage or operational error |
**`0` and `3` never collapse into each other.** "Everything I support reading here was read, and nothing matched" and "this format was not inspected" are different facts, and the second one is where agents get hurt. Exit `0` is not a guaran
Related Skills
Ezpzfile MCP
File tools for AI agents. Read and convert documents (DOCX, PDF, HWP, HWPX, EML), edit PDFs, resize, clean and
Oh My Dag
The orchestration layer under your coding agent. Turns work into a typed graph, runs one model per node, and t
AI Powered Multi Agent
Designed and developed a multi-agent AI system using LangGraph + CrewAI where autonomous agents collaborativel
Termpeek
Preview images, video, PDFs, code and diffs from inside an AI coding CLI that can't show them to you. Works wi
Google Jules Skill
Control Google Jules sessions via REST API and CLI, enabling session management, status checks, instructions,
Memory Lancedb Pro
Production-grade long-term memory system (v1.1.0-beta.8) for OpenClaw AI agents. Provides persistent, intellig
Related Agents
Media Orchestrator
Creates, optimizes, and orchestrates media assets — images (ResGrid, AVIF/WebP), video (clips, GIFs, Veo), aud
Product Extraction
Extracts structured product data (name, brand, price, SKU, vendor) from screenshots, PDFs, and catalog images.
Multimodal Looker
Analyze media files (PDFs, images, diagrams) that require interpretation beyond raw text. Extracts specific in