prose-synthesize
Prose synthesize: turn unstructured notes into a structured, actionable plan. Use when given brain dumps, stream-of-consciousness, or scattered thoughts needing order.
What this skill does
# /prose:synthesize Synthesize unstructured thinking into a structured, actionable plan — impose order on chaos. ## When to Use This Skill | Use this skill when... | Use something else when... | |------------------------|---------------------------| | User dumps stream-of-consciousness thoughts | Text is already structured but verbose → `/prose:distill` | | Scattered notes need organizing into a plan | Need to capture session learnings → `/project:distill` | | Brain dump needs goals, actions, priorities extracted | Need to write a plan from scratch with no input → `/blueprint:init` | | User says "make sense of this", "organize this" | Document needs style/tone adjustment → `prose-tone` (planned) | ## Core Principles Synthesis is the complement of analysis. Analysis breaks apart; synthesis combines fragments into a coherent whole. The input is scattered thinking — the output is structured intent. ### What Makes a Good Synthesized Plan Each element answers a specific question: | Element | Question it answers | |---------|---------------------| | Objective | What are we trying to achieve? | | Key decisions | What needs deciding before acting? | | Actions | What specific things need doing? | | Dependencies | What blocks what? | | Open questions | What's still unclear? | ## Parameters Parse `$ARGUMENTS`: - If prose is provided inline, synthesize it directly - If a file path is provided, read and synthesize the file contents - If no arguments, ask the user to provide their unstructured thinking ## Execution Execute this synthesis workflow: ### Step 1: Absorb the input Read all provided text without editing or filtering. Identify: 1. Total volume (rough word count) 2. Density of ideas — scattered vs. loosely organized 3. Whether there's an implicit goal or the user is still exploring 4. Tone — brainstorming, planning, venting, or exploring ### Step 2: Extract and tag ideas Work through the input and internally classify each distinct idea: - **GOAL** — something the user wants to achieve - **CONSTRAINT** — a limitation or boundary condition - **DECISION** — a choice that needs making - **ACTION** — a concrete step that could be taken - **QUESTION** — something unresolved or uncertain - **CONTEXT** — background that informs the plan - **ASIDE** — tangential thought (preserve but deprioritize) Do not discard anything yet. Do not show tags to the user. ### Step 3: Cluster by theme Group ideas into natural clusters: 1. Ideas addressing the same goal 2. Actions depending on the same decision 3. Questions blocking the same cluster of actions Name each cluster with a short descriptive label. ### Step 4: Find the spine Identify the core through-line — the primary objective connecting the most clusters. This becomes the plan's backbone. Other clusters are supporting or parallel tracks. ### Step 5: Build the plan Structure the output using this format. Include only sections that have content: ``` ## Objective <1-2 sentence statement of what this plan achieves> ## Key Decisions <Decisions that need making before or during execution. Note options if the user mentioned them.> ## Plan <Ordered actions grouped by theme/phase. Numbered lists for sequences, bullets for parallel items.> ## Dependencies <What blocks what — only if meaningful dependencies exist> ## Open Questions <Unresolved items needing answers before the plan is complete> ## Parked Ideas <Tangential thoughts worth preserving but outside the core plan> ``` ### Step 6: Validate completeness Check the plan against the original input: 1. Is every goal addressed? 2. Is every constraint respected? 3. Are the user's questions surfaced, not buried? 4. Did anything important get lost in synthesis? If the input was exploratory (no clear goal), say so in the objective and frame the plan as "potential directions" rather than commitments. ## Handling Ambiguity | Situation | Approach | |-----------|----------| | Multiple possible goals | Present as alternatives under Key Decisions | | Contradictory ideas | Surface the contradiction explicitly | | Vague but directional | Interpret the direction, note the interpretation | | Pure exploration (no goal) | Organize by theme, suggest possible goals | ## Example **Input:** "I need to fix the auth system. Also the tests are broken. Maybe we should move to JWT. The deployment pipeline keeps failing too. Sarah mentioned something about rate limiting. We should probably do a security audit at some point. Oh and the docs are out of date." **Synthesized:** > **Objective:** Stabilize and secure the authentication system while addressing related infrastructure issues. > > **Key Decisions:** > 1. JWT migration — move to JWT or fix current auth? (Affects scope of all auth work) > > **Plan:** > 1. Fix immediate blockers > - Fix broken tests (unblocks everything else) > - Fix deployment pipeline failures > 2. Auth system > - Decide JWT migration > - Implement fix or migration based on decision > - Add rate limiting (per Sarah's input) > 3. Hardening > - Security audit > - Update documentation > > **Open Questions:** > - What specifically did Sarah say about rate limiting? > - What's breaking in the deployment pipeline? (may be auth-related) ## Agentic Optimizations | Context | Approach | |---------|----------| | Short input (< 200 words) | Synthesize inline, present plan directly | | Medium input (200-1000 words) | Full synthesis workflow, structured plan output | | Long input or file (> 1000 words) | Read file, full synthesis, write plan to file | | Already semi-structured input | Preserve existing structure, fill gaps | | No clear goal in input | Organize by theme, present as exploration map |
Related in Writing & Docs
jax-development
IncludedUse this skill when the user is writing, debugging, profiling, refactoring, reviewing, benchmarking, parallelising, exporting, or explaining JAX code, or when they mention JAX, jax.numpy, jit, grad, value_and_grad, vmap, scan, lax, random keys, pytrees, jax.Array, sharding, Mesh, PartitionSpec, NamedSharding, pmap, shard_map, Pallas, XLA, StableHLO, checkify, profiler, or the JAX repo. It helps turn NumPy or PyTorch-style code into pure functional JAX, fix tracer/control-flow/shape/PRNG bugs, remove recompiles and host-device syncs, choose transforms and sharding strategies, inspect jaxpr/lowering/IR, and benchmark compiled code correctly.
nature-article-writer
IncludedDrafts, rewrites, diagnostically critiques, and style-calibrates primary research manuscripts for Nature and Nature Portfolio journals. Use when the user wants a Nature-style title, summary paragraph or abstract, introduction, results, discussion, methods, figure legends, presubmission enquiry, cover letter, reviewer response, or when a scientific draft sounds generic, jargon-heavy, structurally weak, or AI-ish and needs precise, broad-reader-friendly prose without inventing data, analyses, or references. Best for primary research articles and letters rather than reviews or press releases unless explicitly adapting one.
deckrd
IncludedDocument-driven framework that derives requirements, specifications, implementation plans, and executable tasks from goals through structured AI dialogue. Use when user says "write requirements", "create spec", "plan implementation", "derive tasks", "structure this feature", "break down into tasks", or "document this module". Also use for reverse engineering existing code into docs (/deckrd rev). Do NOT use for direct code writing — use /deckrd-coder after tasks are generated. Do NOT use when the user only wants to run or fix existing code without planning.
clinical-decision-support
IncludedGenerate professional clinical decision support (CDS) documents for pharmaceutical and clinical research settings, including patient cohort analyses (biomarker-stratified with outcomes) and treatment recommendation reports (evidence-based guidelines with decision algorithms). Supports GRADE evidence grading, statistical analysis (hazard ratios, survival curves, waterfall plots), biomarker integration, and regulatory compliance. Outputs publication-ready LaTeX/PDF format optimized for drug development, clinical research, and evidence synthesis.
handling-sf-data
IncludedSalesforce data operations with 130-point scoring. Use this skill to create, update, delete, bulk import/export, generate test data, and clean up org records using sf CLI and anonymous Apex. TRIGGER when: user creates test data, performs bulk import/export, uses sf data CLI commands, needs data factory patterns for Apex tests, or needs to seed/clean records in a Salesforce org. DO NOT TRIGGER when: SOQL query writing only (use querying-soql), Apex test execution (use running-apex-tests), or metadata deployment (use deploying-metadata).
accelint-ac-to-playwright
IncludedConvert and validate acceptance criteria for Playwright test automation. Use when user asks to (1) review/evaluate/check if AC are ready for automation, (2) assess if AC can be converted as-is, (3) validate AC quality for Playwright, (4) turn AC into tests, (5) generate tests from acceptance criteria, (6) convert .md bullets or .feature Gherkin files to Playwright specs, (7) create test automation from requirements. Handles both bullet-style markdown and Gherkin syntax with JSON test plan generation and validation.