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/ebibibi/ebi-agent-chat-relay/verifynpx skills add ebibibi/ebi-agent-chat-relay --skill verifygit clone --depth 1 https://github.com/ebibibi/ebi-agent-chat-relayWrote 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/ebibibi/ebi-agent-chat-relay/verify)<a href="https://agentmods.dev/skills/ebibibi/ebi-agent-chat-relay/verify"><img src="https://agentmods.dev/badge/skills/ebibibi/ebi-agent-chat-relay/verify.svg" alt="Measured on agentmods" 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.00017 | $0.00541 |
| Opus 5 | $0.00009 | $0.00270 |
| Sonnet 5 | $0.00003 | $0.00108 |
| Haiku 4.5 | $0.00002 | $0.00054 |
Grade A, and why
verify 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 6d 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 — 82 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Verify — Pre-Commit Quality Gate
Run this before every commit to ensure code quality and security.
When to Activate
- Before creating a commit
- Before pushing to remote
- After making significant code changes
- When asked to "verify", "check", or "validate" the code
Verification Pipeline
Run all steps in order. Stop on first failure.
Step 1: Lint
uv run ruff check claude_discord/
If there are auto-fixable issues:
uv run ruff check --fix claude_discord/
Step 2: Format
uv run ruff format --check claude_discord/
If formatting is needed:
uv run ruff format claude_discord/
Step 3: Tests
uv run pytest tests/ -v --cov=claude_discord --cov-report=term-missing
All tests must pass. Review coverage for newly added code.
Step 4: Security Audit
Before committing, check for these security concerns specific to this project:
- No shell=True: Search for
shell=Truein any subprocess call — this is forbidden - No hardcoded secrets: Search for patterns like
token,secret,password,api_keywith string literal values - Session ID validation: Any new code accepting session IDs must validate with
^[a-f0-9\-]+$ - Subprocess arguments: All user input passed to Claude CLI must use
--separator - Environment stripping:
_STRIPPED_ENV_KEYSmust include any new secret env vars
# Quick security grep
uv run ruff check claude_discord/ --select S # bandit rules via ruff
Step 5: Import Check
Verify the public API still works:
python -c "from claude_discord import ClaudeRunner, ClaudeChatCog, SkillCommandCog, SessionRepository"
Failure Protocol
- Lint/Format failures: Fix automatically, re-run
- Test failures: Fix the code (not the test, unless the test is wrong)
- Security failures: STOP. Do not commit. Fix the vulnerability first
- Import failures: Check
__init__.pyexports match actual module structure
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.
- 6d ago First seen · 82 lines · 17 tokens per session scan A f4282e67b016
verify is a skill published in the GitHub repository ebibibi/ebi-agent-chat-relay (56 stars, last pushed 2d ago), licensed MIT. It adds 17 tokens to every session and 541 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-30.
Other skills, from other repositories
switch
How to take part in a Switch room. Load this skill before your first Switch action and whenever Switch comes up — the user mentions Switch, a Switch room or another Switch agent; you are asked to list, join, read or post in a room, create a room or room group, work with references, links or roles, or inspect an agent…
configure
Set up the Switch connector for Claude Code — register this Claude Code instance as a Switch agent and write the credentials the bundled MCP server and hooks read. Use when the user asks to configure Switch, set up the plugin, register with a Switch server, or when the Switch tools report no identity.
codex-delegate
Delegate a coding task to the OpenAI Codex CLI as a background implementer, then review its diff and land it yourself. Use this whenever the user wants to hand implementation work to Codex — phrasings like "have Codex do X", "delegate this to Codex", "run it through Codex", or "use Codex to implement/fix/refactor" …
warp-delegate
Delegate a coding task to the Warp Agent CLI (oz) as a background implementer, then review its diff and land it yourself. Use this whenever the user wants to hand implementation work to Warp - phrasings like "have Warp implement X", "delegate this to the Warp CLI", "run it through Warp", "use oz to…
claude-delegate
Delegate a coding task to a separate Claude Code CLI process or another Claude session as an implementer, then review its diff and land it yourself. Use only when the user explicitly asks to delegate implementation to Claude Code, another Claude session, or the claude CLI — for example, "have another Claude implement…
cursor-delegate
Delegate a coding task to the Cursor Agent CLI (cursor-agent) as a background implementer, then review its diff and land it yourself. Use this whenever the user wants to hand implementation work to Cursor — phrasings like "have Cursor implement X", "delegate this to Cursor", "run it through Cursor Agent", or "use…