Borrowing it
Nothing to install: this file belongs to patrickdeanfox/zuar-portal-mcp. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/patrickdeanfox/zuar-portal-mcp/main/.claude/commands/portal-setup.mdgit clone --depth 1 https://github.com/patrickdeanfox/zuar-portal-mcpWrote 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/patrickdeanfox/zuar-portal-mcp/portal-setup)<a href="https://agentmods.dev/commands/patrickdeanfox/zuar-portal-mcp/portal-setup"><img src="https://agentmods.dev/badge/commands/patrickdeanfox/zuar-portal-mcp/portal-setup/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/patrickdeanfox/zuar-portal-mcp/portal-setup"><img src="https://agentmods.dev/badge/commands/patrickdeanfox/zuar-portal-mcp/portal-setup.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.00018 | $0.00790 |
| Opus 5 | $0.00009 | $0.00395 |
| Sonnet 5 | $0.00004 | $0.00158 |
| Haiku 4.5 | $0.00002 | $0.00079 |
Grade A, and why
portal-setup 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 10d 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.
Copies of this mod
1 near-identical copy found in the catalogue:
- portal-setup — 100% identical, 0 lines differ
What it actually says
Set this project up to work against a Zuar Portal. One-time, per folder.
-
Check current state. Call
check_connection— it reports theportal, thebindingstate, and whether the credentials actually work. If it comes back connected, report which portal it points at and itsbinding(host + identity only — never print secrets), then confirm with the user whether to keep it or reconfigure. Ifbindingis alreadyboundand a.zuar-portal/brief.mdexists, there is nothing to do — say so and stop. If it reportsconnected:false, itsfixsays whether this is an unconfigured folder (→ set it up below) or working credentials gone bad (→ reconfigure). -
If not configured (or the user wants to reconfigure): launch the portal-onboarding agent (via the Task tool) to:
- collect the portal credentials and write them with
configure_projectto./.zuar-portal/config.json, - then run the alignment Q&A — learn the user, their business, their portal, and their data — and write
./.zuar-portal/brief.md(the brief every other agent reads).
configure_project's guided elicitation flow (theinteractiveflag: true = require prompts, false = headless, omit = auto) collects, in order:- the portal credentials (URL, API key, user ID) and a name for the portal ("Acme Production") — the name is what later wrong-portal warnings say, so it's worth setting;
- GitHub version control (optional) — every content change mirrored to a repo you can roll back;
- Claude for Chrome — recorded as
browser.claudeInChrome. With it, the build pipeline can see a rendered block (screenshot, console) for visual debugging and a final visual sign-off, not just review code. Mention the payoff, and the one caveat: visual checks need the user signed into the portal in Chrome (the MCP's API key doesn't authenticate the browser session). It degrades gracefully when the extension isn't present; - the design intake — brand accent, which theme modes to support, layout density. These are rendered into
./.zuar-portal/design.md, which every block built in this folder then inherits.
It writes four things: the gitignored config + credentials,
./.zuar-portal/design.md, and a managed block in the repo-rootCLAUDE.mdnaming the bound portal. It also pins the folder to the portal's live identity. - collect the portal credentials and write them with
-
Confirm the binding. After onboarding returns, verify the connection is live (identity/version) and report success: which portal this folder is now bound to, that it is
bound(pinned) rather than merelydeclared, and that the brief was written. Do not echo passwords, tokens, or any secret value at any point.
Why the binding matters. One install serves many portals, so this folder is pinned to the one it was onboarded against and re-checks the portal's identity before every write. If a write is ever refused as a wrong-portal mismatch, that is the guardrail working — never resolve it by pointing the credentials somewhere else. Re-run configure_project with overwrite=true to rebind deliberately.
No arguments. After this, /portal-build, /portal-theme, /portal-bulk, and /portal-audit are ready to use.
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.
- 10d ago First seen · 28 lines · 18 tokens per session scan A ab2233618687
portal-setup is a command published in the GitHub repository patrickdeanfox/zuar-portal-mcp (1 stars, last pushed 1mo ago), licensed MIT. It adds 18 tokens to every session and 790 once invoked, about $0.0001 per session on Opus 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 commands, from other repositories
checklist
Generate a custom checklist for the current feature based on user requirements.
clarify
Identify underspecified areas in the current feature spec by asking up to 5 highly targeted clarification questions and encoding answers back into the spec.
specify
Create or update the feature specification from a natural language feature description.
analyze
Perform a non-destructive cross-artifact consistency and quality analysis across spec.md, plan.md, and tasks.md after task generation.
converge
Assess the current codebase against the feature's spec, plan, and tasks, then append any remaining unbuilt work as new tasks to tasks.md so implement can complete it.
implement
Execute the implementation plan by processing and executing all tasks defined in tasks.md.