Skip to content
Back to skills

Second Thought

ASecurity

Use when an idea, decision, design, plan, response, tool call, or action is about to be accepted or executed, especially during brainstorming, convergence, and pre-execution where shallow agreement or goal drift may occur.

  • 5 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added May 27, 2026
developmentpythongobash

Works with

  • cli

Security analysis

A100/100

Scanned May 27, 2026

npx -y skills add gg-mo/second-thought-agent-skill --skill second-thought --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Second Thought?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Second Thought
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/gg-mo-second-thought/badge)](https://www.skillsdirectory.com/skills/gg-mo-second-thought)

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

Download with Pro
SKILL.md
---
name: second-thought
description: Use when an idea, decision, design, plan, response, tool call, or action is about to be accepted or executed, especially during brainstorming, convergence, and pre-execution where shallow agreement or goal drift may occur.
---

# Second Thought

A standalone decision checkpoint engine that asks whether the current direction is actually right before the agent commits.

## Core rule

Before moving forward with a meaningful proposal, run a critique against the original intent, not just the latest turn.

Default behavior: auto-build the payload from conversation context. Do not require manual field entry unless the user explicitly wants manual/debug mode.

## Input contract

Provide these fields to the critique engine:

- `original_intent`
- `current_context`
- `proposal_type` (`idea | decision | design | plan | action | tool_call | response`)
- `proposal`
- `rationale`
- `constraints`
- `risk_level` (`low | medium | high`)
- `stage` (`brainstorming | convergence | pre_execution | post_feedback`)
- `should_challenge`

## Output contract

Produce this structured result internally:

- `status` (`proceed | revise | prompt_human`)
- `summary`
- `goal_alignment`
- `concerns`
- `assumptions`
- `better_options`
- `challenge_prompt`
- `recommended_next_step`
- `prompt_to_human`

## User-facing response contract

Default output should be human-readable, not raw JSON.

- Use a conversational response in a few sentences (about 2-4).
- Avoid rigid section labels like `Decision:`, `Why:`, `Next:` unless explicitly requested.
- Include the decision (`proceed | revise | prompt_human`) naturally in prose.
- Include at least one specific reason grounded in the current proposal/context.
- Include one concrete next step.
- If `prompt_human`, ask exactly one focused clarification question.

Only show full JSON when the human explicitly requests JSON/debug/contract format.

## Stage behavior

- `brainstorming`: exploratory but critical; do not reward weak framing
- `convergence`: skeptical; test if agreement is correctness vs momentum
- `pre_execution`: strict; verify reversibility, risk, missing information
- `post_feedback`: re-evaluate without overfitting to latest feedback

## Decision standard

- `proceed`: strong intent alignment, acceptable assumptions, no required human clarification
- `revise`: direction is promising but flawed, drifting, or weakly justified
- `prompt_human`: ambiguity, under-specification, high impact, irreversibility, or clear preference/judgment call needed

## Invocation moments

Invoke this skill when:

- discussion starts hardening into a decision
- a plan/design feels settled after back-and-forth
- a meaningful action/tool call is next
- the agent feels suspiciously "too sure"

## Execution note

Use the local engine if available:

```bash
python3 scripts/second_thought_cli.py --input path/to/input.json
```

For auto-fill mode (no manual schema fields required):

```bash
echo "We are about to merge a risky migration plan." | python3 scripts/second_thought_cli.py
```

Or call the package directly:

```python
from second_thought import CritiqueInput, RuleBasedCritiqueEngine
```

Attribution

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

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.