Companion And Standalone Projects
The package-authoring tooling can generate Unity projects in two different contexts:
- as a companion project inside the package creation wizard
- as a standalone project inside the project creation wizard
Both flows share the same project settings model and much of the same generation pipeline.
Shared Project Settings
Both flows use:
- company name
- project name
- version
- preferred editor
- included packages
- optional
AGENTS.mdgeneration
The standalone project creation wizard also exposes Target Location directly inside the project settings section. The package creation wizard keeps that field in the separate Output block because its companion project always lives inside the generated repository.
How Generated Projects Are Built
Generated Unity projects are not created from an empty folder. They are assembled from the template project's baseline and then patched.
The generator:
- Copies the template-project baseline assets, packages, and project settings.
- Applies the generated
.gitignorecontent from the package template settings. - Rebuilds the manifest dependencies from the baseline manifest.
- Removes any preexisting IDE integration packages from the baseline manifest.
- Adds the selected preferred editor package back in.
- Adds any manually included packages.
- Applies generated project metadata such as company name, product name, version, application identifier, and root namespace.
Companion Project Specific Behavior
The companion project generated by the package creation wizard does two extra things:
- it adds a local file dependency pointing to the generated package
- it marks the package as
testablewhen the packageTestsfolder is enabled
This is what makes the companion project immediately useful for package development and validation.
Standalone Project Specific Behavior
The standalone project creation wizard uses the same project baseline and dependency-merging logic, but it does not add a local package dependency because there is no generated package repository around it.
This flow produces a clean Unity project scaffold driven by the same defaults and preset system, but without the package-repository workflow around it.
Preferred Editor Packages
The current preferred editor selection maps to these manifest dependencies:
Visual Studio->com.unity.ide.visualstudioVisual Studio Code->com.unity.ide.vscodeRider->com.unity.ide.riderNone-> no IDE integration package is added
Only one preferred editor package is emitted by the generator.
Included Packages
Included packages are merged after the baseline manifest is sanitized and after the preferred editor package decision is applied.
Use them for project-specific tooling or runtime dependencies that should always be present in the generated project.
Auto-Open Behavior
Both project-generation flows support Auto-Open After Creation.
When enabled, the tool attempts to open the generated Unity project in the current editor after generation completes.
Generated Paths
Companion Project
Companion projects are written to:
<Target Location>/<Package Identifier>/projects/<Project Name>
Standalone Project
Standalone projects are written to:
<Target Location>/<Project Name>