Agent Version History¶
This page lists changes that affect how users work with, configure, or review Agents. Read the relevant notes before upgrading. Unless stated otherwise, existing Agents and tasks do not require additional action.
v0.8.0 (2026/08/12)¶
This release updates Beak, obs-agent, and obscli separately. Beak adds MCP configuration refresh and Runbook references while improving message channels, session titles, and command-delivery reliability. obs-agent adds a DQL querying Skill, simplifies task-completion and run-limit protocols, and improves MCP runtime behavior, checkpoints, and offline reconnection. obscli corrects container reference parameters.
Beak¶
New Features¶
- Webhook message-channel delivery adds a “deliver original events first” option. When enabled, each alert is delivered to the target channel immediately, while the Agent can still analyze events within the aggregation window and deliver the final result. Default alert tasks use the
owl-alert-investigationSkill when it is public and enabled; failure to deliver an original event does not block subsequent analysis (471b5ff0) - WeChat IM message channels support display aliases of up to 50 characters. An alias only affects the displayed name and task intake target name; it does not change account binding, enablement, or message delivery. Existing channels without aliases continue to use their original names (6454837e)
- MCP management adds remote tool discovery, batch discovery, and targeted Profile refresh. If refresh fails, the last known good tool snapshot remains available, and a failure in one MCP is isolated from other resources (#38)
- Messages can reference knowledge-base Runbooks and automatically bind the
runbook-dslSkill. References preserve Runbook resource identity so that an Agent can read the complete content and execute it according to the Runbook DSL (#50) - Container references now consistently use the structured
containertype and canonical container ID, allowing Agents to invoke Owl container queries deterministically (#53)
Bug Fixes¶
- Fixed cancellation commands not being delivered reliably after an active session was deleted and related A2A calls not being cancelled promptly. Beak now persists session-cancellation commands and cancels associated calls (5d670cee)
- Fixed command delivery potentially being lost or duplicated while an Agent was temporarily offline, after service restarts, or under multi-instance contention. Beak now converges command state through persistent delivery records, leases, retries, and ACKs (5d670cee)
- Fixed task-name generation occasionally failing for new sessions. Title tasks are now persisted and run independently of the main response, can retry after model timeouts, Agent disconnects, or service restarts, and do not overwrite names changed manually by users (#51)
Optimizations¶
- Optimized Agent and message-channel listing and intake paths.
agents/availableno longer queries Skill/MCP associations one Agent at a time, and enterprise WeChat and other channels consistently use the SDK to validate credentials and account identities (5d670cee)
obs-agent¶
New Features¶
- Added the
dql-queryingdomain Skill, which gives models versioned DQL syntax, mappings from common query intents, cross-dialect counterexamples, and a query-validation workflow. Routine queries prefer dedicated Owl tools or typed/simple queries, while complex DQL is still validated before execution (#47) - The MCP runtime can safely activate remote tools, switch candidate configurations, and perform targeted refreshes while retaining the last known good tool snapshot during cold-start or isolated resource failures (#38)
Bug Fixes¶
- Fixed the generic obs-agent completion tool competing with business tools such as Owl and allowing a model to report a promise of future work as task completion. Ordinary conversations now end with a natural reply, historical completion-tool records no longer enter model context, and Task Insight can still be submitted independently when needed (#42, #45)
- Fixed new messages after an active checkpoint being forced to continue the previous task. obs-agent now gives the bounded checkpoint and latest message to the model together, and only calls the model after resumed state is persisted, preventing runtime state from diverging from conversation records (#41)
- Fixed a worker potentially continuing to reply after receiving a session-cancellation command. obs-agent now stops the matching worker and prevents further replies (5d670cee)
- Fixed MCP launch commands not being resolved against their configured environment, package runners timing out too readily on first launch, and HTTP MCP authentication, authorization, or access-policy failures being difficult to diagnose. obs-agent now resolves commands against the effective PATH and working directory, gives
npxanduvxmore appropriate startup time, and reports safe, structured error types (#55)
Optimizations¶
- obs-agent removes model-reported goals, progress, evidence, and dynamic leases, replacing them with deterministic limits on model calls, tokens, and elapsed time. Configuration is unified around run limits such as
AGENT_MAX_LLM_CALLS; old iteration settings remain only as upgrade-compatible inputs (#48) - After reconnecting, obs-agent receives incomplete commands with their original message UUID and returns an ACK, preventing duplicate user messages and missed pending tasks (5d670cee)
- Removed ineffective environment variables for history trimming, context compaction, tool-loop context, and permission mode to keep deployment configuration consistent with runtime behavior. Complex conversations no longer have a cumulative token hard limit by default; operators can still enable one explicitly with
AGENT_MAX_RUN_TOKENS(#56)
obscli¶
Bug Fixes¶
- Fixed an “@container” reference being sent as
deployment, which Owl could not identify. obscli now sends thecontainertype and canonical container ID (#53)
v0.7.1 (2026/08/07)¶
This release primarily fixes evidence retention and error handling in obs-agent's Owl query-repair flow, keeping diagnostic data fully traceable and preventing ineffective retries for non-repairable query-builder errors.
Bug Fixes¶
- Fixed Owl query repair potentially losing original parameters, Schema diagnostics, and raw bytes for structured data, as well as ending the conversation early when repair attempts were exhausted. obs-agent now persists typed diagnostics and raw evidence that can be read in full through
read_tool_event, and continues to produce a business conclusion after repair fails (#40) - Fixed obs-agent treating invalid DQL generated by the Owl Simple Query builder as a repairable parameter problem and retrying repeatedly. When a compatible Owl version returns a structured error, obs-agent now displays an explicit
tool_builder_errorand stops ineffective repair; direct DQL syntax errors and ordinary parameter errors remain repairable (#39)
v0.7.0 (2026/08/05)¶
This release strengthens obs-agent field diagnostics and improves long-conversation history compaction, subagent reliability, Owl query repair, and the obscli interactive experience.
New Features¶
- obs-agent's
collect_bug_reportnow creates a v2 diagnostic bundle after structured approval. It can collect the current session, tool and LLM timelines, bounded rotated logs, the latest six hours of runtime metrics, network and build information, heap/goroutine profiles, and an optional CPU profile. Reports consistently redact sensitive data, produce a bounded partial report when an individual collector fails, and use dedicated diagnostic assets with 30-day retention, seven-day signed downloads, auditing, and expiry cleanup (#34)
Bug Fixes¶
- Fixed unexecuted tools in the same batch lacking a terminal state after repeated failures stop the tool loop, and continuing the task potentially triggering provider 400/2013 errors. Incomplete calls now record a structured
skippedresult while remaining unexecuted (#33) - Fixed single-replica obs-agent Helm upgrades with RWO persistent volumes potentially stalling on Multi-Attach, and branded Charts retaining an unresolved Beak address. Charts now use the
Recreatestrategy and inject and validate the branded address during packaging (#24) - Fixed Task Insights in Chinese conversations potentially appearing in English because of English tool schemas or results. Task Insights now explicitly use the same natural language as the final reply for that turn (#29)
- Fixed Owl structured-data summaries exposing cache file paths to the model, causing Agents to guess local paths and fail with
read_file. The model now reads managed results through typed references (#26)
Optimizations¶
- Optimized long-conversation history compaction and subagent reliability. At 80% context usage, runtime performs one bounded compaction, limits summary budgets and oversized projected tool results, rejects empty summaries, and displays compaction duration and estimated context reduction in obscli/Web. It also completes subagent tool evidence, failure terminal states, and a separate operation lease for each provider retry. obscli retains prompts that fail to send in input history (#19)
- Optimized the
owl_execpath to preflight parameters and DQL through structured capability negotiation after safety checks and approval, returning repairable problems to the model before the real query. It also reduces duplicate Task Insights and unnecessary Owl result rereads, supports per-request timeouts throughLLM_REQUEST_TIMEOUT, and adapts obscli Markdown tables to terminal width (#30) - Reduced Agent model round trips by projecting small Owl data directly within two size limits and allowing the final Task Insight and task completion in one structured submission. Large data still uses summaries and managed references (#28)
- Simplified user-visible
task_blockedoutput to show only the Agent's business conclusion or a short summary instead of repeating runtime headings, reason codes, safe actions, and fallback answers. Structured checkpoints and diagnostic fields remain unchanged (#27) - Expanded Agent trace identity fields with the standard
gen_ai.conversation.idand build version while retaining existing compatibility session fields (#25) - Improved Owl tool-call guidance. In a new environment, Agents inspect Owl help and the specific tool schema first, prefer read-only tools and validate DQL before querying, determine execution state from structured results, and select the matching tool for Errors, Logs, APM, Events, Metrics, or Network data (#37)
v0.6.1 (2026/07/30)¶
This release fixes public Skill synchronization and runtime state, Skill source downloads, and permission and state boundaries for Agent Collaboration settings.
Bug Fixes¶
- Fixed public Skills potentially missing from the runtime index, skipping dependency installation, or disappearing from the local version manifest when profile synchronization and installation coordination overlap after installation-state tracking is enabled. obs-agent now explicitly distinguishes public Skills that do not require per-Agent installation, keeps them available after dependencies are ready, and safely updates Skill packages and version manifests under the same cache lock (4036ac69)
- Fixed Skill source downloads always returning ZIP, single-file Skills being unavailable for download, and uploaded TAR.GZ packages using the wrong filename and content type. The download API now preserves the original source package and returns matching filenames and content types for
SKILL.md, ZIP, or TAR.GZ (156401c5) - Fixed Agent creators being unable to manage A2A collaboration settings they created, and offline, creating, or blocked Agents still accepting collaboration updates. Creators can now manage collaboration settings, while non-writable states return an explicit conflict error (156401c5)
v0.6.0(2026/07/29)¶
This release adds per-Agent Skill/MCP installation status and long-running task history compaction and recovery. It also fixes obs-agent OpenTelemetry metrics and trace attributes so resource installation, long-running execution, and Agent runtime data can be tracked through stable structured states.
New Features¶
- Added per-Agent Skill/MCP installation status and runtime health tracking. After an Agent Profile, Skill, or MCP binding is saved, Beak notifies the matching obs-agent to synchronize immediately. obs-agent installs, removes, and health-checks resources, then reports enabled, installing, installed, failed, runtime health, and revision-convergence states. Administrators can inspect Agent-level summaries and item details and retry failed resources. Durable attempts, upgrade-pending states, and periodic synchronization converge offline Agents, older Agent versions, and failed installations (54041571)
- Added long-running task history compaction and recovery to obs-agent. Tool results now produce explicitly marked budgeted previews while retaining event-addressable full details. Near the model context limit, Agent creates a continuation summary without splitting tool calls from their results, persists the exact replacement history and resumable checkpoint, and restores them after a later message or process restart. obscli also adds
/compactto compact older history in the current Task manually (817b6f18)
Bug Fixes¶
- Fixed inconsistent obs-agent OpenTelemetry metrics and trace attributes. Agent, tool, and Skill operation names, statuses, duration units, and histogram buckets are now aligned; metrics use delta temporality; and Agent identity, Skill name, call ID, session, and other key dimensions are restored for accurate call-count, latency, and failure aggregation (c679f78c, ebc7d5e6)
v0.5.0(2026/07/22)¶
This release focuses on Beak-native Agent collaboration, obscli automation and structured context selection, obs-agent enterprise proxy and container deployment capabilities, and stronger reliability and observability for Agent message delivery, long-running tasks, subagents, and tool loops.
New Features¶
- Added Beak-native Agent-to-Agent (A2A) task delegation. A target Agent can publish an addressable name and capability description and authorize trusted sources. A caller Agent discovers authorized targets with
list_reachable_agentsand delegates work withsend_message. The target operates within its own data scope, Skills, tool permissions, approvals, and guard boundaries, then returns a structured terminal result. Queued work resumes when an offline target reconnects, and obscli can display A2A task sessions in read-only mode (cf004e11) - Added the non-interactive
obscli runcommand. It accepts one-shot prompts from an argument, file, or stdin, lists online Agents, and returns the answer, usage, and attachment metadata as raw Markdown or JSON. Stable exit codes, timeouts, diagnostics, YOLO, and subagent options make it suitable for shell scripts and automation. See the obscli manual (1a572ac1) - Added observation resource and Skill selection to the obscli interactive input. Enter
@to select resources by Service, Dashboard, Application, Host, or Container type, and enter$to select Skills available to the current Agent. Selections are sent as structured metadata and restored with input history. See the obscli manual (9e8eab12) - Added enterprise HTTP forward proxy support to obs-agent, including Basic Auth,
HTTP_PROXY/HTTPS_PROXY/NO_PROXY, enterprise CAs, Linux installation and self-update, Docker, Kubernetes, and Helm. Proxy credentials are redacted from logs. See the obs-agent forward proxy manual (0ad5dd7c)
Bug Fixes¶
- Fixed directed user messages potentially failing to wake the target Agent when it was offline, the WebSocket disconnected, the message bus failed, or an ACK was lost. The server now creates a durable outbox for each target, retries with backoff for up to 24 hours using at-least-once delivery, and stops only after receiving a typed ACK from the target Agent (b76cd6a0)
- Fixed Kubernetes YAML and Helm templates using ephemeral volumes by default, which could lose active session/task history after a Pod rebuild or upgrade. New templates require persistent volumes for the work directory, profile cache, and Owl data, and the Docker examples explicitly require reusing named volumes (0c1f0a62)
- Fixed obs-agent installation directory and sensitive file permissions being affected by host
umaskor existing file modes. Configuration, data, and log directories now use fixed permissions; the message encryption key and main log are restricted to owner read/write; and sensitive-path symlinks are not followed (3b78a24e) - Fixed session-local subagent credit not being included in the parent task usage total. obscli and observability data now show complete token and credit usage (6eb6b2af)
- Fixed Agents being unable to read attachments in automated sessions when the system user did not have uploader permissions. System-triggered sessions such as Webhook and scheduled tasks can now access attachments uploaded with their messages (b0c9ea93)
- Fixed Webhook, scheduled task, and external conversation runs remaining in a running state after the Agent runtime stopped with a structured failure result. The server now marks the matching run as failed from the stable
stop_reasonand records its summary (e4453728)
Optimizations¶
- Improved progress feedback after failed tool calls. When it can provide an accurate update, Agent uses structured fields to link the failed calls and explains the direct cause, confirmed impact, and adjusted next step before the next user-visible tool call, reducing unexplained retries (0cebc36c)
- Optimized long-running tool loop budgets with progress-aware lease renewal, replanning before pausing stalled work, and separate boundaries for LLM calls, tokens, elapsed time, ordinary transient retries, and HTTP 429 responses. Structured checkpoints reduce ineffective loops and upstream message-limit errors (7e56c92f)
- Optimized session-local subagent scheduling with a wave supervisor, operation-aware leases, panic recovery, safe retries, structured internal progress, cancelable
wait_for, and explicitdecline_subagents. Independent work remains parallel while strictly ordered work is no longer incorrectly placed in the same wave (d8a2ba04) - Optimized Agent OpenTelemetry span semantics and attributes across Agent run, LLM, tool, and subagent traces, adding task, message, usage, runtime result, and dynamic budget data for easier cross-version queries and troubleshooting (50067540)
v0.4.0(2026/07/08)¶
This release focuses on session-local subagents, containerized obs-agent deployment, and release pipeline separation. It also adds Agent observability fields and fixes several runtime issues.
New Features¶
- Added session-local subagents. Agent can create and schedule subagents within the same session, and obscli can display subagent events, status, and output. This helps split complex tasks into smaller parallel work units (b624dc63)
- Added containerized obs-agent release support. CI now publishes Docker images, Kubernetes manifests, Docker Compose templates, Helm values, and Helm charts. You can deploy obs-agent with Docker, Kubernetes YAML, or Helm. See the obs-agent container installation manual (2aff32e1)
Bug Fixes¶
- Fixed Agent skill indexes that could include unreadable skills, preventing runtime attempts to read skill files without permission or access (ca3029f8)
- Fixed Owl installation configuration that could still write old paths. Installation and dependency initialization now consistently use the
obs-agentwork directory (255e7b0c)
Optimizations¶
- Optimized Agent OpenTelemetry trace fields by adding session, task, model, and tool-call attributes for easier Agent execution troubleshooting in traces (f859adfe)
- Optimized agent/obscli CI release configuration by splitting common checks, agent release, obscli release, Docker image, and deployment configuration into separate CI files, reducing release configuration maintenance cost (2aff32e1)
v0.3.1(2026/07/02)¶
This release is a v0.3.0 agent/obscli hotfix. It mainly fixes self-hosted Agent installation and MCP read-only tool approval issues.
Bug Fixes¶
- Fixed a self-hosted installation issue on fresh hosts where Owl/Skill dependencies could be installed before the
obs-agentuser was created, causingchown obs-agent:obs-agenton/var/lib/obs-agent/work/.owlto fail (105e5620) - Fixed MCP tools that declared
readOnlyHintstill potentially entering the write-operation approval path. Read-only MCP tools now follow a lower-risk approval path based on the read-only hint, reducing unnecessary user confirmations (671f1733)
v0.3.0(2026/07/01)¶
This release focuses on the obs-agent/obscli rename, Beak-to-self-hosted-Agent message link encryption, model selection, and the Windows terminal experience. The main updates are as follows:
New Features¶
- Beak and self-hosted
obs-agentWebSocket chat links now support HPKE application-layer message encryption forchat:user/chat:agentcontent and business metadata, with Beak key ring, agent local key file, and key rotation support. New installs default to/var/lib/obs-agent/message-hpke-key.json; for deployment and troubleshooting, see the obs-agent message link encryption operations document (16cd141) - Added
obs-agent/obsclirelease artifacts, install scripts, uninstall scripts, build commands, and user documentation entries. Release packages, default paths, and local configuration now use obs naming (4205ac0) - Added
uninstall-legacy.shfor migrating from the old fixedbeak-agent/obsyclilayout toobs-agent/obscli. Before upgrading, see the obs-agent daily operations manual and obscli manual for cleanup guidance (44dd995)
- Added session model selection. Users can select model mode at the session level, and obscli displays routing and the actual response model (eb7ebe6)
- Added
obs-agentYOLO mode configuration for explicitly enabling a more permissive mode in self-hosted deployments, with permission status shown in obscli (8f424e7) - Added Forethought Connector / Testing Studio socket integration for carrying Agent creation, authentication, and session links through connector RPC, deployment isolation, and WebSocket channels (382d6cc)
Bug Fixes¶
- Fixed inconsistent AI Hub error code mapping and Agent runtime
stop_reasonnaming, so obscli displays more stable causes and handling suggestions (8c0e946) - Fixed missing trace id propagation when AI Hub Chat API or tool APIs fail. The Agent now extracts
X-Trace-IDand includes it in visible error content for diagnosing 403 and upstream timeout issues (45c3820) - Fixed incomplete uninstall cleanup after the obs rename.
uninstall.sh --yesnow cleans fixed-layout binaries, systemd units, sudoers, config, data, logs, and theobs-agentuser/group (44dd995) - Fixed Windows PowerShell startup rendering where
obsclicould show raw ANSI control characters or a broken banner border (492aaef)
Optimizations¶
- Optimized install, upgrade, self-update, and release script naming. Commands such as
make build-obscli,make release-obscli,install-obscli.sh,install-obscli.ps1, andrelease-obscli.shnow consistently useobscli(4205ac0) - Optimized the
obscliuser manual with Linux/macOS, Windows PowerShell, Windows Git Bash, and WSL install/uninstall path differences, plus legacyobsyclimigration guidance (4205ac0) - Optimized obscli table, null value, session list, and self-update prompt rendering to reduce misalignment and invalid ANSI output on Windows and narrow terminals (492aaef, f3f8e45)
- Optimized integration test execution by adding a Python harness and migrating shell cases to a more stable local and CI validation entrypoint (fa4e1be)
v0.2.1(2026/06/29)¶
This release focuses on Plan Mode stability for new planning rounds, approval interactions, and the obscli terminal experience. The main updates are as follows:
New Features¶
- obscli adds the
/statuslinecommand. Users can configure bottom status bar fields through a multi-select popup and persist preferences to~/.obscli/config.toml(0a95241) - obscli supports simulating IM/channel sessions. The context writes channel metadata, making it easier to validate markdown-only channel scenarios in the CLI (38cd453)
Bug Fixes¶
- Fixed an issue where running
/planagain in Plan Mode could reuse an old plan id, revision, or runtime memory. A new planning round now clears old state and starts again from revision 1 (2122100) - Fixed an issue where Agent did not include recent chat context by default, which could cause context loss in multi-turn conversations.
AGENT_RECENT_CHAT_HISTORY_MESSAGESnow defaults to 20 (81cf418) - Fixed missing WebSocket client notifications after session name updates. Session update events are now published so clients can refresh titles and lists promptly (00e943a)
- Fixed several obscli tool output and approval display issues, including stderr truncation, failed status coloring, color preservation after ANSI reset, approval popup cancellation, and turn completion after rejection (0a95241, 38cd453)
Optimizations¶
- Optimized the obscli interactive input experience by refactoring multiline editing, history search, slash command selection, popup selection, and terminal key parsing. It now supports common terminal sequences such as SS3 arrows, CSI-u/Kitty keyboard protocol, Home/End/Delete (0a95241, 91f4d6f)
- Optimized structured capability boundaries for markdown-only channel sessions. Plan Mode and high-risk operation approval actions are blocked in such sessions, with clear markdown text prompts (38cd453)
- Optimized Plan Mode runtime memory and context injection by retaining recent user inputs, latest plan update/final plan, and approved plan information, reducing context breaks after plan revisions or approval (2122100)
- Optimized obscli tool call display by truncating long output separately for stdout/stderr, avoiding rendering ordinary
ERROR:text as a failure result, and preserving colors after colored output resets (0a95241)
v0.2.0(2026/06/17)¶
This release focuses on obs-agent runtime diagnosability, AI Hub error propagation, Skill invocation chain, and obscli interaction display. The main updates are as follows:
New Features¶
- obscli adds a local configuration file
~/.obscli/config.toml, supporting customization of bottom status bar fields viafooter_fields. Options include displaying agent/task, model, token, context, permission, and plan status (b0ebe75) - obscli input editor adds local history persistence. Users can retrieve original questions from historical inputs in subsequent interactions after successful or failed sends (b0ebe75)
Bug Fixes¶
- Fixed an issue where Agent only handled structured error codes from AI Hub as generic LLM HTTP errors. Now it prioritizes propagating stable
stop_reasonsuch asINVALID_BODY,VALIDATION_ERROR,AUTH_INVALID,AGENT_API_KEY_DISABLED,DAILY_CREDIT_LIMIT_REACHED,MONTHLY_CREDIT_LIMIT_REACHED,PROTECTED_SECRET_INVALID,NO_AUTO_MODEL, and displays corresponding handling suggestions in obscli (a09dcaa) - Fixed an issue where OpenAI-compatible LLM responses wrapped in AI Hub envelope could not be parsed correctly. Agent now supports extracting real chat completion content from the
datafield and retains response model information (b0bc4e2) - Fixed issues with
query_session_eventslacking cursor-based pagination and unstable error classification. Addedcursorparameter and structured errors like missing parameters, history read failures as tool errors (b0bc4e2) - Fixed an issue where
render_documentmight overwrite existing files with the same name. Now creates files exclusively when generating documents to avoid accidentally writing to existing files (b0bc4e2) - Fixed issues where obscli session list still displayed closed or closing sessions, and empty list display was unclear. Now filters out closed status by default and shows an empty table when no sessions are available (b0ebe75)
Optimizations¶
- Optimized Agent user-visible text language contract. Final answer, tool commentary, progress feedback, approval reason, task insight, Agent UI copy, and closing summary prioritize following the original user question language, avoiding interference from Skill documentation, schema, or repair prompt language (b0ebe75)
- Removed Agent
use_skilllocal tool call. Skills continue to be used viaread_skill/read_skill_fileand Prompt instruction chain, preventing models from mistakenly calling ordinary Skills as executable tools (b0bc4e2) - Optimized Python tool exception handling, adding structured error returns for missing code, non-zero exit, timeout, missing
python3, and oversized output. Excessively large outputs are truncated as short errors withoutput_too_largeto avoid polluting subsequent context (b0bc4e2) - Optimized Agent runtime stop results. Added titles, summaries, and actionable next steps for AI Hub errors. Reduced redundant completed/blocker display for scenarios reaching maximum tool call count, improving obscli/Web UI readability (a09dcaa)
- Optimized token usage and observability events. LLM response models are written to token metadata. obscli bottom status bar can display actual response models, facilitating troubleshooting of automatic routing and model fallback situations (b0ebe75)
- Optimized obs-agent
--versionoutput, adding branch, commit, release date, and Go version to confirm the source of online agent/obscli releases (b0ebe75)
v0.1.9(2026/06/15)¶
This release focuses on obs-agent default model configuration, completing the uninstall process, and release artifact integrity. The main updates are as follows:
New Features¶
- Agent supports omitting
LLM_MODELconfiguration. Runtime defaults to using thedefaultmodel identifier. Installation scripts and Beak install-config no longer require users to provide model configuration (d096537) - Agent release adds
uninstall.shartifact. Users can fetch the uninstall script online via the release URL. Release, upload, and local verification processes all check for the existence of this uninstall script (1e2c13f)
Bug Fixes¶
- Fixed an issue where the active
LLM_MODELfrom the oldagent.envmight persist during upgrades. The installation script removes this old configuration and only retains default comments, preventing old local model values from overriding runtime defaults (d096537) - Fixed an issue where the
response_modelof LLM Chat span always equaled the request model. Now prioritizes using themodelfield from the upstream response body, falling back to the request model on failure or absence (d096537)
Optimizations¶
- Completed Agent uninstall scope.
uninstall.sh --yesstops and removes theobs-agent-update-checkservice/timer, removes updater/update-check binaries and/etc/sudoers.d/obs-agent, and fixes an issue where residual process detection under the test root directory incorrectly scanned host processes (1e2c13f) - Clarified uninstall boundaries.
uninstall.shdoes not delete system commands, language runtimes, Python/Node packages, fonts, etc., installed or checked byskill-dep.sh, to avoid accidentally deleting components shared by the host or other services (1e2c13f)
v0.1.8(2026/06/12)¶
This release focuses on obs-agent runtime diagnostics, tool loop stability, Skill usage chain, and obscli display corrections. The main updates are as follows:
New Features¶
- Agent adds a
collect_bug_reporttool that collects runtime information, recent logs, metric status, sanitized env/config, and profile cache diagnostics, then packages and uploads them to the current task session for troubleshooting Agent issues (7e073a1)
Bug Fixes¶
- Fixed an issue where LLM timeouts, rate limits, upstream errors, and network errors lacked stable stop reasons. Agent runtime now returns structured reasons like
llm_timeout,llm_rate_limited,llm_upstream_error,llm_network_error, and actionable suggestions (7e073a1) - Fixed issues with insufficient diagnostic information for tool call parameter JSON exceptions, repeated calls to the same failed action, and repeated similar tool errors. Stop results now include the most recent successful items, blocking items, and
safe_next_actions(7e073a1) - Fixed an issue where obscli might double-count incremental token usage when both streaming token usage and final token usage arrived simultaneously. Incremental token events are deduplicated by
reply_to_message_uuid(7e073a1) - Fixed an issue where obscli might misinterpret arbitrary strings when attaching to a session. Now only accepts sequence numbers or explicit session IDs with
session_/session-prefixes (7e073a1)
Optimizations¶
- Optimized structured envelope for tool results sent to LLM. Added
ToolSuccess/ToolError, schema validation repair, routing repair, and cache hit markers, reducing invalid retries and incorrect tool selection (7e073a1) - Optimized Skill usage chain. Skills index no longer exposes guessable
.beak-skillsfile paths. Addedskill_name,skill_file_path,tool_display_nameto tool events. obscli display forread_skill/read_skill_fileis clearer (7e073a1) - Optimized profile cache synchronization. Added profile cache file locks and stale lock cleanup. Generates skills index from installed version information, reducing the probability of inconsistent cache states due to concurrent synchronization (7e073a1)
- Optimized Agent identity and Prompt rules. Self-introduction prioritizes using runtime
agent_name. Avoids exposing underlying LLM provider, model id, internal project names, and code package names (7e073a1) - Optimized obscli tool invocation display. Supports
tool_display_name, limits display lines for long tool reasons, and only replays recent tool output when a working message exists (7e073a1) - Optimized metadata for obscli task/session creation. Explicitly writes
session_type=taskandsource_type=userto help the server distinguish CLI user task sources (57fb449)
v0.1.7(2026/06/10)¶
This release focuses on obscli interaction experience, obs-agent GTrace observability, Skill usage chain, and Plan Mode stability. The main updates are as follows:
New Features¶
- obscli adds a
/savecommand that downloads internal asset attachments carried in Agent replies to~/.obsclis/attachments/and provides prompts when savable attachments exist (01d75d9) - obscli supports directly displaying
task_insightandsession_summaryin the conversation stream, facilitating viewing Agent's phased insights and task closing summaries (316ecf2, 01d75d9) - Agent adds
read_skillandread_skill_filetools for first reading explicitly specified Skill'sSKILL.mdand referenced files, then executing tasks according to Skill instructions (01d75d9) - Agent supports user
@entity/explicit Skill request context. Message metadata can carryrequested_skillsand inject them into the Prompt, avoiding guessing usage solely based on Skill names (d460e73) - Agent adds automatic task title generation capability. When obscli creates an unnamed task, Agent can generate a title based on the first user message (6b5618a)
Bug Fixes¶
- Fixed an issue where obscli's working status disappeared prematurely in some LLM rounds. Ordinary messages sent successfully with a message UUID will continuously track running status (01d75d9)
- Fixed unstable error prompts and tool output display in obscli. Unified user-visible error format and retained complete single-line tool output to avoid critical errors being truncated and hidden (01d75d9)
- Fixed incompatibility with old obs-agent configuration
OTEL_EXPORTER_OTLP_PROTOCOL=grpc. Now normalizes tohttp/protobufto avoid startup failures with historical installation configurations (8d663c1) - Fixed an issue where
input_previewof LLM Chat span repeatedly displayed the same original user input across multiple tool loops. Now records the most recent non-runtime prompt message in this LLM request (01d75d9) - Fixed an issue where Plan Mode structured interaction schema might still rely on unstable action labels.
accept/reject/skip/reviseare now processed only by stable action IDs (c55f653, 01d75d9)
Optimizations¶
- Optimized obs-agent GTrace/OTEL reporting. Defaults to OTLP HTTP/protobuf, supports
OTEL_EXPORTER_OTLP_HEADERS, and adds Agent identifiers, Plan Mode status, and LLM invocation context to logs and traces (01d75d9, 8d663c1) - Optimized Skill dependency installation flow. Converged asynchronous dependency installation, timeout control, process group cleanup, and changed package filtering into
cmd/agentruntime. Profile Client only handles synchronization and indexing (c4be7f0) - Optimized Agent tools and Prompt rules. Clarified usage constraints for attached session files, uploaded attachments, Skill file reading, working directory writes, and
progress_feedback(01d75d9, d460e73) - Optimized Plan Mode runtime and obscli display. Enhanced direct answer repair, structured interaction events, history replay, plan state recovery, and compact rendering of tool output (c55f653)
- Optimized obscli task creation and list experience.
/newtasksupports custom task names. Unnamed tasks can go through the automatic title process (6b5618a)
v0.1.6(2026/06/03)¶
This release focuses on Plan Mode stability, task closing flow, and obscli runtime display. The main updates are as follows:
New Features¶
- obscli adds a
/close <number|task_id>command supporting closing the current or specified task. After closing, the task enters closing/completed flow, preventing new messages from being sent (4efd12a) - Agent adds a
session_summaryevent. When a task closes, a session summary is generated, and the server completes the session state transition (4efd12a) - Agent adds an
agent_runtime_resultevent. obscli can display tool loop stop reasons, blocking items, suggested next steps, and recent completed work (845d571)
Bug Fixes¶
- Fixed an issue where Plan Mode structured interactions might fail to attach back to triggering user messages during history replay. Plan events now fallback to associating with historical messages via
reply_to_message_uuid(845d571, 713593e) - Fixed an issue where Plan Mode final state might be reverted by old snapshots, preventing completed/interrupted states from being overwritten by expired planning states (845d571)
- Fixed unstable judgment in Plan Mode interaction confirmation flow. Unified use of
accept/reject/skip/reviseactions and clarified that after confirmation, the next step should submit the final plan (713593e) - Fixed an issue where session status API did not support
closing. When closing a task,session_close_requestedcontext is published, allowing Agent to generate a closing summary (4efd12a)
Optimizations¶
- Optimized Plan Mode interaction schema. Removed global
free_text, replaced with field-levelcustom_input/comment_inputandtext_entry, improving CLI/Web UI structured input consistency (713593e) - Optimized obscli Plan Mode display. Hides intermediate
plan_execution_progressnoise, avoids duplicate rendering of structured and text content, and correctly ends current working status when plan events arrive (845d571, 713593e) - Optimized Agent Prompt and Prompt Builder rules for Plan Mode. Added new interaction actions, text input fields, and session context constraints (713593e)
v0.1.5(2026/06/01)¶
This release focuses on Agent MCP Client, Plan Mode, obscli interaction capabilities, and permission/approval flow improvements. The main updates are as follows:
New Features¶
- Agent adds MCP Client capability, supporting synchronization of MCP configurations and toolkits from profile cache, and unified routing invocation of MCP tools via
mcp_list_servers,mcp_list_tools,mcp_call_tool(fcf17e3, 14aad95) - Agent adds session/task-level Plan Mode, supporting plan draft, structured interaction, final plan confirmation, execution progress, blocking, interruption, completion, and other plan events (c69d29c, d65661d)
- obscli adds
/plan,/plan-approve,/plan-reject,/plan-revise,/plan-interruptcommands, and supports displaying plan status and structured interaction content (c69d29c, d65661d) - obscli adds
/permission-fulland/permission-standardcommands for switching the current task's permission mode in CLI (d65661d)
Bug Fixes¶
- Fixed an issue where obscli
/tasksand/attachdid not restrict to CLI-created tasks, preventing CLI from accidentally attaching to sessions not created by obscli (29faa63) - Fixed an issue where unknown subcommands in obscli startup parameters did not report errors promptly, preventing erroneous commands from being silently ignored (5d9f923)
- Fixed incompatibility of obscli recent history message reading with some response structures. Added fallback parsing for
content.messagesandcontent.data(5d9f923) - Fixed an issue where high-risk commands like remote login and database clients in
bashdid not enter runtime approval judgment (26edc7a)
Optimizations¶
- Optimized MCP tool exposure strategy: By default, only stable routing tools are exposed. Small toolset servers can expand direct tools as needed, while large toolset servers continue routing via
mcp_call_tool, reducing tool schema bloat (fcf17e3, 14aad95) - Optimized Agent Prompt and prompt cache structure. Added rules for MCP, Plan Mode, permission mode, and session context. Included MCP toolset version in cache key calculation (41d0018, fcf17e3, c69d29c)
- Optimized default history message query count for
query_session_events, increased from 3 to 20, enhancing multi-turn context recovery capability (26edc7a) - Optimized obscli input experience. Supports slash command fuzzy matching, highlighting,
Ctrl+Lclear screen, doubleEsccancel, unified command history, and cleaner startup prompts (26edc7a, c69d29c)
v0.1.4(2026/05/27)¶
This release focuses on Agent Prompt simplification and obscli history message display stability. The main updates are as follows:
Bug Fixes¶
- Fixed an issue where obscli might synchronize early historical answers after startup or reconnection, causing the current interaction area to be overwritten by old messages (6e05c87)
- Fixed an issue where obscli might output raw JSON of historical events like
web_search_evidenceto the interaction interface. Such events are still retained in obscli logs for troubleshooting (6e05c87)
v0.1.3(2026/05/26)¶
This release focuses on agent runtime, obscli display, and installation/upgrade flow optimizations. The main updates are as follows:
New Features¶
- Agent UI schema overlay is now driven via
scripts/prepare.pyandscripts/compile.py. Runtime selects overlay based on skill and compiles agent-ui@1 draft blocks (5a1e699) submit_agent_ui_blockssupports usingtool_input_schemaprovided by the overlay. Agent only submits draft blocks, no longer needing to submitoverlay_idandlayout(5a1e699)obs-agentadds--default-envsparameter for outputting runtime default environment variable comments. Installation scripts can directly use default values from the binary (823c0bb)- Added
AGENT_REASONING_DISPLAY_MODEconfiguration supportinghidden/rawreasoning display modes, defaulting to hiding raw reasoning (823c0bb)
Bug Fixes¶
- Fixed unclear layering of tool invocation running events: Human-visible explanations are now written to
metadata.commentary, whilecontentof running events remains empty to prevent client misreading (c2cb6e6, 823c0bb) - Fixed an issue where user-customized active environment variables in
agent.envmight be lost during Agent upgrades. Upgrades preserveKEY=valueandexport KEY=valuefrom old files not overwritten by new configurations (823c0bb, 5a1e699) - Fixed Task Insight event attribution issue, ensuring insights are persisted and published according to reply message relationships (5a1e699)
Optimizations¶
- Optimized obscli thinking and tool invocation display. Long reasoning, tool explanations, and output previews are folded/truncated to reduce terminal noise (823c0bb)
- Optimized Prompt rules. Final reply language is determined based on the original user task, avoiding leakage of internal information like runtime bookkeeping, repair prompt, tool protocol (823c0bb)
- Optimized Task Insight submission flow. Allows multiple submissions of phased facts, actions, assumptions, and conclusions during a task, using runtime time to generate timestamps (5a1e699)
v0.1.2(2026/05/25)¶
This release focuses on optimizations for agent and obscli, with no adjustments to Beak server. The main updates are as follows:
New Features¶
- Agent adds tool invocation visualization capability, displaying tool call reasons, batch execution status, output preview in CLI, and supporting
Ctrl+Tto toggle full tool output (4bd18ed) - Agent adds Prompt Cache support. Splits system prompt into stable prefix, semi-stable prefix, and dynamic suffix. Adds explicit cache block passing capability for OpenAI-compatible Providers (c9274e7)
query_session_eventstool adds on-demand query capability for recent user conversations and tool execution history, reducing default injected context volume (c9274e7)obsclisession page adds display for task, Agent, input/output/cache Token, and remaining context status (c9274e7)
Bug Fixes¶
- Fixed an issue where Agent installation configuration API did not deliver
llm_max_tokens, ensuring self-hosted Agent installation correctly passes maximum Token configuration (92e776d) - Fixed unclear prompts in self-hosted installation scripts for scenarios like error interfaces, HTML/JSON responses, or empty responses. Added HTTP status, response summary, and env file format validation (92e776d)
Optimizations¶
- Optimized
/agentsand/tasksdisplay. Hides raw UUIDs, retains internal numeric selection capability, improving CLI readability (c9274e7) - Optimized Agent final reply language rules. Defaults to following the language of the user's latest message, while preserving original commands, code identifiers, and proper nouns (c9274e7)
- Optimized LLM observability data. Added Prompt Cached Tokens, cache hit rate, and context usage to logs and trace attributes (c9274e7)
- Optimized tool invocation event metadata. Added batch and output summary fields for unified frontend and CLI display (4bd18ed)