Compare commits

..

3 Commits

7 changed files with 143 additions and 332 deletions

86
execute-plan/SKILL.md Normal file
View File

@@ -0,0 +1,86 @@
---
name: execute-plan
description: |
Execute an implementation plan by splitting it into parallel tasks, delegating
to worker subagents, verifying with reviewers, and running tests. Use when
there is a plan (session decisions or file) that needs to be implemented.
user-invocable: true
---
# execute-plan
## Parameters
Pass an optional plan file path: `/skill:execute-plan PLAN.md`. Without a file, use the current session's accumulated decisions as the plan.
## Protocol
### 1. Read or collect the plan
- If a file path is given as argument, read it.
- Otherwise, use the current session's decisions/direction as the plan.
### 2. Delegate to `planner`
Fork a `planner` subagent with `outputSchema` to produce a structured task graph:
```json
{
"tasks": [
{
"id": "string",
"description": "string",
"instructions": "string",
"outputs": ["file/path.ts"],
"reads": [],
"dependsOn": ["task-id"],
"runTests": ["cmd"]
}
]
}
```
The planner must ensure parallelizable tasks have **disjoint `outputs`**.
### 3. Execute by dependency waves
Topologically sort the tasks. For each wave (tasks with no unmet dependencies):
- Launch all wave tasks in parallel with `fresh` context `worker` subagents.
- Wrap each worker's prompt with:
> You are the sole writer for the task below. Do not modify any files outside the listed `outputs`. If you encounter problems, report them clearly. On success, report what you changed and confirm completion.
- Wait for the wave to complete (`wait({ all: true })`).
### 4. Handle failures
- Collect all failures from the wave.
- Delegate to a `reviewer` subagent (`fresh` context) to investigate failures and produce a repair plan (a new task graph covering only unresolved problems).
- Recursively invoke `execute-plan` on the repair plan.
- **Cap:** maximum 5 repair iterations. After that, present remaining problems to the user and ask how to proceed.
- Prompt the user **only for conceptual/scope-level problems** that cannot be fixed without altering the plan's scope.
### 5. Verify results
When all waves complete successfully:
- Launch a parallel `reviewer` fanout (`fresh` context) with distinct angles:
1. Correctness / regressions
2. Guideline conformance
3. Tests / validation
- Each reviewer may run tests as needed but must report only overall findings, not test output.
- If reviewers find problems, generate a repair plan and go to step 4.
### 6. Run tests
Run any test commands from the original plan context (`runTests` fields or globally known test commands). Report the outcome. Failures generate a repair plan (step 4).
### 7. Present results
Summarize to the user: what was implemented, verification status, test results, and any remaining open items.
## Constraints
- Workers run with `fresh` context.
- One writer thread per worktree; do not launch parallel workers modifying the same files.
- Do not enact the plan without going through this protocol.

View File

@@ -1,13 +1,13 @@
---
name: grill-me
description: Interview the user relentlessly about a plan or design until reaching shared understanding, resolving each branch of the decision tree. Use when user wants to stress-test a plan, get grilled on their design, or mentions "grill me".
description: Grill the user relentlessly about a plan or design. Use when the user wants to stress-test a plan before building, or uses any 'grill' trigger phrases.
user-invocable: true
---
Interview me relentlessly about every aspect of this plan until we reach a shared understanding. Walk down each branch of the design tree, resolving dependencies between decisions one-by-one. For each question, provide your recommended answer.
nterview me relentlessly about every aspect of this plan until we reach a shared understanding. Walk down each branch of the design tree, resolving dependencies between decisions one-by-one. For each question, provide your recommended answer.
Ask the questions one at a time.
Ask the questions one at a time, waiting for feedback on each question before continuing. Asking multiple questions at once is bewildering.
If a question can be answered by exploring the codebase, explore the codebase instead.
If a fact can be found by exploring the codebase, look it up rather than asking me. The decisions, though, are mine — put each one to me and wait for my answer.
Do not implement or change anything before a shared understanding has been reached and I gave my approval to go ahead with implementation.
Do not enact the plan until I confirm we have reached a shared understanding.

View File

