Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add Proxy2021/Enso --skill photo_culling_toolgit clone --depth 1 https://github.com/Proxy2021/EnsoWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/proxy2021/enso/photo_culling_tool)<a href="https://agentmods.dev/skills/proxy2021/enso/photo_culling_tool"><img src="https://agentmods.dev/badge/skills/proxy2021/enso/photo_culling_tool/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/proxy2021/enso/photo_culling_tool"><img src="https://agentmods.dev/badge/skills/proxy2021/enso/photo_culling_tool.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00041 | $0.00720 |
| Opus 5.5 | $0.00016 | $0.00288 |
| Sonnet 5.5 | $0.00008 | $0.00144 |
| Haiku 4.5 | $0.00004 | $0.00072 |
Grade A, and why
photo_culling_tool scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 69 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Photo Culling Tool
AI-powered photo culling tool — scan shoot folders, auto-detect sharpest frames, flag blurry/eyes-closed shots, approve/reject with keyboard shortcuts, and export results
Available Tools
enso_photo_culling_tool_scan (primary)
Scan a folder of photos, extract EXIF, analyze sharpness, group bursts, and create a culling session. Use when the user says: 'cull my photos', 'scan shoot folder', 'open photo culling', 'analyze my shoot', 'find best shots'.
Parameters:
folderPath(string): Path to the folder containing photos to scanburstThresholdMs(number): Milliseconds between shots to group as burst (default: 3000)blurThreshold(number): Sharpness score below which images are flagged blurry (default: 50)skipFaces(boolean): Skip face/eyes-closed detection (default: false)rescan(boolean): Force rescan even if a session exists (default: false)
enso_photo_culling_tool_review
View current culling group with burst filmstrip, sharpness scores, and face flags. Use when navigating through the culling workflow.
Parameters:
groupIndex(number): Group index to jump toimageIndex(number): Image index within the group
enso_photo_culling_tool_decide
Approve, reject, or skip an image. Supports undo and group-level actions. Use for culling decisions.
Parameters:
action(string): Decision action: approve, reject, skip, undo, approve_group, reject_groupimagePath(string): Specific image path (optional, defaults to current)groupId(string): Group ID for group-level actions
enso_photo_culling_tool_navigate
Navigate between groups and images: next/prev group, next/prev image, jump to group.
Parameters:
direction(string): Navigation direction: next_group, prev_group, next_image, prev_image, jump_grouptargetIndex(number): Target group index for jump_group
enso_photo_culling_tool_export
Export culling decisions as JSON sidecar files. Optionally move rejected images to a subfolder.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 69 lines · 41 tokens per session scan A ef8dfd035374
photo_culling_tool is a skill published in the GitHub repository Proxy2021/Enso (6 stars, last pushed 5mo ago), licensed MIT. It adds 41 tokens to every session and 720 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
solopi-ai
A command-line framework for testing Android apps and devices with SoloPi, including on-device or cloud AI decision models. It manages devices, test cases, recorded interactions, replays, performance history, and evidence.
argent-tv-interact
Control and inspect TV apps via argent, Apple TV (tvOS), Android TV (leanback), and Amazon Fire TV (Vega). Boot the target, read focus, navigate with the D-pad remote, type, screenshot, and on Vega debug the JS runtime (evaluate, console logs, network inspector). Use when a task targets a TV (runtimeKind "tv", or…
manage-prs
Create, review, and merge GitHub pull requests and publish releases using repository Git rules. Use for requests to open a PR, push and create a PR, review PRs, merge a PR, or tag a release and write release notes.
flutter-feature-based-clean-architecture
Organize Flutter apps with modular feature-based clean architecture. Use when creating features under lib/features/ with domain, data, and presentation layers. Do not use for test-only, BlocBuilder, navigation, or spinner requests.
init-project
Turn this boilerplate into a new app by renaming it, removing sample files, and linking it to EAS. Use when starting a new app from this template, or when asked to init, bootstrap, or rename the project.
research
Use when the user asks you to research, compare, fact-check or find current information, and the answer should come with sources.