scaffold_project
Create a complete project layout in one call: convention directories, item registry, assembly manifest, and project.json for multi-agent FreeCAD component builds.
Instructions
Lay out a well-formed project in one call (issue #143 / D1) — promote the MULTI_AGENT.md §3/§7 directory convention to a primitive. Creates the convention directories (components/, .dp_lib/), an item registry (items.json, #140), a seed assembly manifest from the supplied components/instances, and the project.json container that ties them together. The result loads clean and merge_assembly consumes it unchanged once its components resolve.
base_dir: the project root directory (created if absent). name: the project id (naming-convention checked). components/instances/shared_parameters: the assembly manifest content. master: optional component id to record as the master/skeleton single-source-of- truth slot (the lean interface-geometry skeleton children mate against). items: optional {item_id: {files?, metadata?}} to seed the item registry with.
Returns the layout {project_file, manifest, registry, components_dir, lib_dir, lockfile, master, dirs}.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| items | No | ||
| master | No | ||
| base_dir | Yes | ||
| instances | No | ||
| components | No | ||
| shared_parameters | No |