Describe the bug
On 1.0.76-1, the CLI exits immediately with code 1 and no output at all whenever the effective log level is one of the canonical levels none, error, warning, info, or debug.
Nothing is written to stdout or stderr, no log file is created (even with an explicit --log-dir), and no crash or Windows Error Reporting event is generated. The CLI simply appears not to launch.
The values all and default start normally. all is documented as "Same as debug" — yet all works and debug fails, which suggests the regression is in the direct level-resolution path rather than the alias path. Unrecognized values (bogus, WARNING, "") also start normally, so only the documented, valid levels are affected.
This is reachable two ways:
- the
--log-level <level> flag
- the
logLevel key in settings.json
The second is the damaging one: with logLevel set, every launch fails silently, so the CLI looks permanently broken with zero diagnostics. Because auto-update tracks prereleases for users already on a prerelease build, this can appear with no user action.
1.0.76-0 is unaffected — this is a regression in 1.0.76-1.
Affected version
- Broken: 1.0.76-1 (prerelease)
- Working: 1.0.76-0 (prerelease), 1.0.75 (stable)
- OS: Windows 11 x64 (10.0.26652)
- Reproduced both with the standalone
copilot-win32-x64.zip asset from the v1.0.76-1 release and with the installed CLI after auto-update, so this is not an install-path artifact.
Steps to reproduce the behavior
With a clean COPILOT_HOME, on 1.0.76-1:
$ copilot --log-level info -p "say OK"
# exits 1, no output whatsoever
$ copilot --log-level all -p "say OK"
OK
# exits 0
Or via ~/.copilot/settings.json:
{ "logLevel": "warning" }
…then run copilot — it exits 1 silently on every launch.
Full matrix, same machine and terminal, invoked as -p "say OK":
| logLevel |
1.0.76-0 |
1.0.76-1 |
none |
not tested |
exit 1 |
error |
exit 0 |
exit 1 |
warning |
exit 0 |
exit 1 |
info |
exit 0 |
exit 1 |
debug |
not tested |
exit 1 |
all |
not tested |
exit 0 |
default |
not tested |
exit 0 |
bogus |
not tested |
exit 0 |
WARNING |
not tested |
exit 0 |
"" (empty) |
not tested |
exit 0 |
Expected behavior
--log-level info (and the other documented levels) should start a normal session and log at that level, as in 1.0.76-0.
If a level were genuinely unsupported, the CLI should print an actionable error rather than exiting silently with no output and no log.
Additional context
- The process dies before logging is initialized: an explicit
--log-dir is created but never populated, and stderr is empty.
- No
Application Error or Windows Error Reporting entry is produced, so this is an early exit(1) / swallowed failure rather than a native crash.
copilot --version, copilot mcp list, and copilot skill list all still work on 1.0.76-1 — only session startup is affected.
NODE_OPTIONS=--trace-uncaught has no effect (stripped in the SEA build), so I could not capture a stack trace.
Workarounds: set logLevel to default, run with --no-auto-update, or copilot update stable.
Describe the bug
On 1.0.76-1, the CLI exits immediately with code 1 and no output at all whenever the effective log level is one of the canonical levels
none,error,warning,info, ordebug.Nothing is written to stdout or stderr, no log file is created (even with an explicit
--log-dir), and no crash or Windows Error Reporting event is generated. The CLI simply appears not to launch.The values
allanddefaultstart normally.allis documented as "Same as debug" — yetallworks anddebugfails, which suggests the regression is in the direct level-resolution path rather than the alias path. Unrecognized values (bogus,WARNING,"") also start normally, so only the documented, valid levels are affected.This is reachable two ways:
--log-level <level>flaglogLevelkey insettings.jsonThe second is the damaging one: with
logLevelset, every launch fails silently, so the CLI looks permanently broken with zero diagnostics. Because auto-update tracks prereleases for users already on a prerelease build, this can appear with no user action.1.0.76-0 is unaffected — this is a regression in 1.0.76-1.
Affected version
copilot-win32-x64.zipasset from the v1.0.76-1 release and with the installed CLI after auto-update, so this is not an install-path artifact.Steps to reproduce the behavior
With a clean
COPILOT_HOME, on 1.0.76-1:Or via
~/.copilot/settings.json:{ "logLevel": "warning" }…then run
copilot— it exits 1 silently on every launch.Full matrix, same machine and terminal, invoked as
-p "say OK":noneerrorwarninginfodebugalldefaultbogusWARNING""(empty)Expected behavior
--log-level info(and the other documented levels) should start a normal session and log at that level, as in 1.0.76-0.If a level were genuinely unsupported, the CLI should print an actionable error rather than exiting silently with no output and no log.
Additional context
--log-diris created but never populated, and stderr is empty.Application Erroror Windows Error Reporting entry is produced, so this is an earlyexit(1)/ swallowed failure rather than a native crash.copilot --version,copilot mcp list, andcopilot skill listall still work on 1.0.76-1 — only session startup is affected.NODE_OPTIONS=--trace-uncaughthas no effect (stripped in the SEA build), so I could not capture a stack trace.Workarounds: set
logLeveltodefault, run with--no-auto-update, orcopilot update stable.