I-Have-ADHD Destructive Action Procedure: 6-Step Safety Workflow Explained

The I-Have-ADHD skill enforces a strict 6-step confirmation workflow for destructive actions, requiring explicit user consent before executing any command that could cause data loss.

The I-Have-ADHD repository by ayghri implements a safety-first Agent Skill designed to prevent accidental data destruction. When users request operations that modify or delete data—such as removing files or altering system state—the skill triggers a defensive protocol that prioritizes user verification over execution speed.


How the Destructive Action Detection Works

The skill parses every user prompt to flag commands with destructive potential. This detection layer operates before any command execution, ensuring risky operations never run blindly.

According to the evaluation harness in evals/cases.jsonl at line 5, the skill defines explicit acceptance criteria for destructive-action scenarios. The test suite in tests/test_run_evals.py at line 73 automatically scores this behavior, verifying the confirmation flow is respected.


The 6-Step I-Have-ADHD Destructive Action Procedure

Step 1: Detect the Request

The skill identifies any command capable of altering or deleting data. This destructive action detection serves as the gatekeeper for the entire safety workflow.

Step 2: Prompt for Confirmation

Before proceeding, the agent replies with a concise confirmation request that explicitly states the risk. The INSTALL.md file at line 53 documents this as the "Confirm before destructive actions" exception to default behavior.

Step 3: Provide a Read-Only Preview

When feasible, the agent displays a non-mutating preview of the pending operation—such as git status output or a list of files marked for deletion. This helps users verify scope without side effects.

The agent pauses indefinitely until the user responds with clear approval—typically "yes" or equivalent. No destructive command executes without this explicit signal.

Step 5: Execute the Command

Once approved, the actual destructive command emits once and is bounded to a single step. This limits impact to a predictable, controlled action.

Step 6: Stop After Repeated Failures

If three consecutive fix attempts fail, the skill aborts and surfaces the doubtful assumption. This prevents endless loops or cascading damage.


Implementation Example

The following Python pattern illustrates how consuming agents implement this I-Have-ADHD destructive action procedure:

def handle_user_request(request: str) -> str:
    if is_destructive(request):
        # Step 2 – ask for confirmation

        return (
            "⚠️ This command will delete files. "
            "Do you want to continue? (yes/no)\n"
            "Preview: `git status` shows the files that would be removed."
        )
    # normal handling …

    return run_safe_command(request)


def process_confirmation(reply: str, pending_command: str) -> str:
    if reply.strip().lower() == "yes":
        # Step 5 – execute single, bounded destructive command

        return run_destructive(pending_command)
    return "❌ Action cancelled."

Example Dialogue


User: Delete all untracked files in this repo.
Agent: ⚠️ This command will delete files. Do you want to continue? (yes/no)
        Preview: `git clean -ndX` (shows which files would be removed)

User: yes
Agent: ✅ Executed: `git clean -fdX`


Source Files Defining the Procedure

File Role
skills/i-have-adhd/SKILL.md Canonical skill description driving runtime behavior
INSTALL.md Lists "Confirm before destructive actions" as core policy exception
evals/cases.jsonl Defines destructive-action test case acceptance criteria
tests/test_run_evals.py Unit tests verifying destructive-action handling
hooks/hooks.json Declares session-start hooks enforcing safety rules

Summary

  • Detection first: Every prompt is screened for destructive potential before execution
  • Confirmation required: Explicit "yes" response mandatory for risky operations
  • Preview when possible: Read-only scope verification prevents surprises
  • Single bounded execution: One command per approval, no batching
  • Failure limits: Three-strike rule prevents runaway damage
  • Tested and verified: Automated suite validates compliance

Frequently Asked Questions

What counts as a destructive action in I-Have-ADHD?

Operations that alter or delete data—including file deletion, system state modification, or any command causing irreversible change. The skill's parser flags these automatically based on command signatures and context.

Does I-Have-ADHD ever skip the confirmation step?

No. According to INSTALL.md line 53, "Confirm before destructive actions" is a non-negotiable exception. The evaluation harness in evals/cases.jsonl rejects any implementation that bypasses confirmation.

What happens if I don't respond to the confirmation prompt?

The agent waits indefinitely. No timeout or automatic execution occurs— the destructive action procedure requires active user consent to proceed.

How does the skill prevent confirmation fatigue?

By combining explicit risk statements with read-only previews (Step 3), users can quickly assess scope without repetitive back-and-forth. The bounded single-step execution (Step 5) also limits how often confirmations are needed.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →