smart-test

Analyze code changes and run affected tests via import dependency mapping.

1|Updated Nov 11, 2025
One-click install
npx skills add https://github.com/rysweet/RustyClawd --skill smart-test
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: smart-test
Source: https://github.com/rysweet/RustyClawd/tree/main/.claude/skills/smart-test
Command: npx skills add https://github.com/rysweet/RustyClawd --skill smart-test

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires pytest, git, and includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill drastically reduces the time spent waiting for tests to run by intelligently selecting only the tests affected by your code changes, optimizing your development feedback loop.

Core Features & Use Cases

  • Intelligent Test Selection: Analyzes code changes to identify and run only relevant tests.
  • Tiered Testing Strategy: Offers fast (<1 min), impacted (<5 min), and full suite options for different development stages.
  • Reliability Tracking: Excludes flaky tests from fast runs to ensure stable feedback.
  • Use Case: Before committing code, ask "What tests should I run for my changes?" and receive a precise, time-estimated list of commands to execute, saving you from running the entire test suite unnecessarily.

Quick Start

Ask what tests to run for your current code changes.

Frequently Asked Questions about smart-test

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run only the pytest tests affected by my recent code changes?

Run only affected pytest tests by analyzing code changes and mapping import dependencies to select relevant test suites. This intelligent test selection reduces development feedback loop times by skipping unrelated tests.

What is the best way to speed up pytest execution in CI pipelines?

Speed up pytest execution in CI by implementing a tiered testing strategy with fast, impacted, and full suite runs. This approach prioritizes stable tests and reduces overall CI times by excluding flaky tests from fast runs.

How does import dependency mapping work for selecting impacted tests?

Import dependency mapping for selecting impacted tests works by analyzing code changes to identify affected modules. It tracks test reliability to prioritize stable tests, ensuring accurate and fast feedback during development.

Do I need git and pytest to use this automated test selection strategy?

Yes, you need git and pytest to use this automated test selection strategy. The Skill requires git to analyze code changes and pytest to execute the selected impacted tests, forming the foundation of its dependency mapping.

Can I exclude flaky tests from my fast pytest runs?

Yes, you can exclude flaky tests from fast pytest runs using reliability tracking. The Skill monitors test stability over time, automatically excluding unreliable tests from quick tiered runs to ensure consistent and stable feedback.

When should I use tiered testing strategies instead of the full test suite?

Use tiered testing strategies instead of the full test suite before committing code or during development. Choose fast runs under one minute for quick checks, impacted runs under five minutes for moderate changes, and full suite for final validation.