Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsBlogPro
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges
  • Chrome Extension
  • Skill Manager

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Thalarch Doubt

ASecurity

Fresh-context adversarial challenge for non-trivial engineering decisions before they harden into implementation. Use for D2+ work when a decision changes branching, crosses boundaries, asserts a non-compiler-verifiable property, has high blast radius, or rests on uncertain context. Extracts the artifact and contract, challenges them independently, reconciles findings against evidence, and stops after a bounded number of cycles instead of turning review into recursion.

2 stars
0 votes
0 copies
1 views
Added 9/19/2026
ai-agentsapisecurity

Works with

cliapi

Security Analysis

A100/100

Scanned 9/19/2026

$npx -y skills add LUC4N3X/antigravity-thalarch --skill thalarch-doubt --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Thalarch Doubt?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Thalarch Doubt
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/luc4n3x-thalarch-doubt/badge)](https://www.skillsdirectory.com/skills/luc4n3x-thalarch-doubt)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
Files
SKILL.md
---
name: thalarch-doubt
description: >
  Fresh-context adversarial challenge for non-trivial engineering decisions before they harden
  into implementation. Use for D2+ work when a decision changes branching, crosses boundaries,
  asserts a non-compiler-verifiable property, has high blast radius, or rests on uncertain context.
  Extracts the artifact and contract, challenges them independently, reconciles findings against
  evidence, and stops after a bounded number of cycles instead of turning review into recursion.
---

# Thalarch Doubt Gate

Final review is sometimes too late. A wrong architectural or causal decision becomes expensive after
several files depend on it. This skill introduces a **bounded in-flight disconfirmation gate** for
important decisions while correction is still cheap.

Use doubt to reduce premature closure, not to manufacture hesitation.

## 1. Trigger only on meaningful decisions

Activate when at least one applies:

- branching/state behavior changes;
- a module/service/data boundary changes;
- correctness depends on thread safety, idempotency, ordering, lifecycle, ownership, or another
  property the compiler cannot prove;
- a version-sensitive external API or framework pattern is load-bearing;
- the codebase is unfamiliar and a wrong assumption would propagate;
- the decision is difficult to reverse or has security/data/production blast radius;
- a D2+ reasoning step has a strong leading answer but weak disconfirming evidence.

Skip for mechanical renames, formatting, obvious one-line edits, pure inspection, or deterministic
tooling operations.

## 2. Materialize the decision

Write a compact decision artifact:

- `DECISION` — what is about to stand;
- `CONTRACT` — observable requirements/invariants it must satisfy;
- `EVIDENCE` — only current facts supporting it;
- `UNCERTAINTY` — what could still make it wrong.

If the decision cannot be stated compactly, return to planning/reasoning before challenging it.

## 3. Preserve reviewer independence

When a clean specialist/subagent context exists, send only:

- the smallest reviewable artifact/diff/proposal;
- the contract and relevant constraints;
- directly necessary repository evidence.

Do **not** send the producer's hidden reasoning narrative or a persuasive explanation of why the
choice is believed correct. The reviewer should reconstruct the judgment independently.

If the host cannot provide an independent context, perform a degraded self-challenge and record
that independence was unavailable. Do not pretend self-review is equivalent to fresh-context review.

## 4. Challenge for failure, not approval

The challenge should try to falsify the artifact under the contract. Look for:

- unstated assumptions;
- counterexamples and edge cases;
- hidden shared state/coupling;
- violated project conventions or compatibility constraints;
- incorrect boundary ownership;
- failure modes under unexpected timing/input/environment;
- proof substitution or version/API assumptions that were not grounded.

A clean result is valid. Never force the reviewer to invent a defect.

## 5. Reconcile instead of obeying

Every finding is evidence to inspect, not an automatic verdict.

Classify each material finding as:

- `CONTRACT_GAP` — the contract was incomplete/ambiguous; fix the contract first;
- `CONFIRMED` — supported defect/risk requiring a change;
- `TRADEOFF` — real risk intentionally accepted with rationale;
- `NOISE` — unsupported once checked against actual context.

Reviewer confidence alone never upgrades a finding to `CONFIRMED`.

## 6. Bound the loop

After a confirmed issue changes the artifact, run another doubt cycle only if the changed decision
still meets the trigger criteria.

Stop when:

- only already-addressed/trivial/noise findings remain;
- the artifact is supported by discriminating evidence;
- three substantive cycles have completed;
- the next uncertainty requires a user/domain decision or unavailable evidence.

Three unresolved cycles are a signal to decompose the artifact or escalate, not permission for an
infinite agent loop.

## 7. Interaction with tests and final review

A failing regression/property/invariant test designed to disprove the behavioral claim can satisfy
the doubt requirement for that specific claim because it is executable disconfirmation.

`thalarch-doubt` is **in-flight**. `thalarch-review` remains the post-implementation quality gate and
`thalarch-verifier` remains the cold completion gate.

## 8. Cross-model use

A different model may catch shared-model blind spots, but external model invocation is an external
cost/tool action and must obey the current host and authorization policy.

Never silently invoke an external CLI/service. If cross-model evidence is unavailable or not
authorized, continue with host-native independent review and keep the limitation explicit.

## Shortcut defenses

Do not accept these rationalizations:

- "I am confident" — confidence is not disconfirmation.
- "Final review will catch it" — wrong direction is cheaper to catch before implementation expands.
- "The reviewer disagreed, therefore I am wrong" — reconcile against evidence.
- "More reviewers are always safer" — extra contexts without distinct evidence add cost and noise.
- "One more cycle cannot hurt" — unbounded review can become avoidance.

## Completion evidence

Record only:

`DECISION | CONTRACT | CHALLENGE RESULT | DISPOSITION | RESIDUAL UNCERTAINTY`

Do not expose private chain-of-thought.

Attribution

LUC4N3XLUC4N3X
View sourceSee grades on GitHubMore from LUC4N3X →
SSkills Directory ProSkills Directory

Get any skill into Claude in one click.

Download any skill as a ZIP for Claude.ai, Claude Desktop, or .claude/skills. $9/mo.

See Pro

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills Directory ProSkills Directory

Get any skill into Claude in one click.

Download any skill as a ZIP for Claude.ai, Claude Desktop, or .claude/skills. $9/mo.

See Pro

Related Skills

Caveman

Ultra-compressed communication mode that cuts output tokens while keeping technical accuracy. Levels: lite, full, ultra and the wenyan variants. Use for /caveman, "caveman mode", "talk like caveman", "be brief" or "less tokens".

1087401 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

697551 votes

Writing Skills

Create and manage Claude Code skills in HASH repository following Anthropic best practices. Use when creating new skills, modifying skill-rules.json, understanding trigger patterns, working with hooks, debugging skill activation, or implementing progressive disclosure. Covers skill structure, YAML frontmatter, trigger types (keywords, intent patterns), UserPromptSubmit hook, and the 500-line rule. Includes validation and debugging with SKILL_DEBUG. Examples include rust-error-stack, cargo-dep...

3931 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3421 votes

catchup

Recovers the conversation and failed tool calls of a previous Codex, Amp, Claude Code, Antigravity, Cline, Copilot CLI, Cursor, DeepSeek Harness, Grok Build, Kimi, OpenCode, Pi Agent, or ZCode session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", asks to recover/summarize a previous session before continuing, or asks to diagnose or report a catchup failure. Do NOT use for the current conversation, git history, or any non-agent log.

741 votes
View all in ai-agents →