C

Claude Watchdog

temikus/claude-watchdog · v0.20.2 · Development & Workflow

by TemikusOwner verifiedScan grade: caution

Stop hook that runs a critical post-mortem on every Claude Code session, cross-checking what was asked against the actual git diff for missed goals, wasted detours, and unverified claims

Follow0
Protect this install with HOL Guard

Guard checks the skills and MCP servers a plugin adds on your machine and asks you before a risky action runs. The scores above are free, and no plan changes them.

Is Claude Watchdog a fit?

From the plugin's manifest and HOL's scan. Anything the plugin does not declare is shown as not declared.

Works with

  • Claude Code
  • 1 skill

Before you install

Sign-in
Not declared
Settings it asks for
Disable watchdog, Minimum tool calls, Cooldown (seconds), Enable verbose mode and 10 more
Declared access
Not declared
License
Apache-2.0

Check before relying on it

What is Claude Watchdog?

Claude Watchdog is a published development & workflow plugin for AI coding agents in the Claude Code ecosystem, developed by Temikus and distributed through the HOL AI plugin registry. Stop hook that runs a critical post-mortem on every Claude Code session, cross-checking what was asked against the actual git diff for missed goals, wasted detours, and unverified claims.

Canonical slug
temikus/claude-watchdog
Version
v0.20.2 · updated Oct 13, 2026

Registry snapshot

Owner verification
Verified on HOL as @Temikus
Scanner
Registry fallback scan
Security result
Caution
Digest verified
Yes
1 bundled skillRead, copy or download each SKILL.mdOpen skills

Trust and security

Trust & reputation

On-Chain Verified
65

HOL Trust Score

Per-metric points (0–100 each) combined via a weighted average into the overall score.

Installability
64/100
Maintenance
55/100
MCP server setup
100/100
Plugin Security
59/100
Provenance
80/100
Publisher Quality
100/100

Provenance

Plugin root
.
Source repo
https://github.com/Temikus/claude-watchdog
Source commit
fbf1a41589ab…
Publisher verified
Yes
Owner verified
@Temikus

Continuous scanner CI not detected

This plugin remains listed. Its overall trust score is reduced by 10% because security checks are not maintained in the source repository's CI.

Optional: maintain the scanner in the source repository's CI to receive the full trust score. Listing does not require that change.

README badge not detected

Plugin owners can add the HOL badge to the repository README from Guard Plugins. Distribution, not security evidence. It adds a 2% engagement adjustment to the overall trust score and never changes the security result.

Caution
Security result
59
Security score
0
High findings
Provider
registry-broker-fallback
Grade
F · caution
Version
Unknown
cisco-skill-scanner: unknown

Published advisories

None matched in GitHub security advisories, checked . This covers published advisories only, not problems nobody has reported.

GitHub security advisories are those the source repository has published.

Findings

mediumpublishabilitypublishability.link.missing.websiteURL

websiteURL should be present for marketplace readiness.

mediumpublishabilitypublishability.link.missing.privacyPolicyURL

privacyPolicyURL should be present for marketplace readiness.

mediumpublishabilitypublishability.link.missing.termsOfServiceURL

termsOfServiceURL should be present for marketplace readiness.

lowoperational-securitysupply-chain.lockfile-missing

Repository snapshot does not include a lockfile.

infoskill-securityskill-scan.unavailable

Cisco skill scanner timed out after 60000 ms

Install guidance

Install in Claude Code

Install through the Claude Code plugin marketplace.

Claude Code plugin docs

Optional: install HOL Guard for Claude Code first, so it can check this plugin's tools on your machine before Claude Code uses them.

  1. 1

    Add the marketplace

    Run this inside a Claude Code session. It registers the marketplace manifest shipped at the repository root. If the repository ships none, add the generated entry from the Advanced section below first.

    claude code
  2. 2

    Find the marketplace and plugin names

    The install id is <plugin-entry>@<marketplace-name>, and the marketplace name is declared inside the manifest — it can differ from the repository name. List registered marketplaces to read both names.

    shell
  3. 3

    Install the plugin

    Substitute the plugin entry name and the marketplace name shown by the previous step.

    claude code

Did setup work in Claude Code?

No setup reports for Claude Code yet. Self-reported by signed-in visitors. Copying a command is not counted, and most installs are never reported.

Attested installs: Fewer than 10 attested installs of this plugin in week 2026-W43, so no number is shown. Counted from opt-in HOL Guard install reports, once per machine and runtime, and never mixed with the answers above. How install reports work.

