MirrorNeuron Developer Manual

Use workers and skills

Connect reusable Python behavior to blueprint steps and declare its dependencies.

Start with the blueprint package format. Put logical dependencies in workflow.json, worker configuration in execution.json, and package versions in dependencies.json.

Select Python step handlers

This workflow fragment selects two Python modules:

{
  "$schema": "https://mirrorneuron.io/schemas/blueprint/v1/workflow.schema.json",
  "steps": [
    {"id": "intake", "needs": [], "run": {"handler": "my_blueprint.steps.intake"}},
    {"id": "review", "needs": ["intake"], "run": {"handler": "my_blueprint.steps.review"}}
  ]
}

Provide those modules in the worker's packaged Python environment. A handler is a module name, not module:callable; the default step runtime calls its conventional run() function. Use execution.mode: compiled and declare the worker image or an explicit worker choice in the execution document. This fragment is not a complete runnable package.

Add reusable dependencies

Declare skills and agents by distribution name and an explicit version. SDK components use packages records with type: pip and source: gar. Use exact versions for a reproducible release or supported constraints when your compatibility policy allows them. See Dependency versions.

For local source development, MN_USE_LOCAL_SKILLS=1 resolves matching projects in mn-skills or packaged payloads/skills source trees. Binary mode preserves release constraints and does not automatically use bundled source. Keep the authored declarations unchanged between modes.

Validate and run

From the directory containing your reviewed package:

mn blueprint validate ./my-blueprint
mn blueprint doctor ./my-blueprint

Replace the path with your folder. Missing worker imports, images, models, or service requirements must be fixed before launch. Follow Quickstart to launch sample inputs and inspect results. Review mounts, environment, egress, and external actions before executing worker code.

On this page