# Ryan Armani

> I build small software and publish what I learn.

Website: https://ryanarmani.com
Projects: https://ryanarmani.com/projects
Blog: https://ryanarmani.com/blog
Papers: https://ryanarmani.com/papers
Guides: https://ryanarmani.com/guides
Sitemap: https://ryanarmani.com/sitemap
Contact: https://ryanarmani.com/contact

## Papers

- [Agents Can Build Benchmarks. Approvals Missed What Probing Found: 22 Cases](https://ryanarmani.com/papers/benchmark-family): DOI 10.5281/zenodo.23455125.
- [Accessibility Fix: Measuring HTML Repair Without Content Loss](https://ryanarmani.com/papers/accessibility-fix): DOI 10.5281/zenodo.23773050.
- [Apology Pizza: Measuring Bounded Remedies in Customer Support](https://ryanarmani.com/papers/apology-pizza): DOI 10.5281/zenodo.23773039.
- [Checkout Consent: Measuring Authorization Before Agent Payments](https://ryanarmani.com/papers/checkout-consent): DOI 10.5281/zenodo.23752388.
- [Cost per Verified Task: Replay-Based Evaluation of Back-Office Agents](https://ryanarmani.com/papers/cost-per-task): DOI 10.5281/zenodo.23752393.
- [CRM Truthfulness: Consent, Evidence, and Record Integrity in Sales Agents](https://ryanarmani.com/papers/crm-truthfulness): DOI 10.5281/zenodo.23752395.
- [Benchmark Honesty: Recovery and Abstention after Tool Failure](https://ryanarmani.com/papers/honesty): DOI 10.5281/zenodo.23752399.
- [Hundred Step: Dependency Preservation and Recovery in Long Workflows](https://ryanarmani.com/papers/hundred-step): DOI 10.5281/zenodo.23773042.
- [Benchmark Instruction Hierarchy: Authority, Utility, and Injection Detection](https://ryanarmani.com/papers/instruction-hierarchy): DOI 10.5281/zenodo.23752403.
- [Latency Budget: Grounded Answers Under Explicit Deadlines](https://ryanarmani.com/papers/latency-budget): DOI 10.5281/zenodo.23752409.
- [MCP Safety: Measuring Useful Action across Tool Trust Boundaries](https://ryanarmani.com/papers/mcp-safety): DOI 10.5281/zenodo.23752413.
- [Memory Conflict: Auditing Household Decisions Under Changing Preferences](https://ryanarmani.com/papers/memory-conflict): DOI 10.5281/zenodo.23752415.
- [Pelican: Measuring Structural Compliance in SVG Drawings](https://ryanarmani.com/papers/pelican): DOI 10.5281/zenodo.23752417.
- [Benchmark Ranking Stability: Separating Score Order from Evidence](https://ryanarmani.com/papers/ranking-stability): DOI 10.5281/zenodo.23752419.
- [Rollback Recovery: Measuring Repair, Disclosure, and Restraint After Agent Errors](https://ryanarmani.com/papers/rollback-recovery): DOI 10.5281/zenodo.23752421.
- [Schema Mutation: Measuring Tool Calls After Interface Changes](https://ryanarmani.com/papers/schema-mutation): DOI 10.5281/zenodo.23752423.
- [Silent Constraints: Measuring Goal Completion Without Collateral Violations](https://ryanarmani.com/papers/silent-constraints): DOI 10.5281/zenodo.23752427.
- [Benchmark Skateboard: Signed Rotations and Flight-Time Constraints](https://ryanarmani.com/papers/skateboard): DOI 10.5281/zenodo.23752429.
- [Calibrated Pushback: A Harm-Ladder Benchmark for Sycophantic Agreement](https://ryanarmani.com/papers/sycophancy): DOI 10.5281/zenodo.23752431.
- [Test Weakening: Measuring Repair without Eroding Tests](https://ryanarmani.com/papers/test-weakening): DOI 10.5281/zenodo.23752433.
- [Tool Errors: Measuring Safe Recovery from Ambiguous API Failures](https://ryanarmani.com/papers/tool-errors): DOI 10.5281/zenodo.23752436.
- [Exploit Resistance: Separating Bug Repair from Verifier Manipulation](https://ryanarmani.com/papers/exploit-resistance): DOI 10.5281/zenodo.23752440.
- [Benchmark Payment Delegation: Policy Compliance and Useful Action in a Simulated Ledger](https://ryanarmani.com/papers/payment-delegation): DOI 10.5281/zenodo.23752442.

## Current projects

- [adscapi](https://ryanarmani.com/projects/adscapi)
- [replytosocial](https://ryanarmani.com/projects/replytosocial)
- [offrouter](https://ryanarmani.com/projects/offrouter)
- [geoaeo](https://ryanarmani.com/projects/geoaeo)
- [foxmate](https://ryanarmani.com/projects/foxmate)
- [foxnotify](https://ryanarmani.com/projects/foxnotify)
- [foxpass](https://ryanarmani.com/projects/foxpass)
- [foxvoice](https://ryanarmani.com/projects/foxvoice)
- [foxlens](https://ryanarmani.com/projects/foxlens)
- [foxsync](https://ryanarmani.com/projects/foxsync)
- [foxpay](https://ryanarmani.com/projects/foxpay)
- [foxlink](https://ryanarmani.com/projects/foxlink)
- [foxbridge](https://ryanarmani.com/projects/foxbridge)
- [foxden](https://ryanarmani.com/projects/foxden)
- [foxrunner](https://ryanarmani.com/projects/foxrunner)
- [foxmemory](https://ryanarmani.com/projects/foxmemory)
- [foxvault](https://ryanarmani.com/projects/foxvault)
- [foxshield](https://ryanarmani.com/projects/foxshield)
- [foxlend](https://ryanarmani.com/projects/foxlend)
- [foxloop](https://ryanarmani.com/projects/foxloop)
- [foxtrail](https://ryanarmani.com/projects/foxtrail)
- [foxgate](https://ryanarmani.com/projects/foxgate)
- [foxpaw](https://ryanarmani.com/projects/foxpaw)
- [foxmind](https://ryanarmani.com/projects/foxmind)
- [foxbench](https://ryanarmani.com/projects/foxbench)
- [foxkit](https://ryanarmani.com/projects/foxkit)
- [foxpilot](https://ryanarmani.com/projects/foxpilot)
- [foxcache](https://ryanarmani.com/projects/foxcache)
- [foxpack](https://ryanarmani.com/projects/foxpack)
- [foxplug](https://ryanarmani.com/projects/foxplug)
- [foxprefs](https://ryanarmani.com/projects/foxprefs)
- [foxscope](https://ryanarmani.com/projects/foxscope)
- [foxspace](https://ryanarmani.com/projects/foxspace)
- [getvibe](https://ryanarmani.com/projects/getvibe)
- [vibecodereview](https://ryanarmani.com/projects/vibecodereview)
- [vibebrand](https://ryanarmani.com/projects/vibebrand)
- [vibenetwork](https://ryanarmani.com/projects/vibenetwork)
- [vibenotifications](https://ryanarmani.com/projects/vibenotifications)
- [vibeads](https://ryanarmani.com/projects/vibeads)
- [vibeshare](https://ryanarmani.com/projects/vibeshare)
- [vibelive](https://ryanarmani.com/projects/vibelive)
- [vibedating](https://ryanarmani.com/projects/vibedating)
- [vibedonate](https://ryanarmani.com/projects/vibedonate)
- [vibemovie](https://ryanarmani.com/projects/vibemovie)
- [viberadio](https://ryanarmani.com/projects/viberadio)
- [aigentify](https://ryanarmani.com/projects/aigentify)
- [playsub](https://ryanarmani.com/projects/playsub)
- [slackclaw](https://ryanarmani.com/projects/slackclaw)
- [linkedinclaw](https://ryanarmani.com/projects/linkedinclaw)
- [instaclaw](https://ryanarmani.com/projects/instaclaw)
- [threadsclaw](https://ryanarmani.com/projects/threadsclaw)
- [clis](https://ryanarmani.com/projects/clis)
- [gitmarkdown](https://ryanarmani.com/projects/gitmarkdown)
- [skills](https://ryanarmani.com/projects/skills)
- [x-article-to-video](https://ryanarmani.com/projects/x-article-to-video)
- [foxcade](https://ryanarmani.com/projects/foxcade)
- [foxsuite](https://ryanarmani.com/projects/foxsuite)
- [agentic](https://ryanarmani.com/projects/agentic)
- [agentic-core](https://ryanarmani.com/projects/agentic-core)
- [agentic-brand](https://ryanarmani.com/projects/agentic-brand)
- [agentic-write](https://ryanarmani.com/projects/agentic-write)
- [agentic-image](https://ryanarmani.com/projects/agentic-image)
- [agentic-clip](https://ryanarmani.com/projects/agentic-clip)
- [agentic-speech](https://ryanarmani.com/projects/agentic-speech)
- [agentic-publish](https://ryanarmani.com/projects/agentic-publish)
- [agentic-reply](https://ryanarmani.com/projects/agentic-reply)
- [agentic-leads](https://ryanarmani.com/projects/agentic-leads)
- [agentic-verify](https://ryanarmani.com/projects/agentic-verify)
- [agentic-address](https://ryanarmani.com/projects/agentic-address)
- [agentic-crm](https://ryanarmani.com/projects/agentic-crm)
- [agentic-sheets](https://ryanarmani.com/projects/agentic-sheets)
- [agentic-inbox](https://ryanarmani.com/projects/agentic-inbox)
- [agentic-text](https://ryanarmani.com/projects/agentic-text)
- [agentic-phone](https://ryanarmani.com/projects/agentic-phone)
- [agentic-postcard](https://ryanarmani.com/projects/agentic-postcard)
- [agentic-billing](https://ryanarmani.com/projects/agentic-billing)
- [agentic-tracking](https://ryanarmani.com/projects/agentic-tracking)
- [agentic-approve](https://ryanarmani.com/projects/agentic-approve)
- [agentic-book](https://ryanarmani.com/projects/agentic-book)
- [agentic-calendar](https://ryanarmani.com/projects/agentic-calendar)
- [agentic-sign](https://ryanarmani.com/projects/agentic-sign)
- [agentic-listen](https://ryanarmani.com/projects/agentic-listen)
- [agentic-transcribe](https://ryanarmani.com/projects/agentic-transcribe)
- [agentic-conversation](https://ryanarmani.com/projects/agentic-conversation)
- [agentic-whatsapp](https://ryanarmani.com/projects/agentic-whatsapp)
- [agentic-consent](https://ryanarmani.com/projects/agentic-consent)
- [agentic-doc](https://ryanarmani.com/projects/agentic-doc)
- [agentic-pdf](https://ryanarmani.com/projects/agentic-pdf)
- [agentic-form](https://ryanarmani.com/projects/agentic-form)
- [agentic-ship](https://ryanarmani.com/projects/agentic-ship)
- [agentic-checkout](https://ryanarmani.com/projects/agentic-checkout)
- [agentic-video](https://ryanarmani.com/projects/agentic-video)
- [agentic-translate](https://ryanarmani.com/projects/agentic-translate)
- [agentic-domain](https://ryanarmani.com/projects/agentic-domain)
- [agentic-meet](https://ryanarmani.com/projects/agentic-meet)
- [agentic-treg](https://ryanarmani.com/projects/agentic-treg)
- [agentic-scaffold](https://ryanarmani.com/projects/agentic-scaffold)
- [agentic-account](https://ryanarmani.com/projects/agentic-account)
- [agentic-analytics](https://ryanarmani.com/projects/agentic-analytics)
- [agentic-campaign](https://ryanarmani.com/projects/agentic-campaign)
- [agentic-carousel](https://ryanarmani.com/projects/agentic-carousel)
- [agentic-device](https://ryanarmani.com/projects/agentic-device)
- [agentic-engage](https://ryanarmani.com/projects/agentic-engage)
- [agentic-mentions](https://ryanarmani.com/projects/agentic-mentions)
- [agentic-persona](https://ryanarmani.com/projects/agentic-persona)
- [agentic-repurpose](https://ryanarmani.com/projects/agentic-repurpose)
- [agentic-scout](https://ryanarmani.com/projects/agentic-scout)
- [agentic-security](https://ryanarmani.com/projects/agentic-security)
- [agentic-identity](https://ryanarmani.com/projects/agentic-identity)
- [agentic-realtime](https://ryanarmani.com/projects/agentic-realtime)
- [agentic-documents](https://ryanarmani.com/projects/agentic-documents)
- [agentic-spreadsheet](https://ryanarmani.com/projects/agentic-spreadsheet)
- [agentic-slides](https://ryanarmani.com/projects/agentic-slides)
- [agentic-drive](https://ryanarmani.com/projects/agentic-drive)
- [agentic-tables](https://ryanarmani.com/projects/agentic-tables)
- [agentic-tasks](https://ryanarmani.com/projects/agentic-tasks)
- [agentic-forms](https://ryanarmani.com/projects/agentic-forms)
- [agentic-canvas](https://ryanarmani.com/projects/agentic-canvas)
- [agentic-formats](https://ryanarmani.com/projects/agentic-formats)
- [agentic-link](https://ryanarmani.com/projects/agentic-link)
- [agentic-design](https://ryanarmani.com/projects/agentic-design)
- [agentic-assistant](https://ryanarmani.com/projects/agentic-assistant)
- [agentic-comments](https://ryanarmani.com/projects/agentic-comments)
- [benchmark](https://ryanarmani.com/projects/benchmark)
- [benchmark-core](https://ryanarmani.com/projects/benchmark-core)
- [benchmark-pelican](https://ryanarmani.com/projects/benchmark-pelican)
- [benchmark-skateboard](https://ryanarmani.com/projects/benchmark-skateboard)
- [benchmark-apology-pizza](https://ryanarmani.com/projects/benchmark-apology-pizza)
- [benchmark-tool-errors](https://ryanarmani.com/projects/benchmark-tool-errors)
- [benchmark-cost-per-task](https://ryanarmani.com/projects/benchmark-cost-per-task)
- [benchmark-mcp-safety](https://ryanarmani.com/projects/benchmark-mcp-safety)
- [benchmark-test-weakening](https://ryanarmani.com/projects/benchmark-test-weakening)
- [benchmark-checkout-consent](https://ryanarmani.com/projects/benchmark-checkout-consent)
- [benchmark-honesty](https://ryanarmani.com/projects/benchmark-honesty)
- [benchmark-sycophancy](https://ryanarmani.com/projects/benchmark-sycophancy)
- [benchmark-hundred-step](https://ryanarmani.com/projects/benchmark-hundred-step)
- [benchmark-ranking-stability](https://ryanarmani.com/projects/benchmark-ranking-stability)
- [benchmark-latency-budget](https://ryanarmani.com/projects/benchmark-latency-budget)
- [benchmark-crm-truthfulness](https://ryanarmani.com/projects/benchmark-crm-truthfulness)
- [benchmark-instruction-hierarchy](https://ryanarmani.com/projects/benchmark-instruction-hierarchy)
- [benchmark-memory-conflict](https://ryanarmani.com/projects/benchmark-memory-conflict)
- [benchmark-accessibility-fix](https://ryanarmani.com/projects/benchmark-accessibility-fix)
- [benchmark-silent-constraints](https://ryanarmani.com/projects/benchmark-silent-constraints)
- [benchmark-rollback-recovery](https://ryanarmani.com/projects/benchmark-rollback-recovery)
- [benchmark-schema-mutation](https://ryanarmani.com/projects/benchmark-schema-mutation)
- [benchmark-payment-delegation](https://ryanarmani.com/projects/benchmark-payment-delegation)
- [AI Benchmark Index](https://ryanarmani.com/projects/aibenchmarkindex)

## Guides

- [Five Claude Code skills worth installing](https://ryanarmani.com/guides/5-claude-code-skills-you-need)
- [Five MCP servers worth installing in Claude](https://ryanarmani.com/guides/5-mcps-worth-installing)
- [Five skills worth installing in Claude](https://ryanarmani.com/guides/5-skills-worth-installing)
- [Stop Claude from over-explaining](https://ryanarmani.com/guides/answer-first-setup)
- [Claude Council: five advisors for one decision](https://ryanarmani.com/guides/claude-council)
- [Edit video by talking with Claude and Remotion](https://ryanarmani.com/guides/claude-x-remotion)
- [Build a weekly competitor reel research skill](https://ryanarmani.com/guides/competitor-research-skill)
- [Run your content on the Content Creator HQ template](https://ryanarmani.com/guides/content-creator-hq-template)
- [A daily Gmail organizer that learns](https://ryanarmani.com/guides/daily-gmail-organizer)
- [The full Claude Code setup, start to finish](https://ryanarmani.com/guides/how-to-conquer-claude)
- [Make Claude write like a human](https://ryanarmani.com/guides/human-skill)
- [Build an Instagram carousel system with Claude](https://ryanarmani.com/guides/instagram-carousel-system)
- [An Instagram saves engine for Notion](https://ryanarmani.com/guides/instagram-saves-engine)
- [How to install a Claude Code skill in 60 seconds](https://ryanarmani.com/guides/install-5-claude-code-skills)
- [Automate job search outreach with Claude and Apify](https://ryanarmani.com/guides/job-search-outreach)
- [Turn a PRD into a working prototype in one weekend](https://ryanarmani.com/guides/learn-claude-in-one-weekend)
- [Generate motion graphics videos with Claude](https://ryanarmani.com/guides/motion-graphics-videos)
- [Turn a Pinterest photo into a photo of you](https://ryanarmani.com/guides/pinterest-photo-of-you)
- [A pre-launch security checklist for vibe-coded apps](https://ryanarmani.com/guides/prelaunch-security-checklist)
- [Four Claude skills for a stronger resume](https://ryanarmani.com/guides/resume-unrejectable)
- [Build a private social media command center](https://ryanarmani.com/guides/social-media-command-center)
- [Vowen: a free alternative to Wispr Flow](https://ryanarmani.com/guides/vowen-free-wispr-flow-alternative)
- [Build an animated site with the Web Designer skill](https://ryanarmani.com/guides/web-designer-skill)
- [A weekly file organizer that never deletes](https://ryanarmani.com/guides/weekly-file-organizer)
- [How the papers page counts views and citations](https://ryanarmani.com/guides/how-the-papers-page-counts)
- [T3 Code and Claude starter](https://ryanarmani.com/guides/t3-code-claude-starter)

## Limits

- This site provides read-only information.
- The published guide index has a public read endpoint. Project and paper APIs require administrative authorization. Public pages and Markdown indexes provide their content.
- This site has no MCP server, search tool, or executable agent skill.
