[Bug]: Desktop app becomes extremely slow (suspected memory leak) after repeated Excel edits + browser screenshots across concurrent sessions
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 15/100
- Tipo de issue
- Error
- Claridad
- Necesita aclaración
- Estado de actividad
- Activo
- Stack tecnológico
- macos, python
- Área
- desktop-dev, performance
Línea de trabajo
The payload names the bundled xlsx skill's scripts/recalc.py, scripts/office/unpack.py and pack.py, plus the screenshot-to-workbook embedding path, but no heap profile or failing test. Start by reproducing the loop of about ten edit and screenshot rounds in one session and capturing a heap snapshot to see what is retained. Done means the retention point is identified and a fix or follow-up issue is filed.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Product or interface
Desktop app
Version
Desktop app 3.1.6 (build 3.1.6.195)
Platform
macOS
OS version and architecture
macOS 27.0.1, arm64 (Apple Silicon)
Issue area
Agent stuck / slow / repeated loop
Desktop log upload ID (optional)
Not available at the time of filing. Happy to upload a diagnostic bundle / logs if you tell me which ones you need.
Steps to reproduce
- Open the Desktop app and run two sessions in parallel, both working on spreadsheet files at the same time.
- In each session, repeat the following loop roughly 10 times:
- Send a normal instruction that triggers a search (web search / fetch).
- Ask the agent to fill data into an
.xlsxworkbook (Excel edit). - Take a browser screenshot and paste / embed the image into the same workbook.
- Send another instruction, then go back to step 1.
- Tools involved in the loop:
- Excel editing: the bundled
xlsxskill (pandas + openpyxl, plusscripts/recalc.pyandscripts/office/unpack.py/pack.pyfor the workbook ZIP package). - Browser screenshot, including embedding the screenshot image into the workbook.
- ZIP pack / unpack of the workbook package.
- Excel editing: the bundled
Expected and actual behavior
Expected: memory usage per session stays roughly flat over repeated iterations, and each round of the loop completes at a consistent speed.
Actual: after roughly 10 rounds in each session, the whole app becomes extremely slow. Every action (sending a command, running a tool call, editing the workbook) is visibly delayed, and the slowdown does not recover on its own. It feels like a memory leak, but I have not yet captured a heap profile, so I cannot confirm where the retention happens.
Observations so far:
- The degradation is cumulative and roughly proportional to the number of edit + screenshot rounds, not to the size of the workbook or the number of rows written.
- It affects both concurrent sessions at the same time, which makes it look app-wide / process-wide rather than limited to one session.
- No error, crash, or warning is surfaced. The app just gets slower, with no obvious signal about which tool call is responsible.
- Starting fresh sessions (or restarting the app) restores normal speed, which suggests something is retained for the lifetime of the running process / session.
Redacted error summary
No error output. This is a performance / suspected-leak report, so there is no stack trace to share. I can capture a heap snapshot or the diagnostic bundle if that is the right next step — please let me know which artifact you need.
Suspected areas (guesses, not confirmed)
I may be wrong about the component, so please treat this section as hypotheses:
- Excel path — the bundled
xlsxskill. Each edit spawns Python (pandas/openpyxl),scripts/recalc.pylaunches headless LibreOffice (soffice), and the pack/unpack step extracts the workbook package to a temp directory. Possible causes: lingeringsofficechild processes or LibreOffice profile state accumulating across recalcs, extracted temp directories / cached workbook copies never being cleaned up, or the workbook package being held in memory by the runtime. - Screenshot path — screenshots are returned as base64 image payloads inside tool results and are additionally embedded into the workbook as PNGs. Possible causes: screenshot payloads retained in the conversation / tool-result history of each session, or the asset / session-asset store accumulating every screenshot and embedded image without eviction.
- Combination — with two sessions running the same loop concurrently, whichever of the above retains data is multiplied by two.
What would help to triage
- Which diagnostic artifact you want from the Desktop app (Settings → General → Upload logs, or a heap snapshot) and where it should be sent.
- Whether the Desktop app exposes a memory-usage counter, or an action to clear session data / cached assets, that I should try between iterations to confirm the retention point.
- Whether repeated LibreOffice recalculation (
soffice) inside one long-running session is expected to stay cheap, or whether it is known to accumulate.
Before submitting
- I have searched existing issues.
- I have included my version and removed sensitive information.
- Lenguaje dominante
- TypeScript
- Estrellas
- 2.1k
- Forks
- 271
- Merge medio
- 12 h 15 min
- PR fusionados (30 d)
- 41
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de MiniMax-AI/minimax-code
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
MiniMax-AI/minimax-code#507 ·
Los mantenedores suelen responder en 1 día
-
bug needs-triage tui
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
MiniMax-AI/minimax-code#481 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
bug cli documentation needs-triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
MiniMax-AI/minimax-code#299 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 78/100
MiniMax-AI/minimax-code#555 ·
Los mantenedores suelen responder en 1 día
-
desktop
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
MiniMax-AI/minimax-code#554 ·
Los mantenedores suelen responder en 1 día
Todos los issues de MiniMax-AI/minimax-code
Issues similares
-
b:minor bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
software-mansion/argent#1698 ·
Los mantenedores suelen responder en 1 día
-
e2e-failure ready-to-code
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
redhat-developer/rhdh-plugin-export-overlays#4624 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
better-auth/better-auth#12132 · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
automation missing-model model-sync provider:tinfoil
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
anomalyco/models.dev#12053 ·
Los mantenedores suelen responder en 1 día
-
o8 next debug build aborts on Glass to Dark appearance switch (nil identifier messaged before check)Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
hurttlocker/o8#5112 ·