IC-specific security patterns for canister development in Motoko and Rust. Covers access control, anonymous principal rejection, reentrancy prevention (CallerGuard pattern), async safety (saga pattern), callback trap handling, cycle drain protection, and safe upgrade patterns. Use when writing or modifying any canister that modifies state, handles tokens, makes inter-canister calls, or implements access control.
$npx -y skills add dfinity/icskills --skill canister-securityInstalls into the current project.
Run `npx skills use "https://github.com/dfinity/icskills" --skill "dfinity/icskills/canister-security"` and follow the generated skill instructions now. Read its complete output, redirecting it to a temporary file first if necessary. Resolve relative paths from the supporting-files directory it provides.
Use the skills in "https://github.com/dfinity/icskills" that are relevant to the current task. Run `npx skills add "https://github.com/dfinity/icskills"` and select the relevant skills, then follow their instructions.