Commit Graph

2208 Commits

Author SHA1 Message Date
Peter Steinberger
f5023e9ee8 fix(pairing): accept positional provider args 2026-01-10 16:36:43 +01:00
Peter Steinberger
23935ee3b1 feat: add ZAI auth choice 2026-01-10 16:32:21 +01:00
Peter Steinberger
7b0c891be9 fix: harden cli credential sync 2026-01-10 16:25:40 +01:00
Peter Steinberger
c5dce1a023 fix: doctor ignore install dir in legacy workspace check 2026-01-10 16:23:35 +01:00
Peter Steinberger
171682b20a test: clean up lint warnings 2026-01-10 16:17:02 +01:00
Peter Steinberger
170bb437c5 refactor: unify configure auth choice 2026-01-10 16:14:49 +01:00
Peter Steinberger
ca9dbffa31 fix(agents): suppress partial replies with reasoning 2026-01-10 16:03:17 +01:00
Peter Steinberger
058dff59a7 refactor(sessions): add mergeSessionEntry 2026-01-10 16:03:17 +01:00
Peter Steinberger
1b556c089b refactor: centralize messaging dedupe helpers 2026-01-10 16:02:56 +01:00
Peter Steinberger
77daccd335 fix: prevent claude-cli oauth downgrade (#654) (thanks @radek-paclt) 2026-01-10 15:50:25 +01:00
Radek Paclt
71bca07533 fix(auth): enable OAuth refresh for Claude CLI credentials
When Claude CLI credentials (anthropic:claude-cli) expire, automatically
refresh using the stored refresh token instead of failing with
"No credentials found" error.

Changes:
- Read refreshToken from Claude CLI and store as OAuth credential type
- Implement bidirectional sync: after refresh, write new tokens back to
  Claude Code storage (file on Linux/Windows, Keychain on macOS)
- Prefer OAuth over Token credentials (enables auto-refresh capability)
- Maintain backward compatibility for credentials without refreshToken

This enables long-running agents to operate autonomously without manual
re-authentication when OAuth tokens expire.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-10 15:40:27 +01:00
Peter Steinberger
cb749abf53 Merge pull request #655 from antons/fix/reasoning-imsg
Fix reasoning in iMessage
2026-01-10 14:39:14 +00:00
Peter Steinberger
1377842748 fix: reasoning iMessage sessions + final reply (#655) (thanks @antons) 2026-01-10 15:31:57 +01:00
Peter Steinberger
f5a2b40e71 Merge pull request #659 from mickahouan/fix/dedupe-message-tool
Fix: avoid duplicate replies when message tool sends
2026-01-10 14:30:02 +00:00
Peter Steinberger
c65b75ee8f fix: bundle node runtime for mac app 2026-01-10 15:28:37 +01:00
Peter Steinberger
71d1d91d32 fix: dedupe message tool replies (#659) (thanks @mickahouan) 2026-01-10 15:28:13 +01:00
Anton Sotkov
a8ace08e40 fix: send only final answer with reasoning
When reasoning is enabled on non‑block providers, we now ignore interim streaming chunks and send only the final assistant answer at completion, so replies aren’t partial or duplicated.
2026-01-10 15:28:04 +01:00
Anton Sotkov
8f4567d02c fix(sessions): persist reasoning/elevated across DMs 2026-01-10 15:28:04 +01:00
Mickaël Ahouansou
34d3bfbf8e Fix: dedupe message tool sends 2026-01-10 15:25:20 +01:00
Peter Steinberger
2b897710e1 fix: minimax apiKey optional for providers (#656) (thanks @mneves75) 2026-01-10 15:08:12 +01:00
mneves75
9507353e89 Config: add MiniMax direct API authentication option
Makes apiKey optional in ModelProviderConfig so MiniMax can use auth
profiles or environment variables (MINIMAX_API_KEY) instead of requiring
explicit config.

Changes:
- src/config/types.ts: apiKey changed from required to optional
- src/config/zod-schema.ts: use z.string().min(1).optional() for validation
- src/commands/configure.ts: add minimax-api auth choice in wizard
- src/commands/onboard-auth.ts: MiniMax provider omits apiKey (uses env/auth)
- patches/@mariozechner__pi-ai@0.42.1.patch: map minimax → MINIMAX_API_KEY

Auth Resolution Order (unchanged):
1. Auth profiles (highest priority)
2. Environment variables (MINIMAX_API_KEY, etc.)
3. Custom provider apiKey from models.json (lowest priority)
2026-01-10 10:57:09 -03:00
Peter Steinberger
f4be16da70 test: add elevated mode regressions 2026-01-10 05:31:48 +01:00
Peter Steinberger
9b4476533a fix: persist elevated off override 2026-01-10 05:23:46 +01:00
Peter Steinberger
6eddfaee84 test(live): add optional write/bash probes 2026-01-10 04:14:39 +00:00
Peter Steinberger
a54ddff2cc test(onboard): cover remote + lan token flows 2026-01-10 04:14:39 +00:00
Peter Steinberger
fbf44d47be chore: normalize Clawdbot naming 2026-01-10 05:14:09 +01:00
Peter Steinberger
07f82b6868 feat: show more session flags 2026-01-10 05:14:07 +01:00
Peter Steinberger
605260cdf3 test(onboard): gateway token auth flow 2026-01-10 03:54:29 +00:00
Peter Steinberger
61f1f2fddf fix(onboard): persist gateway token in config 2026-01-10 03:54:25 +00:00
Peter Steinberger
dd1e286303 test(gateway): add wizard e2e + isolate live suite 2026-01-10 03:44:21 +00:00
Peter Steinberger
8337a82186 test(telegram): force real timers for media groups 2026-01-10 03:44:21 +00:00
Peter Steinberger
d926146950 test(telegram): deflake media groups on windows 2026-01-10 04:43:04 +01:00
Peter Steinberger
efd58ce6e6 test(gateway): avoid real OpenAI in mock test 2026-01-10 03:25:45 +00:00
Peter Steinberger
02d65d015c test(telegram): harden media tests 2026-01-10 04:18:05 +01:00
Peter Steinberger
c2fefb087d fix(tools): keep canonical tool names for oauth 2026-01-10 04:18:00 +01:00
Peter Steinberger
3d03e7acb4 test: stabilize gateway mock + lint 2026-01-10 03:14:13 +00:00
Peter Steinberger
25ed17cc68 feat: improve tui status output 2026-01-10 04:07:15 +01:00
Peter Steinberger
896b5de93c test(gateway): add offline tool-calling regression 2026-01-10 03:06:02 +00:00
Peter Steinberger
609f8e0900 fix(tools): harden schemas and oauth tool names 2026-01-10 03:05:56 +00:00
Peter Steinberger
234a828ec1 fix: relax fetch typing for Bun 2026-01-10 04:01:06 +01:00
Peter Steinberger
ddd346604d fix: restore Anthropic OAuth tool dispatch 2026-01-10 04:01:00 +01:00
Peter Steinberger
d4c5aafdc1 feat: improve tui status line 2026-01-10 03:53:32 +01:00
Peter Steinberger
37a7dabdeb test(telegram): relax media group timeouts on Windows 2026-01-10 02:32:03 +00:00
Peter Steinberger
2b2039112d test(live): probe Read tool via gateway 2026-01-10 02:25:24 +00:00
Peter Steinberger
b8090afda0 fix(auto-reply): default audioAsVoice to false 2026-01-10 02:25:19 +00:00
Peter Steinberger
e09e44266a fix(msteams): download image attachments reliably 2026-01-10 02:25:14 +00:00
Peter Steinberger
d25b4de7d4 style: fix biome formatting 2026-01-10 02:11:43 +00:00
Peter Steinberger
6c6f38ebb0 feat: show effective config in /debug 2026-01-10 03:10:14 +01:00
Peter Steinberger
dcc6dc4792 docs: add /config get alias 2026-01-10 03:10:14 +01:00
Peter Steinberger
4f56ed368e feat: auto-start sandbox browser 2026-01-10 02:06:21 +00:00