Skip to content

Releases: agenticmail/enterprise

v0.5.614 — Persistent typing indicator (Telegram/WhatsApp)

25 May 19:52

Choose a tag to compare

Telegram/WhatsApp "typing…" now stays visible for the whole agent turn (was a one-shot ping that expired after ~5s). Self-refreshing every 4s, stops on turn completion / error / 15-min cap. Matches the open-source bridge behavior. npm: @agenticmail/enterprise@0.5.614.

v0.5.613 — Permanent per-agent workspace (never /tmp)

25 May 19:01

Choose a tag to compare

Agents now always work from a PERMANENT, neat, cross-platform workspace

Agents were saving files (e.g. email templates) to /tmp/agents/<id>/media, which the OS wipes on reboot — work silently lost. Fixed.

  • New canonical workspace helper: ~/.agenticmail/workspaces/<agentId>/ (override via AGENTICMAIL_WORKSPACE_DIR), built with os.homedir() + path.join() so it works on mac, linux, and windows.
  • Neat layout created on init: media/ files/ templates/ exports/ projects/ data/ tmp/ (+ WORKSPACE.md).
  • Removed every /tmp/agents / os.tmpdir fallback (WhatsApp/Telegram media, messaging-poller, calendar state, WhatsApp auth creds — now per-agent).
  • createAllTools provisions the workspace from agentId so no path can land in /tmp; path-sandbox allowed dirs are cross-platform now.
  • On creation the workspace is provisioned, its location saved to the agent's memory, and documented in the system prompt + AGENTS.md.

npm: @agenticmail/enterprise@0.5.613.

v0.5.612 — Compaction fixes + notifications + 1M+ models

25 May 17:40

Choose a tag to compare

Context compaction — agents no longer "wake up dumb"

  • Summarizer now receives the transcript in chronological order (was importance-sorted, scrambling cause→effect — the biggest regression).
  • Adaptive summary size [6000, 16000] tokens (was a fixed 4096).
  • Imperative ## Next Steps + stronger resume wrapper so the agent continues immediately.

Compaction is now visible

  • compaction_start / compaction_end stream events + context_compaction activity event for the dashboard.
  • Throttled Telegram heads-up to trusted/manager chats on compaction start; manager email opt-in via compactionNotify.email.

Model catalog refreshed (1M+ context)

  • GPT-5 family (1M), Gemini 3 Pro (2M) / 3 Flash (1M), Grok 4.1 / 4.1 Fast (2M); newest flagships listed first.

Packaging

  • .npmignore excludes logs/, *.log, test-*.mjs (0.5.611 shipped the working logs/ dir; deprecated). 0.5.612 is clean.

Published to npm as @agenticmail/enterprise@0.5.612.

v0.5.601 — Windows bash tool + media-message crash + deps spam fixes

24 May 03:27

Choose a tag to compare

Windows reliability fixes

Agent bash tool ran nothing on Windows

bash and the code-sandbox hardcoded shell: '/bin/bash'. On Windows there is no /bin/bash — Node resolved it to C:\bin\bash (nonexistent), so every command failed ENOENT → exit-code 1 → empty output. Agents appeared unable to run any shell command.

  • New shared shell-resolver.ts: POSIX honours $SHELL then /bin/bash; Windows locates git-for-windows bash (usr\bin\bash.exe preferred for full MSYS env + coreutils → bin\bash.exebash on PATH). Override with AGENTICMAIL_BASH_PATH.
  • /tmp alignment: git-bash's usertemp /tmp (→ %TEMP%) diverged from Node's drive-relative /tmp (C:\tmp), so files written by the write tool were invisible to a later bash read. The resolver sets TMP/TEMP for the subprocess so both agree.

[chat] Cannot read properties of undefined (reading 'slice')

Caption-less media messages (photo/voice-note) arrived with messageText undefined; .slice() threw and killed the chat turn. Normalized to '' at handler entry.

[deps] startup spam

Windows install picked one package manager and failed if it lacked the package (VB-CABLE/nircmd are choco/scoop-only), re-attempting every restart.

  • Now tries winget → choco → scoop until one carries the tool.
  • Audio/OCR/voice tools marked optional — quiet one-liner on failure, not a warning.
  • Skip-cache (~/.agenticmail/deps-state.json) avoids re-attempting doomed installs for 14 days.
  • Removed bogus sox.sox winget id.

Upgrade

npm install -g @agenticmail/enterprise@latest
pm2 restart all --update-env

v0.5.599 — agent picks the right email to reply to

18 May 19:21

Choose a tag to compare

Fixed: an IMAP-configured agent receiving an inbound email dispatch was hardcoded to use gmail_reply (Gmail OAuth tool) with messageId — but IMAP agents have email_reply which takes a UID. With no concrete UID in the prompt, the agent searched her inbox and replied to an unrelated message (e.g. a Google Security alert) instead of the triggering email. Now: poller dispatches the IMAP UID, prompt routes to the right tool with the right arg per provider. Upgrade: npm i -g @agenticmail/enterprise@LATEST && pm2 restart enterprise.

v0.5.598 — fetchOne uses correct 3-arg signature

18 May 19:03

Choose a tag to compare

Final piece of the imapflow UID puzzle: fetchOne wants the UID as first arg and { uid: true } as the THIRD arg, NOT { uid: range } as the first arg like fetch() iterator does. email_reply / email_read / email_forward were all throwing 'Command failed'. Now fixed. Upgrade: npm i -g @agenticmail/enterprise@LATEST && pm2 restart enterprise.

v0.5.597 — email_read uses source: true

18 May 18:54

Choose a tag to compare

imapflow 1.3.x rejects source: { maxBytes: N } with 'Command failed'. Switched to source: true. Fixes email_read errors and the retry loops they triggered. Upgrade: npm i -g @agenticmail/enterprise@LATEST && pm2 restart enterprise.

v0.5.596 — email tools fetch by UID; document Sent Mail folder

18 May 18:44

Choose a tag to compare

Fixed the same imapflow UID-vs-sequence bug in five smtp-email tools (emailRead, emailReply, emailForward, emailSearch, emailList). Agents were getting 'Email UID X not found' for valid UIDs above mailbox.exists. Tool descriptions for email_search/read/list now call out '[Gmail]/Sent Mail' so the agent knows where to find its own outbound messages. Upgrade: npm i -g @agenticmail/enterprise@LATEST && pm2 restart enterprise.

v0.5.595 — IMAP body extraction works on imapflow 1.3+

18 May 18:32

Choose a tag to compare

imapflow 1.3.x stores MIME type as a single 'type' field ('text/plain'), not split into type+subtype. My match was looking for the split form, never found text parts, and emails delivered empty bodies to the agent. Now matches both shapes. Single-part fallback added. Upgrade: npm i -g @agenticmail/enterprise@LATEST && pm2 restart enterprise.

v0.5.594 — IMAP fetch by UID (not sequence)

18 May 17:17

Choose a tag to compare

imapflow's fetch() treats a bare string range as sequence numbers, not UIDs, even with uid:true in options. Switched to fetch({uid: ''}, {...}). Upgrade: npm i -g @agenticmail/enterprise@LATEST && pm2 restart enterprise.