circuit-breaker-pattern

>

INSTALLATION
npx skills add https://github.com/aj-geddes/useful-ai-prompts --skill circuit-breaker-pattern
Run in your project or agent environment. Adjust flags if your CLI version differs.

SKILL.md

Circuit Breaker Pattern

Table of Contents

  • [Overview](#overview)
  • [When to Use](#when-to-use)
  • [Quick Start](#quick-start)
  • [Reference Guides](#reference-guides)
  • [Best Practices](#best-practices)

Overview

Implement circuit breaker patterns to prevent cascading failures and provide graceful degradation when dependencies fail.

When to Use

  • External API calls
  • Microservices communication
  • Database connections
  • Third-party service integrations
  • Preventing cascading failures
  • Implementing fallback mechanisms
  • Rate limiting protection
  • Timeout handling

Quick Start

Minimal working example:

enum CircuitState {

  CLOSED = "CLOSED",

  OPEN = "OPEN",

  HALF_OPEN = "HALF_OPEN",

}

interface CircuitBreakerConfig {

  failureThreshold: number;

  successThreshold: number;

  timeout: number;

  resetTimeout: number;

}

interface CircuitBreakerStats {

  failures: number;

  successes: number;

  consecutiveFailures: number;

  consecutiveSuccesses: number;

  lastFailureTime?: number;

}

class CircuitBreaker {

  private state: CircuitState = CircuitState.CLOSED;

  private stats: CircuitBreakerStats = {

    failures: 0,

// ... (see reference guides for full implementation)

Reference Guides

Detailed implementations in the references/ directory:

GuideContents
TypeScript Circuit BreakerTypeScript Circuit Breaker
Circuit Breaker with MonitoringCircuit Breaker with Monitoring
Opossum-Style Circuit Breaker (Node.js)Opossum-Style Circuit Breaker (Node.js)
Python Circuit BreakerPython Circuit Breaker
Resilience4j-Style (Java)Resilience4j-Style (Java)

Best Practices

✅ DO

  • Use appropriate thresholds for your use case
  • Implement fallback mechanisms
  • Monitor circuit breaker states
  • Set reasonable timeouts
  • Use exponential backoff
  • Log state transitions
  • Alert on frequent trips
  • Test circuit breaker behavior
  • Use per-dependency breakers
  • Implement health checks

❌ DON'T

  • Use same breaker for all dependencies
  • Set unrealistic thresholds
  • Skip fallback implementation
  • Ignore open circuit breakers
  • Use overly aggressive reset timeouts
  • Forget to monitor
BrowserAct

Let your agent run on any real-world website

Bypass CAPTCHA & anti-bot for free. Start local, scale to cloud.

Explore BrowserAct Skills →

Stop writing automation&scrapers

Install the CLI. Run your first Skill in 30 seconds. Scale when you're ready.

Start free
free · no credit card