application-security-engineer

application-security-engineer is a skill for Claude Code, Codex from wonsukchoi/domain-experts. It costs 122 tokens per session (2,586 once invoked), scanned A, original, MIT.

An application-security guide for finding vulnerabilities in software design, source code, endpoints, and dependencies before the software is released.

In plain words
What is it for?
Use it for threat modeling, secure code review, checking object-level authorization, and judging dependency vulnerabilities by whether the affected code is actually reachable.
Why use it?
It helps prevent issues such as unauthorized access, injection, and unsafe data handling from becoming production incidents.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Install

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.

agentmods
npx agentmods add skills/wonsukchoi/domain-experts/application-security-engineer
Any agent
npx skills add wonsukchoi/domain-experts --skill application-security-engineer
Clone the repo
git clone --depth 1 https://github.com/wonsukchoi/domain-experts

Made for: Claude Code, Codex.

Wrote 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.

agentmods badge for application-security-engineer

README.md
[![agentmods](https://agentmods.dev/badge/skills/wonsukchoi/domain-experts/application-security-engineer.svg)](https://agentmods.dev/skills/wonsukchoi/domain-experts/application-security-engineer)
Your own site
<a href="https://agentmods.dev/skills/wonsukchoi/domain-experts/application-security-engineer"><img src="https://agentmods.dev/badge/skills/wonsukchoi/domain-experts/application-security-engineer.svg" alt="Measured on agentmods" height="20"></a>
Per session 122 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,586 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00122 $0.02586
Opus 5 $0.00061 $0.01293
Sonnet 5 $0.00024 $0.00517
Haiku 4.5 $0.00012 $0.00259

Measured 6d ago against content hash cc90252a857c, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

application-security-engineer 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.

roles/application-security-engineer/SKILL.md · 94 lines

How it starts

The opening of the file, as written. The whole thing — 94 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Application Security Engineer

Identity

The security specialist embedded in the software development lifecycle, working with engineering teams to prevent vulnerabilities before code ships rather than detecting and responding to intrusions after the fact. Distinct from an information security analyst, who owns detection, incident response, and vulnerability-patching prioritization for the organization's technical environment broadly: this role's job is threat modeling at design time, secure code review, and vulnerability triage specific to application-level flaws — broken access control, injection, insecure deserialization — the classes of bug that live in code and design decisions, not in network configuration or endpoint monitoring. The defining tension: a vulnerability caught in design review costs a conversation; the same vulnerability caught in production costs an incident, and the security engineer's leverage comes from moving the catch as early as possible — which means checking specific, well-known failure patterns explicitly during design and code review, not waiting for a scanner or a breach to surface them.

First-principles core

  1. Authentication and authorization are different checks, and confirming a valid session exists is not the same as confirming that session's user is permitted to access the specific resource being requested. Broken object-level authorization (commonly called IDOR — Insecure Direct Object Reference) is the single most common and consequential vulnerability class: an endpoint that checks "is this a valid logged-in user" but not "does this specific user own or have permission for this specific resource ID" lets any authenticated user access any other user's data simply by changing an ID in the request.
  2. Threat modeling belongs at design time, before code is written, because the same flaw costs vastly more to fix the later it's caught. A design-time threat model (using a framework like STRIDE) identifies the same class of flaw a code review or, worse, a production security incident would eventually surface — but at a small fraction of the cost, since fixing a design is a conversation and fixing production is an incident response.
  3. SAST, DAST, and SCA each catch a different class of vulnerability, and none of them alone provides adequate coverage. Static analysis (SAST) catches code-pattern issues but has high false-positive rates and misses runtime and business-logic flaws; dynamic analysis (DAST) tests the running application but only along the specific paths it exercises; software composition analysis (SCA) catches known vulnerabilities in dependencies but says nothing about custom code — relying on only one tool type leaves a specific, predictable blind spot for exactly the vulnerability classes the other tools would have caught.
  4. A dependency vulnerability's real risk depends on whether the vulnerable code path is actually reachable in this specific application, not on its raw CVSS severity score. A "critical" CVSS 9.8 vulnerability in a function this codebase never calls has near-zero actual risk; a "medium" CVSS 5.3 vulnerability in a function that directly processes untrusted user input can be far more urgent — triaging remediation purely by CVSS score, without checking reachability and exploitability in context, misallocates fixing effort toward the wrong vulnerabilities.
  5. Input handling defenses are context-dependent, and the same "sanitized" value can be safe in one output context and dangerous in another. HTML-escaping is the right defense for embedding user input into HTML, but the same escaped value can still be exploitable if it's inserted into a JavaScript context, a SQL query, or a URL without the encoding specific to that context — a single generic sanitize-everywhere function is an incomplete defense that leaves exactly these context-mismatch gaps.

Read the full file on GitHub · 94 lines

Files

What ships with it

3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

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.

  1. 6d ago First seen · 94 lines · 122 tokens per session scan A cc90252a857c

Subscribe to this mod's changes

application-security-engineer is a skill published in the GitHub repository wonsukchoi/domain-experts (14 stars, last pushed 6d ago), licensed MIT. It adds 122 tokens to every session and 2,586 once invoked, about $0.0006 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.

Related

Other skills, from other repositories

review-pr

Review an open pull request against this repo's conventions. Pulls the diff via gh pr diff, scans for common issues (missing tests, secrets, hard-coded config, missing error handling, conventions violations), and posts a structured review comment via gh pr comment. Use when the user says "review PR #N", "look at this…

sevenschulte/agentic-harness · 89 tokens

ship-pr

Ship the current branch as a pull request. Runs tests, formats code, commits any uncommitted work, pushes the branch, and opens a PR against the base branch with a generated body following the team's PR template. Use when the user says "ship it", "open a PR", "send this for review", or finishes a feature and wants it…

sevenschulte/agentic-harness · 80 tokens

save-memory

Persist newly-learned facts from the current session into the memory pyramid. Scans the conversation for durable information, finds the right file, deduplicates, and writes back. Use when the user says "remember this", "save it", "for next time", or when a non-obvious fact surfaced that a future session would ask…

sevenschulte/agentic-harness · 74 tokens

wrap-up

Update memory/ACTIVE.md with the state of the current session — what was worked on, what's done, what's next, what's blocked — so the next session can pick up without re-learning context. Run at session end or when switching to an unrelated task.

sevenschulte/agentic-harness · 57 tokens

verify

Fact-check claims encountered during reading — dates, names, events, citations. Use when encountering historical facts or disputed claims.

yha9806/academic-writing-toolkit · 26 tokens

infrastructure-publishing

Skill for the publishing infrastructure module providing academic publishing workflows including BibTeX CLI citation generation, APA/MLA citation helper functions, DOI management, Zenodo publication, arXiv submission preparation, GitHub releases, PyPI and TestPyPI package distribution, static-site deployment to GitHub…

docxology/template · 127 tokens