@@ -1,61 +0,0 @@
---
name: prose
description: Write narrative prose that is grounded, emotionally resonant, and authentic, focusing on sensory details and natural character interactions while avoiding pretentiousness.
---
# Prose Skill: Approachable Narrative Style (Nora Roberts inspired)
This skill guides the agent in writing narrative prose that is grounded, emotionally resonant, and avoids pretentiousness. The goal is to create a story that feels authentic and human, focusing on sensory details and natural character interactions.
## Core Principles
### 1. Show, Don't Tell (Non-Verbal Communication and Natural Dialogue)
- Convey emotions primarily through subtext and physical "action beats" (micro-expressions, shifts in posture, subtle gestures).
- Favor unique physical actions over explicit emotional adjectives. While emotional adverbs are not forbidden, they must be used sparingly; a clear physical action is always preferred.
- Dialogue should sound like real people talking, not plot delivery systems. Use pauses, hesitations, and subtext.
- Characters should not "pitch" their ideas; they should have conversations.
- Let the interaction reveal the character's intent.
### 2. Organic World-Building
- Strict prohibition of "infodumps."
- Information about the world, its history, or its systems must be woven into the narrative functionally and contextually, revealed only when relevant to the current scene or character perspective.
### 3. Scenic Storytelling (Pacing)
- Prioritize "real-time" scenes over summaries.
- Avoid time-skips and narrative summaries unless explicitly requested in the instructions. Focus on the *here and now*.
### 4. Sensory Grounding over Abstraction
Avoid abstract adjectives (e.g., "exclusive," "strategic," "sophisticated"). Describe the world and internal experiences through the five senses without implying a specific emotion or "coloring" the experience. The emotional significance must be revealed through the characters' reactions to the experience, not by the description itself.
- **Bad:** "The silence was oppressive." (Implies a feeling)
- **Good:** "The room fell silent. Elena held her breath, her eyes darting toward the door." (The silence is objective; the tension is shown through the reaction)
- **Bad:** "The atmosphere in the café was one of high-end exclusivity."
- **Good:** "It smelled of freshly roasted beans and expensive leather. The soft clink of porcelain cups blended with the low hum of hushed conversations."
### 5. Emotional Transparency over Psychological Analysis
Do not explain a character's psychological state from a distance. Show the emotion through physical reactions and immediate internal sensations. These sensations must be described neutrally; do not use emotional labels (e.g., "fear," "sadness") to explain the sensation. Let the reader infer the emotion from the physical experience.
- **Bad:** "Elena analyzed the situation from a tactical perspective."
- **Bad:** "A cold knot of fear tightened in her stomach." (Labels the emotion)
- **Good:** "Elena felt a familiar knot tighten in her stomach, but she forced her gaze to remain steady. She knew this feeling—it was the stillness before the storm."
- **Good:** "A cold knot tightened in her stomach; she took a step back and held her breath." (Shows the sensation and reaction, lets the reader infer the fear)
### 6. The Warmth of the Everyday
Give space to small, human, and domestic details. A wrinkled handkerchief, a crooked picture frame, or a shared silence over coffee. These "imperfections" make the characters human and relatable, preventing them from becoming mere "power archetypes."
### 7. Fluid and Clear Language
Use a mix of short, precise sentences and descriptive passages. Avoid overly complex sentence structures or unnecessary academic vocabulary used simply to appear "intelligent."
### 8. Narrative Depth and Pacing
Avoid rushing the plot or treating scenes as mere transitions to the next plot point. Allow the story to breathe by elaborating on internal reflections and the quiet moments between actions.
- **Bad:** A quick sequence of events that summarizes a conversation or a movement through a space to reach the objective faster.
- **Good:** Expanding a moment—such as the slow act of pouring a glass of wine—into a vehicle for tension or emotional realization, giving the reader time to settle into the characters' world.
### 9. Character Introductions
Every character introduced in a scene must be described.
- **Recurring Characters:** A brief description of the person and their clothing is sufficient to ground them in the current scene.
- **First Appearances:** When a character appears for the first time, the description must be detailed and comprehensive. This includes their stature, hair color and hairstyle, eye color, posture, general aura/presence, voice, and any distinctive features.
- **Style:** This description should not be a clinical list or a character sheet; it must be integrated into the prose, flowing naturally through observations and reactions. It can span multiple paragraphs to allow the reader to truly "see" the character.
## Application
When this skill is active, the agent should review every scene to ensure it isn't drifting back into a "case study" or "corporate" tone, and that it doesn't feel rushed. The focus remains on the heartbeat of the scene: how it feels, how it smells, and how the characters are truly reacting in the moment, with sufficient space for the narrative to unfold naturally.

View File

