smallnest and smallnest
027a8f2768
fix(config): use ~/.config on macOS and enter setup when no provider ( #371 ) ( #372 )
...
On macOS, DefaultUserConfigPath used Go's os.UserConfigDir which returns
~/Library/Application Support, while users (and Claude Code) place config
at ~/.config/zero/config.json. The user config was never read, leaving
activeProvider empty and the launch failing with `active provider "" not
found` on a fresh `go run cmd/zero setup`.
- Add config.UserConfigDir(): on darwin, resolve to ~/.config (honoring
XDG_CONFIG_HOME), matching Linux and Claude Code. DefaultUserConfigPath,
the TUI user-commands dir, and specialist manifests all route through it.
- Add config.ErrNoActiveProvider sentinel; the interactive TUI now drops
into the setup wizard when resolve fails solely due to a missing/
unresolvable active provider, instead of exiting fatally. Other resolve
errors (malformed JSON, directory conflicts) remain fatal.
Note: `zero setup`/`zero auth` already MkdirAll the config dir before
writing, so the directory is auto-created on first write.
Co-authored-by: smallnest <smallnest@gmail>
2026-07-02 20:03:44 +08:00
..
2026-06-25 09:47:55 +05:30
2026-06-11 15:17:20 +05:30
2026-06-27 17:41:48 +05:30
2026-06-27 17:41:48 +05:30
2026-06-28 13:41:00 +05:30
2026-06-18 19:42:29 +05:30
2026-06-28 13:41:57 +05:30
2026-06-20 23:12:15 +05:30
2026-06-20 20:30:39 +05:30
2026-07-01 15:03:42 +05:30
2026-06-20 19:40:32 +05:30
2026-06-17 11:53:39 +05:30
2026-07-01 15:45:28 +05:30
2026-06-24 14:48:30 +05:30
2026-06-16 19:04:38 +05:30
2026-06-20 18:57:20 +05:30
2026-07-01 20:48:50 +05:30
2026-06-19 19:50:12 +05:30
2026-06-25 20:23:29 +05:30
2026-06-25 20:23:29 +05:30
2026-07-02 12:21:27 +05:30
2026-06-21 13:25:17 +05:30
2026-07-01 15:46:15 +05:30
2026-06-16 19:04:38 +05:30
2026-06-23 10:51:47 +05:30
2026-07-01 20:48:50 +05:30
2026-06-21 18:21:31 +05:30
2026-06-19 19:50:12 +05:30
2026-06-19 19:50:12 +05:30
2026-06-18 19:42:29 +05:30
2026-07-02 12:15:41 +05:30
2026-07-02 12:15:41 +05:30
2026-07-02 12:15:41 +05:30
2026-07-02 12:15:41 +05:30
2026-07-02 12:15:41 +05:30
2026-07-02 12:15:41 +05:30
2026-07-01 15:45:28 +05:30
2026-07-01 12:36:16 +05:30
2026-06-14 17:54:00 +05:30
2026-07-01 12:36:16 +05:30
2026-07-02 12:15:41 +05:30
2026-06-20 19:40:32 +05:30
2026-06-27 23:25:08 +05:30
2026-06-20 23:12:15 +05:30
2026-06-20 23:12:15 +05:30
2026-07-01 21:25:47 +05:30
2026-06-16 19:04:38 +05:30
2026-06-17 11:53:39 +05:30
2026-06-20 18:57:57 +05:30
2026-07-01 15:45:28 +05:30
2026-06-23 10:51:47 +05:30
2026-06-16 19:04:38 +05:30
2026-06-16 19:04:38 +05:30
2026-06-13 22:20:42 +05:30
2026-06-16 19:04:38 +05:30
2026-06-13 22:20:42 +05:30
2026-06-13 22:20:42 +05:30
2026-06-13 22:20:42 +05:30
2026-06-16 19:04:38 +05:30
2026-06-16 14:48:12 +05:30
2026-07-01 20:48:50 +05:30
2026-07-01 15:45:28 +05:30
2026-07-02 20:03:44 +08:00
2026-06-16 19:04:38 +05:30
2026-06-16 19:04:38 +05:30
2026-06-18 19:42:29 +05:30
2026-07-01 12:36:16 +05:30
2026-07-01 15:46:15 +05:30
2026-06-16 15:33:36 +05:30
2026-07-01 18:37:56 +05:30
2026-07-02 12:21:27 +05:30
2026-07-02 12:21:27 +05:30
2026-07-01 20:48:50 +05:30
2026-06-26 16:21:06 +05:30
2026-06-18 21:56:24 +05:30
2026-07-01 20:48:50 +05:30
2026-07-01 20:48:50 +05:30
2026-06-04 20:59:06 +05:30
2026-06-25 20:23:29 +05:30
2026-06-25 20:23:29 +05:30
2026-06-25 20:23:29 +05:30
2026-06-25 20:23:29 +05:30
2026-06-25 20:23:29 +05:30
2026-06-20 10:52:01 +05:30
2026-06-16 13:28:28 +05:30
2026-06-16 19:04:38 +05:30
2026-06-16 19:04:38 +05:30
2026-06-27 23:25:08 +05:30
2026-06-11 00:54:49 +05:30
2026-07-01 18:37:56 +05:30
2026-07-02 12:21:27 +05:30
2026-07-02 12:21:27 +05:30
2026-07-01 23:55:54 +05:30
2026-06-10 19:09:34 +05:30
2026-06-25 20:23:29 +05:30
2026-06-25 20:23:29 +05:30
2026-06-21 18:21:31 +05:30
2026-06-16 23:40:32 +05:30
2026-07-02 12:15:41 +05:30
2026-06-28 13:41:00 +05:30
2026-07-02 12:15:41 +05:30
2026-06-17 12:41:20 +05:30
2026-06-20 10:52:01 +05:30
2026-06-23 10:51:47 +05:30
2026-06-23 10:51:47 +05:30
2026-06-21 13:25:17 +05:30
2026-06-28 17:13:34 +05:30
2026-06-28 17:13:34 +05:30
2026-06-18 12:03:10 +05:30
2026-06-18 12:03:10 +05:30
2026-06-28 13:41:00 +05:30
2026-06-16 19:04:38 +05:30
2026-06-16 20:14:17 +05:30
2026-06-16 19:04:38 +05:30
2026-06-16 19:04:38 +05:30
2026-06-28 13:41:57 +05:30
2026-07-01 09:15:08 +05:30
2026-07-01 15:45:28 +05:30
2026-06-17 12:41:20 +05:30
2026-06-17 12:41:20 +05:30
2026-07-02 12:15:41 +05:30
2026-06-30 21:21:30 +05:30
2026-07-02 12:15:41 +05:30
2026-06-19 07:24:49 +05:30
2026-06-20 19:40:32 +05:30
2026-06-20 22:21:48 +05:30
2026-06-28 13:41:00 +05:30
2026-06-23 10:51:47 +05:30
2026-06-18 20:00:12 +05:30
2026-06-19 20:35:08 +05:30
2026-06-25 20:23:29 +05:30
2026-06-16 19:04:38 +05:30
2026-06-23 10:51:47 +05:30
2026-06-28 13:41:00 +05:30
2026-06-28 13:41:00 +05:30
2026-07-01 13:55:35 +05:30
2026-06-28 13:41:00 +05:30
2026-06-28 13:41:00 +05:30
2026-06-28 13:41:00 +05:30
2026-07-01 12:36:16 +05:30
2026-06-19 20:35:08 +05:30
2026-06-19 20:35:08 +05:30
2026-06-28 13:41:00 +05:30
2026-06-28 13:41:00 +05:30
2026-07-01 15:46:15 +05:30
2026-07-01 15:46:15 +05:30
2026-06-20 22:21:48 +05:30
2026-07-01 15:46:15 +05:30
2026-07-01 15:46:15 +05:30
2026-07-01 15:46:15 +05:30
2026-06-28 13:41:00 +05:30
2026-06-28 13:41:00 +05:30
2026-06-28 13:41:00 +05:30
2026-06-28 13:41:00 +05:30
2026-06-17 09:01:50 +05:30
2026-06-23 10:51:47 +05:30
2026-06-19 21:11:34 +05:30
2026-07-02 12:15:41 +05:30
2026-06-16 19:04:38 +05:30
2026-07-01 15:46:15 +05:30
2026-06-16 23:40:32 +05:30
2026-06-16 23:40:32 +05:30
2026-07-02 12:15:41 +05:30
2026-06-10 17:18:30 +05:30
2026-07-01 09:15:08 +05:30
2026-06-20 23:12:15 +05:30
2026-06-20 23:12:15 +05:30
2026-07-01 20:48:50 +05:30
2026-06-28 13:41:00 +05:30
2026-06-28 13:41:00 +05:30
2026-07-02 00:14:51 +05:30
2026-06-20 10:52:01 +05:30