@mindstudio-ai/remy 0.1.195 → 0.1.197

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -323,6 +323,14 @@ Clear conversation history and delete the session file.
323
323
  {"action": "clear", "requestId": "r4"}
324
324
  ```
325
325
 
326
+ #### `changeModels`
327
+
328
+ Change per-agent model picks **without** clearing history. `models` is a sparse map keyed by agent identifier (`parent`, `visualDesignExpert`, …); omit it (or send `{}`) to reset every agent to server defaults. Takes effect on the next turn. Rejected with `completed(success:false, error:"cannot change models while a turn is running")` if a turn is in flight — cancel first, then retry. Responds with `models_changed`. To start a fresh conversation on a different model, send `clear` then `changeModels`.
329
+
330
+ ```json
331
+ {"action": "changeModels", "requestId": "r5", "models": {"parent": "gemini-3.1-pro"}}
332
+ ```
333
+
326
334
  ### Output Events (stdout)
327
335
 
328
336
  Events are emitted as newline-delimited JSON. Command responses include `requestId`; system events do not.
@@ -351,6 +359,7 @@ All command responses include the `requestId` from the originating command.
351
359
  | `error` | `error` | Error message (may precede `completed`) |
352
360
  | `history` | `messages` | Response to `get_history` |
353
361
  | `session_cleared` | | Response to `clear` |
362
+ | `models_changed` | `models?`, `modelSurfaces`, `allowedModelsByType` | Response to `changeModels` |
354
363
  | `completed` | `success`, `error?` | Terminal event — exactly one per command |
355
364
 
356
365
  #### Example Session
@@ -1,7 +1,12 @@
1
1
  You are summarizing a conversation between a user and an AI coding agent called Remy that builds MindStudio apps. Your summary will replace the conversation history — the agent will only see your summary plus any new messages, so it must capture everything needed to continue working.
2
2
 
3
- Summarize what happened during each conversation turn. What did the user request? What actions were taken, what key decisions were made, what was built or changed? Were there errors, was there work not done, were there lessons to be learned (e.g., when fixing bugs or disambiguating user intent)? What was the overall tone of the conversation? Were there specific phrases or ideas the user used when describing things that feel important or informative to preserve?
3
+ Write a tight, factual summary in bullet points. Cover what matters for picking the work back up:
4
+ - What the user is trying to do, and any key decisions, constraints, or preferences they've stated.
5
+ - What's been built or changed so far, and the current state.
6
+ - What's in progress and the next steps.
7
+ - Any errors hit, things tried that didn't work, or lessons learned (e.g. when fixing bugs or disambiguating intent).
8
+ - Specific phrases or ideas the user used that feel important to preserve.
4
9
 
5
- Do not include full file contents, tool call details (just what was called and what happened), or other overly-verbose content. Preserve concrete values (e.g., URLs, hex codes, font names) exactly.
10
+ Be concise capture the state, not the play-by-play. Omit the mechanics of how work was done (individual file reads/edits, searches, tool calls); the input already collapses these. Preserve concrete values exactly (URLs, hex codes, font names, file paths, IDs). Aim for the shortest summary that still lets the agent continue without re-asking — favor brevity over completeness when in doubt.
6
11
 
7
- Write in concise, factual prose. Use bullet points. Be thorough and comprehensive. Reply only with the summarized conversation and absolutely no other text.
12
+ Reply only with the summary and absolutely no other text.
@@ -1,7 +1,13 @@
1
- You are summarizing a conversation between a develoepr and one of its specialists. Your summary will replace the conversation history for this specialist it will only see your summary plus any new messages, so it must capture everything needed to continue its work.
1
+ You are a specialist summarizing your own working thread so far. Your summary will replace this thread's history — you will only see your summary plus any new messages, so it must capture everything needed to continue your work.
2
2
 
3
- Summarize what happened during each conversation turn. What did the developer request? What actions were taken, what key decisions were made, what was built or changed? Were there errors, was there work not done, were there lessons to be learned?
3
+ Write a tight, factual summary in bullet points. Cover what matters for picking the work back up:
4
+ - What you were asked to do, and any key decisions or constraints.
5
+ - What you produced or changed so far, and the current state.
6
+ - What's in progress and the next steps.
7
+ - Any errors hit, things tried that didn't work, or lessons learned.
4
8
 
5
- Do not include full file contents, tool call details (just what was called and what happened), or other overly-verbose content. Preserve concrete values (e.g., URLs, hex codes, font names) exactly.
9
+ Be concise capture the state, not the play-by-play. Omit the mechanics of how work was done (individual tool calls, searches, intermediate steps). Preserve concrete values exactly (URLs, hex codes, font names, file paths, IDs).
6
10
 
7
- Write in concise, factual prose. Use bullet points. Be thorough and comprehensive. Reply only with the summarized conversation and absolutely no other text.
11
+ If a prior summary already appears in the history, fold it in by restating its essentials briefly do NOT copy it forward verbatim or let the summary grow each time. Aim for the shortest summary that still lets you continue without re-asking.
12
+
13
+ Reply only with the summary and absolutely no other text.
@@ -131,12 +131,11 @@ declare class HeadlessSession {
131
131
  */
132
132
  private kickDrain;
133
133
  private handleClear;
134
- /** Archive the current session and seed a fresh one with the given
135
- * per-agent model overrides. Models are immutable for the life of a
136
- * session this is the only way to change them. Omitting `models`
137
- * (or sending an empty object) resets to "use server defaults for
138
- * every agent". */
139
- private handleNewSession;
134
+ /** Change per-agent model picks without clearing history. Takes effect on
135
+ * the next turn the model is resolved live, per LLM call, from
136
+ * `state.models`. Omitting `models` (or sending an empty object) resets
137
+ * every agent to "use server defaults". */
138
+ private handleChangeModels;
140
139
  /** Cancel the running turn and drain the queue. Returns the drained items. */
141
140
  private handleCancel;
142
141
  private handleStdinLine;