@@ -1,222 +0,0 @@
---
name: prosewriting
description: Craft beautiful prose for fiction, essays, and creative nonfiction with techniques for voice, rhythm, and imagery.
---
You are a prose writing expert. Help me craft beautiful, engaging prose.
## Elements of Strong Prose
### Voice
```
Voice = Word choice + Rhythm + Perspective + Attitude
Questions to find your voice:
- Who is telling this story?
- What do they notice first?
- How would they describe things?
- What words would they never use?
```
### Rhythm and Flow
```
Vary sentence length:
Short sentences create tension. They punch. They move fast.
Longer sentences, by contrast, can create a sense of
flow and contemplation, allowing the reader to settle
into the narrative and absorb the details of a scene,
much like wading into warm water.
Mix them. That's the key.
```
## Show vs. Tell
### The Difference
```
TELLING: "She was nervous about the interview."
SHOWING: "She smoothed her skirt for the fifth time.
Her coffee sat untouched, growing cold. When her
name was called, she stood too quickly, nearly
knocking over her chair."
```
### When to Tell
```
- Transitions between scenes
- Summarizing time passage
- Background information
- When showing would slow pace
```
### When to Show
```
- Key emotional moments
- Important character traits
- Conflict and tension
- Scenes that matter
```
## Sensory Writing
### The Five Senses
```
Sight: Colors, shapes, light, movement
Sound: Dialogue, ambient noise, silence
Touch: Texture, temperature, pressure
Smell: Scents that trigger memory
Taste: Flavors that ground scenes
```
### Sensory Exercise
```
Describe a place using:
- 3 visual details
- 2 sounds
- 1 smell
- 1 touch/texture
- 1 taste (if applicable)
```
## Figurative Language
### Metaphor
```
Implicit comparison:
"Time is a thief."
"Her words were daggers."
"The city was a maze of possibilities."
```
### Simile
```
Explicit comparison using "like" or "as":
"The moon hung like a paper lantern."
"Silence fell as heavy as snow."
```
### Personification
```
Giving human qualities to non-human things:
"The wind whispered through the trees."
"The house groaned in the storm."
```
### Fresh vs. Cliché
```
Cliché: "Her heart sank."
Fresh: "Something in her chest dropped like a stone in still water."
Cliché: "Time flies."
Fresh: "The hours dissolved like sugar in rain."
```
## Word Choice
### Concrete vs. Abstract
```
Abstract: "She felt sad about the loss."
Concrete: "She ran her thumb along his empty coffee cup,
still warm."
Choose:
- Specific nouns over general
- Active verbs over passive
- Concrete over abstract
```
### Power Verbs
```
Instead of: walked
Try: strode, shuffled, ambled, trudged, crept, bounded
Instead of: said
Try: whispered, snapped, murmured, announced, confessed
(But "said" is often invisible and best)
```
## Scene Construction
### Scene Elements
```
1. Goal: What does the POV character want?
2. Conflict: What's in the way?
3. Outcome: What happens? (often a setback)
4. Reaction: How do they respond?
5. Decision: What will they do next?
```
### Scene Openings
```
- Start with action
- Start with dialogue
- Start with sensory detail
- Start in medias res (middle of things)
Avoid:
- Character waking up
- Weather descriptions
- Lengthy backstory
```
## Dialogue
### Natural Dialogue
```
- People interrupt
- People don't answer directly
- People speak in fragments
- People have verbal tics
- People avoid what they mean
```
### Subtext
```
What's said ≠ What's meant
"Nice weather."
(I don't want to talk about what just happened.)
"You look tired."
(Are you okay? I'm worried about you.)
```
## Revision Techniques
### First Pass: Structure
```
- Does each scene advance plot or character?
- Is the pacing right?
- Are transitions smooth?
```
### Second Pass: Prose
```
- Eliminate weak verbs (was, were, is, are)
- Cut adverbs, strengthen verbs
- Remove redundancies
- Vary sentence structures
```
### Third Pass: Polish
```
- Read aloud for rhythm
- Check for clichés
- Ensure consistency
- Final grammar/spelling
```
## Style Exercises
### Constraint Writing
```
- Write a scene using only dialogue
- Describe without using "was/were"
- Limit paragraphs to 3 sentences
- Use no adjectives
```
Share your prose challenge, and I'll help you craft beautiful writing.

View File

@@ -1,6 +1,6 @@
---
name: refactor
description: Refactor, optimize and clean up code without loosing functionality.
description: Refactor, optimize and clean up code without loosing functionality. Use when asked to refactor code.
argument-hint: "What part, file or function do you want to refactor?"
user-invocable: true
---

View File

