Adaptive web scraping in Python that bypasses anti-bot systems and scales from single requests to concurrent crawls.
Memory
debug-enhancement-framework
Try itAdds structured JSON logging, error classification, retry with exponential backoff and full jitter, circuit breaking, performance profiling, state capture, and auto-healing to any skill or script, in Python and Bash. Use when a skill or agent needs debugging, error recovery, resilience against flaky network or rate-limited calls, thundering-herd-safe retries, crash diagnostics, performance profiling, memory monitoring, or a reproduce-diagnose-fix-verify workflow for an existing bug.
What it does
Debug Enhancement Framework for ClawHub Skills
The skill document
Debug Enhancement Framework for ClawHub Skills
Version: 2.0.0
Owner: orionshaowswmw
Metadata: {"openclaw":{"emoji":"🛠️"}}
Description: Universal debugging, error handling, and bug-fixing enhancement framework for AI agent skills. Adds comprehensive logging, error recovery, performance monitoring, and self-healing capabilities to any skill.
When to Use
- Adding debugging capabilities to any ClawHub skill
- Fixing bugs and errors in skill implementations
- Adding error recovery and self-healing to skills
- Performance monitoring and optimization
- Creating robust, production-ready skills
Quick Start
# Install this framework
npx --yes clawhub@latest install debug-enhancement-framework --no-input
# Use in any skill
source debug-enhancement-framework/scripts/debugger.sh
Core Features
1. Universal Debugger (debugger.sh / debugger.py)
# Initialize debugging session
DEBUGGER_INIT=true
source debug-enhancement-framework/scripts/debugger.sh
# Log with levels
dbg_log "INFO" "Starting operation"
dbg_log "WARN" "Memory usage high"
dbg_log "ERROR" "Failed to connect"
# Enable verbose tracing
export DEBUG_LEVEL=verbose
2. Error Recovery System
from debug_enhancement import ErrorRecovery, RetryPolicy
# Add retry with exponential backoff
@RetryPolicy(max_attempts=3, backoff="exponential")
def fragile_operation():
# Your code here
pass
# Handle specific errors
recovery = ErrorRecovery()
recovery.handle(FileNotFoundError, lambda e: create_default_file())
3. Performance Monitor
# Profile any command
profile_command "python3 my_script.py"
# Monitor memory usage
monitor_memory --threshold 500MB --alert webhook
4. Self-Healing Mechanisms
- Auto-restart failed services
- Repair corrupted files
- Recover from network failures
- Rollback to stable state
Enhanced Skill Template
All skills should include this debugging structure:
skill-name/
├── SKILL.md # Enhanced with debugging section
├── scripts/
│ ├── main.py # Main logic with error handling
│ ├── debugger.py # Debugging utilities
│ └── recovery.py # Error recovery handlers
├── tests/
│ └── test_skill.py # Unit tests
└── .debug_config.json # Debug configuration
Debugging Best Practices
1. Structured Logging
import logging
from debug_enhancement import setup_logging
setup_logging(
level=logging.DEBUG,
format="json", # or "human"
output="both" # stdout + file
)
logger = logging.getLogger(__name__)
logger.info("Operation started", extra={"operation_id": "abc123"})
2. Error Classification
from debug_enhancement import ErrorClassifier
classifier = ErrorClassifier()
error_type = classifier.classify(exception)
# Returns: NetworkError, ConfigurationError, ValidationError, etc.
3. Circuit Breaker Pattern
from debug_enhancement import CircuitBreaker
breaker = CircuitBreaker(
failure_threshold=5,
recovery_timeout=60,
half_open_requests=3
)
@breaker
def external_api_call():
# Protected call
pass
4. Health Checks
# Add health check endpoint
curl http://localhost:8080/health
# Returns: {"status": "healthy", "checks": {...}}
Bug Fixing Workflow
- Reproduce: Use
dbg_reproduceto capture failure state - Diagnose: Run
dbg_diagnosefor root cause analysis - Fix: Apply
dbg_fixwith suggested patches - Verify: Run
dbg_verifyto confirm fix - Document: Log fix in
.debug_config.json
Integration with Skills
Add this to any skill's SKILL.md:
## Debugging
This skill includes debug enhancement framework.
### Enable Debug Mode
export SKILL_DEBUG=true
### View Logs
tail -f /tmp/skill-name-debug.log
### Run Diagnostics
python3 scripts/debugger.py --diagnose
API Reference
debugger.py
| Function | Description |
|---|---|
setup_logging() | Configure structured logging |
log_error() | Log with full context |
capture_state() | Save execution state |
analyze_trace() | Analyze execution trace |
recovery.py
| Function | Description |
|---|---|
retry_with_backoff() | Retry with exponential backoff |
circuit_breaker() | Circuit breaker decorator |
rollback() | Rollback to previous state |
heal() | Auto-heal common issues |
Testing
# Run skill tests
python3 -m pytest tests/ -v
# Run with coverage
python3 -m pytest tests/ --cov=scripts --cov-report=html
# Simulate failures
python3 scripts/debugger.py --simulate-network-error
Changelog
2.0.0
- Added circuit breaker pattern
- Improved error classification
- Added performance monitoring
- Self-healing mechanisms
1.0.0
- Initial release
- Basic debugging utilities
- Error logging
- Retry logic
Related skills
Manage Stripe customers, subscriptions, invoices, products, prices, and payments through OAuth-authenticated API calls.
Write, debug, and tune Playwright specs with locator strategy, trace diagnosis, and CI-aware timeouts.
Read and write Excel workbooks, worksheets, ranges, tables, and charts in OneDrive through Microsoft Graph with managed OAuth.
Join a video meeting as an AI bot with voice, avatar, and screenshare across four operating modes.
Query and manage Linear issues, projects, teams, cycles, labels, and comments through a managed OAuth GraphQL endpoint.
More from orionshaowswmw
Browse all skillsDetect and repair partially wiped agent workspaces with integrity checks, signed manifests, guarded restore recipes, bounded local recovery state, and explicit off-box sync. Use when files, scripts, trees, models, or build outputs disappear or lose integrity between turns.
Seven offline mechanisms against slow/stale/zombie/sycophantic agent turns: prompt compaction, request fencing, zombie detection, CAPTCHA triage, anti-sycophancy spine, delivery register, invention quarry. Use when chat feels laggy, reconnects surface old answers, long chats degrade, or the agent caves under contradiction. JSON contracts; state per-agent under ~/.arena_turn; no network, no sudo.
Quota-aware LLM router that squeezes maximum usable AI out of free-tier API keys across Gemini, Mistral, OpenRouter, Kilo and Cerebras plus any OpenAI-compatible endpoint (including local Ollama/llama.cpp/vLLM). Probes every model on every key, measures real quality and real published rate limits, then routes each request to the cheapest model that can do the job — spending abundant capacity first and reserving scarce daily quota for when it is actually needed. Persists cooldowns to disk so a 429 discovered in one process is respected by the next. Use when an agent must make many LLM calls on free keys without hitting rate limits, when "all models failed", or when deciding which of several provider keys to use for a task.
Opt-in, model-neutral guidance for evidence-aware, dignified AI communication, with a compact response contract and offline deterministic text audit. It never injects prompts, edits host configuration, calls networks, reads secrets, or treats heuristics as truth.
Iran Chemical Database — live, dated, auditable, BEST-EFFORT index of chemical offerings in configured public Iranian supplier catalogues (websites + public Telegram channels). HTTrack/WooCommerce-REST/Telegram mirroring → local-only parsing → RDKit/PubChem/CAS-validated PostgreSQL with FastAPI + Streamlit. Fail-closed Iranian-suppliers-only country gate; coverage measured and published, never claimed complete. Installation = software + queued crawl, not a populated dataset. Ships a 1399-molecule CID-unique confirmed-organic seed baseline (v2.22, 2026-08-27: v2.19 primary + live Telegram/WooCommerce/sitemap crawl + 5-model fleet normalization, every new identity PubChem-confirmed). For academic procurement research.
Model-agnostic, agent-agnostic fidelity-first pipeline converting operator-authorized Persian/English RTL lecture PDFs into offline HTML study guides — recall-first dual OCR (PyMuPDF + Tesseract fas+eng PSM ensemble), rendered-page evidence, multi-model correction, session-grounded enrichment (tables/flashcards/quizzes/mnemonics/summaries/scenarios), measured fidelity, QA gates, verified ZIP. v1.5.0 runs on ANY model family through 8 API dialects (OpenAI, Responses, Gemini, Anthropic, Cohere, Ollama, HuggingFace, offline mock) or with no model at all, auto-discovers providers from the host agent's environment, self-heals provider quirks and model retirements, and exposes one deterministic CLI/MCP entrypoint plus cross-model consensus so different agents reproduce the same intended result.