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 Jiangxianze/spring-agent-skills --skill jvm-incident-triagegit clone --depth 1 https://github.com/Jiangxianze/spring-agent-skillsWrote 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/jiangxianze/spring-agent-skills/jvm-incident-triage)<a href="https://agentmods.dev/skills/jiangxianze/spring-agent-skills/jvm-incident-triage"><img src="https://agentmods.dev/badge/skills/jiangxianze/spring-agent-skills/jvm-incident-triage/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/jiangxianze/spring-agent-skills/jvm-incident-triage"><img src="https://agentmods.dev/badge/skills/jiangxianze/spring-agent-skills/jvm-incident-triage.svg" alt="Reviewed on agentmods" width="80" 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.00072 | $0.00591 |
| Opus 5 | $0.00036 | $0.00296 |
| Sonnet 5 | $0.00014 | $0.00118 |
| Haiku 4.5 | $0.00007 | $0.00059 |
Grade A, and why
jvm-incident-triage 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 12d 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 — 47 lines — stays where its author put it; the contents beside it link to each section on GitHub.
JVM Incident Triage
Preserve evidence, stabilize impact, and distinguish symptoms from causes. Prefer bounded, low-overhead collection before restart or invasive profiling.
Establish the timeline
Record the incident window, JVM and Java version, workload change, deployment change, container limits, restart history, affected instances, and user impact. Correlate JVM evidence with application latency, throughput, errors, host CPU, memory, disk, and network signals.
Collect safely
- Capture three thread dumps several seconds apart to distinguish persistent states from snapshots.
- Record
jcmd <pid> VM.version,VM.flags,GC.heap_info, andThread.print -lwhen permitted. - Preserve recent GC logs and JVM fatal-error files. Use an existing JFR recording or start a bounded settings profile only after checking production overhead and policy.
- Compare process RSS, heap usage, direct buffers, metaspace, thread count, file descriptors, and container limits.
- Redact credentials, customer data, SQL literals, and sensitive arguments before sharing artifacts.
Do not start with a heap dump on a nearly exhausted host. Confirm destination capacity, pause risk, data handling, and access controls first.
Analyze by symptom
- High CPU: correlate hot OS threads with hexadecimal JVM thread IDs; compare repeated stack traces; separate application loops, contention, JIT, and GC CPU.
- Hang or latency: inspect deadlocks, blocked owners, pool starvation, parked threads, downstream waits, and synchronized bottlenecks across repeated dumps.
- Heap pressure: inspect allocation rate, live-set trend after major collections, promotion failures, humongous allocations, and collection frequency.
- Native memory: compare RSS with committed heap; inspect direct buffers, thread stacks, metaspace, code cache, JNI, and Native Memory Tracking availability.
- Restarts: distinguish Java heap OOM, native allocation failure, container OOM kill, external termination, and health-check eviction.
What ships with it
2 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.
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.
- 12d ago First seen · 47 lines · 72 tokens per session scan A 91f030b76e58
jvm-incident-triage is a skill published in the GitHub repository Jiangxianze/spring-agent-skills (1 stars, last pushed 1mo ago), licensed Apache-2.0. It adds 72 tokens to every session and 591 once invoked, about $0.0004 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-31.
Other skills, from other repositories
nullaway
Guide for resolving NullAway static analysis errors. Best practices for: Passing ObservableSupplier/Supplier Dereferencing potentially @Nullable values Adding @NullMarked to Java code.
wxjava-troubleshooter
A troubleshooting guide for WxJava, a Java library used to connect applications to WeChat services. It organizes problems involving setup, access tokens, signatures, payment certificates, callbacks, data conversion, network requests, and multiple accounts.
performance-smell-detection
Detect potential code-level performance smells in Java - streams, collections, boxing, regex, object creation. Provides awareness, not absolutes - always measure before optimizing. For JPA/database performance, use jpa-patterns instead.
126-java-exception-handling
Use when you need to apply Java exception handling best practices — including using specific exception types, managing resources with try-with-resources, securing exception messages, preserving error context via exception chaining, validating inputs early with fail-fast principles, handling thread interruption…
neo4j-driver-java-skill
Neo4j Java Driver v6 — driver lifecycle, Maven/Gradle setup, executableQuery, executeRead/Write managed transactions, explicit transactions, async/reactive patterns, error handling, data type mapping, connection pool tuning, causal consistency/bookmarks. Use when writing Java or Kotlin code that connects to Neo4j via…
neo4j-spring-data-skill
Use when building Spring Boot applications with Neo4j using Spring Data Neo4j (SDN 7.x/8.x) — @Node entity mapping, @Relationship, @RelationshipProperties, Neo4jRepository, ReactiveNeo4jRepository, @Query annotations, application.yml configuration, projections, Neo4jClient, Neo4jTemplate, transactions, auditing, or…