Skip to content

phase-pipeline

The /pipeline command orchestrates a sequence of neuroflow commands in order โ€” either interactively (pause and confirm at each step) or in brutal mode (--executor, run straight through without stops).

Approach

  • Read the project state before proposing anything. The pipeline must reflect where the project actually is, not a generic template. Check flow.md for completed phases and project_config.md for the active phase and tools.
  • Be conservative when inferring what is "done". A phase subfolder exists if any work happened there โ€” but "done" in a pipeline context means the user intentionally finished that phase. When in doubt, mark it [pending] and let the user decide.
  • Never skip a step silently. Every skip must be user-initiated and logged.
  • In brutal mode, speed is the goal โ€” but accuracy is non-negotiable. Each step must still follow its command's instructions fully. Brutal mode removes pauses, not thoroughness.
  • Resume gracefully. When re-invoked on a project with an existing pipeline-plan.md, read it first, show the current status, and continue from where execution stopped.
  • Always ask where to stop. After presenting the plan (in interactive mode), ask the user to choose their stop point before executing anything. This lets them run the pipeline in stages without having to manually stop mid-run.

Interactive vs brutal mode

Behaviour Interactive Brutal (--executor)
Pause between steps โœ… Always โŒ Never
Ask where to stop โœ… Yes (Step 3b) โŒ No โ€” all pending steps run
User can skip individual steps โœ… Yes โŒ No โ€” all pending steps run
User can stop mid-pipeline โœ… Yes โŒ Errors logged; pipeline continues
Error handling Stop and ask Log and continue; report at end
Summary at end โœ… Yes โœ… Yes (more detailed)

Stop-point selection

After the plan is confirmed (Step 3b in the command), present numbered choices for each pending phase plus an "all the way through" option. The user's answer determines the stop_after value:

  • Specific phase chosen: mark all subsequent steps as [deferred] in pipeline-plan.md. Save Stop after: in the plan header. Execute only up to the stop point.
  • All the way through: run the full plan. Trigger the full-journey joke (see below).
  • Brutal mode: skip the question entirely โ€” all steps run regardless.

When resuming, [deferred] steps are surfaced prominently so the user knows there is more to run. Re-run Step 3b on resume to let the user pick a new (or extended) stop point.

Full-journey joke

When the user selects the full pipeline covering the complete research journey (ideation โ†’ paper), generate a fresh, original joke on the spot. Rules:

  • Never use a preset joke. Generate a new one each time.
  • Keep it short โ€” one or two lines.
  • Theme: the absurdity/bravery of doing an entire research project in one uninterrupted sitting. Academic, neuroscience, statistics, or publication-pressure humour all work.
  • Follow the joke immediately with: "Alright, brave soul. Let's do this. ๐Ÿš€"

Standard research pipeline sequence

Use this as the default order when inferring a pipeline from project state:

ideation โ†’ grant-proposal (optional) โ†’ experiment (optional) โ†’ tool-build (optional) โ†’ tool-validate (optional) โ†’ data โ†’ data-preprocess โ†’ data-analyze โ†’ paper

Brain simulation phases insert between data-analyze and paper:

โ€ฆ โ†’ data-analyze โ†’ brain-build โ†’ brain-optimize โ†’ brain-run โ†’ paper โ†’ โ€ฆ

Phases marked optional should only be included if: - The user explicitly requests them, OR - Evidence of that phase's work exists in .neuroflow/ or the repo

Pipeline plan format

The pipeline-plan.md file is the canonical record of what was planned and what happened. Keep it up to date as execution proceeds โ€” treat it as a live log, not a one-time snapshot.

# Pipeline plan
Generated: YYYY-MM-DD
Mode: interactive | brutal (--executor)
Stop after: /data-analyze | all the way through

## Steps

| # | Command | Status | Notes |
|---|---|---|---|
| 1 | /ideation | done | Completed YYYY-MM-DD |
| 2 | /data | pending | โ€” |
| 3 | /data-analyze | pending | โ€” |
| 4 | /paper | deferred | Beyond stop point โ€” resume to continue |

Valid status values: pending, done, skipped, error, deferred

Relevant skills

  • neuroflow:neuroflow-core โ€” read first; defines the command lifecycle, .neuroflow/ write rules, and the end-of-command checklist
  • neuroflow:neuroflow-develop โ€” relevant when the pipeline includes plugin development steps or when the user is building something inside neuroflow itself

Workflow hints

  • Log the pipeline plan to reasoning/pipeline.json at the start and update it at the end โ€” this pipeline definition is a significant project-level decision
  • Log the chosen stop point in reasoning/pipeline.json โ€” it is a deliberate scope decision
  • Update pipeline-plan.md after every step, not just at the end
  • If the user adjusts the plan mid-run (adds a step, changes order, changes stop point), write a new reasoning/pipeline.json entry recording the change and why
  • In brutal mode, print a brief progress line after each step so the user can follow along even without interactive prompts
  • Never create a phase subfolder just for the pipeline โ€” all memory goes in .neuroflow/pipeline/