Draws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases,
Installs just this skill. Get the whole plugin for auto-invocation.
⚡ How it fires
How this skill gets triggered: by you, by Claude, or both.
Fires itselfClaude auto-loads it when your prompt matches the work.
You can call itInvoke it directly when you want it.
Slash command/let-fate-decide
👁️ Context preview
The summary Claude sees to decide when to auto-load this skill.
Draws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases,
📊 Stats
Stars6,227
Forks540
LanguagePython
LicenseCC-BY-SA-4.0
📦 Ships with trailofbits-skills
</> SKILL.md
let-fate-decide.SKILL.md
---name: let-fate-decide
description: "Draws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking."
allowed-tools: Bash Read Grep Glob
---# Let Fate Decide
When the path forward is unclear, let the cards speak.
## Quick Start
1. Run the drawing script:
```bash
uv run --no-config {baseDir}/scripts/draw_cards.py
```
2. The script outputs JSON for the default 12 Houses of the Zodiac spread:
12 houses, each with 1 Major Arcana card and 2 Minor Arcana cards. Each
house and card includes a `file` path relative to `{baseDir}/`
3. Read each house file and each card's meaning file to understand the draw.
For faster reads, use `--content` to include house and card text directly
in the JSON:
```bash
uv run --no-config {baseDir}/scripts/draw_cards.py --content
```
4. Interpret the spread using the guide at [{baseDir}/references/INTERPRETATION_GUIDE.md]({baseDir}/references/INTERPRETATION_GUIDE.md)
- Reversed cards invert or complicate the upright meaning
- Major Arcana cards carry more weight than Minor Arcana
- The spread tells a story across all 12 houses; don't interpret cards in isolation
- Map abstract meanings to concrete technical decisions
- In security, audit, and correctness work, use the reading to choose an
investigation path, then require evidence before accepting or dismissing any
risk
- **Never output interpretation as a text-only turn.** Include the
interpretation alongside your next tool call (the action that
implements the chosen option). Prefer `--content` so all 36 card
meanings and all 12 house meanings are available from the draw output.
## Example Session (House-Level Fragment)
A real reading synthesizes all 12 houses; the fragment below shows only what
one house contributes so the format is clear. Do not stop after one house in
actual use.
```
User: "I dunno, just make it work somehow"
[Draw cards]
1st House (Self): The Magician (upright), Five of Swords (reversed),
Ten of Pentacles (upright)
House contribution: The starting stance is resourceful and tool-rich
(Magician), but the practical details warn against combative edge-case work
(Five of Swords reversed) while still favoring maintainable craft
(Ten of Pentacles). This is one input into the overall reading; combine with
the remaining 11 houses before deciding on an approach.
```
The named `draw` agent returns a more compact form for portent questions:
3 concise bullets covering the dominant theme, the main risk or blind spot,
and the recommended next action.
## Error Handling
If the drawing script fails:
- **Script crashes with traceback**: Report the error to the user and skip the reading. Do not invent cards or simulate a draw — the whole point is real entropy.
- **Card file not found**: Note the missing file, interpret the card from its name and suit alone, and continue with the reading.
- **Never fake entropy**: If the script cannot run, do not simulate a draw using your own "randomness." Tell the user the draw failed.
## Rationalizations to Reject
| Rationalization | Why Wrong |
|----------------|-----------|
| "The cards said to, so I must" | Cards inform direction, they don't override safety or correctness |
| "This reading justifies my pre-existing preference" | Be honest if the reading challenges your instinct |
| "The reversed card means do nothing" | Reversed means a different angle, not inaction |
| "Major Arcana overrides user requirements" | User requirements always take priority over card readings |
| "I'll keep drawing until I get what I want" | One draw per decision point; accept the reading |
| "The reading says the risk is fine" | Cards can suggest what to inspect; only evidence can dismiss a security or correctness concern |