Agent skill

Operator Monitor Debug

by jianzhichun in jianzhichun/emerge

A skill your agent uses when the operator monitoring pipeline appears broken: EventBus has no events, PatternDetector is not firing, elicitation dialog never appears, or OperatorMonitor is silent.

MITAuto-check passed

Install Operator Monitor Debug

skills CLI
$ npx skills add jianzhichun/emerge --skill operator-monitor-debug -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install jianzhichun/emerge operator-monitor-debug --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/jianzhichun/emerge.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/operator-monitor-debug .claude/skills/operator-monitor-debug && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
operator-monitor-debug
GitHub stars
104
Token cost
~1k tokens
SKILL.md length
343 words
Files
1
Skills in repo
14
Repo updated
First seen
Licence
MIT

At a glance

A skill your agent uses when the operator monitoring pipeline appears broken: EventBus has no events, PatternDetector is not firing, elicitation dialog never appears, or OperatorMonitor is silent.

  • Works in 7 steps: Is the remote runner running and… → Is OperatorMonitor running? → Are events reaching the EventBus? → …
  • The operator monitoring pipeline appears broken: EventBus has no events
  • Calls curl and python3
  • PatternDetector is not firing

What it does

Operator Monitor Debug is an agent skill from jianzhichun/emerge. Use when the operator monitoring pipeline appears broken: EventBus has no events, PatternDetector is not firing, elicitation dialog never appears, or OperatorMonitor is silent. Guides systematic diagnosis of the full pipeline.

Its SKILL.md is about 1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

The licence is MIT.

When your agent uses it

  • The operator monitoring pipeline appears broken: EventBus has no events
  • PatternDetector is not firing
  • Elicitation dialog never appears
  • OperatorMonitor is silent

Example prompts

  • “/operator-monitor-debug”

Requirements

  • Python 3

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. Is the remote runner running and reachable?
  2. Is OperatorMonitor running?
  3. Are events reaching the EventBus?
  4. Is PatternDetector seeing the events?
  5. Is OperatorMonitor polling?
  6. Is the pattern observation reaching CC?
  7. Common fixes

What it can do on your machine

Read from SKILL.md and the folder at commit 035db30. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • curl
    • python3

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use curl, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Operator Monitor Debug loads about 1k tokens when it runs. Until then it costs about 62 tokens; SKILL.md has 343 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~62
When it runs · the whole SKILL.md, loaded when a task matches
~1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from jianzhichun/emerge at commit 035db30, republished under its MIT licence (© jianzhichun). 343 words, ~1,017 tokens.

