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 agentmods add skills/thunder-id/thunderid/consolenpx skills add thunder-id/thunderid --skill consolegit clone --depth 1 https://github.com/thunder-id/thunderidWhat 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 | $0.00037 | $0.01765 |
| Opus 5 | $0.00018 | $0.00882 |
| Sonnet 5 | $0.00007 | $0.00353 |
| Haiku 4.5 | $0.00004 | $0.00177 |
Grade A, and why
console 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 2d 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 — 152 lines — stays where its author put it; the contents beside it link to each section on GitHub.
ThunderID Console Navigation with playwright-cli
Resolving the Console Base URL
Before running any commands, determine the console base URL. Do NOT hardcode a URL — resolve it from project configuration:
- Check
deployment.yamlatbackend/cmd/server/deployment.yamlfor theserver.hostnameandserver.port. If the backend is serving the console (production mode), the URL ishttps://{hostname}:{port}/console. - Check
vite.config.tsatfrontend/apps/console/vite.config.tsfor the development serverPORT(default5191) andHOST(defaultlocalhost). If the frontend development server is running separately, the URL ishttps://{HOST}:{PORT}/console. - Check environment variables:
PORT,HOST, orBASE_URLmay override the defaults. - If unable to resolve, ask the user for the ThunderID Console URL.
Use the resolved URL as {CONSOLE_URL} in all commands below (e.g., {CONSOLE_URL}).
Quick Start
# Open Console (redirects to sign-in gate)
playwright-cli open {CONSOLE_URL} -s=thunderid
# After authenticating (see below), navigate directly
playwright-cli goto {CONSOLE_URL}/users -s=thunderid
# Snapshot the page to see element refs
playwright-cli snapshot -s=thunderid
# Interact with elements using refs from snapshot
playwright-cli click e15 -s=thunderid
# Take a screenshot
playwright-cli screenshot -s=thunderid
# Close the browser
playwright-cli close -s=thunderid
Prerequisites
If playwright-cli is not installed:
npm install -g @playwright/cli@latest
All commands use the named session -s=thunderid so the browser persists across commands.
Authentication
ThunderID Console requires authentication. The sign-in form is dynamically rendered by the ThunderID SDK, so always use snapshot to get element refs before interacting.
Username is admin. For make run, the password defaults to admin unless overridden via ADMIN_PASSWORD (source-only local dev path). For ./setup.sh/./setup.ps1, the password is randomly generated and printed to the console/log output unless explicitly supplied via ADMIN_PASSWORD — check there for the current value rather than assuming a fixed one.
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.
- 2d ago First seen · 152 lines · 37 tokens per session scan A e82b689fcdf0
console is a skill published in the GitHub repository thunder-id/thunderid (565 stars, last pushed 5d ago), licensed Apache-2.0. It adds 37 tokens to every session and 1,765 once invoked, about $0.0002 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-30.
Other skills, from other repositories
jwt
Development guide for the jwt JSON Web Token library for Go (github.com/kataras/jwt). Use this skill when signing or verifying JWTs, choosing a signing algorithm (HMAC, RSA, RSA-PSS, ECDSA, EdDSA), reading or validating standard or custom claims, setting expiry and clock-skew tolerance, rotating keys with a kid-based…
new-config
Interactively scaffold a new smug tmux session configuration (a YAML template). Use when the user wants to create, scaffold, or set up a new smug project/config file, or asks for "smug new config", "a smug template", or "/new-config". Walks the user through session name, root, windows, panes, commands, env, and hooks…
ast-grep
Guide for writing ast-grep rules to perform structural code search and analysis. Use when users need to search codebases using Abstract Syntax Tree (AST) patterns, find specific code structures, or perform complex code queries that go beyond simple text search. This skill should be used when users ask to search for…
conventional-commit
Workflow for generating conventional commit messages following the Conventional Commits specification. MUST be invoked every time a commit is created. Guides construction of standardized commit messages with correct type, scope, description, body, and footer.
markdown
Markdown formatting rules for this project. Apply when writing or editing any .md or .mdx file, including documentation and website content.
oh-my-posh
Install, configure, or troubleshoot Oh My Posh/ohmyposh: shell init, themes, segments, Nerd Font icons, and prompt setup on PowerShell, zsh, bash, or fish.