# Anti Patterns

> Identify and refactor Rust anti-patterns and clippy anti-idioms. Use when reviewing Rust code for smells, hunting anti-patterns to fix or remove, or refactoring code that clones to satisfy the borrow checker, takes &String/&Vec parameters, unwraps on fallible paths, or returns sentinel values instead of Option/Result.

- **Type:** Skill
- **Install:** `agentstack add skill-vinnie357-claude-skills-anti-patterns`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [vinnie357](https://agentstack.voostack.com/s/vinnie357)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [vinnie357](https://github.com/vinnie357)
- **Source:** https://github.com/vinnie357/claude-skills/tree/main/plugins/languages/rust/skills/anti-patterns

## Install

```sh
agentstack add skill-vinnie357-claude-skills-anti-patterns
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Rust Anti-Patterns

Catalog of Rust anti-patterns and clippy anti-idioms for reviewers and implementers actively hunting code to fix or remove. Complements `/rust:troubleshooting` (which teaches the idiomatic GOOD patterns) by naming the BAD patterns explicitly, with detection hints.

## When to Use This Skill

Activate when:
- Reviewing a Rust diff or module for anti-patterns
- Refactoring code flagged by clippy or code review
- Deciding whether a `.clone()`, `&Vec` parameter, `unwrap()`, or sentinel return value is a bug to fix

## Sources

Rust Design Patterns book ([anti-patterns](https://rust-unofficial.github.io/patterns/anti_patterns/), [idioms](https://rust-unofficial.github.io/patterns/idioms/)) and the [Clippy lint index](https://rust-lang.github.io/rust-clippy/master/index.html) — full attribution per entry in `references/anti-patterns.md`, dated URLs in `sources.md`.

## Example

```rust
// BAD: clippy::ptr_arg — forces callers to hold an owned Vec
fn process(data: &Vec) { /* ... */ }

// GOOD: accepts a Vec, an array, or a slice via deref coercion
fn process(data: &[i32]) { /* ... */ }
```

The full catalog (9 entries) is in `references/anti-patterns.md`.

## Usage Guidelines

1. **Scan for the pattern** — check the diff or module against `references/anti-patterns.md`
2. **Confirm it's not deliberate** — a `restraint:` comment or documented tradeoff can justify what looks like an anti-pattern; anti-patterns are defaults to avoid, not absolute bans
3. **Fix at the root** — apply the GOOD replacement, don't just silence the lint
4. **Cite the source** — when flagging in review, reference the anti-pattern name so the author can look it up

## Anti-Fabrication

Every entry in `references/anti-patterns.md` cites its source URL. Do not assert a clippy lint name, its default-enabled status, or a "this catches N% of cases" claim without verifying against the linked clippy documentation — see `/core:anti-fabrication`.

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [vinnie357](https://github.com/vinnie357)
- **Source:** [vinnie357/claude-skills](https://github.com/vinnie357/claude-skills)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-vinnie357-claude-skills-anti-patterns
- Seller: https://agentstack.voostack.com/s/vinnie357
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
