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 CrestApps/CrestApps.AgentSkills --skill crestapps-core-prompt-securitygit clone --depth 1 https://github.com/CrestApps/CrestApps.AgentSkillsWrote 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/crestapps/crestapps.agentskills/crestapps-core-prompt-security)<a href="https://agentmods.dev/skills/crestapps/crestapps.agentskills/crestapps-core-prompt-security"><img src="https://agentmods.dev/badge/skills/crestapps/crestapps.agentskills/crestapps-core-prompt-security/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/crestapps/crestapps.agentskills/crestapps-core-prompt-security"><img src="https://agentmods.dev/badge/skills/crestapps/crestapps.agentskills/crestapps-core-prompt-security.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.00196 | $0.02513 |
| Opus 5.5 | $0.00078 | $0.01005 |
| Sonnet 5.5 | $0.00039 | $0.00503 |
| Haiku 4.5 | $0.00020 | $0.00251 |
Grade A, and why
crestapps-core-prompt-security 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 yesterday.
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 — 178 lines — stays where its author put it; the contents beside it link to each section on GitHub.
CrestApps.Core Prompt Security
A local, deterministic, regex-based layer for AI Profile chat: input validation, a security preamble and input delimiters, output filtering, rate limiting and audit logging. It is defense in depth, never a replacement for tool authorization.
Guidelines
AddAISuite(...)(throughAddCoreAIOrchestration()) registers the layer: 26 built-in rules, the scoring engine,IPromptSecurityService,IOutputSecurityFilter,IAIChatSecurityAuditService,IChatRateLimiter,IChatSessionStartRateLimiterandSecurityPromptOrchestrationHandler. There is noAddPromptSecurity(...)method.PromptSecurityOptionsis not bound from configuration by the framework. Bind it from your own section or site settings.- Profiles can only change anti-spam throttles (
PromptSecurityProfileSettings). Injection detection, output filtering, preamble, delimiters, length and blocking threshold are global. - Chat Interactions get input delimiters (
EnableChatInteractionInputDelimiters, on by default) but not the preamble or injection blocking; the operator controls their prompt, model and tools.
Configure Site Policy
using CrestApps.Core.AI.Security;
builder.Services.Configure<PromptSecurityOptions>(builder.Configuration.GetSection("CrestApps:AI:PromptSecurity"));
builder.Services.PostConfigure<PromptSecurityOptions>(options =>
{
options.MaxPromptLength = 6000;
options.BlockingThreshold = PromptRiskLevel.High;
options.CustomBlockedPatterns.Add(@"\binternal-canary-123\b");
options.AnonymousMessageRateLimitTiers =
[
new ChatRateLimitTier { Limit = 5, Window = TimeSpan.FromSeconds(30) },
new ChatRateLimitTier { Limit = 30, Window = TimeSpan.FromMinutes(5) },
new ChatRateLimitTier { Limit = 150, Window = TimeSpan.FromHours(1) },
];
});
| Option | Default |
|---|---|
EnableInjectionDetection, EnableOutputFiltering, EnableSecurityPreamble, EnableInputDelimiters, EnableChatInteractionInputDelimiters, EnableAuditLogging |
true |
MaxPromptLength |
8000 |
BlockingThreshold |
High |
LowRiskScoreThreshold / Medium... / High... / Critical... |
10 / 20 / 35 / 50 |
AnonymousMessageRateLimitTiers |
5 per 30s, 30 per 5m, 150 per hour, 500 per day |
AnonymousSessionStartRateLimitTiers |
5 per 30s, 10 per 5m, 150 per hour, 500 per day |
MaxMessagesPerWindow / RateLimitWindow |
20 per 1 minute (authenticated callers; anonymous fallback when tiers are empty) |
MaxAnonymousSessionsPerWindow / AnonymousSessionRateLimitWindow |
20 per 10 minutes (fallback when session-start tiers are empty) |
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.
- yesterday Changed · +86 lines · +172 tokens per session a8b4465e6d5b
- 1mo ago First seen · 92 lines · 24 tokens per session scan A 7b50fce04a0f
crestapps-core-prompt-security is a skill published in the GitHub repository CrestApps/CrestApps.AgentSkills (13 stars, last pushed yesterday), licensed MIT. It adds 196 tokens to every session and 2,513 once invoked, about $0.0008 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
powerpoint-cli
Discover and use the PowerPoint CLI plugin to automate a live PowerPoint desktop session. Use for terminal, PowerShell, batch, and coding-agent tasks; not general presentation design. Triggers: pptcli, PowerPoint command line, presentation automation script.
powerpoint-deck-design
Plan or improve the visual design of a PowerPoint presentation: layout, typography, color, hierarchy, accessibility, and consistency. Use when the user asks to create, redesign, or review how a deck looks; not for general PowerPoint automation or content-only edits.
home-memory-documentation
Do not load unless the request or established context explicitly identifies Home Memory (HM) and requires a documentation decision about record boundaries, relationships or information placement. If the product is ambiguous, ask whether the user means Home Memory or Smartconstruct and load neither product skill first.…
dotnet-debugging
Debug .NET applications using debug-mcp MCP tools — launch processes, set breakpoints, step through code, inspect variables, evaluate expressions, and analyze exceptions. Use this skill when debugging .NET/C# applications, investigating runtime behavior, diagnosing exceptions, inspecting object state, or performing…
sast-missingauth
Detect missing authentication and broken function-level authorization vulnerabilities in a codebase using a three-phase approach: recon (map endpoints and the role/permission system), batched verify (check auth/authz in parallel subagents, 3 endpoints each), and merge (consolidate batch results). Covers…
sast-analysis
Perform codebase analysis and architecture mapping as the first phase of a security assessment. Explores the tech stack, frameworks, entry points, data flows, and trust boundaries. Outputs sast/architecture.md. Run this before any vulnerability detection skill. Use when asked to analyze a codebase for security or when…