BLUN King
BLUN King 9.1.621
Published on
King only adopts a summary of your conversation if the model has confirmed that the summary is complete. If this confirmation is missing, your existing conversation history remains unchanged.
If the transfer of the summary ends unexpectedly, your existing conversation context is not replaced by the incomplete summary. The change only affects the compaction of the conversation; normal answers remain unchanged.
A few errors when saving a session remain open; they are not fixed with this update.
BLUN King
BLUN King 9.1.620
Published on
On Windows, the console terminates completely when you close the window, so that “already running” no longer appears on the next start.
The update fixes the termination of the console process when the window is closed. A console that is actually still running keeps exclusive access to its session.
BLUN King
BLUN King 9.1.619
Published on
A single earlier error when compacting the conversation no longer locks your session: after a successful compaction, King only counts new, directly consecutive errors.
A single earlier error when compacting the conversation no longer locks your session: after a successful compaction, King only counts new, directly consecutive errors. If the compaction fails twice in a row, the message now clearly shows “Compaction paused” instead of reporting a full context.
A few errors when saving a session and when creating a complete conversation summary remain open; they are not fixed with this update.
BLUN King
BLUN King 9.1.618
Published on
If, after you resume your session, a Telegram message arrives while King is already working, it stays in the queue and is delivered afterwards.
If, after you resume your session, a Telegram message arrives while King is already working, it stays in the queue and is delivered afterwards. King no longer shows this waiting state as an error.
On Linux x64, the terminal uses a bundled binary. As a result, it also works when npm 12 blocks installation scripts; no compiler is needed for this. To achieve this, King uses the pinned pre-release version node-pty 1.2.0-beta.15.
BLUN King
BLUN King 9.1.617
Published on
When the same session is reloaded, King no longer adds unchanged plugin instructions more than once.
When the same session is reloaded, King no longer adds unchanged plugin instructions more than once. If the instructions change, King still takes the current state into account.
Previews of large tool outputs now also take the available context window into account. You can still read offloaded outputs in full.
Use /profile or /profiles to open the profile picker. King switches only when your session is ready. Ongoing work and pending messages prevent a premature switch; in that case, your previous profile stays active.
When you stop ongoing work, King also waits for the final cleanup steps. Work that has not yet finished is not prematurely confirmed as stopped.
BLUN King
BLUN King 9.1.616
Published on
After a confirmed Telegram reply, King picks up further messages addressed to you at the next safe step, even during an ongoing turn.
After a confirmed Telegram reply, King picks up further messages addressed to you at the next safe step, even during an ongoing turn. A reply that has already been delivered no longer holds up the queue. Replies stay assigned to their respective chats.
If you cancel a turn, Telegram messages that have not yet been picked up are kept for the next delivery. King acknowledges them only once the session actually picks them up.
BLUN King
BLUN King 9.1.615
Published on
King keeps large tool catalogs available via tool search and adjusts the tool budget to the provider's context window.
King keeps large tool catalogs available via tool search without sending all optional tool schemas to the model. If the provider reports a smaller context window, King adjusts the tool budget; found tools remain available in the next step.
When needed, King offloads large tool outputs earlier than before. You can still retrieve the full output as before, provided it can be displayed safely.
Normal Telegram replies and edits to messages are no longer held back because of a missing language release. An answer review you have set up remains active.
BLUN King
BLUN King 9.1.614
Published on
Oversized AGENTS.md and AGENTS.override.md files no longer stop a turn just because of their size.
Outside the King console, King reads up to 32 KiB in total from instruction files and tells you once per session how many bytes were omitted.
In the King console, the files remain complete as long as the request limit allows it.
Symlinks and unsafe paths remain blocked.
BLUN King
BLUN King 9.1.613
Published on
King detects oversized model requests before sending them.
In the King console, King reads at most 32 KiB from each AGENTS.md and AGENTS.override.md file. Anything beyond that is omitted, and King shows you how many bytes were omitted.
King now estimates the size of the entire model request before sending, including instructions, history, tool definitions, and image data. As it approaches the server's byte limit, stepwise compaction begins. If a request cannot be split safely, King aborts rather than silently discarding the stored history.
King stores completed tool calls locally as metadata: tool name, time, status, and, for file tools, the path where applicable. Inputs, outputs, commands, and keys are not stored. With /memory tools you can search the entries of your profile.
The context diagnostics show additional figures on request composition. An optional phase measurement records the time up to the model call without logging contents.
The usage display includes thinking tokens reported separately, if the provider supplies them.
Not released, replaced by 9.1.613
BLUN King 9.1.612
Published on
9.1.612 was not released as a customer update. The early byte protection did not apply to a request above 900 KB when the history alone stayed below 600 KB. 9.1.613 replaces this version.
BLUN King
BLUN King 9.1.611
Published on
Large compaction requests stay within the server's byte limit.
- King splits an oversized compaction request into chronological steps based on request size. Compaction can thus continue even when the request contains more bytes than the server accepts at once.
- If even a single message does not fit under the limit, your saved history stays unchanged. King does not discard it to force compaction.
This does not demonstrate a shorter model wait time or reduced token usage. An update does not restart an already running King session.
BLUN King
BLUN King 9.1.610
Published on
You can install King on Linux again and start profiles again, and a second King start on Windows no longer fails with a misleading private-ACL message.
- Linux is back on the list of supported operating systems of the npm package. If you are on Linux with an older version, you install 9.1.610 through the normal updater.
- Explicit --profile starts and existing profile-name shortcuts lead to the selected profile's directory. A bare unknown name no longer creates an empty profile silently; you create a new profile deliberately with --profile.
- If an existing profile lacks its own sign-in, King offers /login instead of stopping at a missing blun/king model configuration.
- On Windows, King can verify private directories even while the Telegram bridge keeps a plugin directory open. TEMP and TMP are passed to the ACL helper, and for directory failures King names the affected path and the actual cause.
- If an interactive King is already running, King detects it before hardening the private ACLs and reports its PID instead of presenting a second start as a private-ACL error.
An empty profile does not inherit sign-in data from the shared home directory in 9.1.610. The current /login prompt can still show "OAuth login expired" even if this profile has never signed in.
The Linux update path from 9.1.114 to 9.1.610 was exercised after publication. The Windows update path from 9.1.609 to 9.1.610 is not measured.
An update does not restart an already running King session.
BLUN King
BLUN King 9.1.609
Published on
Open the effort picker with Ctrl+L without losing your editor draft.
- Ctrl+L opens the existing effort picker without losing your editor draft. It reuses the existing effort settings and model restrictions instead of adding a second configuration path.
- The existing rule for running sessions remains: an effort change during active work is rejected, not queued for later. The shortcut is ignored during replay or editor takeover.
These changes do not demonstrate faster response times in production or reduced billed token usage, and they do not deliver full OpenClaw parity.
BLUN King
BLUN King 9.1.608
Published on
In Telegram groups, King now only receives messages that mention him. Your multiple-choice selections and step-by-step cancellation of questions are preserved.
- In Telegram groups, messages that do not address King only enter the session context after the mention check. Anyone who explicitly disabled the check keeps that behavior.
- Your own multiple-choice selections and step-by-step cancellation of questions are preserved. The goal footer runs on a shared refresh timer.
- The Windows ACL transfer overhead is reduced without weakening permission validation. Recovery from transient failures while replacing the configuration is bounded; writer ownership is retained.
- Before retrying, King checks that a concurrently removed Windows writer marker has actually disappeared. Unreadable existing markers still cause an abort.
These changes do not demonstrate faster response times in production or reduced billed token usage, and they do not deliver full OpenClaw parity.
BLUN King
BLUN King 9.1.607
Published on
Your last selected session comes back, failed writes are reported accurately, and every HTTP attempt receives a start timestamp.
- Optional restoration of the last selected session can be enabled with resume_last_selected in tui.toml. The selection applies to the verified account, runtime, agent, and workspace. Normal startup remains unchanged and explicit session choices take precedence; unavailable selections fall back to a fresh session, not to a different one.
- After a failed activation, the previous selection is retained. No selection is saved under an account that changed during activation.
- Failed file writes are not marked as successful. The existing continuation protocol for complete lines in writes above 2,048 UTF-8 bytes is explained; the limit is not raised and writes are not retried automatically.
- Immediately before each HTTP attempt, a wall-clock start timestamp is recorded for diagnostic correlation. Neither request contents nor credentials are included in the diagnostics.
- Unicode characters outside the Basic Multilingual Plane (for example, emoji) are fully preserved at the existing memory-budget boundaries, without raising those budgets or creating additional storage.
These changes do not demonstrate faster response times in production or reduced billed token usage, and they do not deliver full gateway parity or exclude Telegram messages that do not address King from the context.
BLUN King
BLUN King 9.1.606
Published on
When you resume a session, the current transcript pages appear first; older pages are loaded by the existing transcript navigation.
- When you resume an interactive session, the current transcript pages appear first; older pages are loaded by the existing transcript navigation. The complete stored history and the active model context are preserved.
- A display target of 200 replay records applies at startup. You can set --history-limit from 1 to 2,000 to adjust the display of the first and older pages; complete turns and tool pairs may exceed the target.
- The first display of skill and plugin activations is preserved across page boundaries. The Home scroll position is corrected so that loading older pages no longer leaves a blank screen.
These changes reduce the initial transcript rendering work. They do not demonstrate faster model response times, reduced token usage, or lower bills; they do not improve provider caching or limit how much is read from disk at startup.
BLUN King
BLUN King 9.1.605
Published on
Check context sources, control running tasks, and pass a first message to the console at startup. Local history processing and compaction checks have been extended.
- Local session histories are replayed in batches. Archived display pages can be found without scanning all previous blocks. The complete stored history, the archive integrity checks, and the existing recovery mechanism are retained.
- Repeated tool results are prepared consistently for the model context between logged compactions. Complete local outputs and existing read permissions are preserved. Outputs are not offloaded unless they can be retrieved again through the guaranteed recovery path.
- The final automatic compaction replaces the active context only when it shrinks the history according to the same estimation method. When it is rejected, the original history is retained. The optional trigger max_request_history_bytes uses the existing compaction controls, is disabled by default, and does not bound the entire request body sent to the provider.
- Context diagnostics now provide separate views and source attribution for instructions, memory, skills, and earlier messages. Serialized content bytes, local token estimates, and reported usage remain separate.
- Session ownership is retained across waiting tasks, delayed events, follow-up questions, and configuration changes. A second active writer to the same session is rejected; concurrent changes to the log are not allowed.
- The additional agent/session line in the footer is removed. Individual sessions can still be targeted for control and diagnostics. The existing King interface, the managed models, and the permission boundaries remain unchanged.
- --message passes a first message for the interactive start. After the startup consent prompt and session selection, it goes through the regular message check and queue. Its content is not interpreted as a slash or shell command.
- The interface contract of the bundled guard service remains unchanged. This release does not demonstrate faster responses in production, lower provider bills, full functional parity with OpenClaw, or a bounded amount of history read when the session log is first loaded.
/abort cancels the running task without discarding pending inputs. /stop additionally discards the pending inputs. /exit still closes the console. These are local console commands, not additional remote Telegram commands.
Checks on the 9.1.605 package: 238 test files with 6,900 tests, plus 40 staging checks including 25 native terminal checks. The test of an isolated update from 9.1.604 via the published candidate tag using the real installer succeeded. These checks do not demonstrate shorter warm-up times in a running session or full functional parity with OpenClaw.
BLUN King
BLUN King 9.1.604
Published on
Check request size and context sources, load tools on demand, and control incoming messages within each session.
- /context doctor and /tokens distinguish the byte size of the serialized request from estimated token counts and show the recorded shares of rules, memory, skills, and tool definitions.
- Medium-sized tool catalogs are loaded on demand through the existing search; the tools remain findable and executable.
- /queue controls messages within each session. Regular messages in the queue no longer interrupt work automatically after 30 seconds.
- Session selection accepts exact IDs or titles as well as unique ID prefixes; the footer shows the assigned agent and the session.
- Each HTTP attempt receives a new request ID unless the caller provides one. Diagnostics do not affect billing.
- The bundled versions of AgentSpine and Translate Native remain unchanged. Lower costs and faster responses in production have not been demonstrated.
- /question: reopens pending follow-up questions. Collapsing does not answer or discard a question.
Request bytes, estimated token counts, accumulated session usage, and billed tokens are different quantities. The usage display also accounts for the response check. /usage cost with daily or monthly costs is not part of this release. Lower costs or faster responses in production have not been demonstrated.
BLUN King
BLUN King 9.1.603
Published on
Choose your working folder in a Windows dialog. When the console is started from System32, it now suggests your user folder.
- When you choose a different working folder on Windows, a folder dialog opens. You can still enter the path by hand. If you cancel the dialog, you return to the folder selection without a folder being selected.
- If no folder dialog is available, the console asks for the path. On other operating systems, path entry remains unchanged.
- If the folder inherited at startup, or the saved folder, is inside the Windows directory, the folder selection suggests your user folder. Manually entered paths are still checked as before.
The versions of AgentSpine and Language Guard remain unchanged from 9.1.602. This update does not demonstrate a speed improvement for running sessions.
Git Bash is still required on Windows. If the console reports that Git Bash is missing, install Git for Windows. Then open the command prompt again before restarting king.
BLUN King · Published
BLUN King 9.1.602
Published on
A dedicated private folder for older tool outputs when inherited Windows permissions prevent offloading.
- Eligible older tool outputs are stored in a dedicated private folder when inherited Windows permissions prevent offloading. Existing files, permissions, and the complete session history remain unchanged.
- Integrity checks, read permissions, and the fallback to the full context are retained if an archived output cannot be restored. AgentSpine 0.73.0 and Language Guard 6.20.0 remain unchanged from 9.1.601.
Shorter response times in production or lower billed token usage have not yet been demonstrated.
BLUN King · Published
BLUN King 9.1.601
Published on
Inputs remain in the queue, older tool outputs receive verified references, and throttled response checks are retried a limited number of times.
- When background work gets its turn first, terminal inputs remain in the queue in their original order. Each input is displayed only once.
- Eligible older tool outputs are replaced in model requests by verified references to private files. The complete history and the results of the current conversation step are retained. If reloading is not possible, not allowed, or the content has been changed, the complete output is sent instead.
- A throttled native response check is retried once with the same response draft. The provider's stored waiting period applies. Tool calls that have already completed are not repeated, and unchecked texts are not released.
- Up to 2,048 output tokens are reserved as a buffer for inaccuracies in the input estimate. The context window is not reduced; smaller explicitly set output limits remain unchanged.
These changes do not demonstrate lower billed token usage or shorter response times in production. They also do not fix every server-side HTTP 502 error.
BLUN King · Published
BLUN King 9.1.600
Published on
Response checking with fixed time limits and pinned component versions.
BLUN King 9.1.600 is published. npm and the public update manifest match. Publication does not mean that it has been installed on your machine or has passed acceptance testing in production.
Bounded response checking
- General checkers keep the previous 30-second limit. From the start signal of the trusted host component, the native language check gets up to 90 seconds to produce its first substantive text, once per outer check attempt.
- Substantive text within the allowed output length, as well as the ordered transitions to release and to receipt verification, each reset the waiting period to 30 seconds.
- Independently of this, each outer check attempt has an overall limit of 120 seconds. Progress cannot extend this limit. The maximum of two outer check attempts still applies.
- Before a release is accepted, the time actually elapsed is checked again. Even with delayed timer calls, an expired review attempt stays locked; late progress cannot renew an expired deadline.
Abort signals are still respected. The binding to the exact response text, the validity period of the release receipt, and the authorization continue to be checked.
Bundled components
Version 9.1.600 contains AgentSpine 0.73.0 and Translate Native 6.155.0. The guard protocol remains unchanged at 6.20.0.
Known limitations
The new time limits do not demonstrate a general fix for HTTP 502 errors in production. The open observations from 9.1.599 remain open until they are verified separately in production.
Context and help
A prompt that must be fully retained is no longer silently truncated just to fit a smaller hard model window. With a new, explicitly defined split of the user messages to retain using the default budget of 20,000 tokens, the adjustment can be completed within the same compaction. For later or restored prefixes, this must not cause any further requirements to be discarded. The request must still fit the hard model window.
Help-only invocations with --help or -h no longer create a runtime diagnostic state. When prompt and help arguments are combined, the previous runtime behavior is retained.
BLUN King · September 18, 2026
BLUN King 9.1.599
Published on
Traceable individual approvals for personal memory and additional corrections for context overruns.
Approval requests for personal memory show understandable action titles in the selected language and complete previews of the actual setting changes or of the text to be saved. Control characters are visibly masked; the original content remains unchanged.
Valid memory changes must be approved individually; invalid input can only be rejected. A session approval does not automatically approve waiting requests that require an individual approval.
The package check covers 37 functional areas with 199 mandatory checks, 158 check runs, and 4,905 distinct passing tests. In addition, the updates from 9.1.597 and the local intermediate build 9.1.598 to 9.1.599 were checked in isolated installations using the unchanged updater and installation path. Both tests detected the version through the public update sources and checked all 918 files of the release archive.
The notes in README.md and CHANGELOG.md of the unchanged 9.1.599 package describe the release candidate as it stood at packaging time. They were not retroactively changed after the local installation. This public page separately tracks the release status and the limitations observed later.
Known limitations in 9.1.599
Repeated HTTP 502 responses were still observed in production, sometimes followed by successful requests. The context corrections are not a general fix for provider or network errors.
The language check can abort a response with missing-language-character-profile or suspected-ascii-substitution. This finding remains open; 9.1.599 contains no proven fix for it.
A response to the sent image was confirmed by the user. An independent review of the image interpretation and the visual acceptance of the input and status lines are still pending. Passing package checks are not a general all-clear for these flows.
Carried over from the local intermediate build 9.1.598
No date
9.1.598 was checked and installed locally but not published as a separate npm update. The following changes are included in 9.1.599:
- On a context rejection, lower bounds for the number of input tokens are distinguished from exact values. For a reported lower bound, the output limit is reduced once; no messages or tools are discarded. Abort signals and the limit on further attempts remain effective. This specifically fixes the error in the output-limit calculation reproduced in 9.1.597.
- The original 150 rotating activity words are included again. No additional model requests are made to display them.
- The trusted AgentSpine input hook now receives a compact media reference with type, SHA-256 checksum, and size instead of the complete media data. The full attachments for the model and the existing protection checks remain. This alone does not yet demonstrate successful image interpretation in production.
New in 9.1.597
Published on
Bounded recovery on explicitly reported context overruns, including when wrapped in a gateway error response.
When a request is rejected before output begins because of a confirmed context overrun, King can make one limited retry with a smaller output limit. Such errors wrapped in a 502 response are also detected. Messages, tools, smaller explicitly chosen output limits, and abort signals are retained. A stream that has already started is not replayed.
This does not fix all provider or network errors. General connection drops and service outages must still be examined using their own error data.
Known limitation in 9.1.597: If the server only reports a lower bound for the number of input tokens, the retry can fail again and trigger unnecessary compactions. This case was reproduced on September 17, 2026, after publication. The additional fix from the local intermediate build 9.1.598 is included in 9.1.599.
The checks covered 36 functional areas with 183 mandatory checks and 4,407 distinct passing tests, plus the real update from 9.1.596 to 9.1.597. This package check does not replace an application test of an already opened customer session.
New in 9.1.596
Published on
Automatic interruptions in favor of waiting Telegram messages are distinguished from real manual aborts. Such a queue interruption is no longer falsely reported as an Escape key press. The waiting period, the protection rules for running tools, and the behavior on a real manual abort are retained.
New in 9.1.595
Published on
Optional tool schemas are loaded on demand through ToolSearch and kept in bounded storage. Large skill catalogs are provided compactly and page by page. Search, later MCP extensions, and normal permission checks are retained.
For short greetings, King can use a limited excerpt of the recent dialogue without deleting stored messages or truncating system instructions. For a subsequent work task, King again takes the retained work history into account. The context accounting remains intact even after a session is resumed. No fixed token usage per greeting is guaranteed.
New in 9.1.594
Published on
- Private Telegram replies remain possible while group messages wait. The assignment of slash commands is retained.
- Long Retry-After waiting periods are honored; when a session is resumed, the remaining pause is restored.
- If the accompanying description is discarded, a tool step that has already completed is still processed. The discarded description is not published, and the check of the final response is not weakened.
- The bounded recovery functions for multi-part writes are available again. This also applies to shell time limits, task control, and session recovery.
- Input, quota lines, activity display, expandable tasks, and tool outputs with source attribution remain visible during streaming and history navigation.
- Complete console regression evidence is required before packaging; the public update metadata is checked for consistency.
Intermediate builds 9.1.590 to 9.1.593
These builds are present in the local release history but were not included in the public npm version listing on September 17, 2026. They are not recommended here as publicly available updates. The work on startup, resumption, permissions, activity display, and visible input is included in the evidence for 9.1.594.
New in 9.1.589
Published on
- Verified sources of AgentSpine and Translate Native as well as verified update manifests are bundled.
- When the agent context is loaded, the active King profile is retained.
- Tools required for response checking remain available. Usage during response generation is recorded even when the check discards the response.
- In the managed channel integration, group messages are routed to an agent only when it is explicitly mentioned.
- The console shows when compaction is in progress and the effective thresholds.
- The work budget for early compaction and the safety reserve at the request limit are retained across updates.
- The startup update dialog, progress display, and notices about scheduled updates consistently use the selected language.
- Technical integration identifiers and licenses are retained; visible runtime error messages are worded neutrally.
- The installation does not restart existing sessions. A running session loads the new code at the next start.
9.1.588: withdrawn
Published on
This build was published on September 11, 2026, and subsequently marked as withdrawn on npm. The registry cites a failed compatibility check of the update manifest. Use the current stable build, not this withdrawn package.
New in 9.1.587
Published on
More stable tool catalogs, earlier automatic compaction, and a targeted retry after aborts caused by overly long thinking-only phases.
When instructions are buffered during a running work turn, the active tool catalog is also retained for the next work step. Required tools remain available. When the existing schema budget is exceeded, retained optional tool definitions are reselected.
Automatic context compaction starts earlier again. After a successful compaction that shrinks the history, King can run it again in the same turn. Lower model limits and the cap on failed attempts remain effective.
After an abort caused by an overly long thinking-only phase, King uses the existing one-time retry with thinking disabled so that the model can respond or call a tool. The following regular steps keep the chosen thinking setting; abort, release checks, and time limits remain effective.
Setting BLUN_STABLE_STEER_TOOLS=0 or BLUN_EARLY_COMPACTION=0 before starting King restores the previous behavior for the corresponding feature. The update does not rewrite existing sessions or configuration files.
New in 9.1.586
Published on
Telegram reception starts again on Windows when the old process ID of the bridge now belongs to a different process. If the process cannot be identified with certainty, King does not intervene; the other process is not terminated.
Context compaction, model settings, conversation history, and the previous Telegram delivery behavior remain unchanged.
New in 9.1.585
Published on
BLUN King · September 8, 2026
Version 9.1.585 checks the structure and the individual hits of managed WebSearch responses even when the optional search status information is missing.
A response without a valid result list is no longer reported as a successful search without results. Each hit must have a title that is neither empty nor made up solely of whitespace, a text excerpt as a string, and an absolute HTTP or HTTPS address without embedded credentials. Invalid hits cause the entire response to be rejected before results or notices about incomplete search results are returned.
Valid responses in the previous format without status information remain supported, as do empty result lists and empty strings as text excerpts. For valid responses, the order, the exact URL strings, optional date and site information, the source attributions in the output, and the handling of incomplete results remain unchanged.
Only the managed search integration is changed. Abort behavior, request authentication, FetchURL, and Telegram remain unchanged. The format check does not prove that a source is correct or current. This version introduces neither a response size limit nor a new time limit.
New in 9.1.584
Published on
Version 9.1.584 forwards the caller's abort signal through WebSearch to the managed HTTP search request, including while the response body is being read.
Searches that have already been aborted do not trigger processing at the provider. If the abort happens while credentials are being resolved, no search request is sent afterwards. Results that arrive after the abort are not returned as a successful search.
The abort checks also cover successful JSON responses, the content of error responses, and notices about incomplete search results. The handling of complete, incomplete, and empty results, the source attributions, and the regular fallback behavior during authentication remain unchanged.
This version introduces no new time limit and does not change the Telegram assignment. Shared OAuth credential renewal processes and transport implementations that ignore abort signals are not forcibly interrupted. Aborting a client request does not prove that the work on the remote server or its billing has ended.
New in 9.1.583
Published on
An abort during page fetching is now propagated up to the HTTP request.
FetchURL passes the caller's abort signal through the tool and both fetch services. A request aborted before it starts is not sent. If the abort happens while credentials are being resolved, the managed HTTP request is not started afterwards.
After a managed fetch is aborted, no local fallback fetch is started. A late result from the fetch service is withheld and not used as a source reference. For ordinary HTTP and network errors, the previous local fallback fetch remains possible.
No new time limit is introduced. A shared credential renewal and synchronous HTML processing are not forcibly interrupted. The size limit from 9.1.582 remains; Telegram routing and model requests remain unchanged.
New in 9.1.582
Published on
The local page fetch now checks the response size while reading and aborts as soon as the limit is exceeded.
The local fetch counts the incoming response bytes before decoding each data block and aborts the data stream as soon as the size limit is exceeded. If the Content-Length header is missing or wrong, the whole response is no longer read first and then rejected.
The default limit remains 10 MiB and applies to the response stream after HTTP decompression. UTF-8 characters split across multiple data blocks are preserved. Transport buffers and the data block that exceeds the limit may already be in memory; this does not imply an exact upper bound for the entire process memory.
The local fetch path is changed, including when it serves as a fallback. The research fixes from 9.1.581 remain included. Telegram routing and the waiting period for the model remain unchanged.
New in 9.1.581
Published on
In the local page fetch, empty HTML excerpts are no longer output as successful sources.
If no page content remains after cleaning and conversion, the document title alone no longer suffices for a successful fetch. Instead, the existing extraction error is returned.
Short genuine content and visible headings are preserved. Plain-text and Markdown responses remain unchanged. The fix concerns the local HTML extraction, not the managed fetch service.
The search corrections from 9.1.580 and the previous Telegram corrections remain included unchanged. This update changes neither the waiting period for the model nor the assignment of incoming messages to their recipients.
New in 9.1.580
Published on
The search archive rejects invalid historical date values for sources.
A new report is not saved when a date value of a source contains an invalid calendar day or a non-parseable time part. Missing date values remain allowed.
When stored research evidence is retrieved, older evidence with invalid date values for sources is skipped and reported with a diagnostic notice. The files are neither rewritten nor deleted. Separate valid evidence remains searchable; valid date values keep their timezone offset and precision.
The sorting of research evidence from 9.1.579 and the previous Telegram corrections are included unchanged. This update changes neither the waiting period for the model nor the assignment of incoming messages to their recipients.
New in 9.1.579
Published on
Stored research evidence is sorted by its actual fetch time when relevance is equal.
Time values with and without milliseconds are compared as UTC points in time, not as text. Relevance still takes precedence; for identical points in time, the previous order is retained.
If the same passage was captured more than once, the result keeps the provenance of the most recent fetch. Evidence that is already stored remains unchanged and is therefore not treated as newly verified.
The Telegram response correction from 9.1.578 is included unchanged, as is the cap on retries when the model only thinks without producing a response or a tool call. This update changes neither the waiting period for the model nor the semantic assignment of incoming messages.
New in 9.1.578
Published on
Bounded retries when the model only thinks and reaches the time limit, plus a targeted correction for short Telegram group responses that relate to a question.
When the model reaches the time limit while only thinking, King allows one further attempt per step. A second such timeout ends the step. The chosen thinking effort and the previous time limit remain unchanged. This cap does not shorten the wait for the first model output.
Short replies in which the agent confirms its presence may now be sent in Telegram groups when reply_to links them to an input from the same chat that is at most 30 minutes old. This input must explicitly address the agent or match a supported German or English question about its presence that starts with its configured name. Unsolicited presence messages and explanations that there is nothing to report continue to be filtered. The automatic fallback delivery in groups remains disabled.
Logs of sent and suppressed responses now contain reply_to. The exception does not apply when context is missing or ambiguous. This update adds no general recipient detection and does not prevent unnecessary model calls caused by the existing semantic addressing.
The correction applies to two exactly identified versions of managed Telegram MCP senders and also takes effect when the plugin configuration is merged at the end. The older sender uses a compatibility copy with tightly bounded changes. Inbound bridges, access settings, profiles, and plugin registries are not rewritten. Unknown or customized senders and explicitly set overrides are retained. King must be restarted after the update for the correction to load.
New in 9.1.577
Published on
No more automatic completion messages in Telegram groups. Useful answers are sent there deliberately through the Telegram reply tool.
The CLI core and the standalone Telegram bridge no longer forward an agent's normal completion text to groups automatically. Notices such as “nothing to report” therefore no longer reach the group through this automatic fallback delivery.
Replies in private chats, explicitly used reply tools, required goal results, command and status messages, and media delivery are retained. The prompt instructions for normal inputs, control messages during a running task, and group messages of the standalone bridge now contain the same delivery rule.
This does not guarantee that a model never sends an unnecessary reply through a tool call. The fix also does not prevent group messages unrelated to the agent in question from reaching the model. Mention rules, access settings, and the resolution of managed plugins remain unchanged; an update to AgentSpine or Language Guard is not included.
The updated core must be loaded by a new process. Running sessions are not restarted automatically. Existing profiles and the session history are retained.
New in 9.1.576
Published on
BLUN King 9.1.576 distinguishes C++ and C# in local research queries and contains the previously published corrections for updates, session resumption, and Telegram.
The search in local research evidence treats standalone C++ and C# as distinct terms, even with different capitalization or surrounding punctuation. Stored passages, hashes, source protection checks, Unicode normalization, collection limits, and output limits remain unchanged. No reindexing is required.
A fixed check run with 20 technical search queries and targeted regression tests for token limits verify this correction. It concerns the local search and is not a statement about the quality or capacity of WebSearch in production. All changes from 9.1.575 remain included.
New in 9.1.575
Published on
The bundled web crawler rejects responses with cf-mitigated: challenge before reading content, following redirects, or treating a missing robots file as permission to continue. Header names are matched case-insensitively; normalized values and duplicate headers are checked as well. The response status is retained in the error report.
Missing robots files without this marker and ordinary documentation pages continue through the existing flow. Pages that have already completed remain available when a later page is rejected; the error is reported as an incomplete result. This protection checks a response marker. It is neither general challenge detection nor a CAPTCHA bypass. Search providers, authentication, update locks, and the CLI core remain unchanged. All changes from 9.1.574 remain included.
New in 9.1.574
Published on
Explicitly requested updates now distinguish between a blocked update, an unavailable lock check, an unavailable private directory, an invalid installed version, and an unavailable protected installer. These cases are no longer reported uniformly as a failed package check. The change applies to German and English messages.
Update approval, lock behavior, return reasons, exit codes, and installer behavior remain unchanged. Running sessions are not terminated automatically. Packages pinned to an old internal channel still require an explicit npm installation while King is stopped; this version does not lift the pin. All changes from 9.1.573 remain included.
New in 9.1.573
Published on
The input field remains visible and focused after goal selection at startup, including after Escape is pressed or a failed goal resumption. Unsent drafts are retained. Instead of the full goal text, a compact prompt appears for continuing with or without a goal.
Ctrl+S leaves the selection without confirming the goal and is processed as a regular shortcut for the queue. Pending inputs while idle are also taken into account. Escape keeps its previous sequence: first clear the queue, then abort the active run on the next Escape. The session history is not deleted automatically.
This version does not reconstruct delivery confirmations that an older process lost before the update. Messages that are genuinely pending remain assigned to their session.
New in 9.1.572
Published on
For research evidence, source URLs are rejected when their query parameters or parameter-shaped fragments contain known parameter names for credentials. Nested names and routes in the fragment are checked as well. The rejection applies to both failed and usable sources.
Reports that are already stored with such URLs are withheld on retrieval with the existing partial / report-invalid result. The originally stored versions are neither modified nor deleted; source addresses are not silently truncated or rewritten. Ordinary query parameters and anchors in documentation URLs remain byte-identical. The protection detects known parameter names, not arbitrary secrets, and does not clean up history.
New in 9.1.571
Published on
Sections of the Telegram queue are assigned to their session. A new session no longer automatically takes over the pending work of an older session. When a known session is resumed, only its own pending sections are restored. While a session is being selected, created, or switched, intake of channel messages is paused. Messages arriving after the chosen boundary, follow-up inputs in the local editor, and late delivery confirmations keep their correct assignment.
Assignments, as well as delivery confirmations that arrive out of order, are retained when a connection is re-established and a lease is handed over. Corrupted or swapped queue state is rejected, so old inputs are not silently replayed. Inbox and session history are retained. Old pending sections without a recognizable session are deferred and not assigned to a new session; their automatic restoration is not included. This does not fix every timeout or blocked context compaction. A downgrade is not a procedure for migrating the queue.
The Telegram plugin and the console's independent fallback for automatic reply delivery suppress recognized acknowledgments of receipt and texts that merely announce the agent will stay silent, even above 200 characters. If a message contains an unrecognized or substantive phrase, it is kept. Short useful group warnings can still be delivered. This is a cautious German-English delivery filter with supplementary instructions, not a guarantee that every model understands every group conversation.
A new process must load the updated package; running sessions are not restarted. Existing pins to internal update channels and Windows installation locks with EBUSY remain separate issues. All other changes from 9.1.570 remain included. This version does not activate hosted web search and does not change AgentSpine, billing, authentication, or customer configuration.
New in 9.1.570
Published on
Each new prompt delivery receives its own hook correlation ID. Hooks of the same delivery keep the same ID; explicitly set IDs are retained. Session-specific environment values reach hook subprocesses and MCP connections including on reconnect, without rewriting stored plugin configurations. The assignment of native tool results is preserved across runs, including for failed tools and duplicate calls.
Canonically equivalent Unicode research queries find the same hits without treating different characters as equal. Stored sources, dates, versions, and project boundaries are retained. king --help and king --version no longer change Windows registry settings for crash dumps.
Web search supports partial responses when this response mode has been negotiated, and shows a notice about failed sources in that case. Empty or incompatible partial responses remain explicit errors. This client change does not activate a hosted search service and does not guarantee its operation.
The transport BLUN_EXPERIMENTAL_AGENT_SPINE_TIMELINE is disabled by default. When explicitly enabled, it passes the actual path of the stored session log and the corresponding protocol to the selected AgentSpine plugin. Each session receives its own access permission, renewed after a resumption. This is transport support, not proof of memory retrieval or authorization by the receiving plugin.
All public changes from 9.1.569 remain included. The bundled AgentSpine implementation remains unchanged; no Mnemo dependency is created. User profiles, permissions, conversations, and plugin settings are neither migrated nor reset.
New in 9.1.569
Published on
This cumulative public version includes mention-based delivery in Telegram groups, fixes for startup and permissions, as well as research collections and crawler tools. Published packages remain unchanged. Later changes appear under a new version number.
New in 9.1.566
Published on
BLUN King 9.1.566 makes plugin updates and the loading of native runtime modules more robust.
The bundled AgentSpine runtime is updated to version 0.59.1. Its autostart routine skips the root of a user profile as a scan target, and all lifecycle hooks remain fail-safe when a protected path cannot be read.
Native .node modules are resolved through a content-addressed cache outside the npm package. Once this version is active, a running console no longer keeps the package copy of these modules open. Later updates can therefore replace the package directory without colliding with these native files.
The public package keeps the complete Spanish, French, Swedish, and Czech interface catalogs from version 9.1.565. Internal Mnemo runtime paths, private endpoints, internal model providers, and build scripts are not included.
The customer package passed the leak scan, the complete runtime check with 13 tests, the AgentSpine MCP initialization, a fresh installation, and the update from 9.1.565. All text files use LF line endings. SHA-256 of the npm package: bed594f1466594ae81dc87964dd01d45b620e905a39cb0a4ccbcc7e27b57fde1.
New in 9.1.565
Published on
BLUN King 9.1.565 stabilizes long work runs and extends the bundled AgentSpine runtime.
The repetition brake resets its count of equivalent results as soon as genuine progress is made in between. Normal inbox and task list checks therefore no longer trigger a false forced response.
The activity display consists of exactly one line. It shows the English status word matching the current activity, hidden thinking tokens, visible tokens, total usage, effort, attempt, budget, and step.
AgentSpine scan errors remain fail-safe for mutation tools, user inputs, and stop hooks: the following flow may continue and the error is recorded in the audit log. Before a fatal abort caused by an exception or an unhandled rejection, the console writes the runtime log synchronously.
The bundled AgentSpine runtime is updated to version 0.54.0 from commit fb6d456b68605fd83721090e503f000a26e8a0fb. This version includes the real ACL fail-open test, durable dependency-bound goal plans, and the bound resolution of knowledge gaps.
The lifecycle hooks SessionStart, UserPromptSubmit, PostToolUse, and Stop are sent to Mnemo with the exact MNEMO_AGENT identity. Network errors remain fail-safe.
The previously missing interface texts are now complete in Spanish, French, Swedish, and Czech.
The complete package gate, the leak scan, the language catalog check, the ACL hook test, the fresh installation, the update from 9.1.564, and the AgentSpine MCP initialization are green. SHA-256 of the npm package: 88ef653b53fab5bf528d7a5124ca7d5995ab6f90d65318134fa88d8cdf61deba.
New in 9.1.564
Published on
BLUN King 9.1.564 prevents crashes caused by protected folders and missing interface texts.
During the preparatory file scan, AgentSpine skips individual files and folders that the operating system locks with EPERM or EACCES. An unexpected scan error no longer blocks the following tool call; the tool call is allowed to proceed and the error is recorded in the audit log.
If a text key is missing in a published interface language, the console uses the English text and logs the gap once instead of crashing in the rendering path. In particular, this keeps the thinking status line usable in Czech, Spanish, French, and Swedish.
The actual translations for the keys that are still missing will follow in a separately verified release. Until then, the English fallback is deliberately visible and fail-safe.
The package was checked against the exact Czech thinking.step crash from 9.1.563. The new version displays “step 6” instead of throwing an exception, warns only once per language and key, tolerates inaccessible sibling folders, initializes AgentSpine 0.49.0, passes a fresh installation as well as the update from 9.1.563, and contains no unresolved plugin imports. SHA-256 of the npm package: 23056703152f668998ea0583bb9797bbbb51f4c2f320917a220908e28430955e.
New in 9.1.563
Published on
BLUN King 9.1.563 updates the bundled AgentSpine runtime to version 0.49.0.
The new version requires at least one fresh, independent piece of evidence from an explicit user confirmation or an objective test before a learning attempt. Conversation or document evidence alone no longer suffices, even if its other thresholds are met.
Learning contracts bind this evidence rule permanently; later configuration changes cannot weaken a running check. Ownership-bound file locks protect parallel learning changes from being overwritten and let manipulated locks or locks owned by others fail closed.
The update replaces the managed plugin tree at the next start in a content-addressed way. Existing installations of version 9.1.562 are updated to AgentSpine 0.49.0, an unchanged tree is reused, and the AgentSpine MCP server confirms version 0.49.0.
The package boundary differs from 9.1.562 only in the version strings and the exactly pinned AgentSpine 0.49.0 runtime. The complete upstream check, 49 targeted learning tests, the package comparison, the leak scan, the fresh installation, the real update path from 9.1.562, and an MCP initialization are green. SHA-256 of the npm package: 9440d94ddb79af1ed996fda43cb66ef50fae3b96a5f79d0dd008f32a5abd04f8.
New in 9.1.562
Published on
BLUN King 9.1.562 restores the AgentSpine runtime file in the public package.
The runtime file required by the bundled AgentSpine MCP server is included again. A fresh installation materializes the plugin completely; the MCP server starts and confirms its name and protocol version.
The package boundary differs from 9.1.561 only in the version metadata and the restored runtime file. The leak scan, the fresh installation, the plugin materialization, and a real MCP initialization are green. SHA-256 of the npm package: a249f9cb39dc8750ddbe23f72077586c9e8500ab9f0bbfdbf55989d19e329e8a.
New in 9.1.561
Published on
BLUN King 9.1.561 brings the verified work-system improvements into the public package.
The current task and fresh tool results remain available. Read results are not truncated. Large results are stored with a reference for retrieval instead of being cleared. Repeated identical results refer to the latest complete result.
Compactions are logged as a transaction with start, summary, and end markers. Tool calls and their results stay together, while durable checkpoints secure the recovery path across retries.
Output budgets now come from the active model profile. The managed BLUN model receives 128,000 output tokens by default when no value is set explicitly. The old fixed limits of 32,768 tokens as well as the low limits for low and off no longer truncate complex work; context capacity remains the safety boundary.
The updater asks before preparing or starting the installer. In the public package, the managed BLUN model remains fixed; /model now serves only as a compatibility alias for /effort.
The package boundary was checked across all file names and readable contents. Internal provider paths, model selection, build and regression scripts, private identifiers, and private server addresses are not included.
The complete package, the leak scan, the fresh installation, version and help output, the default settings of a new profile, and the update decision from 9.1.550 to 9.1.561 are green. SHA-256 of the npm package: fcbff9b2f9a537462653c873150fe36567f6195c5a6facc714a266ce38415dd7.
New in 9.1.527
Published on
BLUN King 9.1.527 adopts the /copy flow from DeepAgents.
The command copies the latest completed, non-empty assistant response through the existing cross-platform clipboard path.
When /copy is entered during a running turn, the command uses the existing command queue and is executed after the response is completed.
Clear status messages cover success, an empty history, and clipboard errors in all six interface languages.
A red-to-green regression test protects command registration, execution, answer selection, the byte-identical clipboard content, and the released interface texts.
The complete prepack and the check of the unpacked artifact are green. SHA-256 of the npm package: 94b13ffc1a45af5eaecd9d19ad658abb1895304c2c663e47d03419c1bb4a7cf2.
New in 9.1.526
Published on
BLUN King 9.1.526 materializes the AgentSpine version bundled with the current package before /reload rebuilds the plugin catalog and the MCP configuration.
Unaffected plugin entries are retained. An unchanged managed AgentSpine tree is reused; installed.json is not rewritten.
A red-to-green regression test against 9.1.525 protects the bootstrap order, the adoption of the managed plugin, and the idempotent behavior on reload.
The complete prepack, the check of the packed artifact, and the isolated updater test from 9.1.525 to 9.1.526 are green. SHA-256 of the npm package: ae0cc4124ebaac74af1124dcbe2cf6d4d4541126525f947c262809c85f73490a.
New in 9.1.525
Published on
BLUN King 9.1.525 starts every local shell command on Windows and POSIX in its own process group. Programs can therefore no longer attach to the controlling console of the BLUN TUI and intercept Escape, Strg+S, or other editor input.
Standard input, standard output, and error output remain in private pipes. Interactive commands receive an end of file and fail or time out instead of competing with the editor for input.
The local shell isolation from DeepAgents was adopted for Windows. An executable regression test covers both platform paths and a real test run with an intercepted process.
New in 9.1.524
No date
BLUN King 9.1.524 keeps the immediate task created by a Telegram /loop command in the protected delivery path for remote commands. It can therefore no longer remain as a second ordinary queue entry.
The resume list shows, for each session, the size of the resume checkpoint, the retained messages and tokens, the size of the session history, and missing, invalid, or outdated checkpoints.
The bundled AgentSpine runtime is updated to the verified official release 0.11.4 with commit 8034487cdd24498076bac48d3f24400bca5e6ae4. The BLUN time budget of 180 seconds for the SessionStart background completion is retained.
Executable regression tests protect the exactly-once delivery of Telegram loops and all states of the resume metrics. The existing local queue behavior for a busy loop remains unchanged.
New in 9.1.523
Published on
BLUN King 9.1.523 lets Escape close an open slash command menu and clear the associated draft in one step instead of leaving the command text behind.
Strg+S passes a slash draft to the existing queueing and processing path even when the interface currently reports idle, instead of silently returning before the queue is cleared.
Normal drafts are retained when Escape merely closes a different autocompletion.
Red-to-green runtime tests protect both shortcuts against the specific faulty behavior of package 9.1.522.
New in 9.1.522
No date
BLUN King 9.1.522 writes permission.approval_requested to the session history immediately when a tool approval opens. An unattended King therefore no longer looks like a silent model or a stuck provider while waiting for the operator.
The existing Telegram approval buttons are used automatically when the allowlist contains exactly one private chat and any number of groups. If there are several possible private recipients, delivery remains blocked unless BLUN_TELEGRAM_APPROVAL_CHAT_ID is set.
A red-to-green regression test protects the immediate visibility in the session history, the unambiguous forwarding to a private chat, the precedence of an explicitly set target, and the rejection of ambiguous recipients in both shipped relay copies.
New in 9.1.521
No date
BLUN King 9.1.521 runs the AgentSpine SessionStart scan outside the interactive startup path. A cold scan of the user directory lasting 123.6 seconds therefore blocks neither the editor nor the first user input.
Successful SessionStart outputs remain automatic: after completion, the background hook continues to transfer its bounded briefing into the session context.
The time budget for cold scans rises to 180 seconds. A red-to-green runtime test proves that startup returns before a slow hook and that the hook can continue running afterwards.
New in 9.1.520
Published on
BLUN King 9.1.520 gives the AgentSpine SessionStart hook enough time on reload to complete a cold full project scan.
The time limit for the AgentSpine start rises from 15 to 60 seconds. All other hook time limits remain unchanged.
A new red-to-green runtime check starts the real AgentSpine hook in a temporary project and checks both its output and the two shipped timeout manifests.
Version 9.1.520 contains AgentSpine 0.10.1. The isolated updater test from 9.1.519 to 9.1.520 and the complete prepack are green. SHA-256 of the npm package: 3fc37502b544ed2d254711dc2a8be544b906eb8515e53f88289b10c91911a8e7.
New in 9.1.519
Published on
BLUN King 9.1.519 stores successful outputs of the SessionStart hook before startup or reload returns. AgentSpine's readiness state therefore reaches the resumed model context automatically and no longer waits for the first user message.
Historical references to offloaded tool results keep a bounded preview from the beginning and the end. Important anchors for resumption are retained, and the complete result no longer has to be included in every model request.
New red-to-green runtime checks protect the SessionStart context handover and the historical previews. The tool catalog for todo maintenance restored with 9.1.518 remains unchanged.
New in 9.1.518
Published on
During proactive task list maintenance, Read, Write, Edit, and Bash remain available alongside TodoList. The normal recovery path for large file changes is therefore no longer interrupted.
The automatic todo maintenance and its bounded evidence prompt are retained; the active model step is not switched to a TodoList-only tool catalog.
A red-to-green regression gate protects against the catalog regression from 9.1.499 and checks the selection of the recovery tools without duplicate schemas.
New in 9.1.517
Published on
Strg+S and Escape remain available even with an open approval prompt. Strg+S sends all waiting messages; Escape first releases one waiting message and rejects the approval only when the queue is empty.
The asynchronous session termination is now fully handled in the keyboard, Telegram /reload, and slash command paths. session.not_found is treated as an already terminated session, so an unhandled rejection no longer crashes the core.
Red-to-green package checks protect the raw Windows control characters and the measured error that occurs when terminating a session that no longer exists.
New in 9.1.516
Published on
If the beginning of an assistant step is missing from the stored history after compaction, the replay reconstructs it from the following content or tool event. king -c therefore no longer aborts with the internal error Received content_part for unknown step_uuid 'undefined'.
A Telegram message leaves the queue exactly once, as soon as the core has durably accepted its active handover. Genuine rejections are retained for another attempt. An unexpectedly terminated Telegram bridge managed by King is restarted by exactly one consolidated watcher.
Only the first TodoList change is accepted per model step. Completed items disappear automatically, pending markers remain visible even in ANSI16 terminals, and a new list starts with exactly one running item. The fixed order is: urgent, direct user message, addressed bot message, bot message, normal message.
The first tool-capable step waits at most 2.5 seconds for the initial MCP catalog; optional servers may continue to start in the background. At program start, only the active profile is checked and installed.
Version 9.1.516 contains AgentSpine 0.10.1. All eight prepack regression gates, node --check, the package metadata check, and a fresh package check are green. The same npm package contains the platform components for Windows, Linux, and macOS. SHA-256 of the npm package: f21bffefb2be44ebf0a9a96d5518c2164188e4c8bd99c669840d1566e48aeb6e.
New in 9.1.515
Published on
A task list that has truthfully remained unchanged is accepted again after a longer stretch of evidenced work. King does not have to invent progress or merely rephrase a title to be allowed to continue its actual work.
Even an idle loop can resume a TodoList that is still open without holding the agent permanently in a maintenance turn that offers only the todo tool. A prepack regression gate protects both error paths.
Version 9.1.515 contains AgentSpine 0.10.1. The targeted todo loop regression check, node --check, the release metadata check, and a fresh package installation are green. The same npm package contains the platform components for Windows, Linux, and macOS. SHA-256 of the npm package: cda0647bd0fe9888ac6e985ecc067e962800bb64ddba9b6b07249c210a769dbf.
New in 9.1.514
Published on
BLUN King 9.1.514 hardens the content-free Telegram delivery journal against manipulated queue envelopes.
Message identifiers are now accepted only as positive decimal numbers. Chat hashes that have already been computed are allowed only as exactly 12-digit lowercase hex values. Invalid, content-like values are discarded instead of being logged.
The existing Telegram processing, the delivery phases, the journal rotation, and the content-free quarantine diagnostics remain unchanged. All 133 package tests and fresh package test runs for Windows x64, Linux x64, macOS ARM64, and macOS x64 are green.
Version 9.1.514 contains AgentSpine 0.10.1 and ReadBatch. SHA-256 of the npm package: 1d30915883441daa407475212f12b8774ccbb50490805aea99fd6967e213a125.
New in 9.1.513
Published on
BLUN King 9.1.513 logs the Telegram delivery path from arrival at the bridge through routing, queueing, and injection to confirmation, recovery, or quarantine.
The bounded journal stores only content-free identifiers, hashes, delivery phases, counters, and sanitized error reasons. Message texts, prompts, paths, usernames, tokens, credentials, and raw error messages are not recorded.
The quarantine diagnostics also no longer duplicate Telegram messages, display texts, provenance, raw chat IDs, or image paths. All 132 package tests and fresh package test runs for Windows x64, Linux x64, macOS ARM64, and macOS x64 are green.
Version 9.1.513 contains AgentSpine 0.10.1 and ReadBatch. SHA-256 of the npm package: 409144f1a87330abd3e763256ed8560e044f8e0eebd152c95ce2492dc36e4dae.
New in 9.1.512
Published on
BLUN King 9.1.512 enforces a changed, evidence-backed update during proactive TodoList maintenance instead of re-accepting the same list indefinitely. The isolated maintenance turn receives at most eight compact entries of tool name and result since the last accepted update.
No prompts, arguments, commands, full paths, tool results, or work history are replayed in the process. A failed TodoList attempt retains this bounded evidence for the next attempt; a successful update removes the entries used. Completed items still disappear automatically, and the normal work tools are available again in the following step.
9.1.512 passes 127 of 127 package tests. Fresh installations select the expected platform components on Windows x64, Linux x64, macOS ARM64, and macOS x64 and contain AgentSpine 0.10.1 as well as ReadBatch. SHA-256 of the npm package: 38192b918d66aa6615f0a1262afcc6a1a4fba5c48354e62bbe8a3bd01d9460dc.
New in 9.1.511
Published on
BLUN King 9.1.511 ships AgentSpine 0.10.1 as a new content-addressed core plugin build. The mandatory preflight continues to check every active host instruction file in a race-safe way and binds its identity to the exact turn, but the full text already loaded by the host is no longer duplicated in the runtime context.
This release adds mandatory pre-response evidence, confirmed must-remember entries, and self-healing synchronization of the authenticated persona and relationship graph. Missing groups, people, and memberships are repaired when the roster is reconciled again; blocked local relationship queries end visibly after 5 seconds.
The bounded Telegram-Mnemo query is retained: earlier messages are loaded only when specifically needed and are narrowly scoped to agent, person, group, topic, thread, and time. A complete Telegram history does not routinely enter the prompt.
9.1.511 passes 126 of 126 package tests. The real 15,519-byte CLAUDE.md was fully checked, while the entire injected context comprised 5,667 bytes and contained no full instruction text. Fresh installations select the expected platform components on Windows x64, Linux x64, macOS ARM64, and macOS x64 and contain AgentSpine 0.10.1 as well as ReadBatch. SHA-256 of the npm package: e519e786ade515e4292492740e5c6a62f78c231465c431eebc06b43040425d40.
New in 9.1.510
Published on
BLUN King 9.1.510 adds the ReadBatch tool. It reads two to twelve independent, already known UTF-8 files or file ranges in one model step and keeps the order of the requests. Each path passes the same access, rule, and permission checks as a single Read call. Partial successes remain visible; only a completely failed batch counts as an overall failure.
9.1.510 passes 125 of 125 package tests. Fresh installations select the expected platform components on Windows x64, Linux x64, macOS ARM64, and macOS x64 and contain ReadBatch. AgentSpine deliberately remained at 0.8.0 until the independently found context-budget blocker of the newer prerelease was fixed without enlarging the runtime prompt. SHA-256 of the npm package: 1f38522f0a132c92860d4dbfc991e4f80683614f8c9de87ccba24b591b273b1d.
New in 9.1.509
Published on
BLUN King 9.1.509 requires an explicit mention of the intended King in every released Telegram work message between bots. Bot messages without a matching mention remain visible but are not buffered, queued, delivered, or later brought into this King's model context. A priority bot message for one King can therefore no longer become another King's task.
All 121 package tests pass. The same package contains the verified platform components for Windows x64, Linux x64, macOS ARM64, and macOS x64. SHA-256: 071e14065bd7e327abda95a4310f473171f6df3c1ad0f1712c9add666f6da7cc.
New in 9.1.508
Published on
Open todo items have a visible checkbox again. Even the first ordinary task list starts with exactly one running item; later steps remain pending until their actual start is evidenced.
Accepted Telegram direct and group messages are handed to Mnemo asynchronously, durably buffered, and exactly deduplicated. A temporarily unreachable hub blocks neither the Telegram delivery nor the King run. /loop commands and internal loop ticks are deliberately not stored.
AgentSpine does not load a complete Telegram history into the runtime context. When a task needs an earlier message, a bounded Mnemo query is run, filtered by agent, person, group, topic, thread, and time range.
All 120 package tests pass. On Windows, Linux x64, macOS ARM64, and macOS x64, fresh installations each select the correct native clipboard component and contain the managed Telegram-Mnemo connection as well as AgentSpine. SHA-256: 34bf9cb52d6a469fa1603f95ce9df17c77ae6ff2e675d91f0442246c0d83b69b.
New in 9.1.507
Published on
BLUN King 9.1.507 explicitly instructs the model in the Read tool to bundle independent file and range reads into one model response when multiple inputs could be useful.
This reduces avoidable model round trips in large work contexts without changing Read's execution, page navigation, permissions, or result handling.
A targeted regression test protects the change; all 112 package tests pass.
New in 9.1.506
Published on
Completed TodoList items are removed immediately from the visible TUI. The persistent task list was already discarding these entries correctly; the interface now shows the same cleaned-up state, while running and pending work is fully retained.
The automatic maintenance turn uses a standalone system prompt of 546 characters. Previously, the complete work prompt of about 19,000 characters was attached to it, even though the todo tool was the only tool available. The following work step still receives the complete prompt and its normal tool catalog.
A real run showed a separate todo maintenance turn with 15,221 input tokens for every eighth work step. The static maintenance prompt shrinks by 18,470 characters; the actual runtime savings will be measured again after the fleet update. The published tarball passes 111 of 111 tests. Fresh package installations on Windows with Node 24.19.0 and Linux with Node 24.18.0 confirm version 9.1.506; the macOS binaries for ARM64 and x64 are included in the same npm package. SHA-256: 9e01bf05824eedf03de7665a1f0bc294ad4ba1d9f1ed8bf5ca43aab5fa706364.
New in 9.1.505
Published on
A Telegram message that arrives after the channel takeover but before the queue activation is completed is no longer skipped as old backlog. Without a valid checkpoint, processing starts at the byte boundary measured when the takeover started instead of at the later end of the file.
A valid durable checkpoint still takes precedence. If the queue file is replaced during the handover, the new file safely starts at byte zero; historical messages that were already present before the takeover are still not replayed.
Group message 63456 arrived 1 second after the channel takeover, the checkpoint jumped to exactly its end, and the message appeared in no model history. This real loss path is protected by a regression test. The published tarball passes 111 of 111 tests; fresh package installations on Windows with Node 24.19.0 and Linux with Node 24.18.0, as well as a real update from 9.1.504, confirm version 9.1.505. SHA-256: fd1c4be83316195d8cc9962aa3ff69c3fdf4838b25a99aca59cae3f445275241.
New in 9.1.504
Published on
A Telegram message that is already waiting in the queue while no agent run is active is now started as a fresh model turn through the normal channel path. It no longer waits for an active run, which by definition cannot arise while idle.
The existing handover into a running turn remains unchanged. The isolated todo maintenance, the automatic removal of completed items, and the subsequent restoration of the normal file, search, and shell tools remain protected as well.
The published tarball passes 106 of 106 tests. The new idle regression test was red before the change and is now green, together with 24 queue tests. Fresh package installations on Windows with Node 24.19.0 and Linux with Node 24.18.0 confirm version 9.1.504 and the same SHA-256 df01bb10d653c0f5e2572b5ea0fe9cf8972db1f6d3df530de5484d3a1cccca27.
New in 9.1.503
Published on
The isolated todo maintenance message now also carries an explicitly empty toolCalls field. It therefore has the same message shape as regular work turns and can be processed safely by the BLUN provider normalization.
The real runtime error TypeError: message.toolCalls is not iterable no longer occurs before the TodoList call. A regression test iterates the generated message exactly as the provider boundary does before the maintenance is released.
The published tarball passes 105 of 105 tests. Fresh package test runs on Windows with Node 24.19.0 and Linux with Node 24.15.0 confirm the complete provider message shape, the isolated todo maintenance, and the automatic removal of completed items. Acceptance testing on the real fleet will run after the controlled restart of the three Kings.
New in 9.1.502
Published on
The due TodoList maintenance step now receives only a fresh message limited to the current task and the visible list. Old Read, Bash, or MCP calls from the work history can therefore no longer enter the step that is deliberately limited to TodoList.
Completed tasks disappear automatically from the visible and persistent list when it is saved. Items that are running, pending, blocked, awaiting approval, or aborted are retained; the list therefore does not grow indefinitely with finished work.
Two agent profiles independently hit the same regression: after successful tool use, the todo maintenance repeated historical work tools and showed Tool not found. The published tarball passes 105 of 105 tests. Fresh installations on Windows with Node 24.19.0 and Linux with Node 24.15.0 confirm the isolated maintenance, the removal of completed items, and the return of the normal tools. Acceptance testing on real macOS systems is not part of this evidence.
New in 9.1.501
Published on
After a successful TodoList maintenance step, all tools selected for the turn are available again in the immediately following work step. Read, Bash, and other work tools are no longer hidden behind the temporarily restricted todo catalog.
The todo step deliberately offered only TodoList. Without an explicit restoration, however, its tool selection remained active in the following step as well. 9.1.501 reinstates the normal catalog there and protects both follow-up step paths with a regression test.
Golden Release 9.1.500
Published on
This version bundles the complete feature set of 9.1.499, unchanged, as one shared npm release for Windows, Linux, and macOS. The gold marking is deliberately limited to the headings of this version; older entries keep their previous presentation.
The Golden Release carries over the verified todo, queue, loop, context, AgentSpine, and image analysis changes from 9.1.499 without additional runtime logic.
New in 9.1.499
Published on
Image, audio, and video data outside the latest twelve conversation messages are replaced by short references only in the replayed model projection. Current media, message text, and the complete raw session history remain unchanged.
In a measured resumption checkpoint, this projection saves 85,748 characters, or about 21,437 estimated input tokens, per additional tool step.
Due todo maintenance runs before the ninth work block as a separate low-effort model step. In this step, the runtime offers only TodoList; file, search, shell, and other work tools are released again only after a valid update.
Fresh user messages still take precedence over todo maintenance. The hard todo gate is retained as a safety net for genuinely invalid updates but no longer appears as a normal red intermediate error before autonomous list maintenance.
The published tarball passes 105 of 105 runtime and regression tests. Fresh isolated installations on Windows with Node 24.19.0 and Linux with Node 24.15.0 report exactly version 9.1.499 and confirm media projection, unchanged raw history, todo precedence control, and the hiding of all work tools during the todo step. The candidate comprises 850 paths and carries SHA-256 51e79a766d834d06a6e0d428337a45c9ab62ed8535a988f77b73c1164162f71f. Acceptance testing on real macOS systems is not part of this evidence.
New in 9.1.498
Published on
/usage shows the prompt cache hit rate reported by the provider as well as cache tokens read and written per model. Without reported cache activity, the display does not invent a rate.
/tokens is a short alias for the existing detailed context diagnostics; /offload invokes the existing archiving compaction. Neither path triggers an additional model call.
Different authorized bot messages are no longer discarded by a rigid 15-second window. The existing order is retained: private and explicitly addressed messages come before bot messages, bot messages before normal context.
A complete compaction carries the exact todo list into the new context. If a path, command, hash, or requirement is uncertain afterwards, a one-time recovery notice first requests reading the archived history instead of a broad file search or a fresh start.
Completed todo steps are retained as evidence. If later findings make a step necessary again, the evidenced completion stays in place and the new check appears as a separate running step with a reason.
Recurring session loops wait as long as the maintained todo list still contains running or pending work. Missed intervals are combined until the session is genuinely idle; other scheduled reminders remain unaffected.
The prepared tarball passes 100 of 100 runtime and regression tests. Fresh isolated installations on Windows with Node 24.19.0 and Linux with Node 24.15.0 report exactly version 9.1.498 and confirm cache display, command aliases, compaction recovery, monotonic todo evidence, session loop protection, package changelog, and bot priority. The candidate comprises 849 paths and carries SHA-256 11b6918c02cc743b6d65aca79820abf5d0aa55786948c12ad9f0187c587b1d56. Acceptance testing on real macOS systems is not part of this evidence.
New in 9.1.497
Published on
Telegram bot messages from shared groups come after private and explicitly addressed messages but before normal context. The prioritization does not force a reply.
An accepted Telegram message disappears from the visible queue as soon as the model step it was fed into begins. A rejected delivery or an abort before the first step still retains it for another attempt.
A due Telegram reply or message edit is no longer blocked by todo maintenance. The next normal work step remains locked until the todo list is truthfully updated.
Versions 9.1.496 to 9.1.487
| Version | Changes |
|---|---|
| 9.1.496 | Delivers Telegram user messages automatically one at a time, removes only the exact message ID that was accepted or answered, enforces truthful progress for every visible todo list, and hides successful internal hook payloads. |
| 9.1.495 | Starts every new or replaced goal with a fresh visible todo list, requires truthful updates, immediately clears the Telegram group focus once it has been answered successfully, defers normal acknowledgments of receipt until the end of the turn, and adds real decoding checks for Ctrl+S and Ctrl+T. |
| 9.1.494 | Clearly separates the shortcuts again: Ctrl+S controls only the queue backlog, Ctrl+T only the todo list. Telegram user messages authorize themselves for the next safe handover during running work. |
| 9.1.493 | Telegram user messages are automatically released for the next safe handover during active work. Direct messages stay at the front of the queue without pausing group messages permanently. |
| 9.1.492 | Group messages that have already been released are retained while delivery is temporarily busy and are retried. The package, npm metadata, public manifest, and changelog are checked together before success is reported. |
| 9.1.491 | Direct Telegram messages are prioritized immediately during running work. The manual queue control remained for other messages. |
| 9.1.490 | The package history fully documents the unreleased version 9.1.487 and the fixes actually released from 9.1.488 onward. |
| 9.1.489 | Task list, queue control, Telegram execution identity, AgentSpine profile installation, and the managed image analysis were restored and protected with regression tests. |
| 9.1.488 | The prepared AgentSpine core plugin was published. Telegram duplicates no longer leave a phantom turn; thinking depth and safe telemetry handling are retained across tool steps. |
| 9.1.487 | Not released. This version prepared AgentSpine as a managed core plugin. On npm, 9.1.486 was followed directly by 9.1.488. |
New in 9.1.486
Published on
New and updated profiles now start reliably in English on Windows, macOS, and Linux. A stored automatic language value is migrated once, while explicitly chosen languages remain unchanged.
Automatic updates at startup are enabled again by default through the existing version-bound installer. [upgrade].auto_install = false keeps the confirmation prompt; a background updater is not reintroduced.
Startup dialogs, progress, errors, success messages, and session resumption now use the same language. Regression and mutation tests protect migration, the update path, and session data.
The complete test suite passed 1,474 of 1,474 checks. An isolated update run upgraded 9.1.485 to 9.1.486, left the configuration and session unchanged, and started the new CLI. A separate startup test run demonstrated the automatic installation without prompting as well as the one-time migration of an old automatic language value to English.
Versions 9.1.485 to 9.1.178
| Version | Changes |
|---|---|
| 9.1.485 |
|
| 9.1.484 |
|
| 9.1.483 |
|
| 9.1.482 |
|
| 9.1.481 |
|
| 9.1.480 |
|
| 9.1.479 |
|
| 9.1.478 |
|
| 9.1.477 |
|
| 9.1.476 |
|
| 9.1.475 |
|
| 9.1.474 |
|
| 9.1.473 |
|
| 9.1.472 |
|
| 9.1.471 |
|
| 9.1.470 |
|
| 9.1.469 |
|
| 9.1.468 |
|
| 9.1.467 |
|
| 9.1.466 |
|
| 9.1.465 |
|
| 9.1.464 |
|
| 9.1.463 |
|
| 9.1.462 |
|
| 9.1.461 |
|
| 9.1.460 |
|
| 9.1.459 |
|
| 9.1.458 |
|
| 9.1.457 |
|
| 9.1.456 |
|
| 9.1.455 |
|
| 9.1.454 |
|
| 9.1.453 |
|
| 9.1.452 |
|
| 9.1.451 |
|
| 9.1.450 |
|
| 9.1.449 |
|
| 9.1.448 |
|
| 9.1.447 |
|
| 9.1.446 |
|
| 9.1.445 |
|
| 9.1.444 |
|
| 9.1.443 |
|
| 9.1.442 |
|
| 9.1.441 |
|
| 9.1.440 |
|
| 9.1.439 |
|
| 9.1.438 |
|
| 9.1.437 |
|
| 9.1.436 |
|
| 9.1.435 |
|
| 9.1.434 |
|
| 9.1.433 |
|
| 9.1.432 |
|
| 9.1.431 |
|
| 9.1.430 |
|
| 9.1.429 |
|
| 9.1.428 |
|
| 9.1.427 |
|
| 9.1.426 |
|
| 9.1.425 |
|
| 9.1.424 |
|
| 9.1.423 |
|
| 9.1.422 |
|
| 9.1.421 |
|
| 9.1.420 |
|
| 9.1.419 |
|
| 9.1.418 |
|
| 9.1.417 |
|
| 9.1.416 |
|
| 9.1.415 |
|
| 9.1.414 |
|
| 9.1.413 |
|
| 9.1.412 |
|
| 9.1.411 |
|
| 9.1.410 |
|
| 9.1.409 |
|
| 9.1.408 |
|
| 9.1.407 |
|
| 9.1.406 |
|
| 9.1.405 |
|
| 9.1.404 |
|
| 9.1.403 |
|
| 9.1.402 |
|
| 9.1.401 |
|
| 9.1.400 |
|
| 9.1.399 |
|
| 9.1.398 |
|
| 9.1.397 |
|
| 9.1.396 |
|
| 9.1.395 |
|
| 9.1.394 |
|
| 9.1.393 |
|
| 9.1.392 |
|
| 9.1.391 |
|
| 9.1.390 |
|
| 9.1.389 |
|
| 9.1.388 |
|
| 9.1.387 |
|
| 9.1.386 |
|
| 9.1.385 |
|
| 9.1.384 |
|
| 9.1.383 |
|
| 9.1.382 |
|
| 9.1.381 |
|
| 9.1.380 |
|
| 9.1.379 |
|
| 9.1.378 |
|
| 9.1.377 |
|
| 9.1.376 |
|
| 9.1.375 |
|
| 9.1.374 |
|
| 9.1.373 |
|
| 9.1.372 |
|
| 9.1.371 |
|
| 9.1.370 |
|
| 9.1.369 |
|
| 9.1.368 |
|
| 9.1.367 |
|
| 9.1.366 |
|
| 9.1.365 |
|
| 9.1.364 |
|
| 9.1.363 |
|
| 9.1.362 |
|
| 9.1.361 |
|
| 9.1.360 |
|
| 9.1.359 |
|
| 9.1.358 |
|
| 9.1.357 |
|
| 9.1.356 |
|
| 9.1.355 |
|
| 9.1.354 |
|
| 9.1.353 |
|
| 9.1.352 |
|
| 9.1.351 |
|
| 9.1.350 |
|
| 9.1.349 |
|
| 9.1.348 |
|
| 9.1.347 |
|
| 9.1.346 |
|
| 9.1.345 |
|
| 9.1.344 |
|
| 9.1.343 |
|
| 9.1.342 |
|
| 9.1.341 |
|
| 9.1.340 |
|
| 9.1.339 |
|
| 9.1.338 |
|
| 9.1.337 |
|
| 9.1.336 |
|
| 9.1.335 |
|
| 9.1.334 |
|
| 9.1.333 |
|
| 9.1.332 Not released |
|
| 9.1.331 |
|
| 9.1.330 |
|
| 9.1.329 |
|
| 9.1.328 |
|
| 9.1.327 |
|
| 9.1.326 |
|
| 9.1.325 |
|
| 9.1.324 |
|
| 9.1.323 |
|
| 9.1.322 |
|
| 9.1.321 |
|
| 9.1.320 |
|
| 9.1.319 |
|
| 9.1.318 |
|
| 9.1.317 |
|
| 9.1.316 |
|
| 9.1.315 |
|
| 9.1.314 |
|
| 9.1.313 |
|
| 9.1.312 |
|
| 9.1.311 |
|
| 9.1.310 |
|
| 9.1.309 |
|
| 9.1.308 |
|
| 9.1.307 |
|
| 9.1.306 |
|
| 9.1.305 |
|
| 9.1.304 |
|
| 9.1.303 |
|
| 9.1.302 |
|
| 9.1.301 |
|
| 9.1.300 |
|
| 9.1.299 |
|
| 9.1.298 |
|
| 9.1.297 |
|
| 9.1.296 |
|
| 9.1.295 |
|
| 9.1.294 |
|
| 9.1.293 |
|
| 9.1.292 |
|
| 9.1.291 |
|
| 9.1.290 |
|
| 9.1.289 |
|
| 9.1.288 |
|
| 9.1.287 |
|
| 9.1.286 |
|
| 9.1.285 |
|
| 9.1.284 |
|
| 9.1.283 |
|
| 9.1.282 |
|
| 9.1.281 |
|
| 9.1.280 |
|
| 9.1.279 |
|
| 9.1.278 |
|
| 9.1.277 |
|
| 9.1.276 |
|
| 9.1.275 |
|
| 9.1.274 |
|
| 9.1.273 |
|
| 9.1.272 |
|
| 9.1.271 |
|
| 9.1.270 |
|
| 9.1.269 |
|
| 9.1.268 |
|
| 9.1.267 |
|
| 9.1.266 |
|
| 9.1.265 |
|
| 9.1.264 |
|
| 9.1.263 |
|
| 9.1.262 |
|
| 9.1.261 |
|
| 9.1.260 |
|
| 9.1.259 |
|
| 9.1.258 |
|
| 9.1.257 |
|
| 9.1.256 |
|
| 9.1.255 |
|
| 9.1.254 |
|
| 9.1.253 |
|
| 9.1.252 |
|
| 9.1.251 |
|
| 9.1.250 |
|
| 9.1.249 |
|
| 9.1.248 |
|
| 9.1.247 |
|
| 9.1.246 |
|
| 9.1.245 |
|
| 9.1.244 |
|
| 9.1.243 |
|
| 9.1.242 |
|
| 9.1.241 |
|
| 9.1.240 |
|
| 9.1.239 |
|
| 9.1.238 |
|
| 9.1.237 |
|
| 9.1.236 |
|
| 9.1.235 |
|
| 9.1.234 |
|
| 9.1.233 |
|
| 9.1.232 |
|
| 9.1.231 |
|
| 9.1.230 |
|
| 9.1.229 |
|
| 9.1.228 |
|
| 9.1.227 |
|
| 9.1.226 |
|
| 9.1.225 |
|
| 9.1.224 |
|
| 9.1.223 |
|
| 9.1.222 |
|
| 9.1.221 |
|
| 9.1.220 |
|
| 9.1.219 |
|
| 9.1.218 |
|
| 9.1.217 |
|
| 9.1.216 |
|
| 9.1.215 |
|
| 9.1.214 |
|
| 9.1.213 |
|
| 9.1.212 |
|
| 9.1.211 |
|
| 9.1.210 |
|
| 9.1.209 Withdrawn |
|
| 9.1.208 |
|
| 9.1.207 |
|
| 9.1.206 |
|
| 9.1.205 |
|
| 9.1.204 |
|
| 9.1.203 |
|
| 9.1.202 |
|
| 9.1.201 |
|
| 9.1.200 |
|
| 9.1.199 |
|
| 9.1.198 |
|
| 9.1.197 |
|
| 9.1.196 |
|
| 9.1.195 |
|
| 9.1.194 |
|
| 9.1.193 |
|
| 9.1.192 |
|
| 9.1.191 |
|
| 9.1.190 |
|
| 9.1.189 |
|
| 9.1.188 |
|
| 9.1.187 |
|
| 9.1.186 |
|
| 9.1.185 |
|
| 9.1.184 |
|
| 9.1.183 |
|
| 9.1.182 |
|
| 9.1.181 |
|
| 9.1.180 |
|
| 9.1.179 |
|
| 9.1.178 |
|
Improvements since 9.1.57
| Version | Change |
|---|---|
| 9.1.177 | Automatic updates now carry over a stored resume or restart mode even when the direct process message does not arrive, and show a clear notice immediately before the safe TUI restart. Historical placeholders for compacted tool arguments are removed, whether they appear as compact JSON, formatted JSON or a parsed object, before they can be executed again. Raw history and all existing update protection mechanisms remain unchanged. |
| 9.1.176 | All selection menus for slash commands now separate options with a blank line and show explanations in their own muted secondary color. The shared component serves 20 menu calls; individual warning colors are retained. |
| 9.1.175 | The tool notice repeated with every model request drops from 1,749 to 825 characters. In the measurement, this saves around 231 estimated input tokens per request. All eleven behavioral obligations are retained; raw history, tool schemas, and files remain unchanged. |
| 9.1.174 | The relevant Mistake.md excerpt shown per model request is limited to 3,000 instead of 4,000 characters. In 100 real requests this saves on average around 253 estimated input tokens; the selected headings remained identical in all 100 cases. Complete files and stored history remain unchanged. |
| 9.1.173 | BLUN King detects recurring text-only responses across multiple Telegram turns. After three nearly identical responses despite new guidance from the user, the agent receives a one-time internal correction notice instead of repeating an old question, list, or waiting loop. Messages, processes, and stored history remain unchanged. |
| 9.1.172 | If the search at startup finds nothing, the automatic update checks a running session again. The next check runs after a random interval of 60 to 90 seconds. Versions published later are therefore detected without a manual restart. Installation and session handover still wait until the session is completely idle. |
| 9.1.171 | BLUN King now keeps only the four most recently loaded on-demand tool schemas per turn instead of twelve. Older tools remain findable via ToolSearch and are loaded again on selection. Permanently loaded core tools, the stored history, and the execution behavior remain unchanged. |
| 9.1.170 | Bundles fixes for the current reliability and workflow errors: recurring tasks keep the newest oversized instruction; compacted tool argument placeholders are removed from the model projection; ToolSearch recognizes natural-language memory search terms, including the single word “store”; the loop display reloads the planning state; /update controls the safe idle handover; and /premortem provides a visible, structured error analysis. |
| 9.1.169 | BLUN King keeps the exact tool selection and the previous strict keyword search unchanged. Only when this search yields no match does a narrow second pass search for related German and English terms. Name requirements with + remain mandatory; at least two meaningful terms and 75 percent of the request must match. As a result, the three Telegram searches that actually failed now find the current queue tool, while an unrelated request still ends without a match. |
| 9.1.168 | BLUN King no longer replaces older tool-call arguments with an internal placeholder that the model could copy into a new call. Placeholder calls that already exist and their associated error results are removed only from the model projection; the unchanged session history is retained as evidence. |
| 9.1.167 | For recurring scheduled tasks, BLUN King 9.1.167 now keeps only an unbroken sequence of the newest complete work sections. If the next newer section would exceed the limit of 48,000 characters or 24 messages, the selection stops there instead of going back to pick up older, smaller sections. Context and chronological order thus stay coherent. In a measured running history, the projected history dropped from 32,591 to 16,981 characters. This saves 15,610 characters or around 3,903 estimated input tokens per comparable request. Raw history, current task steps, and the compaction summary remain unchanged. |
| 9.1.166 | BLUN King 9.1.166 limits recurring scheduled tasks to an isolated working context instead of transmitting the entire main agent conversation again at every model step. The current task, the newest compaction summary, and the newest real work steps remain available within a limit of 24 messages and 48,000 characters. The stored history, normal user turns, one-time reminders and fast conversation paths remain unchanged. In a measured history, 2,043 model steps of recurring scheduled tasks consumed a total of 298.7 million input tokens, on average 146,188 tokens per step. |
| 9.1.165 | BLUN King 9.1.165 limits the output budget of normal turns to 24,576 instead of 32,768 tokens. Light steps keep their previous limit of 8,192 tokens, models with smaller output limits keep those lower values, and an explicit user setting continues to take precedence. Of 27,049 measured responses, 99 percent stayed below 9,970 tokens; twelve old outliers hit exactly the previous limit of 32,768 tokens and each continued to compute for about 6 minutes. |
| 9.1.164 | BLUN King 9.1.164 limits the output budget of a compaction on large model windows to 16,384 instead of 131,072 tokens. 39 successful compactions needed at most 10,781 output tokens. The new cap is 52 percent above this measured maximum and lowers the possible output and KV-cache demand per compaction by 87.5 percent. Stored history and normal conversation turns remain unchanged. |
| 9.1.163 | BLUN King 9.1.163 replaces extensive skill loads outside the last 20 messages in the model projection with a compact reload reference. Current, small, and non-reloadable skill loads remain unchanged; the stored conversation history is not rewritten. In a measured case, a skill load drops from 87,034 to 424 projected characters. Once it leaves the current working window, this saves 86,610 characters or around 21,653 estimated input tokens. |
| 9.1.162 | BLUN King 9.1.162 limits large working directory overviews in the repeated system prompt to 2,000 characters. Small overviews remain unchanged. For truncated overviews, a clear notice still points to the complete search with Glob, Grep, and Read. In a measured prompt, the overview drops from 3,988 to 1,983 characters. This saves 2,005 characters or around 501 estimated input tokens per identically structured request. |
| 9.1.161 | BLUN King 9.1.161 no longer repeats the names of the 112 offloaded tools in every ToolSearch description. The keyword search, the exact selection by full or unique short name and the permanent loading of the twelve most recently selected schemas are retained. In the measured representation, the repeated description drops from 1,984 to 278 characters. This saves 1,706 characters or around 426 estimated input tokens per identically structured request. |
| 9.1.160 | From BLUN King 9.1.160 on, the model projection fully protects only the newest twelve messages before older successful tool results that contain only text are replaced by a short completion note. Error outputs, media, stored file references, the newest twelve messages, raw history, and exports remain unchanged. In a session snapshot measured under stable conditions, two more old tool results are thereby reduced. The model projection drops from 81,800 to 78,402 characters. This saves a further 3,398 characters or around 850 estimated input tokens per identically structured request. |
| 9.1.159 | From BLUN King 9.1.159 on, valid JSON arguments of completed tool calls outside the newest 12 messages are replaced by a short note in the model projection. The associated tool result, the newest 12 messages, incomplete calls, small or invalid arguments, raw history and exports remain unchanged. In a session snapshot measured under stable conditions, three arguments of completed tool calls are reduced from 2,849 to 165 characters. This saves 2,684 characters or around 671 estimated input tokens per identically structured request. |
| 9.1.158 | From BLUN King 9.1.158 on, status-only messages that immediately follow a completed Telegram reply are replaced by a short note in the model projection when they lie outside the newest 20 messages. The sent reply call and its result, current messages, summaries after other tools, mixed content, raw history and exports remain unchanged. In a session snapshot measured under stable conditions, six historical status messages are reduced by 1,837 characters. This saves around 460 estimated input tokens per identically structured request. |
| 9.1.157 | From BLUN King 9.1.157 on, eligible, successful, text-only tool outputs outside the newest 20 messages are replaced in the model projection by a short completion note. Error outputs, media, offloaded file references, the newest 20 messages, raw history, and exports remain unchanged. In a session snapshot measured under stable conditions, 43 old results are reduced. This saves 9,680 characters or around 2,420 estimated input tokens per identically structured request. |
| 9.1.156 | From BLUN King 9.1.156 on, stored references to user messages outside the newest 20 messages no longer repeat their preview with beginning and end at every model request. Recovery marker, size details, readable file path, the newest 20 messages, media, raw history, fully stored file and exports remain unchanged. In a snapshot measured under stable conditions, five historical references are reduced and the model projection drops from 99,143 to 96,001 characters. This saves a further 3,142 characters or around 786 estimated input tokens per identically structured request. |
| 9.1.155 | From BLUN King 9.1.155 on, stored references to user messages are restored before text projections can change the hash of the original message. Existing offloads thereby remain effective instead of silently falling back to the projected complete message. Raw history, re-readable file references, the newest 20 messages, media, and exports remain unchanged. In a snapshot measured under stable conditions, the model projection drops from 105,810 to 99,143 characters. This saves a further 6,667 characters or around 1,667 estimated input tokens per identically structured request. |
| 9.1.154 | From BLUN King 9.1.154 on, addressed Telegram channel sections outside the newest 20 messages are limited to a 500-character preview (instead of 1,000) with beginning and end. Complete channel metadata, beginning and end of the message content, the newest 20 messages, attachments, raw history and exports remain unchanged. In a snapshot measured under stable conditions, seven additional historical addressed sections are reduced. This saves 3,500 characters or around 875 estimated tokens per repeated request. |
| 9.1.153 | From BLUN King 9.1.153 on, the projection of historical Telegram contexts preserves the complete channel metadata and the closing channel tag. Only the message content is truncated. Even with real, 161-character-long Telegram metadata, the structure remains valid within the 250-character budget. The projection is idempotent, subsequent addressed channels remain unchanged, and a channel envelope that already exceeds the budget without content is passed through unchanged. |
| 9.1.152 | From BLUN King 9.1.152 on, arguments of completed tool calls leave the active model projection after four instead of eight newer messages. The raw session history, unanswered or malformed calls, media, tool results, and the newest four messages remain unchanged. In a freshly measured session snapshot, two additional completed calls are condensed; compared to 9.1.151 this saves a further 244 characters or around 61 estimated tokens per repeated request. |
| 9.1.151 | From BLUN King 9.1.151 on, arguments of completed tool calls leave the active model projection after eight instead of twelve newer messages. The raw session history, unanswered or malformed calls, media, tool results, and the newest eight messages remain unchanged. In a measured session snapshot, three additional completed calls are condensed; compared to 9.1.150 this saves a further 317 characters or around 80 estimated tokens per repeated request. |
| 9.1.150 | From BLUN King 9.1.150 on, the historical offloading of tool results fully protects the newest four messages instead of the newest eight. Older eligible tool results keep a compact, 600-character recovery notice and their source path; raw history, fully stored outputs, media and the newest four messages remain unchanged. In a measured session snapshot, the four-message window offloads nine additional historical results and saves a further 6,683 characters or around 1,671 estimated tokens per repeated request compared to 9.1.149. |
| 9.1.149 | From BLUN King 9.1.149 on, the historical offloading of tool results fully protects the newest eight messages instead of the newest twelve. Older eligible tool results keep a compact, 600-character recovery notice and their source path; raw history, fully stored outputs, media and the newest eight messages remain unchanged. In a measured session snapshot, three results drop from 4,679 to 1,800 characters; this saves a further 2,879 characters or around 720 estimated tokens per repeated request. |
| 9.1.148 | From BLUN King 9.1.148 on, channel sections explicitly marked with addressed=false are reduced even in the newest mixed Telegram batch. Addressed sections, media, raw history and exports remain unchanged. In a measured history, eleven non-addressed sections drop from 22,691 to 2,750 characters; this saves 19,941 characters or around 4,986 estimated tokens per repeated request. |
| 9.1.147 | From BLUN King 9.1.147 on, the micro-compaction fully protects the newest twelve messages instead of the newest twenty and thereby uses the same recovery window as the existing offloading of tool results. Older completed tool arguments and eligible tool results are only reduced in the model projection; raw history and recovery paths remain unchanged. In a measured history, this saves a further 560 characters or around 140 estimated tokens per request. |
| 9.1.146 | From BLUN King 9.1.146 on, older, already offloaded tool results are limited in the model projection to the details needed for recovery: tool name, character count, and file path. The complete content remains unchanged on disk, the raw history is not changed, and the newest twelve messages keep their detailed notices. In a measured history, this reduces the repeated model input by 26,779 characters or around 6,695 estimated tokens per request. |
| 9.1.145 | From BLUN King 9.1.145 on, an interrupted provider stream is retried automatically if only internal reasoning output has arrived up to that point. Visible text and tool calls still prevent an automatic retry. Adaptive follow-up steps with a low reasoning level use an output budget of 8,192 tokens; first, complex, and failed steps keep the configured budget, and a retry after the length limit has been reached can increase it. When a session is resumed, the current Telegram plugin transport notice no longer appears as raw chat text. |
| 9.1.144 | 9.1.144 limits addressed Telegram sections outside the newest 20 messages in the model projection to a 1,000-character preview with beginning and end. The newest 20 messages, the newest user message, sections at the exact limit, attachments, channel metadata, raw history and exports remain unchanged. |
| 9.1.143 | 9.1.143 removes the repeated Telegram plugin transport notice from the model projection for older messages. Channel content, metadata, attachments, the newest user message, raw history, and exports remain unchanged. |
| 9.1.142 | 9.1.142 reduces the preview with beginning and end for older, non-addressed Telegram channel parts in the model projection from 500 to 250 characters. Addressed channel parts, the newest user message, attachments, raw history and exports remain unchanged. |
| 9.1.141 | 9.1.141 removes arguments of older, completed tool calls from the model projection starting at just 32 estimated tokens. Tool results keep their previous threshold; new messages and the raw history remain unchanged. |
| 9.1.140 | 9.1.140 limits the relevance-based mistake reminder in the model projection to 4,000 characters by default. Complete mistake files, raw history, and exports remain unchanged. |
| 9.1.139 | 9.1.139 limits older, non-addressed Telegram channel parts in the model projection to a preview of 500 characters. The newest user message, addressed parts, attachments, raw history and exports remain complete. |
| 9.1.138 | For each recurring cron task, 9.1.138 keeps only the newest wake-up notice in the model projection. One-time reminders, different tasks, raw history and exports remain unchanged. |
| 9.1.137 | 9.1.137 fully protects only the twelve newest messages from the offloading of older tool outputs. Complete results remain recoverable via raw history and source path. |
| 9.1.136 | 9.1.136 keeps only the newest dynamic Mistake.md notice in the model projection. Older selections are fully retained in the raw history and in exports. |
| 9.1.135 | BLUN King 9.1.135 keeps the managed Node.js runtime first in PATH in the replacement process and in all child tools. Commands such as node and npm thereby use the same supported runtime as the TUI instead of falling back to an older system installation. |
| 9.1.134 | 9.1.134 limits non-addressed Telegram group messages in the model projection to a preview of 2,000 characters with preserved beginning, end, and original length. Direct messages and the stored history remain complete. |
| 9.1.133 | 9.1.133 selects at most five relevant complete entries from the project-local and the shared Mistake.md, within a combined budget of 6,000 characters. The complete sources and storage paths are retained. |
| 9.1.132 | 9.1.132 keeps the lean base system prompt with 4,850 characters active after the generated initialization. This saves 18,259 characters per request, about 4,565 estimated tokens, without removing instructions or tools. |
| 9.1.131 | 9.1.131 removes two older rule copies from the model projection as soon as the authoritative counterparts are present. The default prompt thereby drops by 1,010 characters or around 253 estimated tokens per request. |
| 9.1.130 | Outside the last 20 messages, 9.1.130 replaces the explanatory text of older, fully completed tool steps with a short notice. Tool calls, results, raw history and exports are fully retained. |
| 9.1.129 | 9.1.129 removes preview texts from older, already offloaded tool results. Path and size details remain visible; the complete content is retained in the original file or in the private archive. |
| 9.1.128 | 9.1.128 limits the permanent cache of on-demand tool schemas to the twelve most recently selected tools. Evicted tools remain immediately findable via ToolSearch. |
| 9.1.127 | 9.1.127 shortens the repeated ToolSearch catalog. Unique tools appear with their short selector; full MCP namespaces are retained only where names conflict. |
| 9.1.126 | 9.1.126 deterministically selects at most five sections relevant to the current conversation from the runtime-wide error file. The projection is limited to 6,000 characters and needs no additional model or network call. |
| 9.1.125 | 9.1.125 adds the read-only Telegram command /status for paired users. It names machine, version, process and queue status without outputting chat IDs, paths, secrets or message contents. |
| 9.1.124 | 9.1.124 fixes the swapped brand colors in the compact BLUN logo below the input field. Status values, profile name, and persona remain unchanged. |
| 9.1.123 | 9.1.123 removes the large JSON arguments of older, completed tool calls from the model projection. Name, identifier, result, raw history and exports remain complete. |
| 9.1.122 | 9.1.122 loads the complete design guideline via the skill tool only for visual work. Non-visual requests receive a compact activation contract; at the same time, older text-only outputs are offloaded more effectively. |
| 9.1.121 | 9.1.121 limits the total size of older text-only outputs of tools. Eligible results are privately archived and replaced in the model projection by readable file references. |
| 9.1.120 | 9.1.120 offloads large older assistant responses into private session files. The last 20 messages, tool chains, and the complete raw history are retained. |
| 9.1.119 | 9.1.119 now sends only a small selection of frequently needed skills with each model step. All other skills remain findable via the skill tool by their name or purpose. |
| 9.1.118 | 9.1.118 keeps the session timestamp in the system prompt stable during a running session. Unchanged prompt parts can thereby continue to use the provider's prefix cache. |
| 9.1.117 | 9.1.117 keeps the four core tools for media immediately available and loads image and video understanding, video synchronization, and lip movement synchronization only on demand via ToolSearch. |
| 9.1.116 | 9.1.116 adds proactive compaction that starts at around 128,000 estimated input tokens, at a safe step boundary. The compaction uses a lean dedicated system prompt; large Read results use their existing source path. |
| 9.1.115 | Resumed sessions rebuild the system prompt of the current profile so that outdated oversized prompt snapshots do not persist across restarts. Large working directory overviews are limited; the complete files remain available via Glob, Grep and Read. |
| 9.1.114 | Telegram delivery treats Windows EPERM as an indication of a running TUI or poller process instead of routing messages away from the visible session. ToolSearch confirms an already loaded tool with an exact name match instead of falsely reporting that a tool that is only loaded on demand is missing. |
| 9.1.113 | The Telegram tools keep a fallback path within the same runtime at startup if the managed plugin registration is temporarily missing. |
| 9.1.112 | Large older user messages are archived outside the current working window; the complete raw history remains available. |
| 9.1.111 | Telegram turns with attachments receive download_attachment automatically. In normal turns, the tool remains offloaded via ToolSearch, so the reduced schema load is retained. |
| 9.1.110 | Retries after a provider overload respect the server's Retry-After value. The automatic ripgrep setup downloads the pinned version 15.0.0 archives from the official ripgrep release and verifies their SHA-256 checksums before installation. |
| 9.1.109 | Version 9.1.109 now keeps only the nine tools that accounted for more than 98 percent of the 3,183 measured tool calls permanently in the model request. All other tools remain findable via ToolSearch and, once loaded, stay available for the rest of the session. This reduces the schema load for every normal model step; no tool is removed, and the fast path for Telegram replies and pending media results is unchanged. |
| 9.1.108 | Identical, repeatedly injected system notices are merged only in the model projection. Changed notices and the complete stored history are retained. |
| 9.1.107 | Provider errors are shown in plain, customer-friendly language; internal error codes and support notices do not appear. /help offers a command list that can be navigated with the arrow keys and opens a detailed description of the selected command with the right arrow key or the Enter key. |
| 9.1.106 | Agent profiles can exclude tools by name. The exclusions apply even after dynamic loading; the default subagents do not send Telegram messages that bypass the main agent. |
| 9.1.105 | Version 9.1.105 adds TaskUpdate for running background agents. At the next safe model step, King passes additional instructions to the same active agent without stopping it or starting another agent. Unknown and already finished tasks, shell tasks, and agents that no longer accept updates are still rejected, as before. |
| 9.1.104 | Version 9.1.104 lets foreground shell commands run to their regular end even with very large outputs. King writes up to 16 MiB continuously into the private task log, discards output beyond that, and reports the actual exit code instead of terminating the process because of the output volume. Small outputs, background tasks, time limits and manual aborts remain unchanged. |
| 9.1.103 | After transient provider interruptions, swarm members are resumed at most twice under the same agent ID. HTTP 429 keeps its separate overload rule; final errors and manual aborts are not retried automatically. |
| 9.1.102 | After transient provider errors, delegated individual agents are resumed at most twice from their durable history. Permanent errors and manual aborts remain final. |
| 9.1.101 | Oversized user messages are saved locally and replaced in the model context by a limited preview with a readable path. The complete original history and media are retained. |
| 9.1.100 | Limited Grep content searches terminate ripgrep after the requested page and one additional preview line. Hit counts, unlimited searches, and file lists sorted by modification time remain complete. |
| 9.1.98 | King can proactively compact a completed work section once it reaches 128,000 estimated tokens. Below the threshold, the tool schema stays out of the model prompt entirely; the compaction uses the existing safe step boundary. |
| 9.1.97 | The permanently loaded TodoList tool description dropped from 2,238 to 996 characters. Multi-step planning, all six task statuses, honest progress reports, queries, clearing and the separate plan mode remained protected. |
| 9.1.96 | The permanently loaded base system prompt dropped from 23,109 to 4,850 characters. Identity, persona and soul, response language, work and permission boundaries, compaction handover, runtime environment, AGENTS.md and skills remained protected. |
| 9.1.95 | The permanently loaded Write tool description dropped from 2,532 to 1,541 characters. The distinction from Edit, literal content, line endings, the 500-line limit, the single-file exception and the atomic continuation with line and SHA-256 checks remained protected. |
| 9.1.94 | The permanently loaded Glob tool description dropped from 1,495 to 1,006 characters. Sorting, ignored and sensitive files, recursive patterns, dot files, brace expansion and the limit of 100 hits remained protected. |
| 9.1.93 | The permanently loaded Edit tool description dropped from 1,537 to 1,144 characters. Reading before changing, exact replacements, multiple replacements, CRLF handling and the 500-line limit remained protected. |
| 9.1.92 | The permanently loaded Agent tool description dropped from 2,061 to 1,153 characters. Separate context, resuming, time limits and parallel delegation were retained. |
| 9.1.91 | The permanently loaded Read tool description dropped from 2,391 to 1,648 characters. Paging, secret protection, media forwarding, line format and CRLF behavior were retained. |
| 9.1.90 | The permanently loaded Bash tool description dropped from 5,003 to 1,834 characters. Runtime contract, background tasks, file tools and security boundaries were fully retained. |
| 9.1.89 | Page-wise file reads name the exact next line_offset at the internal 1,000-line limit; end of file and deliberately smaller excerpts remain unchanged. |
| 9.1.88 | BLUN King 9.1.88 activates the small, lossless compaction in good time before the full compaction. Older large tool results and completed tool arguments leave the model view earlier; the complete stored history is retained. |
| 9.1.87 | An explicitly retryable HTTP 429 response respects Retry-After and receives at most two automatic retries; other errors remain immediately visible. |
| 9.1.86 | Large tool outputs keep 1,000 characters each from the beginning and the end visible within the same preview budget; an exact marker states the number of omitted characters. |
| 9.1.85 | Text-based tool results above 12,000 characters are stored completely in a private local file; subsequent model requests keep only a preview budget of 2,000 characters and the readable path. |
| 9.1.84 | The full compaction processes older histories in chronological stages with at most 64,000 estimated input tokens; the fixed safety limit and the complete private archive remain unchanged. |
| 9.1.83 | The micro-compaction replaces large arguments of older, completed tool calls with a valid JSON marker, in the model view only; the session checker reports the estimated saving without outputting any content. |
| 9.1.82 | The read-only checker reports selected and withheld tool schemas, suppression reasons, and the estimated number of avoided schema tokens. |
| 9.1.81 | A bundled, read-only checker summarizes provider steps, tool calls, tokens, compactions, errors and offloaded outputs without exposing prompts or private paths. |
| 9.1.80 | Large tool results receive content-free offloading telemetry; isolated subagent context, machine-readable plans, and transferable handovers are protected by regression tests. |
| 9.1.79 | Durable checkpoints persist completed history records before provider steps and before a worker completes, so that completed work can be reloaded after a resume. |
| 9.1.78 | The full compaction archives displaced history parts before replacing them with a summary; the summary contains the readable archive path. |
| 9.1.77 | The micro-compaction reduces older, large tool results under context pressure and at the same time preserves the complete stored history. |
| 9.1.76 | Pending image, video, and voice tasks survive compaction and fast follow-up questions; Telegram messages remain in FIFO order without a misleading busy error. |
| 9.1.75 | Short Telegram conversations process only the newest unanswered message, while completed text exchanges are retained as language context. |
| 9.1.74 | Stored Telegram routes restore group IDs that were accidentally passed without a minus sign; Strg+S can control a turn that is actually running. |
| 9.1.73 | Telegram and loop messages no longer start a second turn during active work; Escape and Ctrl+C can still abort the active turn. |
| 9.1.72 | Hiding an update notice suppresses only the version offered at that time; newer releases appear again when king is started normally. |
| 9.1.71 | Loop wake-ups correctly enter the queue, the Telegram poller is claimed atomically, core file and media tools remain immediately available and Context7 no longer starts automatically. |
| 9.1.69 | Standard MCPs are set up, Telegram reaches a protected FIFO handover point, Escape and Ctrl+C reliably abort active work and the MCP overview hides internal paths. |
| 9.1.68 | Telegram messages that arrive while idle wake up FIFO processing, direct and group messages keep their arrival order, and resuming hides internal Telegram frames. |
| 9.1.67 | The standard skill venture-flywheel adds a contract-only UVF foundation with deterministic project trust and approval requirements for external actions. |
| 9.1.66 | /curiosity and /scout run limited, read-only opportunity research with evidence, counter-evidence, and an abort criterion. |
| 9.1.65 | Escape and Ctrl+C reliably abort automatic compactions, a stable screen anchor prevents double footers and the loop notice is aligned with the chat content. |
| 9.1.64 | Disk-based session history, on-demand tools and skills, a 120-second provider idle watchdog, correct loop cadence, Telegram in FIFO order, Linux packages, and Bosnian language detection were added at the same time. |
| 9.1.58–9.1.63 | This version series bundled work on sessions, Telegram, platforms and performance. It concluded with lean on-demand tool schemas, compact skill lists, restored first-use skills and a package inventory gate against unplanned removals. |
Previous improvements
| Version | Change |
|---|---|
| 9.1.53 | /idea publishes its task plan before starting any work, checks outgoing actions at every tool call and requires an honest final state for every step. |
| 9.1.52 | Resumed sessions open the stored working directory directly. Conversation and the active /loop state are jointly restored on restart. |
| 9.1.51 | Loops work as autonomous wake-up triggers, /idea develops and edits its own plans, Telegram can trigger work commands, and media and startup states are shown more clearly. |
| 9.1.50 | Images received locally or via Telegram can be animated as real MP4 videos. Large context windows receive a valid output budget; the media bar shows clearer states and clickable paths. |
| 9.1.49 | Images of adult fantasy figures in swimwear remain allowed within clear boundaries. Completed image tasks can be used as source images for videos; successful GetMedia queries no longer produce repeated cards. |
| 9.1.48 | The unified media bar bundles media tasks directly above the input field. Percent values appear only with a real provider measurement; otherwise it shows phase and runtime. |
| 9.1.47 | The request log distinguishes conversations and compaction and records tool selection and suppression reason without changing tool behavior. |
| 9.1.46 | Loops understand natural-language time expressions, show them during input, support arbitrary intervals and re-enable normal text selection in the terminal outside the history view. |
| 9.1.45 | The running compaction progress now appears only in the lower status bar instead of also appearing as a second line in the chat. |
| 9.1.44 | Complete repackaging of the approved 9.1.43 so that even early installations of 9.1.43 reliably recognize the update. |
| 9.1.43 | Complete protection base from 9.1.40 with transport diagnostics, visible update notices, and the console commands /loop, /goal, and /output-style. |
| 9.1.40 | Turn watchdog for long or repeatedly failing calls; self-hash after multi-part writing with re-read check of the stored file. |
| 9.1.39 | Long files are written in continuations. Each continuation starts where the previous write actually ended; line count, SHA-256, and chunk boundaries are checked and reported. |
| 9.1.38 | Degenerate or truncated tool arguments are recognized. An incomplete file is rejected with an error message instead of silently counting as finished. |
| 9.1.37 | After a Node switch, BLUN checks native modules with a real SQLite query and rebuilds better-sqlite3 when needed. |
| 9.1.36 | Empty model responses are handled by cause: a too-small output budget is enlarged, an empty stop is retried exactly once. System notices and injections cannot trigger a Telegram reply. |
| 9.1.35 | Multi-stage compaction shows the stage and the real usage of the model window, for example 2/~10 · 90 %. |
| 9.1.34 | The active context is compacted in stages: oldest parts first, every compactor call below the model limit. |
| 9.1.33 | Foundation for the automatic Node runtime and the downstream repair of native modules after a runtime switch. |
Addenda and open documentation gaps
Reconciliation as of September 17, 2026: in the range 9.1.33 through 9.1.597, 521 versions exist in the npm registry. A missing number is not automatically a missing release: some versions are absent from the current registry or were withdrawn. For four published versions, the exact change details remain open. No changes are invented for them.
9.1.567: change details open
Published on September 6, 2026, at 22:42 UTC. The SHA-512 value of the package matches the integrity value published on npm. The package contains no CHANGELOG.md; its README still names 9.1.566 in the installation command. The difference from 9.1.566 cannot be reliably derived from this. This documentation gap remains explicitly open.
9.1.550: change details open
Published on September 2, 2026, at 07:19 UTC. The SHA-512 value of the package matches the integrity value published on npm. The package contains no CHANGELOG.md, and no version-specific change evidence was found in the verified material. This documentation gap remains explicitly open.
Addendum to 9.1.536
The following details come from the integrity-verified published package of September 1, 2026:
- Work tasks continue beyond private Telegram replies. After buffered direct messages, King continues the work with a limited additional step unless the user explicitly pauses or stops.
- Short status inquiries do not interrupt the running workflow.
- When the retry attempts after empty reasoning responses are exhausted, King reduces the reasoning effort instead of leaving it unchanged for further attempts.
- More on-demand tool schemas remain available; messages are offloaded only when the available space in the history runs short.
- Included are the verified progress rule for TodoList and a one-line start path for God Mode with Swarm.
Addendum to 9.1.99
The existing feature documentation describes the joint offloading of consecutive text-only tool results: when the batch exceeds 12,000 characters, eligible large results are stored privately. Readable references remain in the model context; raw history and media are retained. The previously missing version entry now explicitly points to this feature.
9.1.70: change details open
Published on August 24, 2026, at 15:56 UTC. The SHA-512 value of the package matches the integrity value published on npm. The package contains no CHANGELOG.md; the existing feature descriptions do not show a clear difference from 9.1.69. This documentation gap remains explicitly open.
9.1.57: change details open
Published on August 23, 2026, at 07:28 UTC. So far, this version has appeared only as the starting point of a collective heading. In the verified material, no dedicated version-specific change evidence has been assigned to it. This documentation gap remains explicitly open.
The CHANGELOG.md contained in the immutable npm package 9.1.597 ends at 9.1.594. The added notices for 9.1.595 through 9.1.597 are on this page. The published package was not subsequently rewritten under the same version number.
9.1.41 and 9.1.42 are withdrawn
These two versions were accidentally branched from 9.1.38 instead of 9.1.40. Write continuation, self-hash, and turn watchdog were therefore missing. Both npm versions are marked as deprecated; latest and next never pointed to them. 9.1.43 contains their intended changes on the complete protection base.
Update and verify
king update
blun --version
After installing 9.1.599, the version output must show 9.1.599. Updating from 9.1.597 and from the local version 9.1.598 via the public update sources has been verified. A console that is already running loads the new code only after it restarts. Then also check /version in it.