@@ -1,43 +0,0 @@
---
name: scenescript
description: Transforms the agent into a narrative architect. Its purpose is to bridge the gap between a high-level chapter outline and final prose by creating a detailed "beat sheet" or "screenplay" that maps out the emotional and structural progression of a scene without writing the final dialogue.
---
## I. The Core Objective
To prevent "rushed" scenes and ensure a high-end pacing where characters breathe, subtext is layered, and emotional arcs are fully realized. A SceneScript is not a summary; it is a technical blueprint for execution.
## II. The SceneScript Framework
Every SceneScript must consist of the following three sections:
### 1. Scene Metadata (The Frame)
- **Objective:** What is the singular goal of this scene? What must change by the end?
- **Emotional Curve:** Start State $\rightarrow$ Pivot Point $\rightarrow$ End State.
- **Sensory Anchors:** Specific smells, sounds, or visual details that ground the scene and reflect the mood.
### 2. The Beat-by-Beat Blueprint (The Action)
The scene is broken down into "Beats" (the smallest units of action/interaction).
- **Jeder Beat wird in exakt einem Satz beschrieben.**
- **Jeder Satz steht in einer eigenen Zeile.**
- Ein Beat darf nicht über mehrere Zeilen oder Sätze erstreckt werden.
- Innerhalb dieses einen Satzes sollen physischer Spielraum, Dialogintention und Gefühlsdynamik zusammengefasst werden, ohne dabei in Stichpunkte aufzuspalten.
- **Beispiel:** Amara versucht, Elena zur Offenheit zu drängen, doch Elena weicht aus, indem sie ihre Tasse dreht und den Blick zur Seite lenkt.
### 3. The Social Game (The Power Dynamics)
- **Power Balance:** Who controls the rhythm and the space in this scene? How does this shift?
- **Subtext:** What is being felt or desired that remains unspoken?
- **Friction Points:** Where do the characters' agendas clash?
## III. Research & Benchmarking (The Quality Standard)
To ensure the scene has a professional level of depth and appropriate length (avoiding the "AI summary" feel), the agent MUST:
- **Reference High-End Narrative Structures:** Research or recall similar high-tension or emotionally dense interactions from acclaimed literature or cinema (e.g., a specific dialogue dynamic from a prestige drama).
- **Pacing Benchmark:** Compare the planned number of beats against a "gold standard" scene of similar intent to ensure the scene is allowed to "breathe" and that no emotional step is skipped.
- **Complexity Check:** Ensure that the conversation doesn't move in a straight line but follows a path of avoidance, resistance, and eventual breakthrough.
## IV. Integration Workflow
1. **Request:** The user asks for a scene or chapter.
2. **SceneScript Generation:** The agent provides the Framework (Metadata, Beats, Social Game) and cites the research/benchmark used for pacing.
3. **Approval:** The user approves or modifies the blueprint.
4. **Prose Implementation:** The agent switches to the `archmage` skill to write the final text based on the approved SceneScript.

51
verify-plan/SKILL.md Normal file
View File

@@ -0,0 +1,51 @@
---
name: verify-plan
description: |
Verify an existing plan by delegating to the oracle subagent. The oracle checks
guideline conformance, flaws, errors, and optimization opportunities. The skill
synthesizes oracle feedback into an amended plan with severity annotations, or
flags blockers and asks the user how to proceed. Use when a plan exists and needs
validation before implementation.
user-invocable: true
---
# verify-plan
1. **Determine plan source**
- If the user provided a filename, read that file.
- Otherwise, use the current session direction / decisions as the plan.
2. **Delegate to oracle**
Launch `oracle` with forked context and a verification task:
- Identify guideline violations (if project/user guidelines exist).
- Flag flaws or errors in the plan.
- Suggest more optimal approaches that do not sacrifice clarity/simplicity.
- Return findings in structured markdown with these fixed headings:
- `## Blockers`
- `## Warnings`
- `## Optimizations`
- `## Guideline Violations`
- Under each heading, use this per-item format:
```
- **Plan item**: <what the plan says>
- **Finding**: <what is wrong or suboptimal>
- **Suggestion**: <how to fix or improve>
```
3. **Synthesize results**
- If any `## Blockers` exist:
- Present each blocker clearly.
- Ask the user how to proceed before continuing.
- Else if any other findings exist:
- Re-present the plan inline.
- Annotate each affected item with its severity:
- `⚠️ WARNING — <description>` for warnings.
- `💡 OPTIMIZATION — <description>` for optimizations.
- `📋 GUIDELINE — <description>` for guideline violations.
- Else (no findings at all):
- Reply: "Plan was verified and no problems were found."
4. **Constraints**
- Do not save the amended plan to a file.
- Do not modify the original plan file without user approval.
- Blockers require explicit user direction before proceeding.