Skip to content
Back to skills

Grill

ASecurity

Walk a depth-first decision tree anchored to a project's documented principles before brainstorming opens options. Reads docs/agents/principles.md (or probes docs/principles.md and docs/ops-principles.md directly), shortlists principles relevant to the topic, asks one question at a time with a recommended answer per question, surfaces conflicts emergently, and outputs a brief that downstream brainstorming or planning can consume. Use when starting design work and the project has principles do...

  • 10 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 20, 2026
ai-agentsreactnodegit

Security analysis

A100/100

Scanned September 20, 2026

npx -y skills add technicalpickles/pickled-claude-plugins --skill grill --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Grill?

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

Security grade badge for Grill
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/technicalpickles-grill/badge)](https://www.skillsdirectory.com/skills/technicalpickles-grill)

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: grill
description: Walk a depth-first decision tree anchored to a project's documented principles before brainstorming opens options. Reads docs/agents/principles.md (or probes docs/principles.md and docs/ops-principles.md directly), shortlists principles relevant to the topic, asks one question at a time with a recommended answer per question, surfaces conflicts emergently, and outputs a brief that downstream brainstorming or planning can consume. Use when starting design work and the project has principles documented; redirects to stay-principled:setup otherwise. Auto-routes from phrases like "grill me with principles", "anchor this to the principles", "what principles bear on this", "stay principled on this".
---

# Grill with Principles

Walk a depth-first decision tree using the project's principles as the tree roots, before brainstorming opens. The mechanism is grill-me's: one question at a time, recommended answer per node, explore the codebase instead of asking when the answer is there. The anchor is principles, not generic decisions.

## Why this exists

Brainstorming-style breadth-first menus drag conversations toward implementation variants. Depth-first walking with principle anchoring stays at the *why* level. Principles loaded as upfront context are necessary but not sufficient: they need to act as a forcing function during decision moments, not as wallpaper.

## Process

### 1. Discover principles

- Read `docs/agents/principles.md` if it exists. This is the canonical config written by `stay-principled:setup`.
- Otherwise probe `docs/principles.md` and `docs/ops-principles.md` directly.
- Resolve all paths against `git rev-parse --show-toplevel` so worktree invocations find the right files.
- If nothing is found, ask: *"No principles configured. Skip principle-anchoring, or run `stay-principled:setup` first?"* and exit cleanly. Do not pretend to grill without principles. The whole point is anchoring.
- If `docs/agents/principles.md` includes a `## Skip patterns` section, check whether the current branch (`git branch --show-current`) or current path matches any pattern. If so, mention it to the user and ask whether to proceed anyway. The skip patterns are advisory in v1, not strict gates.

### 2. Read and shortlist

- Read all configured principle files into your working set.
- Based on the user's stated topic and visible context (recent commits, branch name, files mentioned, current cwd), propose a shortlist by number and name.
- Cite by number AND name so the user can react fast: *"I think principles 3 (agent proposes), 4 (capture vs triage), and 9 (resilience) bear on this. Anything I'm missing?"*
- If the topic touches a named domain in the domain map, include the domain-specific principles for that domain.
- Wait for the user to confirm, add, or remove before moving on.

### 3. Confirm and walk

Walk the shortlist depth-first, one principle at a time.

For each principle:
- Frame the question that would make this principle bite for the current design. Don't ask abstract questions; ask the concrete one this principle implies.
- Provide a recommended answer, drawing from the `Where:` examples in the principles file when relevant. If the principles file has correction cases for this principle, mention them as part of the recommendation when relevant.
- Wait for the user to confirm, adjust, or reject.
- One question at a time. Never present a menu.
- Cite the principle by number explicitly so cross-references stay easy: *"Per #3..."*

Carry constraints forward: if principle 3 established that 'agents propose, humans confirm', use that boundary when asking the principle 9 question instead of re-asking whether agents should propose. Don't re-ask what's already settled.

### 4. Surface conflicts emergently

When two principles pull opposite ways on the same decision, surface the conflict explicitly. Do **not** recommend a resolution. These are exactly the kind of question that needs the user's judgment, not the agent's.

Example conflicts the brineworks file already shows:
- #5 "defer until concrete need" vs #4 "capture is frictionless": capture features get built before they're "needed".
- #13 "design ceremony matches deployment model" vs any principle that imports multi-user discipline.

Frame: *"#5 says defer, #4 says capture. Which dominates here?"*

### 5. Cite correction cases

When the principles file documents correction cases or known violations (however they are formatted), surface them when the topic resembles the original pattern. Don't just cite; ask whether the same shape applies:

> "Principle 8 had a leak in [context from principles file]. Does the same pattern apply here?"

### 6. Output the brief

When the tree is walked or visibly stabilized, synthesize a brief inline. Include only the fields that apply; omit any that are empty (e.g., omit 'Active conflicts' if none surfaced):

```
## Principle brief: <topic>

**Anchored to:** principles 3, 4, 9

**Resolved:**
- Per #3: agent proposes, human confirms at the X boundary
- Per #4: capture lands raw at Y; filtering happens in triage step Z

**Open at brainstorm time:** ...

**Honored constraints:** ...

**Active conflicts (need user resolution):** ...
```

Always output inline. Offer to write to `docs/plans/YYYY-MM-DD-<topic>-principle-brief.md` when the brief is non-trivial. Never auto-write. The brief is a starting point, and the user may want to edit it before downstream skills consume it.

## Mode rules (carried from grill-me)

- One question at a time. Never present a menu.
- Always include a recommended answer, except when surfacing a principle conflict.
- Explore the codebase or principles file instead of asking when the answer is there.
- Stay at the intent level. If the user pulls toward implementation, redirect:

  > "That's a brainstorming question. Want to settle the principle 3 boundary first, or jump?"

- Cite by stable identifier. When principles are numbered, use the number; when they aren't, use the bolded name or a short quote. Cross-references and correction-case citations should use whatever identifier the principles file provides consistently.

## What this skill does not do

- Generate option menus. That's `superpowers:brainstorming`'s job, downstream.
- Recommend resolutions to principle conflicts.
- Write or amend the principles file. That's a future capture-side skill (`principle-sweep`), out of scope for v1.
- Handle non-markdown principle files. The skill is format-tolerant for markdown but does not parse other formats.

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.