Skip to content
Back to skills

Assert

ASecurity

Assertion patterns reference — guard clauses, preconditions, invariants, and contract programming. Use when writing defensive code, validating inputs, or implementing design-by-contract.

  • 12 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 7, 2026
developmentjavascriptpythonrustgojavabashtestinggitapi

Works with

  • api

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 7, 2026

npx -y skills add bytesagain/ai-skills --skill assert --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Assert?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Assert
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/bytesagain-assert/badge)](https://www.skillsdirectory.com/skills/bytesagain-assert)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
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`

```bash
scripts/script.sh intro
```

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

### `preconditions`

```bash
scripts/script.sh preconditions
```

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

### `postconditions`

```bash
scripts/script.sh postconditions
```

Postcondition patterns: validating outputs and return value contracts.

### `invariants`

```bash
scripts/script.sh invariants
```

Class and loop invariants — maintaining consistent state throughout execution.

### `languages`

```bash
scripts/script.sh languages
```

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

### `contracts`

```bash
scripts/script.sh contracts
```

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

### `antipatterns`

```bash
scripts/script.sh antipatterns
```

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

### `strategies`

```bash
scripts/script.sh strategies
```

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

### `help`

```bash
scripts/script.sh help
```

### `version`

```bash
scripts/script.sh version
```

---

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

Files in this skill

  • SKILL.md2.1 KB
  • scripts/script.sh15.6 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…