List the Dev Studio workflows and prepare a read-only context bundle for one of them, so your assistant can run it with the exact instructions that shipped in your project.
Dev Studio is the pack with six personas (Miriam, Huldah, Yosef, Rachel, Bezalel, Oholiab) and 38 workflows such as product-brief, validate-prd or investigate. A workflow is a Markdown procedure that your assistant follows. bmad-plus studio does not run anything: list shows the catalog, and prepare gathers everything the assistant needs for one workflow (the configuration, the shipped instructions, the files you point to) into one bundle, with a hash for every file. It is for people who want a reproducible start, or a script that hands the bundle to an assistant.
Reads .agents/skills/pack-dev-studio/ (the catalog shared/catalog.json, the persona file, the workflow file and the resources it links to), _bmad/config.yaml, your --input files, and the previous report if one exists.
Writes nothing. Not the report, not a cache, not the configuration. The report path it proposes is <output_folder>/dev-studio/<workflow-id>.md (by default _bmad-output/dev-studio/<workflow-id>.md); your assistant writes it later.
Opens no network connection and starts no process. The bundle is capped at 2 MiB.
Needs the Dev Studio pack: npx bmad-plus install --packs core,dev-studio.
Each workflow declares what it needs. When that is missing, prepare still prints the bundle but reports needs-input and exits with code 2, so a script can ask for more before calling the assistant.
Input kinds in the catalog
Kind
Needs
Examples
request
A --request text or at least one --input file.
product-brief, create-prd, create-architecture
project
A --request text or at least one --input file.
investigate, quick-dev, code-review
artifact
At least one --input file.
validate-prd, edit-prd, dev-story
none
Nothing.
declared by the catalog for workflows that need no input
prepare status is needs-input: the workflow lacks its request or its input file.
1
Error: pack not installed, unknown workflow, invalid input, unreadable configuration. With --json the error is printed as {"schemaVersion":1,"status":"error","error":"..."}.
$ npx bmad-plus studio listproduct-brief (analyst-agent; input: request)prfaq (analyst-agent; input: request)document-project (tech-writer-agent; input: project)market-research (analyst-agent; input: request)domain-research (analyst-agent; input: request)technical-research (analyst-agent; input: request)create-prd (pm-agent; input: request)prd (pm-agent; input: request)edit-prd (pm-agent; input: artifact)validate-prd (pm-agent; input: artifact)...investigate (dev-agent; input: project)# The real list has 38 workflows; the lines marked “...” are omitted here.
npx bmad-plus studio list
Output captured from a real run. Source: Replayed with the 0.23.0 package (Core and Dev Studio packs) in a throwaway project; lines omitted where marked
Prepare a workflow that lacks its input
$ npx bmad-plus studio prepare validate-prdvalidate-prd: needs-input — prepared for the host, not executed.Project: /work/appRequest: (none supplied)Resolved configuration:{ "user_name": "Developer", "communication_language": "English", "document_output_language": "English", "output_folder": "_bmad-output", "project_name": "app"}Defaulted fields: (none)Proposed report: _bmad-output/dev-studio/validate-prd.mdSupply a project artifact with --input RELATIVE_FILE.--- shared/execution.md (b8152ec5057fc79749aa7b0823fa35c241c6a0c3f13d12716fa3aae11bcbf354) ---...# Exit code 2. The values shown depend on your _bmad/config.yaml; the long instruction bodies that follow are omitted (“...”).
npx bmad-plus studio prepare validate-prd
Output captured from a real run. Source: Replayed with the 0.23.0 package (Core and Dev Studio packs) in a throwaway project; the project path is replaced by /work/app and the long instruction bodies are omitted
The text summary prints, in order: the workflow and its status, the project folder, the request, the resolved configuration, which configuration fields fell back to a default, the proposed report path, what is still missing, then each instruction file and each input file with its SHA-256. If a report already exists at the proposed path, its content follows under “Continue existing report”, so the assistant resumes instead of starting over. With --json, the same data is one object with schemaVersion, status (ready or needs-input), execution: "host-managed", executed: false, catalogSha256, instructions, inputs and missingInputs.
Note· Prepared is not executed
The bundle proves that the instructions were delivered and which bytes they were. It does not prove that the assistant followed them, and nothing in it writes the report or runs tests. Independent agents, browsing and command execution depend on your assistant.
Dev Studio is installed. You want Miriam to start from a precise scope, and you want the exact instructions recorded by hash.
In your AI assistant
Miriam, use product-brief to define the smallest useful issue triage tool for our support team. If the CLI is available, run `npx bmad-plus studio prepare product-brief --request "Define the smallest useful issue triage tool" --json` first and work from that bundle.
What you should get The command prints a bundle with status ready, executed: false, the proposed report path _bmad-output/dev-studio/product-brief.md, and the shipped instructions with their hashes. Miriam then follows the product-brief procedure and writes the report at that path; the command itself wrote nothing.
validate-prd is an artifact workflow: it needs the file to validate.
In your AI assistant
Yosef, validate-prd on docs/prd.md. Prepare the context with `npx bmad-plus studio prepare validate-prd --input docs/prd.md --json` and report findings only when you can point at the text that supports them.
What you should get Without --input the command would print needs-input and exit 2. With it, the status is ready, the file appears under inputs with its SHA-256, and the proposed report is _bmad-output/dev-studio/validate-prd.md. Yosef validates against that exact file content.