Individual skill
unsafe-checker
CRITICAL: Use for unsafe Rust code review and FFI. Triggers on: unsafe, raw pointer, FFI, extern, transmute, *mut, *const, union, #[repr(C)], libc, std::ffi, MaybeUninit, NonNull, SAFETY comment, soundness, undefined behavior, UB, safe wrapper, memory layout, bindgen, cbindgen, CString, CStr, 安全抽象, 裸指针, 外部函数接口, 内存布局, 不安全代码, FFI 绑定, 未定义行为
skills/unsafe-checker/SKILL.md
Source commit 5c40d3ad785193231b7d0dbfb8e1eb447e5edd94
What was checked
- Matches the observed repository HEAD
- Yes
- Scanner rules are current
- Yes
- Repository scan complete
- No
- Skill scan complete
- Yes
- Observed behavior
- Network or broad shell
- Last checked
- Nov 9, 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)
- 1,578
- Repository last updated
- Aug 23, 2026
- License
- Not available
Observed agent integration: codex
- engineering 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
AGENTS.mddoc · 5,242 bytesSKILL.mdcore · 2,490 byteschecklists/before-unsafe.mddoc · 3,429 byteschecklists/common-pitfalls.mddoc · 4,565 byteschecklists/review-unsafe.mddoc · 3,862 bytesexamples/ffi-patterns.mddoc · 9,000 bytesexamples/safe-abstraction.mddoc · 7,041 bytesmetadata.jsonasset · 685 bytesrules/_sections.mddoc · 1,932 bytesrules/_template.mddoc · 765 bytesrules/ffi-01-no-string-direct.mddoc · 2,976 bytesrules/ffi-02-read-ffi-docs.mddoc · 3,230 bytesrules/ffi-03-drop-for-c-ptr.mddoc · 3,683 bytesrules/ffi-04-panic-boundary.mddoc · 3,674 bytesrules/ffi-05-portable-types.mddoc · 2,653 bytesrules/ffi-06-string-abi.mddoc · 3,194 bytesrules/ffi-07-no-drop-external.mddoc · 3,245 bytesrules/ffi-08-error-handling.mddoc · 3,570 bytesrules/ffi-09-ref-not-ptr.mddoc · 3,136 bytesrules/ffi-10-thread-safety.mddoc · 3,275 bytesrules/ffi-11-packed-ub.mddoc · 3,153 bytesrules/ffi-12-invariant-doc.mddoc · 3,943 bytesrules/ffi-13-data-layout.mddoc · 3,201 bytesrules/ffi-14-stable-layout.mddoc · 3,038 bytesrules/ffi-15-validate-external.mddoc · 3,725 bytesrules/ffi-16-closure-to-c.mddoc · 3,596 bytesrules/ffi-17-opaque-types.mddoc · 3,852 bytesrules/ffi-18-no-trait-objects.mddoc · 3,887 bytesrules/general-01-no-abuse.mddoc · 1,875 bytesrules/general-02-not-for-perf.mddoc · 2,376 bytesrules/general-03-no-alias.mddoc · 1,997 bytesrules/io-01-raw-handle.mddoc · 3,799 bytesrules/mem-01-repr-layout.mddoc · 2,994 bytesrules/mem-02-no-other-process.mddoc · 3,172 bytesrules/mem-03-no-auto-drop-foreign.mddoc · 3,294 bytesrules/mem-04-reentrant.mddoc · 3,169 bytesrules/mem-05-bitfield-crates.mddoc · 3,269 bytesrules/mem-06-maybeuninit.mddoc · 3,906 bytesrules/ptr-01-no-thread-share.mddoc · 2,926 bytesrules/ptr-02-prefer-nonnull.mddoc · 2,793 bytesrules/ptr-03-phantomdata.mddoc · 3,207 bytesrules/ptr-04-alignment.mddoc · 3,190 bytesrules/ptr-05-no-const-to-mut.mddoc · 2,857 bytesrules/ptr-06-prefer-cast.mddoc · 3,021 bytesrules/safety-01-panic-safety.mddoc · 2,930 bytesrules/safety-02-verify-invariants.mddoc · 2,539 bytesrules/safety-03-no-uninit-api.mddoc · 2,941 bytesrules/safety-04-double-free.mddoc · 2,896 bytesrules/safety-05-send-sync.mddoc · 2,942 bytesrules/safety-06-no-raw-ptr-api.mddoc · 3,142 bytesrules/safety-07-unsafe-pair.mddoc · 2,927 bytesrules/safety-08-no-mut-from-immut.mddoc · 2,882 bytesrules/safety-09-safety-comment.mddoc · 3,270 bytesrules/safety-10-safety-doc.mddoc · 3,364 bytesrules/safety-11-assert-not-debug.mddoc · 3,204 bytesrules/union-01-avoid-except-ffi.mddoc · 2,689 bytesrules/union-02-no-cross-lifetime.mddoc · 2,938 bytes
No licensed excerpt is available. You can inspect the pinned source.