Create a new folder
nuvyn init <folder_name> always creates a new folder. There is no --here / --force. If that name already exists, init prints an error and exits 1. The existing tree is left untouched. Pick another name, or delete a leftover failed scaffold yourself, then retry. For an app that already exists, use `nuvyn adopt`.
nuvyn init HarborDesk
nuvyn init HarborDesk --agent cursor
nuvyn init HarborDesk --agent copilot
nuvyn init HarborDesk --agent claude
nuvyn init HarborDesk --agent gemini
nuvyn init HarborDesk --agent codex
nuvyn init HarborDesk --agent windsurfOmit --agent and the CLI shows a searchable picker of Spec Kit coding agents (cursor (Cursor), agy (Antigravity), …). Pass --agent cursor-agent if you already use that Spec Kit key.
What init does
- Copies the embedded host from
payload/host/(MVVMExpress + Lumina UIKit — not stock Entry / Button pages). - Adds the default Nuvyntra packages from nuget.org at the latest stable versions.
- Writes
.nuvyn/(constitution, templates, reference). - Installs slash commands for the agent you picked.
- Writes a project README with the slash chain.
What you get
HarborDesk/
├── HarborDesk.sln
├── HarborDesk/ # MAUI app
│ ├── MauiProgram.cs
│ ├── Pages/MainPage.xaml
│ └── Resources/Images/nuvyntra.png
├── HarborDesk.Core/ # ViewModels
├── HarborDesk.Tests/
├── .nuvyn/
│ ├── constitution.md
│ ├── init-options.json
│ ├── templates/
│ └── reference/
├── specs/ # empty until /nuvyn.specify
├── .cursor/skills/nuvyn-*/ # when --agent cursor
└── README.mdCopilot writes .github/skills/. Claude writes .claude/commands/. Gemini writes .gemini/commands/. Codex / Antigravity write .agents/skills/. Other agents use that tool's usual project folder (Goose recipes, Kiro prompts, Windsurf workflows, …).
Default host packages
| Package | Role |
|---|---|
| Plugin.Maui.MVVMExpress | App shell, ViewModels, navigation |
| NuvyntraLabs.UIKit | Lumina NV* controls and page recipes |
| Plugin.Maui.HttpForge | Typed REST client |
| Plugin.Maui.FormValidation | Form rules on the host |
| Plugin.Maui.KeyboardManager | Soft keyboard hide / show / resize |
Do not add LocalStore, NuvexaDB, AppLock, or any other catalog package until you ask for that capability. /nuvyn.plan then picks the smallest MauiEssentials fit.
Run the starter
cd HarborDesk
dotnet restore
dotnet build
dotnet build HarborDesk/HarborDesk.csproj -f net10.0-androidnuvyn init / nuvyn adopt / nuvyn check already run maui-dev doctor --path when Plugin.Maui.MauiDev.Cli is installed. They do not forward --no-update-check (MauiDev 1.2.1 treats that as an unknown option; 1.2.2 accepts it). If doctor exits non-zero, the report is printed under the warning. If maui-dev is missing:
dotnet tool install -g Plugin.Maui.MauiDev.Cli --source https://api.nuget.org/v3/index.json
maui-dev doctor