360 Secure SkillHub
360 安全技能中心

Assert

这是一款断言模式参考工具,通过`intro`、`preconditions`等命令,提供断言技术、契约式编程、防御式编程的全方位参考,涵盖前置/后置条件、类/循环不变量、多语言断言语法、常见反模式等。适用于函数输入校验、类状态约束、选择断言与异常场景等,用户执行指定bash命令即可获取对应参考信息。

bytesagain3
bytesagain3
热度 57.41
最近更新 2026-05-11 17:34:51
分类:开发依赖:纯提示词应用场景:调试排错 / 概念解释 / 代码审查

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add assert
Metadata
name
assert
version
1.0.0
description
Assertion patterns reference — guard clauses, preconditions, invariants, and contract programming. Use when writing defensive code, validating inputs, or implementing design-by-contract.
author
BytesAgain
homepage
https://bytesagain.com
source
https://github.com/bytesagain/ai-skills
tags
["assert","assertion","precondition","invariant","contract","defensive","testing"]
category
devtools

Assert — Assertion Patterns Reference

Quick-reference skill for assertion techniques, design-by-contract, and defensive programming patterns.

When to Use

  • Writing precondition checks for function inputs
  • Implementing class invariants and postconditions
  • Choosing between assertions and exceptions
  • Applying design-by-contract methodology
  • Understanding assertion behavior across languages

Commands

intro

scripts/script.sh intro

Overview of assertions — purpose, philosophy, and when to use them vs exceptions.

preconditions

scripts/script.sh preconditions

Precondition patterns: validating inputs, guard clauses, and fail-fast design.

postconditions

scripts/script.sh postconditions

Postcondition patterns: validating outputs and return value contracts.

invariants

scripts/script.sh invariants

Class and loop invariants — maintaining consistent state throughout execution.

languages

scripts/script.sh languages

Assertion syntax and behavior in Python, Java, C, JavaScript, Rust, Go.

contracts

scripts/script.sh contracts

Design-by-contract methodology — Bertrand Meyer's approach and modern implementations.

antipatterns

scripts/script.sh antipatterns

Common assertion mistakes: side effects, catching AssertionError, using in production flow.

strategies

scripts/script.sh strategies

Assertion strategies for different contexts: unit tests, production code, APIs, libraries.

help

scripts/script.sh help

version

scripts/script.sh version

Powered by BytesAgain | bytesagain.com | hello@bytesagain.com