autoheal

Add AI-powered error monitoring and auto-fix generation to any project

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "autoheal" with this command: npx skills add hankmint/autoheal

AutoHeal AI Skill

AutoHeal captures production JavaScript/TypeScript errors, analyzes them with AI, and generates platform-specific fix prompts you can paste directly into your AI coding tool.

1. Setup AutoHeal in a Project

Browser Project (React, Next.js, Vue, Svelte, etc.)

Add this snippet to your app's entry point (e.g., main.tsx, layout.tsx, App.vue):

<script>
window.onerror = function(msg, source, line, col, err) {
  fetch("https://autohealai.com/api/errors/ingest", {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      key: process.env.AUTOHEAL_API_KEY || "YOUR_API_KEY",
      message: msg,
      stack: err?.stack || "",
      source_url: source,
      browser: navigator.userAgent
    })
  }).catch(() => {});
};

window.onunhandledrejection = function(e) {
  const err = e.reason;
  fetch("https://autohealai.com/api/errors/ingest", {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      key: process.env.AUTOHEAL_API_KEY || "YOUR_API_KEY",
      message: err?.message || String(err),
      stack: err?.stack || "",
      source_url: window.location.href,
      browser: navigator.userAgent
    })
  }).catch(() => {});
};
</script>

Node.js / Server Project

Add this to your server entry point:

process.on('uncaughtException', (err) => {
  fetch("https://autohealai.com/api/errors/ingest", {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      key: process.env.AUTOHEAL_API_KEY,
      message: err.message,
      stack: err.stack || ""
    })
  }).catch(() => {});
});

process.on('unhandledRejection', (reason) => {
  const err = reason instanceof Error ? reason : new Error(String(reason));
  fetch("https://autohealai.com/api/errors/ingest", {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      key: process.env.AUTOHEAL_API_KEY,
      message: err.message,
      stack: err.stack || ""
    })
  }).catch(() => {});
});

2. Check Error Status

After an error is ingested, check its analysis status:

curl -s "https://autohealai.com/api/errors/{ERROR_ID}/status" \
  -H "Authorization: Bearer $AUTOHEAL_API_KEY"

Response:

{
  "status": "analyzed",
  "message": "Cannot read properties of undefined",
  "has_fix": true,
  "fix_id": "uuid-here",
  "dashboard_url": "https://autohealai.com/dashboard/errors/{ERROR_ID}"
}

Possible statuses: new, analyzing, analyzed, fix_applied, ignored

View the full fix with AI-generated fix prompt at the dashboard_url.

3. Report an Error Manually

Send any error directly to AutoHeal:

curl -X POST "https://autohealai.com/api/errors/ingest" \
  -H "Content-Type: application/json" \
  -d '{
    "key": "'$AUTOHEAL_API_KEY'",
    "message": "TypeError: Cannot read properties of undefined (reading '\''map'\'')",
    "stack": "TypeError: Cannot read properties of undefined\n    at renderList (src/components/List.tsx:15:23)"
  }'

Response:

{
  "status": "queued",
  "error_id": "uuid-here"
}

The error will be analyzed by AI within seconds. Check status using the error_id from the response.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Cclaw

Open-source comedy AI + video editing + poster generation. Create standup/sketch/manzai/scripts, edit videos via FFmpeg, and generate comedy posters via canv...

Registry SourceRecently Updated
General

Dlazy Seedance 1.5 Pro

Convert images into dynamic dance videos using Doubao Seedance 1.5 Pro.

Registry SourceRecently Updated
General

Pod Template Pack

Use when user needs ready-to-use POD (Print on Demand) design keywords, title templates, and listing copy. Use when creating POD product listings for TikTok,...

Registry SourceRecently Updated
General

Dlazy Mj.Imagine

Generate artistic images using Midjourney (MJ) model. Supports text-to-image.

Registry SourceRecently Updated