Individual skill
nginx-c-module-debug
nginx C module debugging guidelines based on the official nginx development guide. This skill should be used when debugging nginx C module crashes, memory bugs, request flow issues, or production problems. Triggers on tasks involving segfault analysis, coredump debugging, GDB inspection, memory leak detection, request phase tracing, AddressSanitizer setup, or nginx module troubleshooting.
skills/.experimental/nginx-c-module-debug/SKILL.md
Source commit cf93c57cac89d6fc3e4194686000411567f5caf3
What was checked
- Matches the observed repository HEAD
- Yes
- Scanner rules are current
- No
- Repository scan complete
- No
- Skill scan complete
- Yes
- Observed behavior
- Not checked yet
- Last checked
- Nov 5, 2026
These are observations at the recorded commit, not a guarantee of safety. Review the source before running it.
Install this skill
Choose an agent in your Stack or copy a command below. Commands fetch the pinned commit and copy only this skill directory. Existing destinations are refused. Copying a command does not install anything.
An install command is unavailable: current rules, complete repository and skill scans, an eligible behavior level and a permitted license are required.
Repository context
- Repository stars (not skill ratings)
- 222
- Repository last updated
- Aug 15, 2026
- License
- MIT
Observed agent integration: No specific integration evidence. Standard SKILL.md installation does not imply verified compatibility.
- testing Derived category
Files and excerpt
File metadata and permitted, redacted excerpts come from the recorded scan. Source links are pinned to that commit.
Browse files
SKILL.mdcore · 8,578 bytesassets/templates/_template.mddoc · 750 bytesmetadata.jsonasset · 1,121 bytesreferences/_sections.mddoc · 2,084 bytesreferences/build-asan-configure.mddoc · 3,584 bytesreferences/build-debug-flags.mddoc · 3,764 bytesreferences/build-debug-palloc.mddoc · 5,110 bytesreferences/build-single-process.mddoc · 3,720 bytesreferences/build-valgrind-suppressions.mddoc · 4,436 bytesreferences/crash-double-free-finalize.mddoc · 2,983 bytesreferences/crash-error-page-redirect.mddoc · 3,801 bytesreferences/crash-null-deref-pattern.mddoc · 2,562 bytesreferences/crash-segfault-signature.mddoc · 3,450 bytesreferences/crash-stack-overflow.mddoc · 2,987 bytesreferences/crash-worker-exit-log.mddoc · 3,367 bytesreferences/dbglog-debug-connection.mddoc · 2,930 bytesreferences/dbglog-debug-mask.mddoc · 3,295 bytesreferences/dbglog-format-ngx-str.mddoc · 3,717 bytesreferences/dbglog-log-action-string.mddoc · 3,977 bytesreferences/dbglog-memory-buffer.mddoc · 3,694 bytesreferences/gdb-attach-worker.mddoc · 2,494 bytesreferences/gdb-backtrace-read.mddoc · 3,656 bytesreferences/gdb-coredump-setup.mddoc · 3,163 bytesreferences/gdb-inspect-request.mddoc · 2,702 bytesreferences/gdb-memory-buffer-extract.mddoc · 3,204 bytesreferences/gdb-watchpoint-corruption.mddoc · 3,169 bytesreferences/memdbg-buffer-overrun.mddoc · 2,672 bytesreferences/memdbg-cleanup-handler-leak.mddoc · 3,226 bytesreferences/memdbg-pool-leak-pattern.mddoc · 2,534 bytesreferences/memdbg-slab-corruption.mddoc · 3,388 bytesreferences/memdbg-temp-pool-misuse.mddoc · 3,778 bytesreferences/memdbg-use-after-free.mddoc · 3,127 bytesreferences/memdbg-valgrind-pool-trace.mddoc · 2,921 bytesreferences/probe-dtrace-request.mddoc · 4,221 bytesreferences/probe-ebpf-latency.mddoc · 4,469 bytesreferences/probe-strace-fd-leak.mddoc · 4,955 bytesreferences/probe-strace-syscall.mddoc · 3,670 bytesreferences/probe-systemtap-pool.mddoc · 4,129 bytesreferences/state-connection-lifecycle.mddoc · 3,863 bytesreferences/state-event-flag-debug.mddoc · 4,478 bytesreferences/state-request-count-track.mddoc · 3,677 bytesreferences/state-timer-leak.mddoc · 4,345 bytesreferences/state-upstream-state-machine.mddoc · 4,016 bytesreferences/trace-config-inheritance.mddoc · 5,143 bytesreferences/trace-event-handler-chain.mddoc · 5,019 bytesreferences/trace-filter-chain-order.mddoc · 4,529 bytesreferences/trace-phase-handler-flow.mddoc · 3,961 bytesreferences/trace-subrequest-tree.mddoc · 4,966 bytesreferences/trace-upstream-callback-seq.mddoc · 5,244 bytes
Read excerpt
# nginx.org C Module Debugging Best Practices
Comprehensive debugging guide for nginx C modules, derived from the official nginx development documentation and production debugging experience. Contains 45 rules across 8 categories, prioritized by impact to guide systematic diagnosis of crashes, memory bugs, and behavioral issues in nginx modules.
**Companion skills**: This skill complements [nginx-c-modules](../nginx-c-modules/SKILL.md) (correctness) and [nginx-c-module-perf-reliability](../nginx-c-module-perf/SKILL.md) (performance). This skill covers **debugging and diagnosis**.
## When to Apply
Reference these guidelines when:
- Diagnosing nginx worker crashes (segfaults, SIGABRT, SIGSEGV)
- Finding memory bugs (use-after-free, leaks, pool corruption, buffer overruns)
- Setting up GDB and core dump analysis for nginx
- Tracing request flow through phases, subrequests, and filter chains
- Instrumenting nginx modules with debug logging and dynamic tracing tools