Loading reviews

Plugin manifest

{
  "$schema": "https://www.schemastore.org/claude-code-plugin-manifest.json",
  "name": "claude-watchdog",
  "description": "Auto-runs a critical session post-mortem when Claude Code stops. Ships the analyze-session command, session-analyzer agent, and a Stop hook that triggers the review in-session (no external API calls). Requires Node.js 20 or newer on PATH.",
  "version": "0.20.2",
  "author": {
    "name": "Artem Yakimenko"
  },
  "homepage": "https://github.com/Temikus/claude-watchdog",
  "repository": "https://github.com/Temikus/claude-watchdog",
  "license": "Apache-2.0",
  "keywords": [
    "session",
    "analysis",
    "post-mortem",
    "hooks",
    "review"
  ],
  "userConfig": {
    "disabled": {
      "type": "boolean",
      "title": "Disable watchdog",
      "description": "Set to true to disable automatic session analysis",
      "default": false
    },
    "min_tool_uses": {
      "type": "number",
      "title": "Minimum tool calls",
      "description": "Skip analysis if the session delta has fewer tool calls than this. Default is 15",
      "default": 15,
      "min": 0
    },
    "cooldown_seconds": {
      "type": "number",
      "title": "Cooldown (seconds)",
      "description": "Minimum seconds between analyses for the same session. Set to 0 to disable. Default is 600 (10 minutes)",
      "default": 600,
      "min": 0
    },
    "verbose": {
      "type": "boolean",
      "title": "Enable verbose mode",
      "description": "Prepend a diagnostics header (raw/condensed size, tool use count, user messages) to every condensed transcript and add truncation notices when applicable",
      "default": false
    },
    "local_session_storage": {
      "type": "boolean",
      "title": "Store transcripts in project directory",
      "description": "Store condensed session transcripts under .claude/tmp/claude-watchdog/ in the project directory instead of the global plugin data path. Eliminates Read permission prompts in auto mode. Requires .claude/ in .gitignore. Default is true",
      "default": true
    },
    "max_transcript_bytes": {
      "type": "number",
      "title": "Max transcript size (bytes)",
      "description": "Maximum size of the condensed transcript sent to the analyzer, in bytes. Larger values give the analyzer more context but increase processing time. Default is 51200 (50 KB)",
      "default": 51200,
      "min": 4096,
      "max": 512000
    },
    "interactive_recommendations": {
      "type": "boolean",
      "title": "Interactive recommendations",
      "description": "After session analysis, present actionable recommendations as an interactive multi-select prompt so you can choose which items to address. Selected items are saved to .claude/watchdog-todo.md",
      "default": false
    },
    "fix_recommendations": {
      "type": "boolean",
      "title": "Fix recommendations",
      "description": "After presenting the analysis, have Claude apply its [code] recommendations in the same turn. [instruction] items are drafted, not written to rule files, and nothing is committed. With interactive recommendations on, only the items you select are applied. Default is false",
      "default": false
    },
    "self_check": {
      "type": "boolean",
      "title": "Self-check each turn",
      "description": "When a turn that changed files or ran mutating commands ends, ask Claude whether it would ship the work as it is, and to fix only major problems if not. At most once per prompt; ignores the cooldown and minimum tool calls. Default is false",
      "default": false
    },
    "skip_with_background_tasks": {
      "type": "boolean",
      "title": "Skip while background tasks run",
      "description": "Skip analysis when background tasks (subagents, shell jobs, workflows) are still in flight, so the watchdog only reviews a session that's truly done, not one that's merely paused. Requires Claude Code >= 2.1.145; a no-op on older versions. Default is true",
      "default": true
    },
    "include_rules": {
      "type": "boolean",
      "title": "Pass instruction files to the analyzer",
      "description": "Point the analyzer at CLAUDE.md and .claude/rules/*.md (project, then ~/.claude) so it can check the session against your own instructions. Files over 8 KB are skipped; the list is capped at 16 KB total. Default is true",
      "default": true
    },
    "hold_input_during_analysis": {
      "type": "boolean",
      "title": "Hold input while analysis runs",
      "description": "Block newly submitted prompts while a session analysis is still in flight, so they don't interleave with the pending analysis. A held prompt is recoverable with up-arrow; resubmitting overrides the hold. The hold auto-expires after 240 seconds. Default is false",
      "default": false
    },
    "enforce_subagent_model": {
      "type": "boolean",
      "title": "Enforce pinned subagent models",
      "description": "Block a Task/Agent dispatch that names an agent whose definition pins a 'model:' but does not pass an explicit 'model'. Re-dispatching with any explicit model passes. Default is false",
      "default": false
    },
    "await_bot_reviews": {
      "type": "boolean",
      "title": "Wake on bot reviews and CI",
      "description": "After Claude runs git push or gh pr create on a branch with an open PR, wait in the background until every status and check on the head settles, then wake Claude with failed checks and new bot review comments. Needs an authenticated gh CLI. At most 3 wake-ups per PR per session. Default is false",
      "default": false
    }
  },
  "interface": {
    "displayName": "claude-watchdog",
    "developerName": "Temikus"
  },
  "skills": "./",
  "holManifestOrigin": "repository",
  "registryIndexVersion": 5
}

