Skip to content
Back to skills

Review

ASecurity

Review code changes against WooCommerce iOS standards

  • 357 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 12, 2026
developmentswiftbashtestinggit

Security analysis

A100/100

Scanned September 12, 2026

npx -y skills add woocommerce/woocommerce-ios --skill review --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Review?

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

Security grade badge for Review
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/woocommerce-review/badge)](https://www.skillsdirectory.com/skills/woocommerce-review)

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: review
description: Review code changes against WooCommerce iOS standards
user-invocable: true
allowed-tools: "Bash, Read, Grep, Glob"
---

Review the current changes for compliance with WooCommerce iOS conventions.

1. Get the changes to review:
```bash
git diff trunk...HEAD
```
If no diff against trunk, fall back to staged changes: `git diff --cached`

2. Check each modified file against these criteria:

**Architecture** (see `.claude/rules/architecture.md`):
- UI code does not import Networking or Storage directly
- New actions follow the Yosemite dispatch pattern
- Dependencies injected via constructor with protocol types
- Coordinators for navigation, ViewModels for state

**Swift Style** (see `.claude/rules/swift-style.md`):
- No force unwraps or force casts
- Error handling uses do-catch, not try?
- Line length under 163 characters
- No parentheses around conditionals

**Localization** (see `.claude/rules/localization.md`):
- NSLocalizedString uses reverse-DNS keys with value: and comment:
- No LocalizedStringKey
- No string interpolation in localized strings
- Positional placeholders (%1$@)
- Strings grouped in enum Localization { }

**Analytics** (see `.claude/rules/analytics.md`):
- New events added to WooAnalyticsStat
- Properties use WooAnalyticsEvent factory pattern
- Analytics dependency injected

**Testing** (see `.claude/rules/testing.md`):
- New code has corresponding tests
- Tests use snake_case naming
- Given/When/Then structure
- Hand-written mocks with Mock prefix

3. Report findings organized by severity:
   - **Blockers**: Must be fixed before merge
   - **Suggestions**: Recommended improvements
   - **Positives**: Things done well

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…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.