Skip to content

session_bootstrapper

mode: subagent — always the first execution step, before @literature_scout.

What it does

Turns a data_dir plus the user's task into a ready session_dir containing a validated session_context.json, by calling bootstrap_session — one tool call does all the deterministic work. It writes no Python and reads no binary files.

Not this agent's job: bootstrap is registry-agnostic. Any match against a registered dataset (reuse) or first-time registration is opened as a file-backed human gate by ingest_to_session and handled by @data_ingestor, never here. No registry state is inherited across independent user tasks because none is written at bootstrap time.

Inputs

  • data_dir — the directory holding the raw catalogue and any ancillary files (masks, n(z), systematics maps, DATA_DESCRIPTION.md).
  • user_task — the user's task string verbatim, including every structured section (## probes:, ## inference priors:, ## inference sampler:, ## inference scale cuts:, ## inference gate:, ## plots:, etc. — see Writing TASK.md). This must not be summarised or paraphrased: the inference tools read these sections back out of session_context.json["task"] at a much later pipeline step, and a dropped section there silently produces a wrong auto-generated config instead of failing loudly.
  • survey= — passed through when the task or DATA_DESCRIPTION.md names a known family (see Catalogue-type profiles).

A single-purpose worker

Like every subagent, it does exactly one job and returns its result as text — it never orchestrates, dispatches, or @mentions another agent. If it's blocked, it emits one NEEDS_INPUT:/ERROR: line (see Platform conventions), never a free-form question.