RedAmon is an AI framework that connects reconnaissance, exploitation, and post-exploitation activities into an automated security-testing pipeline, while organizing findings and proposing code fixes. It is for authorized penetration testing, security research, and education. The catalogue entries provide skills and instructions for working with the framework.
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 skills add samugit83/redamon --skill llm-provider-integrationgit clone --depth 1 https://github.com/samugit83/redamonWrote 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/samugit83/redamon/llm-provider-integration)<a href="https://agentmods.dev/skills/samugit83/redamon/llm-provider-integration"><img src="https://agentmods.dev/badge/skills/samugit83/redamon/llm-provider-integration/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/skills/samugit83/redamon/llm-provider-integration"><img src="https://agentmods.dev/badge/skills/samugit83/redamon/llm-provider-integration.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium MCP Rug Pull · line 57 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
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.00130 | $0.01111 |
| Opus 5.5 | $0.00052 | $0.00444 |
| Sonnet 5.5 | $0.00026 | $0.00222 |
| Haiku 4.5 | $0.00013 | $0.00111 |
Grade A, and why
llm-provider-integration 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 24d 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 — 83 lines — stays where its author put it; the contents beside it link to each section on GitHub.
When to Use
- Adding a new LLM provider (OpenAI-compatible or otherwise) the agent can use.
For a non-LLM external API tool, use agentic-tool-integration.
Critical Rules
- NEVER let a provider API key reach a scan container. Keys live in exactly
two places: Postgres
user_llm_providersrows and, in transit, on the wire between webapp and agent. The recon / scan / MCP containers must never see them. Do not thread a provider key through recon settings or container env. - NEVER add a model id that is not prefix-routed. Anything other than
claude-*and bare OpenAI ids MUST carry aprovider/<model>prefix, resolved byparse_model_provider()at agentic/orchestrator_helpers/llm_setup.py:67. An unprefixed id routes to the wrong provider silently. - NEVER treat every
user_llm_providersrow as a chat LLM. A non-chat type (todayjev, the TypeSafe decision API) must be skipped by every path that builds a chat model, or its token is sent to the wrong host:setup_llm's custom branch buildsChatOpenAI(api_key=<row key>)with no base URL, which is api.openai.com. Add the type toNON_CHAT_PROVIDER_TYPESin BOTH twins (agentic/llm_builder.py,webapp/src/lib/llmProviderKinds.ts); usechat_providers()/isChatProviderwherever rows are listed, counted, gated or forwarded (the/api/modelsforward, the project LLM gate, the triage preflight, the feature-model grid); and never let a stalecustom/<id>fall back to "the first provider" (custom_provider_or_fallbackfalls back only to custom-capable types).setup_llmalso refuses a non-chat type outright. - A non-chat provider's endpoint is a constant, and its type is locked.
agentic/jev_client.pyis the only code that talks toapi.typesafe.ai: a fixed base URL, no redirects, fixed error texts. On the webapp, POST forces model, URL and headers and allows one row per user; PUT and the test route refuse a type change in either direction and ignore a body-supplied URL/headers for a stored row, so a stored token can never be re-pointed at another host. - ALWAYS register the provider in the webapp provider-type registry and propagate the key kwarg into every LLM call site. A provider registered but not propagated builds a client with no credentials. The guide enumerates all 11 integration points; touch each.
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.
- 24d ago Changed · +19 lines · +21 tokens per session e206546c44a5
- 1mo ago First seen · 64 lines · 109 tokens per session scan A d8bd31bde654
llm-provider-integration is a skill published in the GitHub repository samugit83/redamon (3,221 stars, last pushed 4d ago), licensed MIT. It adds 130 tokens to every session and 1,111 once invoked, about $0.0005 per session on Opus 5.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
detecting-shadow-api-endpoints
Discover and inventory shadow API endpoints that operate outside documented specifications using traffic analysis, code scanning, and API discovery platforms.
implementing-llm-guardrails-for-security
Implements input and output validation guardrails for LLM-powered applications to prevent prompt injection, data leakage, toxic content generation, and hallucinated outputs. Builds a security validation pipeline using NVIDIA NeMo Guardrails Colang definitions, custom Python validators for PII detection and content…
finetuning
This skill should be used when picking or diagnosing a training move (SFT, LoRA, DPO/KTO/ORPO, RFT, GRPO/PPO/RLOO, RLHF), or when the user mentions fine-tuning, post-training, training recipe, reward design, or weight updates. Decision tree by reward shape, smoke-run gate, three failure diagnostics, five…
codex-autoresearch
Triage improvement work and run or resume accepted measured loops in a local project. Architecture, documentation, UX, product study, open research, taste, and one-shot fixes stay direct unless the user explicitly requests repeated measurement with a complete experiment contract.
pytorch-training
Best practices for building robust PyTorch training loops. Use when generating or reviewing ML training code.
nlp-alignment
Best practices for LLM alignment techniques including RLHF, DPO, and instruction tuning. Use when working on alignment or safety.