Sub-issue of #109.
Goal
npx @forgeplan/web start should Just Work — find a scaffold automatically, prompt to init if none exists.
Scope
- Resolution order:
<cwd>/.forgeplan-web/ → ~/.forgeplan-web/ → prompt user to run init.
--scope user|project overrides resolution (force the chosen scope, fail loudly if absent).
- Honor
FORGEPLAN_CWD env (current behavior preserved).
- New helper:
resolveScaffold({ cwd, scope }) → { path, scope, configPath } | null.
Forgeplan
Acceptance
cd /any/dir && npx @forgeplan/web start starts user-scope server when project-scope absent.
--scope project in a dir without .forgeplan-web/ errors clearly without falling back to user.
- No
.forgeplan-web/ anywhere → prompt offers init --scope user|project interactively.
- Existing project-scope users see no behavior change.
Depends on
- 109b (scope flag, user-scope path resolver)
Sub-issue of #109.
Goal
npx @forgeplan/web startshould Just Work — find a scaffold automatically, prompt to init if none exists.Scope
<cwd>/.forgeplan-web/→~/.forgeplan-web/→ prompt user to runinit.--scope user|projectoverrides resolution (force the chosen scope, fail loudly if absent).FORGEPLAN_CWDenv (current behavior preserved).resolveScaffold({ cwd, scope })→{ path, scope, configPath } | null.Forgeplan
Acceptance
cd /any/dir && npx @forgeplan/web startstarts user-scope server when project-scope absent.--scope projectin a dir without.forgeplan-web/errors clearly without falling back to user..forgeplan-web/anywhere → prompt offersinit --scope user|projectinteractively.Depends on