{
  "schemaVersion": "1.0",
  "item": {
    "slug": "anti-pattern-czar",
    "name": "Anti-Pattern Czar",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/Glucksberg/anti-pattern-czar",
    "canonicalUrl": "https://clawhub.ai/Glucksberg/anti-pattern-czar",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/anti-pattern-czar",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=anti-pattern-czar",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "references/patterns.md",
      "references/workflows.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-23T16:43:11.935Z",
      "expiresAt": "2026-04-30T16:43:11.935Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
        "contentDisposition": "attachment; filename=\"4claw-imageboard-1.0.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/anti-pattern-czar"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/anti-pattern-czar",
    "agentPageUrl": "https://openagent3.xyz/skills/anti-pattern-czar/agent",
    "manifestUrl": "https://openagent3.xyz/skills/anti-pattern-czar/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/anti-pattern-czar/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Anti-Pattern Czar",
        "body": "Autonomous agent that systematically identifies and fixes TypeScript error handling anti-patterns."
      },
      {
        "title": "Detector",
        "body": "Run with Bun (no install required):\n\nbunx antipattern-czar\nbunx antipattern-czar --src lib\nbunx antipattern-czar --config my-config.json\n\nConfig via .antipatternrc.json:\n\n{\n  \"srcDir\": \"src\",\n  \"criticalPaths\": [\"DatabaseService.ts\", \"AuthHandler.ts\"],\n  \"skipDirectories\": [\"node_modules\", \"dist\", \".git\"]\n}"
      },
      {
        "title": "Mode Selection",
        "body": "Parse user intent to pick mode:\n\nUser SaysModeAction\"scan\", \"detect\", \"find\"SCANRun detector, save state\"review\", \"fix\", \"help me fix\"REVIEWInteractive fix session\"auto\", \"fix all\", \"autonomous\"AUTOBatch fix with guardrails\"resume\", \"continue\"RESUMELoad state, continue\"report\", \"status\", \"progress\"REPORTShow current state"
      },
      {
        "title": "State File",
        "body": "Always check .anti-pattern-state.json at the project root. On first SCAN, ask if resuming when it exists.\n\n{\n  \"session_id\": \"<uuid>\",\n  \"started_at\": \"<ISO>\",\n  \"target_path\": \"<path>\",\n  \"issues\": [],\n  \"history\": []\n}\n\nIssue schema: id, file, line, pattern, severity (critical/high/medium), is_critical_path, status (pending/fixed/approved_override/skipped), code_snippet."
      },
      {
        "title": "Workflow by Mode",
        "body": "See workflows.md for full per-mode workflows. Summary:\n\nSCAN: Run detector → parse issues → classify severity → save state → show summary\nREVIEW: Load state → sort by critical-path + severity → read code context → explain issue → propose fix options → apply approved fix → update state\nAUTO: Confirm with user → auto-fix non-critical-path issues using templates → switch to REVIEW for critical-path hits → show summary\nRESUME: Load .anti-pattern-state.json → continue from first pending issue\nREPORT: Display session stats, severity table, recent fixes, next actions"
      },
      {
        "title": "Approved Overrides",
        "body": "Only suggest APPROVED_OVERRIDE when ALL are true:\n\nError is expected and frequent\nLogging would create excessive noise\nThere is explicit recovery/fallback logic\nReason is specific and technical\n\nNEVER approve overrides on critical paths without exceptional user confirmation.\n\nFormat:\n\n} catch {\n  // [APPROVED_OVERRIDE] <specific technical reason>\n  // Fallback: <what happens instead>\n}"
      },
      {
        "title": "Fix Templates",
        "body": "See patterns.md for the full pattern list with severity, auto-fix eligibility, and code templates."
      },
      {
        "title": "Progress Output Format",
        "body": "After each fix:\n\n✅ Fixed: src/services/example.ts:42\n   Pattern: NO_LOGGING_IN_CATCH\n   Solution: Added logger.error() with context\n\nProgress: 4/28 issues remaining ━━━━━━━ 14%"
      }
    ],
    "body": "Anti-Pattern Czar\n\nAutonomous agent that systematically identifies and fixes TypeScript error handling anti-patterns.\n\nDetector\n\nRun with Bun (no install required):\n\nbunx antipattern-czar\nbunx antipattern-czar --src lib\nbunx antipattern-czar --config my-config.json\n\n\nConfig via .antipatternrc.json:\n\n{\n  \"srcDir\": \"src\",\n  \"criticalPaths\": [\"DatabaseService.ts\", \"AuthHandler.ts\"],\n  \"skipDirectories\": [\"node_modules\", \"dist\", \".git\"]\n}\n\nMode Selection\n\nParse user intent to pick mode:\n\nUser Says\tMode\tAction\n\"scan\", \"detect\", \"find\"\tSCAN\tRun detector, save state\n\"review\", \"fix\", \"help me fix\"\tREVIEW\tInteractive fix session\n\"auto\", \"fix all\", \"autonomous\"\tAUTO\tBatch fix with guardrails\n\"resume\", \"continue\"\tRESUME\tLoad state, continue\n\"report\", \"status\", \"progress\"\tREPORT\tShow current state\nState File\n\nAlways check .anti-pattern-state.json at the project root. On first SCAN, ask if resuming when it exists.\n\n{\n  \"session_id\": \"<uuid>\",\n  \"started_at\": \"<ISO>\",\n  \"target_path\": \"<path>\",\n  \"issues\": [],\n  \"history\": []\n}\n\n\nIssue schema: id, file, line, pattern, severity (critical/high/medium), is_critical_path, status (pending/fixed/approved_override/skipped), code_snippet.\n\nWorkflow by Mode\n\nSee workflows.md for full per-mode workflows. Summary:\n\nSCAN: Run detector → parse issues → classify severity → save state → show summary\nREVIEW: Load state → sort by critical-path + severity → read code context → explain issue → propose fix options → apply approved fix → update state\nAUTO: Confirm with user → auto-fix non-critical-path issues using templates → switch to REVIEW for critical-path hits → show summary\nRESUME: Load .anti-pattern-state.json → continue from first pending issue\nREPORT: Display session stats, severity table, recent fixes, next actions\nApproved Overrides\n\nOnly suggest APPROVED_OVERRIDE when ALL are true:\n\nError is expected and frequent\nLogging would create excessive noise\nThere is explicit recovery/fallback logic\nReason is specific and technical\n\nNEVER approve overrides on critical paths without exceptional user confirmation.\n\nFormat:\n\n} catch {\n  // [APPROVED_OVERRIDE] <specific technical reason>\n  // Fallback: <what happens instead>\n}\n\nFix Templates\n\nSee patterns.md for the full pattern list with severity, auto-fix eligibility, and code templates.\n\nProgress Output Format\n\nAfter each fix:\n\n✅ Fixed: src/services/example.ts:42\n   Pattern: NO_LOGGING_IN_CATCH\n   Solution: Added logger.error() with context\n\nProgress: 4/28 issues remaining ━━━━━━━ 14%"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/Glucksberg/anti-pattern-czar",
    "publisherUrl": "https://clawhub.ai/Glucksberg/anti-pattern-czar",
    "owner": "Glucksberg",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/anti-pattern-czar",
    "downloadUrl": "https://openagent3.xyz/downloads/anti-pattern-czar",
    "agentUrl": "https://openagent3.xyz/skills/anti-pattern-czar/agent",
    "manifestUrl": "https://openagent3.xyz/skills/anti-pattern-czar/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/anti-pattern-czar/agent.md"
  }
}