Marketplace source

Repo URL
https://github.com/Temikus/claude-watchdog
Marketplace path
Unknown
Source path
.
Install policy
Unspecified

Skills

1 SKILL.md file ship with this plugin. Preview, copy, or download each one, then install them with the Skills CLI.

Share
skills-cli
  • analyze-session

    skills/analyze-session/SKILL.md

    Critically analyze the current session

    SKILL.md content is not in this snapshot. Open the raw file to copy it from the source repository.

File inventory

.claude-plugin/plugin.json

file

5,603 bytes

185b161c14a22fae…

.codex-plugin/plugin.json

plugin-manifest

5,031 bytes

5c17e3f8b4812943…

agents/session-analyzer.md

file

8,313 bytes

8e37d3d8ceb69887…

hooks/await-reviews.mjs

file

11,795 bytes

f6505fcec413a92c…

hooks/condense.mjs

file

12,322 bytes

e304cda5b6cb52f1…

hooks/cursor-slice.mjs

file

1,869 bytes

514a6adce31ea8fe…

hooks/dump-events.mjs

file

1,363 bytes

7258da9f224c69d5…

hooks/enforce-subagent-model.mjs

file

3,688 bytes

de55cd8bcab30931…

hooks/hold-input.mjs

file

4,461 bytes

c0d341f07b070491…

hooks/hooks.json

file

1,472 bytes

e21590352f87c978…

hooks/persist-analysis.mjs

file

5,569 bytes

3a213e07608197b3…

hooks/session-analysis.mjs

file

43,604 bytes

7cb9949e733fda35…

README.md

file

24,733 bytes

974afdf67f56b46f…

SECURITY.md

file

2,070 bytes

b693d9f94847b988…

skills/analyze-session/SKILL.md

skill

5,030 bytes

766c357e2ccad658…

Claude Watchdog — Frequently asked questions

What is Claude Watchdog?
Claude Watchdog is an AI plugin in the HOL registry. Stop hook that runs a critical post-mortem on every Claude Code session, cross-checking what was asked against the actual git diff for missed goals, wasted detours, and unverified claims.
How do I install Claude Watchdog?
Install Claude Watchdog in your harness: Claude Code — /plugin marketplace add Temikus/claude-watchdog; Any agent — npx [email protected] add Temikus/claude-watchdog. Full step-by-step guidance is on the HOL plugin page.
How do I install Claude Watchdog in Claude Code?
To install Claude Watchdog in Claude Code, start with /plugin marketplace add Temikus/claude-watchdog. The complete step-by-step install guide for Claude Code is on the HOL plugin page.
How is the Trust Score for Claude Watchdog computed?
Claude Watchdog has a HOL Trust Score of 65 out of 100. The score is a weighted sum of six components from a static scan of the source, capped for high-severity findings and adjusted by two disclosed policies. Memberships and payments are not inputs, and a scan is not a safety guarantee. Full breakdown: https://hol.org/registry/plugins/temikus%2Fclaude-watchdog/trust
Who publishes Claude Watchdog?
Claude Watchdog is published by Temikus and listed on HOL.

Install signal

HOL cannot see every install. These are separate signals from different sources, so they are not added together. Counts under each floor show as <N.

Install commands issued here
<5
HOL Guard install commands issued from this listing, last 28 days.
Opt-in install reports
<10
Machines that reported installing it through HOL Guard in week 2026-W43. Reporting is opt-in, so most installs are not counted.
HOL Guard workspaces
<5
Workspaces that approved it or include it in an approved-plugin feed, as of today.
New GitHub stars
<5
From HOL's GitHub snapshots of the repository, 2026-10-06 to 2026-10-31.

Reviews and similar plugins