Commit graph

3061 commits

Author SHA1 Message Date
waldner
b4f9986d23
fix(coding-agent): detect GNU screen TERM values and downgrade to 256color (#1809)
GNU screen does not support truecolor escape sequences. When pi emits
truecolor SGR sequences (e.g. \x1b[38;2;102;102;102m for the dim color
#666666), screen misparses the semicolon-separated parameters as
individual SGR codes. The RGB value 102;102;102 maps directly to
SGR 102 (bright green background), which then bleeds into every
subsequent \x1b[2K line-erase, producing a bright green background
on most info/status messages.

detectColorMode() now returns '256color' for any TERM value that is
'screen', starts with 'screen-' (e.g. screen-256color), or starts
with 'screen.' (e.g. screen.xterm-256color). The existing COLORTERM
check at the top of the function already handles the opt-in case for
users who have configured screen's truecolor passthrough.
2026-03-04 17:50:39 +01:00
xu0o0
d4b473e298
fix(ai): respect region from profile config when AWS_PROFILE is set (#1800) 2026-03-04 08:56:06 +01:00
Sviatoslav Abakumov
5c61d6bc92
fix(coding-agent): queue messages during branch summarization (#1803)
Messages submitted while a branch summary was being generated were
processed immediately instead of being queued. This happened because
isCompacting only checked compaction abort controllers, not the branch
summary abort controller.

Include _branchSummaryAbortController in the isCompacting getter so all
existing guards (message queueing, reload blocking) also apply during
branch summarization.
2026-03-04 08:55:30 +01:00
github-actions[bot]
d515cbd0b8 chore: approve contributor mcollina 2026-03-04 07:54:41 +00:00
Matteo Collina
d35935200f
fix(coding-agent): avoid compaction reasoning for non-reasoning models (#1793) 2026-03-04 08:53:33 +01:00
Zhou Rui
85d06052fb
fix(tui): stabilize regional indicator width to prevent streaming render drift (#1783) 2026-03-03 21:59:56 +01:00
Zhou Rui
d4084a7ad6
fix(coding-agent): propagate focus in extension editor for cursor positioning (#1784) 2026-03-03 21:58:45 +01:00
David Chen
9a4fe52654
fix(mom): re-apply msg_too_long truncation logic lost in refactoring (#1776)
The truncation logic and error handling added in e1d3c2b7 (Dec 4, 2025)
was lost when message handling was refactored from slack.ts to main.ts.

Changes:
- Add try/catch to all Slack message functions (respond, replaceMessage,
  respondInThread, setTyping, setWorking)
- Truncate main messages at 35K chars (Slack limit 40K)
- Truncate thread messages at 20K chars
- Add helpful user-facing notes when truncation occurs
- Log Slack API errors as warnings instead of crashing

Fixes: msg_too_long API errors causing process crash

Co-authored-by: mom bot <mom-bot@living-bio.iam.gserviceaccount.com>
2026-03-03 17:45:06 +01:00
Daniel Nouri
bc4e4691d4
fix: regenerate lockfile for missing strip-ansi@7 resolution (#1780)
Commit c04708a7 added strip-ansi@^7.1.0 to coding-agent/package.json
but did not update the lockfile. npm ci fails in CI because
strip-ansi@7.2.0 and ansi-regex@6.2.2 are missing from the lock.
2026-03-03 17:44:48 +01:00
Mario Zechner
6b4b920425 fix(coding-agent): stop overflow auto-compaction cascades
fixes #1319
2026-03-03 17:19:42 +01:00
Mario Zechner
7b96041068 fix(ai): map groq qwen3 reasoning effort values closes #1745 2026-03-03 16:44:42 +01:00
Mario Zechner
42579dd923 feat(ai,coding-agent): add OpenCode Go provider support closes #1757 2026-03-03 16:02:29 +01:00
Mario Zechner
1912f0336b fix(coding-agent): allow model-level baseUrl override in models.json closes #1777 2026-03-03 15:46:58 +01:00
Mario Zechner
7bd4c45d81 fix(ai,coding-agent): update antigravity gemini 3.1 models and headers
fixes #1761
2026-03-03 14:54:43 +01:00
Jozsef Lazar
be66fe65bc
fix(coding-agent): strip all control characters from session display text (#1747) 2026-03-03 14:30:45 +01:00
github-actions[bot]
d1cc787dc9 chore: approve contributor lucemia 2026-03-03 13:30:07 +00:00
Mario Zechner
76a191c264 fix(scripts): make npm scripts cross-platform with shx (closes #1771) 2026-03-03 14:26:01 +01:00
Aarni Koskela
993d916e56
perf(coding-agent): cache ModelsConfig validator (#1772) 2026-03-03 14:24:02 +01:00
Scott
6f4bd814b8
fix(coding-agent): allow provider-scoped custom model ids (#1759) 2026-03-03 14:20:49 +01:00
Vaclav Synacek
693187a3fb
Make koffi optional dependency for cross-platform support (#1603)
Koffi is only used on Windows for VT input support and fails to build
on Termux/Android and Linux systems without build tools. Moving it to
optionalDependencies allows installation to succeed on all platforms
while maintaining Windows functionality.
2026-03-03 09:21:47 +01:00
Graadient
c04708a71e
fix(coding-agent): add missing strip-ansi dependency (#1738)
strip-ansi is imported in bash-executor.ts and two interactive mode
components but is not declared in package.json dependencies. This
causes ERR_MODULE_NOT_FOUND at runtime in strict package managers
like pnpm that do not hoist undeclared dependencies.

Co-authored-by: Graadient <graadient@users.noreply.github.com>
2026-03-03 09:16:20 +01:00
Mario Zechner
c65de34e11 Add [Unreleased] section for next cycle 2026-03-02 23:25:10 +01:00
Mario Zechner
9a53d950c4 Release v0.55.4 2026-03-02 23:24:27 +01:00
Mario Zechner
8903299074 fix(coding-agent): close retry wait race across queued events (from #1726) 2026-03-02 23:20:16 +01:00
Mario Zechner
2e7ec46176 docs(coding-agent): add unreleased new features section 2026-03-02 23:08:08 +01:00
Mario Zechner
5ec0540bf4
Update README.md 2026-03-02 23:00:29 +01:00
Mario Zechner
a2b52f5cee
OSS vacation off 2026-03-02 23:00:15 +01:00
Mario Zechner
8e06afbf34 chore(coding-agent): add changelog entry for PR #1719\n\ncloses #1719 2026-03-02 22:59:32 +01:00
Mario Zechner
7b7b967aef merge: PR #1719 for local testing 2026-03-02 22:54:58 +01:00
Mario Zechner
8032a302e9 docs(coding-agent): fix changelog attribution format 2026-03-02 22:52:55 +01:00
Mario Zechner
e18c74dda0 docs(coding-agent): reference #1237 in changelog attribution 2026-03-02 22:51:36 +01:00
Mario Zechner
8344f3da49 docs(coding-agent): add changelog attribution for #1720 2026-03-02 22:51:00 +01:00
Mario Zechner
8d4a49487a fix(coding-agent): add tool promptGuidelines support fixes #1720 2026-03-02 22:50:08 +01:00
Mario Zechner
bc2fa8d6d0 fix(coding-agent): support dynamic tool registration and tool prompt snippets closes #1720 2026-03-02 22:32:07 +01:00
Mario Zechner
ca5510158d Restore approved contributors 2026-03-02 20:50:49 +01:00
Mario Zechner
dfc779faab fix(coding-agent): serialize session event handling to preserve message order (fixes #1717) 2026-03-02 20:48:22 +01:00
Mario Zechner
062f7ff52d docs(mom): add changelog entry for settings manager fix
closes #1444
2026-03-02 19:43:35 +01:00
Mario Zechner
105e296b69 chore(ai): update generated models data 2026-03-02 19:41:38 +01:00
Mario Zechner
46bfa7931e refactor(mom): use SettingsManager with workspace storage
fixes #1444
2026-03-02 19:41:38 +01:00
github-actions[bot]
0c23a3415e chore: approve contributor alasano 2026-03-02 18:27:03 +00:00
Aljosa Asanovic
b97310474b
fix(coding-agent): remove extra spacer before streaming tool blocks 2026-03-02 10:22:51 -05:00
Aljosa Asanovic
480d6bc62d
fix(coding-agent): allow suppressing custom tool transcript blocks 2026-03-02 10:22:41 -05:00
Mario Zechner
95276df060 Add [Unreleased] section for next cycle 2026-02-27 22:54:44 +01:00
Mario Zechner
9d68043cbc Release v0.55.3 2026-02-27 22:54:03 +01:00
Mario Zechner
af85b715db chore(coding-agent): add changelog entry for windows image paste keybinding closes #1682 2026-02-27 22:51:51 +01:00
Duncan Ogilvie
cec8c7888b
fix(coding-agent): use alt+v for image pasting on Windows (#1682) 2026-02-27 22:51:16 +01:00
Mario Zechner
edca5dd769 Add [Unreleased] section for next cycle 2026-02-27 22:26:46 +01:00
Mario Zechner
10180037d2 Release v0.55.2 2026-02-27 22:26:00 +01:00
Mario Zechner
15e0a74a3c docs: audit and add missing changelog entries for v0.55.1..HEAD 2026-02-27 22:25:03 +01:00
Mario Zechner
2f64df1e52 fix(coding-agent): prevent duplicate session headers when forking from pre-assistant entry
createBranchedSession() wrote the file and set flushed=true even when the
branched path had no assistant message. The next _persist() call saw no
assistant, reset flushed=false, and the subsequent flush appended all
in-memory entries to the already-populated file, duplicating the header
and entries.

Fix: defer file creation when the branched path has no assistant message,
matching the newSession() contract. _persist() creates the file on the
first assistant response.

closes #1672
2026-02-27 22:18:26 +01:00