Repository navigation
Conversation
`bun run neuroflow-ingest` runs the same import as the window (runImport, the post-pass, relocation to <out>/bids) under Bun with no window and no user input, then writes the same handoff and provenance line. This makes the ingest step runnable by NeuroFlow hosts that cannot wait on an app, such as its MCP server. It takes a NeuroFlow session (context.json), a step of a workflow document (constants and inputs.* bindings), or plain flags. Settings come from flags, then the step inputs, then defaults: importer dcm2niix-reproin, subject, session, anonymize, shift_dates, save_derivatives, heuristic, config. Importers: dcm2niix-reproin, pet2bids, heudiconv, dcm2bids. Exit codes: 0 done, 1 import failed, 2 usage error. - $lib/neuroflow/headless: settings resolution, workflow step binding, runHeadlessIngest (refuses an existing <out>/bids before converting). - $lib/neuroflow/nodeExecutor: spawn-based ImportExecutor. Uses the bundled dcm2niix sidecar for the host triple, then $DCM2NIIX / PATH; keeps the Rust side's partial-success exit codes (8, 10) and the dcm2bids PATH shim. - scripts/neuroflow-ingest.ts and the package.json script; README section. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This was referenced Oct 13, 2026
Contributor
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part 5 of 5.
bun run neuroflow-ingestruns the same import as the window (runImport, the post-pass, and relocation to<out>/bids) under Bun with no window and no user input. It then writes the same handoff and provenance line. This lets NeuroFlow hosts that can't wait on an app, such as its MCP server, run the ingest step.bun run neuroflow-ingest -- --neuroflow-session "$NEUROFLOW_SESSION" bun run neuroflow-ingest -- --workflow wf.neuroflow.json --input dicom_dir=/data/dicom --out /data/out bun run neuroflow-ingest -- --dicom /data/dicom --out /data/out --importer dcm2niix-reproin --json<out>/bidsalready exists.Changes
$lib/neuroflow/headless: settings resolution, workflow step binding (constants andinputs.*refs), andrunHeadlessIngest.$lib/neuroflow/nodeExecutor: a spawn-basedImportExecutor.$DCM2NIIX, then PATH.scripts/neuroflow-ingest.ts, thepackage.jsonscript, and a README section.Stack (merge in order; each PR is based on the one before):
Checks
bun testbun run typecheckbun run lint.bidsignorethat the window output lacks; that looks like a window-side dotfile scope issue and is not part of this PR.🤖 Generated with Claude Code