Diagnosing Missing Recordings
PostHog/posthog
Diagnoses why a session recording is missing or was not captured.
Locate the cause of a DeepReason defect from the typed record, not from code reading.
$ npx skills add AHepi/DeepReason --skill dr-diagnose -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install AHepi/DeepReason dr-diagnose --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/AHepi/DeepReason.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/dr-diagnose .claude/skills/dr-diagnose && rm -rf skills-srcUse ~/.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/
Install the "dr-diagnose" agent skill from https://github.com/AHepi/DeepReason/tree/main/.claude/skills/dr-diagnose into .claude/skills/dr-diagnose/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dr-diagnose", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/AHepi/DeepReason/tree/main/.claude/skills/dr-diagnoseType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add AHepi/DeepReason --skill dr-diagnose -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install AHepi/DeepReason dr-diagnose --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AHepi/DeepReason.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/dr-diagnose .agents/skills/dr-diagnose && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "dr-diagnose" agent skill from https://github.com/AHepi/DeepReason/tree/main/.claude/skills/dr-diagnose into .agents/skills/dr-diagnose/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dr-diagnose", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add AHepi/DeepReason --skill dr-diagnose -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install AHepi/DeepReason dr-diagnose --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AHepi/DeepReason.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/dr-diagnose .cursor/skills/dr-diagnose && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "dr-diagnose" agent skill from https://github.com/AHepi/DeepReason/tree/main/.claude/skills/dr-diagnose into .cursor/skills/dr-diagnose/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dr-diagnose", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/AHepi/DeepReason.git --path .claude/skills/dr-diagnose--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add AHepi/DeepReason --skill dr-diagnose -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install AHepi/DeepReason dr-diagnose --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AHepi/DeepReason.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/dr-diagnose .gemini/skills/dr-diagnose && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "dr-diagnose" agent skill from https://github.com/AHepi/DeepReason/tree/main/.claude/skills/dr-diagnose into .gemini/skills/dr-diagnose/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dr-diagnose", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install AHepi/DeepReason dr-diagnoseInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add AHepi/DeepReason --skill dr-diagnose -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/AHepi/DeepReason.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/dr-diagnose .github/skills/dr-diagnose && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "dr-diagnose" agent skill from https://github.com/AHepi/DeepReason/tree/main/.claude/skills/dr-diagnose into .github/skills/dr-diagnose/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dr-diagnose", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add AHepi/DeepReason --skill dr-diagnose -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install AHepi/DeepReason dr-diagnose --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AHepi/DeepReason.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/dr-diagnose .opencode/skills/dr-diagnose && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "dr-diagnose" agent skill from https://github.com/AHepi/DeepReason/tree/main/.claude/skills/dr-diagnose into .opencode/skills/dr-diagnose/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dr-diagnose", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
dr-diagnoseLocate the cause of a DeepReason defect from the typed record, not from code reading.
Dr Diagnose is an agent skill from AHepi/DeepReason. Locate the cause of a DeepReason defect from the typed record, not from code reading. Produces DIAGNOSIS.md naming one primary cause with evidence pointers. Use only after GOAL.md exists.
Its SKILL.md is about 1.6k 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.
6 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 9607fba. It shows what the files ask for, not the result of running them.
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.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Dr Diagnose loads about 1.6k tokens when it runs. Until then it costs about 50 tokens; SKILL.md has 894 words of instructions outside code blocks.
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.
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.
The full file from AHepi/DeepReason at commit 9607fba, republished under its MIT licence (© AHepi). 894 words, ~1,622 tokens.
.claude/skills/dr-diagnose/SKILL.md (or your agent's skills folder).Input: GOAL.md. Output: DIAGNOSIS.md naming ONE primary cause. You read the record first and the code second. You change nothing.
Run this before reading any code, any log, and any run-config file:
deepreason stop-report <root-or-home>Paste its section 4 (THE STOP, CLASSIFIED) verbatim as the FIRST
section of DIAGNOSIS.md, before writing anything of your own. Cite a
report line by section number for every claim naming a defect, a seat, or
a model as the cause.
GATE, run before you commit DIAGNOSIS.md:
grep -q "THE STOP, CLASSIFIED" DIAGNOSIS.mdExit 0 = pass. Exit 1 = the phase is not-done; STOP and report that.
The report accepts three source kinds, so a run that never opened a log
still has one: a run root, a run directory that compiled a manifest and
failed its qualification gate (root-no-log), and a home whose
qualification is cached (home-no-root).
When the failure has no run root and no home at all — a smoke harness, a build, a tool — write one line in DIAGNOSIS.md naming which of the three kinds was absent, and paste that instrument's own typed failure envelope in place of section 4. The GATE above still applies to everything else.
Outlets, one per prohibition:
| You cannot... | Then |
|---|---|
| produce the report | STOP; report not-done with the command's stderr |
| cite a report line for a cause | PARK the hypothesis; diagnose what you can cite |
| find any typed source | paste the instrument's failure envelope, and say which kind was absent |
This displaces the old ordering, in which run-status.json and
REPLAY_VALIDATION.json were rows 1 and 4 of "Where the truth lives"
and each reader re-derived them by hand. The report derives all of it,
plus the qualification rows and provider health that hand-reading
skipped. Those rows below are now the DEEPER DIVE, entered after the
report names a box.
After the report names a box, read the Traps section of the map document
covering the suspect subsystem (docs/map/SUB-*.md, CON-*.md,
SEAM-*.md). Traps are the accumulated memory of what has actually
gone wrong there, and a recurrence is the cheapest diagnosis available.
This costs one file read and can end the phase. It is not a substitute for the record: the record still decides, and a trap that merely LOOKS like your symptom is a hypothesis to test against the blob, not an answer. But a defect matching a recorded trap is the single most likely explanation, and checking is nearly free.
If the diagnosis turns out to be a NEW failure mode, dr-implement-fix
will add it to that document's Traps as part of the fix commit.
Enter this after the stop report names a box, to establish the mechanism
the box only points at. For a failed or suspect run root <root>:
<root>/run-status.json — state, stop_reason, message. The message
often IS the answer (e.g. a KeyError'd source id, a typed
V6_ROUTE_SEAT_INSUFFICIENT_CAPABILITY).
Cycle heartbeats — which problem each cycle actually worked:
python3 - <root> <<'PY'
import sys; from pathlib import Path
from deepreason.harness import Harness
h = Harness(Path(sys.argv[1]), read_only=True)
for e in h.log.read():
ins = [str(v) for v in (e.inputs or [])]
if ins and ins[0] == 'cycle':
print(e.seq, 'cycle', ins[1], '->', ins[2])
PY
Work attribution — join objects/workflow-work-preparation-v1/*
(task_payload_value.problem_ref, contract_id,
formal_fence_seq) with objects/workflow-work-terminal-v1/*
(work_id, status, reason_code) and
objects/workflow-provider-attempt-v1/* (work_id,
prompt_tokens, completion_tokens, raw_ref). This tells you who
spent every token and who got denied. A problem with ZERO provider
attempts was never dispatched — that is a scheduler fact, not a
model fact.
REPLAY_VALIDATION.json / verify_root(<root>) — violations with
check names and seqs. Characterize a violation before explaining
it: same set vs. permuted order vs. missing is three different bugs.
Raw model output — resolve a provider attempt's raw_ref in
<root>/blobs/<2-char>/<hash>. completion_tokens == cap with
empty text means reasoning burn, not a schema bug.
Capability chain — harness.capability_state: proposals,
current_transition_by_request, transition lifecycle + reason_code.
Denials name their gate.
Only after the record narrows the cause to a mechanism do you open the implicated source file, and only that file plus at most two neighbors.
_select_problem.# Diagnosis: <one line naming the mechanism>
## Stop report, section 4 (pasted verbatim, before anything of mine)
<the output of `deepreason stop-report <root-or-home>`, section 4>
Primary cause: <mechanism, one paragraph max; every clause naming a
defect, a seat, or a model cites a report line above>
Evidence:
- <record pointer: file/seq/object id> -> <what it shows>
- <repeat; minimum 2 pointers, at least 1 non-code>
Implicated code: <file:line, max 3 sites>
Falsifiable prediction: <what dr-reproduce must show if this
diagnosis is right, as a command + expected observation>
Ruled out: <the one alternative you checked and why it fails>grep -q "THE STOP, CLASSIFIED" DIAGNOSIS.md exits 0.© AHepi, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills/dr-diagnose of AHepi/DeepReason.
Open the folder on GitHubat commit 9607fba
Dr Diagnose 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Dr Diagnose this skillAHepi/DeepReason | 141 | — | ~1.6k | Automated safety check: Pass | MIT | |
| Diagnosing Missing RecordingsPostHog/posthog | 40k | — | ~2k | Automated safety check: Pass | Custom licence | |
| Logic Locatesickn33/agentic-awesome-skills | 47k | 1 repos | ~977 | Automated safety check: Pass | MIT | |
| Recordingcodewhale-hq/Codewhale | 41k | — | ~540 | Automated safety check: Pass | MIT | |
| Rust Path Typesopeninterpreter/openinterpreter | 69k | 2 repos | ~605 | Automated safety check: Pass | Apache-2.0 | |
| Python Type Safetywshobson/agents | 40k | — | ~1.4k | Automated safety check: Pass | MIT |
PostHog/posthog
Diagnoses why a session recording is missing or was not captured.
sickn33/agentic-awesome-skills
Locate the root cause of a CONFIRMED failure via backward-then-forward semi-formal tracing.
codewhale-hq/Codewhale
Capture screenshots on registered computers, record on macOS or HarmonyOS, and manage saved captures.
openinterpreter/openinterpreter
Rules for choosing Rust types for filesystem paths in new Codex code, covering protocol types, internal use and model tool arguments.
wshobson/agents
Python type safety with type hints, generics, protocols, and strict type checking.
openclaw/openclaw
Diagnose Gateway, config, secrets, channels, and port failures with read-only one-liners.
AHepi/DeepReason
Orchestrate a Steven Pinker-grounded workflow for teaching, explanatory writing, or material that must do both.
AHepi/DeepReason
Design, deliver, or audit explanations and lessons with a Pinker-informed focus on phenomena, the curse of knowledge, concrete models, active reasoning, feedback, and revision.
AHepi/DeepReason
Draft, revise, teach, or audit expository prose using Pinker's cognitive approach to style: classic presentation, reader modeling, curse-of-knowledge repair, coherent information order, deliberate…
AHepi/DeepReason
Build a battery of concrete instances BEFORE writing or evaluating any definition, pin, or semantic clause (Reed step 1).
AHepi/DeepReason
Rules for writing, editing, and retiring skill and workflow files for LLM agents.
AHepi/DeepReason
Entry point for any DeepReason problem. An agent skill from AHepi/DeepReason.
Locate the cause of a DeepReason defect from the typed record, not from code reading. Dr Diagnose is an agent skill from AHepi/DeepReason. Locate the cause of a DeepReason defect from the typed record, not from code reading.
Run `npx skills add AHepi/DeepReason --skill dr-diagnose -a claude-code`. Or copy the skill folder (.claude/skills/dr-diagnose in AHepi/DeepReason) into .claude/skills/dr-diagnose in your project. Claude Code loads it when a task matches its description.
Run `npx skills add AHepi/DeepReason --skill dr-diagnose -a codex`. Or copy the skill folder (.claude/skills/dr-diagnose in AHepi/DeepReason) into .agents/skills/dr-diagnose in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add AHepi/DeepReason --skill dr-diagnose -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/dr-diagnose, .gemini/skills/dr-diagnose, .github/skills/dr-diagnose and .opencode/skills/dr-diagnose in your project.
SKILL.md names no scripts, command-line tools or credentials: Dr Diagnose is instructions for the agent only. Our summary lists: Python 3.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
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.
Dr Diagnose is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.6k tokens (SKILL.md is roughly 6.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Dr Diagnose: Diagnosing Missing Recordings (PostHog/posthog, 40k stars), Logic Locate (sickn33/agentic-awesome-skills, 47k stars), Recording (codewhale-hq/Codewhale, 41k stars) and Rust Path Types (openinterpreter/openinterpreter, 69k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
AHepi (a GitHub user) maintains it in AHepi/DeepReason, which has 141 GitHub stars. The repository holds 30 skills in this directory. The repository was last updated on September 10, 2026.
Source: AHepi/DeepReason on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.