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.
git clone --depth 1 https://github.com/mentilead/shopify-app-skillWrote 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/commands/mentilead/shopify-app-skill/add-proxy-page)<a href="https://agentmods.dev/commands/mentilead/shopify-app-skill/add-proxy-page"><img src="https://agentmods.dev/badge/commands/mentilead/shopify-app-skill/add-proxy-page/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/commands/mentilead/shopify-app-skill/add-proxy-page"><img src="https://agentmods.dev/badge/commands/mentilead/shopify-app-skill/add-proxy-page.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.00000 | $0.00561 |
| Opus 5.5 | $0.00000 | $0.00224 |
| Sonnet 5.5 | $0.00000 | $0.00112 |
| Haiku 4.5 | $0.00000 | $0.00056 |
Grade A, and why
add-proxy-page 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 — 36 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Add App Proxy Page
Scaffold a new App Proxy page with HMAC verification, inline CSS, and server-rendered HTML.
Arguments
$ARGUMENTS = page description (e.g., "application form for job applicants", "order status lookup")
Instructions
- Parse the page purpose from
$ARGUMENTS. If empty, ask the user what the proxy page should display. - Read
.claude/skills/shopify-app/references/app-proxy-patterns.mdfor constraints, HMAC verification, and CSS inlining patterns. - Read
.claude/skills/shopify-app/SKILL.mdgotcha #6 (App Proxy: GET only, no external CSS/JS). - Determine the route filename:
- If this is a new proxy layout:
app/routes/proxy.tsx(layout) +app/routes/proxy.<page>.tsx - If extending existing proxy:
app/routes/proxy.<page>.tsx
- If this is a new proxy layout:
- Review proxy constraints before writing code:
- GET only — the proxy only forwards GET requests. POST submissions must target the direct app URL (
/api/*route). - No external CSS/JS — all CSS must be inline
<style>tags. No<link>or<script src>. - No Tailwind
?inline— Tailwind 4's Vite plugin doesn't process?inlineimports. - No client-side hydration — React Router JS bundles don't load. Server-render only.
- GET only — the proxy only forwards GET requests. POST submissions must target the direct app URL (
- Create the route file with:
loaderthat callsverifyProxySignature(searchParams)for HMAC verification- Server-rendered HTML with all CSS inline in
<style>tags - Proper
Content-Type: text/htmlresponse (or use Shopify's Liquid layout viaapplication_liquidcontent type) - Data fetched from service functions, scoped by the shop from the HMAC-verified params
- If the page needs form submissions:
- Create a separate
app/routes/api.<form-name>.tsxaction route for POST handling - The proxy page form's
actionattribute must point to the direct app URL, not the proxy URL - Read
.claude/skills/shopify-app/references/react-router-patterns.mdfor API route patterns
- Create a separate
- Create or update service functions as needed, always with
shopDomainas first parameter. - Remind the user to:
- Configure the App Proxy in the Shopify Partner Dashboard (URL prefix + subpath)
- Test HMAC verification with a real storefront request
- Verify no external CSS/JS references leaked into the HTML
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 · 36 lines · 0 tokens per session scan A 5b036b15d646
add-proxy-page is a command published in the GitHub repository mentilead/shopify-app-skill (6 stars, last pushed 7mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 561 tokens. 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 commands, from other repositories
cloudflare-durable-objects:debug
Interactive Durable Objects debugging workflow. Diagnoses common DO errors, configuration issues, and runtime problems with step-by-step troubleshooting.
cloudflare-durable-objects:optimize
Interactive Durable Objects performance optimization assistant. Analyzes existing DO code and provides specific optimization recommendations with implementation guidance.
cloudflare-durable-objects:setup
Interactive Durable Objects project initialization. Scaffolds new DO project with proper bindings, migrations, and boilerplate code.
better-auth:add-plugin
Add a better-auth plugin to an existing project. Configures server and client plugins with proper imports.
better-auth:setup
Interactive setup wizard for better-auth authentication. Guides through database, framework, OAuth providers, and plugin configuration.
cloudflare-r2:presigned-url
Generate presigned URLs for secure client-side uploads or downloads.