Download SKILL.mdSave it as .claude/skills/operator-monitor-debug/SKILL.md (or your agent's skills folder).
name
operator-monitor-debug
description
Use when the operator monitoring pipeline appears broken: EventBus has no events, PatternDetector is not firing, elicitation dialog never appears, or OperatorMonitor is silent. Guides systematic diagnosis of the full pipeline.

Debugging the Operator Monitor Pipeline

Checklist

1. Is the remote runner running and reachable?
bash
curl http://<runner-host>:8787/health
# Expected: {"ok": true, "uptime_s": N}
2. Is OperatorMonitor running?

OperatorMonitor auto-starts when a runner is configured (runner-map.json has at least one entry) OR when EMERGE_OPERATOR_MONITOR=1 is set in the daemon environment. Check which condition applies:

bash
python3 "${CLAUDE_PLUGIN_ROOT}/scripts/repl_admin.py" runner-status --pretty
# If runners are listed → OperatorMonitor should have auto-started.
# If no runners are listed and EMERGE_OPERATOR_MONITOR=1 is absent → it won't start.
3. Are events reaching the EventBus?
bash
# On the runner machine (or via icc_exec targeting that profile):
cat ~/.emerge/operator-events/<machine_id>/events.jsonl | tail -20

If the file is empty or missing: the event producer is not firing events.

  • Check that the relevant producer path is active (POST /operator-event, pipeline start() hook with event_bus.emit_event, or _write_operator_event from icc_exec)
  • On macOS, verify the process has Accessibility permission (System Preferences → Privacy → Accessibility)
  • On Windows, check that the process has UIAutomation access and is not running in a low-integrity context
4. Is PatternDetector seeing the events?

Replay events manually via icc_exec:

python
import json
from pathlib import Path
from scripts.pattern_detector import PatternDetector

events_path = Path.home() / ".emerge/operator-events/<machine_id>/events.jsonl"
events = [json.loads(l) for l in events_path.read_text().splitlines() if l.strip()]
summaries = PatternDetector().ingest(events[-50:])
print(f"Summaries: {summaries}")

If summaries is empty but events exist: thresholds not met yet.

  • Frequency detector fires at ≥3 same-type events in a 20-minute window
  • Check that session_role is "operator", not "monitor_sub" — monitor_sub events are filtered
5. Is OperatorMonitor polling?

Set EMERGE_MONITOR_POLL_S=5 to ensure polling is active. Check EMERGE_MONITOR_MACHINES matches the profile names configured in the runner map.

Show full SKILL.md (172 more words)Show less
6. Is the pattern observation reaching CC?

Pattern observations are delivered via watch_emerge.py --runner-profile <profile> (Monitor tool, persistent). When a pattern fires, DaemonHTTPServer._on_runner_event writes a pattern_observed entry directly to events-{profile}.jsonl. The Monitor script tails this file and prints formatted observations to stdout; CC streams stdout into the conversation.

Check:

  1. Is watch_emerge.py --runner-profile <profile> running as a persistent Monitor? (launched by /emerge:cockpit step 4 via watch_emerge.py --runner-profile)
  2. Does ~/.emerge/state/events/events-{profile}.jsonl contain recent pattern_observed entries?
    bash
    grep '"type": "pattern_observed"' ~/.emerge/state/events/events-<profile>.jsonl | tail -5
  3. If entries exist but CC didn't see them: the Monitor may have stopped — restart it.
7. Common fixes
SymptomFix
EventBus emptyVerify event producer path (/operator-event, pipeline start(), or icc_exec) and OS accessibility permissions
PatternDetector never firesLower FREQ_THRESHOLD or check event session_role field
Elicitation never appearsVerify daemon has elicitation capability in MCP handshake; check thread is non-main
Pattern observation not deliveredVerify watch_emerge.py --runner-profile <p> Monitor is running; check events-{profile}.jsonl for pattern_observed entries
OperatorMonitor not startingConfirm runner is configured (runner-status --pretty) OR EMERGE_OPERATOR_MONITOR=1 in daemon env

© jianzhichun, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/operator-monitor-debug of jianzhichun/emerge.

Open the folder on GitHubat commit 035db30

Compare with similar skills

Operator Monitor Debug next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Operator Monitor Debug compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Operator Monitor Debug this skilljianzhichun/emerge104—~1kAutomated safety check: PassMIT
Debugasgeirtj/system_prompts_leaks69k—~439Automated safety check: PassCC0-1.0
Openclaw Debuggingopenclaw/openclaw392k—~1.9kAutomated safety check: PassMIT
Debugging Executionsn8n-io/n8n207k—~2.6kAutomated safety check: PassCustom licence
DebuggingJetBrains/intellij-community21k—~422Automated safety check: PassCustom licence
Debugging Toolkitsickn33/agentic-awesome-skills47k1 repos~344Automated safety check: PassMIT

Similar skills

  • Debug

    asgeirtj/system_prompts_leaks

    Enable debug logging for this session and help diagnose issues

    69k GitHub stars~439 tokensUpdated yesterday
    Auto-check passed
  • Openclaw Debugging

    openclaw/openclaw

    Debug OpenClaw model, provider, tool-surface, code-mode, streaming, and live/Crabbox behavior by choosing the right logs, probes, and proof path before changing code, including fetching stored…

    392k GitHub stars~1.9k tokensUpdated today
    DevelopmentAuto-check passed
  • Official

    Debug failed or wrong-output workflow executions using executions tools.

    207k GitHub stars~2.6k tokensUpdated today
    DevelopmentAuto-check passed
  • Debugging

    JetBrains/intellij-community

    Official

    Debug IntelliJ IDE failures with repository-specific techniques.

    21k GitHub stars~422 tokensUpdated today
    DevelopmentAuto-check passed
  • Debugging Toolkit

    sickn33/agentic-awesome-skills

    A skill your agent uses when working with debugging toolkit smart debug (Alias for debugging-toolkit-smart-debug)

    47k GitHub starsUsed in 1 repo~344 tokens
    DevelopmentAuto-check passed
  • Runtime Debug

    vercel/next.js

    Official

    Debug and verification workflow for runtime-bundle and module-resolution regressions.

    143k GitHub starsUsed in 1 repo~618 tokens
    DevelopmentAuto-check passed

More from jianzhichun/emerge

All 14 skills in this repo
  • Distilling Operator Flows

    jianzhichun/emerge

    A skill your agent uses when wiring a generic connector to capture remote operator actions and convert repeated event facts into pending pipeline work through Claude Code skills.

    104 GitHub stars~432 tokensUpdated 5 mo ago
    Auto-check passed
  • Emerge Forward Synthesis

    jianzhichun/emerge

    Distill Emerge forward flywheel WAL samples into a parameterized pipeline result.

    104 GitHub stars~585 tokensUpdated 5 mo ago
    Auto-check passed
  • Emerge Reverse Synthesis

    jianzhichun/emerge

    Distill Emerge reverse flywheel raw operator events into a structured synthesis result.

    104 GitHub stars~451 tokensUpdated 5 mo ago
    Auto-check passed
  • A skill your agent uses when a user asks to initialize a domain flywheel from natural language context, especially when environment details are incomplete or mixed with execution assumptions.

    104 GitHub stars~2.2k tokensUpdated 5 mo ago
    Auto-check passed
  • Policy Optimization

    jianzhichun/emerge

    A skill your agent uses when policy health needs tuning: too many explore pipelines, repeated failures, stalled promotions, or noisy rollback behavior.

    104 GitHub stars~916 tokensUpdated 5 mo ago
    Auto-check passed
  • Reflection Deep Dive

    jianzhichun/emerge

    A skill your agent uses when connector flywheel history is large/noisy and lightweight reflection is insufficient.

    104 GitHub stars~325 tokensUpdated 5 mo ago
    Auto-check passed

Questions about Operator Monitor Debug

What does Operator Monitor Debug do?

A skill your agent uses when the operator monitoring pipeline appears broken: EventBus has no events, PatternDetector is not firing, elicitation dialog never appears, or OperatorMonitor is silent. Operator Monitor Debug is an agent skill from jianzhichun/emerge. Use when the operator monitoring pipeline appears broken: EventBus has no events, PatternDetector is not firing, elicitation dialog never appears, or OperatorMonitor is silent.

When should I use Operator Monitor Debug?

Operator Monitor Debug fits situations like: the operator monitoring pipeline appears broken: EventBus has no events; patternDetector is not firing; elicitation dialog never appears; operatorMonitor is silent.

How do I install Operator Monitor Debug in Claude Code?

Run `npx skills add jianzhichun/emerge --skill operator-monitor-debug -a claude-code`. Or copy the skill folder (skills/operator-monitor-debug in jianzhichun/emerge) into .claude/skills/operator-monitor-debug in your project. Claude Code loads it when a task matches its description.

How do I install Operator Monitor Debug in Codex?

Run `npx skills add jianzhichun/emerge --skill operator-monitor-debug -a codex`. Or copy the skill folder (skills/operator-monitor-debug in jianzhichun/emerge) into .agents/skills/operator-monitor-debug in your project. Codex loads it when a task matches its description.

Can I use Operator Monitor Debug in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jianzhichun/emerge --skill operator-monitor-debug -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/operator-monitor-debug, .gemini/skills/operator-monitor-debug, .github/skills/operator-monitor-debug and .opencode/skills/operator-monitor-debug in your project.

What does Operator Monitor Debug need to run?

Going by SKILL.md and its folder, Operator Monitor Debug needs the command-line tools its instructions call (curl and python3). Our summary lists: Python 3.

Does Operator Monitor Debug access the network?

SKILL.md contains no URLs. Its commands use curl, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Operator Monitor Debug safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Operator Monitor Debug use?

Operator Monitor Debug is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Operator Monitor Debug use?

About 1k tokens (SKILL.md is roughly 4.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Operator Monitor Debug?

Skills that share tags, products or a category with Operator Monitor Debug: Debug (asgeirtj/system_prompts_leaks, 69k stars), Openclaw Debugging (openclaw/openclaw, 392k stars), Debugging Executions (n8n-io/n8n, 207k stars) and Debugging (JetBrains/intellij-community, 21k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Operator Monitor Debug?

jianzhichun (a GitHub user) maintains it in jianzhichun/emerge, which has 104 GitHub stars. The repository holds 14 skills in this directory. The repository was last updated on April 26, 2026.

Source: jianzhichun/emerge on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.