Skip to content

Releases: ongridio/ongrid

Ongrid v0.8.7

18 Jun 07:02
319e18c

Choose a tag to compare

Install

Ubuntu 22.04+, Debian 12+, RHEL/Rocky 9 are supported.

AMD64

wget https://github.com/ongridio/ongrid/releases/download/v0.8.7/ongrid-v0.8.7-linux-amd64.tar.xz
tar -xf ongrid-v0.8.7-linux-amd64.tar.xz && cd ongrid-v0.8.7-linux-amd64 && sudo ./install.sh

ARM64

wget https://github.com/ongridio/ongrid/releases/download/v0.8.7/ongrid-v0.8.7-linux-arm64.tar.xz
tar -xf ongrid-v0.8.7-linux-arm64.tar.xz && cd ongrid-v0.8.7-linux-arm64 && sudo ./install.sh

What's Changed

  • docs(readme): update install commands to v0.8.6 by @youzi-1122 in #113
  • feat(web): 知识库/技能/助理 支持查看与编辑详情 by @kylexlau in #109
  • feat(alerts): add natural language alert rule drafts by @youzi-1122 in #116
  • fix(store): resolve soft delete unique conflicts by @youzi-1122 in #123
  • chore(release): bump version to v0.8.7 by @youzi-1122 in #124

New Contributors

Full Changelog: v0.8.6...v0.8.7

Ongrid v0.8.6

15 Jun 02:59
b7c3ec1

Choose a tag to compare

Install

Ubuntu 22.04+, Debian 12+, RHEL/Rocky 9 are supported.

AMD64

wget https://github.com/ongridio/ongrid/releases/download/v0.8.6/ongrid-v0.8.6-linux-amd64.tar.xz
tar -xf ongrid-v0.8.6-linux-amd64.tar.xz && cd ongrid-v0.8.6-linux-amd64 && sudo ./install.sh

ARM64

wget https://github.com/ongridio/ongrid/releases/download/v0.8.6/ongrid-v0.8.6-linux-arm64.tar.xz
tar -xf ongrid-v0.8.6-linux-arm64.tar.xz && cd ongrid-v0.8.6-linux-arm64 && sudo ./install.sh

What's Changed

Full Changelog: v0.8.5...v0.8.6

Ongrid v0.8.5

12 Jun 07:19
e8f3780

Choose a tag to compare

Install

Ubuntu 22.04+, Debian 12+, RHEL/Rocky 9 are supported.

AMD64

wget https://github.com/ongridio/ongrid/releases/download/v0.8.5/ongrid-v0.8.5-linux-amd64.tar.xz
tar -xf ongrid-v0.8.5-linux-amd64.tar.xz && cd ongrid-v0.8.5-linux-amd64 && sudo ./install.sh

ARM64

wget https://github.com/ongridio/ongrid/releases/download/v0.8.5/ongrid-v0.8.5-linux-arm64.tar.xz
tar -xf ongrid-v0.8.5-linux-arm64.tar.xz && cd ongrid-v0.8.5-linux-arm64 && sudo ./install.sh

What's Changed

  • feat(release): support arm64 server packages by @youzi-1122 in #80
  • fix(release): harden package release workflow by @youzi-1122 in #81
  • docs(release): update v0.8.4 release docs by @youzi-1122 in #82
  • docs(readme): drop docker compose install until stable by @singchia in #85
  • docs(agents): add 前端 UI conventions to AGENTS.md by @singchia in #84
  • docs(readme): add star history chart by @youzi-1122 in #87
  • feat(ui): show app version in sidebar by @youzi-1122 in #89
  • docs(readme): 适配 star history 深色主题 by @youzi-1122 in #90
  • fix(rca): use default LLM model for automatic analysis by @youzi-1122 in #92
  • security: harden JWT boot check, auth cache, goroutine leak, and timing attacks by @Qiuser in #97
  • fix(device): key host fingerprint on hardware (MAC|CPU|disk), not HostID/hostname by @singchia in #99
  • fix(frontierbound): stop device_id label falling back to edge_id by @singchia in #98
  • feat(metrics): complete database metric subplugin collection by @youzi-1122 in #101
  • chore(release): bump version to v0.8.5 by @youzi-1122 in #102
  • fix(metrics): harden scrape health and database analysis by @youzi-1122 in #103

New Contributors

Full Changelog: v0.8.4...v0.8.5

Ongrid v0.8.4

09 Jun 09:46

Choose a tag to compare

Install (Ubuntu 22.04+/Debian 12+/RHEL/Rocky 9):

AMD64:

wget https://github.com/ongridio/ongrid/releases/download/v0.8.4/ongrid-v0.8.4-linux-amd64.tar.xz
tar -xf ongrid-v0.8.4-linux-amd64.tar.xz && cd ongrid-v0.8.4-linux-amd64 && sudo ./install.sh

ARM64:

wget https://github.com/ongridio/ongrid/releases/download/v0.8.4/ongrid-v0.8.4-linux-arm64.tar.xz
tar -xf ongrid-v0.8.4-linux-arm64.tar.xz && cd ongrid-v0.8.4-linux-arm64 && sudo ./install.sh

Ongrid v0.8.3

09 Jun 01:03
79bbfd7

Choose a tag to compare

UI polish: Health page (compact layout, indigo accents, de-emphasized OK status), Traces light-mode color fix, report schedules grid, Home hero spacing. Platform health check (Settings -> Health, admin-only). Edge deployment guide + Telegram/Slack community badges. ssh.service log-filter fix.

Install (Ubuntu 22.04+/Debian 12+/RHEL/Rocky 9):
wget https://github.com/ongridio/ongrid/releases/download/v0.8.3/ongrid-v0.8.3-linux-amd64.tar.xz
tar -xf ongrid-v0.8.3-linux-amd64.tar.xz && cd ongrid-v0.8.3-linux-amd64 && sudo ./install.sh

Ongrid v0.8.2 — report list typography polish

07 Jun 01:07

Choose a tag to compare

Ongrid v0.8.2 — report list typography polish

Builds on v0.8.1. The report list now reads calm and consistent with the
other list pages:

  • The summary/headline is the report's primary name (descriptive,
    distinct per report) instead of the date dominating the row.
  • Period leads as its own column; Kind / Status / Generated
    each get a dedicated column.
  • Period + summary use the skills-table description scale (text-xs, soft
    grey) — no more bright/oversized text.

Includes all v0.8.0/v0.8.1 content (Scheduled Reports, chat tool-id root
fix, report i18n).

Ongrid v0.8.1 — report list UI polish

07 Jun 00:40

Choose a tag to compare

Ongrid v0.8.1 — report list UI polish

Builds on v0.8.0 (Scheduled Reports + chat tool-id root fix + report i18n).

  • Report list adopts the skills/tools table form for cross-product UI
    consistency: the Report column is now a two-line cell (period date
    in bold + kind label as a grey sub-line) instead of a single cramped
    "kind · date" string; Status is a localized coloured pill.

All v0.8.0 fixes included (report i18n: title / narrative / markdown all
follow the requester's UI locale).

Ongrid v0.8.0 — Scheduled Reports + chat tool-id root fix

06 Jun 17:15

Choose a tag to compare

Ongrid v0.8.0 — Scheduled Reports (HLD-014) + chat tool-id root fix

报告中心(新功能)

  • 定时/手动生成的运维报告:日报 / 周报 / 月报 + 自定义 cron,时区感知调度器。
  • 报告正文四个彩色主题行:集群态势(CPU/内存/磁盘 周期均值+峰值,来自 Prometheus)/ 告警与处理 / 知识资产新增(助理/技能/仓库)/ 使用情况(会话数 + LLM token)。中间夹 LLM 叙事说明。
  • 反幻觉:所有数字由 SQL/Prometheus 预先算好,LLM 只写叙事 + 建议,事后用事实覆写。
  • 列表为设备页同款表格;详情 Apple 风扁平卡片;导出 PDF(白底彩色,window.print 隔离);分享链接;飞书/Slack 等渠道投递。
  • 列表筛选(状态/类型)+ 分页。

聊天历史完整性 — 根本修复

  • 修复并行工具乱序完成导致的 DeepSeek 400「tool must follow tool_calls」:持久化层改为直接读 eino 的权威 compose.GetToolCallID(ctx),不再用完成顺序去猜 call_XX id;从源头消除合成 id 孤儿消息。
  • 防御加固:FIFO 改按工具名全队列匹配;回放丢弃未配对的孤儿 tool 行(修复已被污染的历史会话)。

完整变更见仓库提交历史。

Ongrid v0.7.179 — chat history integrity (4 layers) + LLM timeout unification

06 Jun 01:53
2bf1276

Choose a tag to compare

Highlights

Eight changes since v0.7.176. Five of them harden the chat-completion path against eino ToolsNode's parallel persistence drops + the dirty histories DeepSeek-strict providers refuse to replay. One unifies LLM timeouts across every call site. Two clean up the curl-pipe edge uninstaller. And the roadmap doc lands open-core.

Chat persistence + replay (4 fixes)

  • #50AI 助查 · PromQL returned HTTP 502 immediately on every translate. queryTranslateTimeout was hard-coded at 6 s, tuned for a Haiku-class default; DeepSeek v4-flash averages 5–8 s for short JSON output and tripped the wall. Bump to 20 s; also surface plain-text response bodies into ApiError.message so the UI no longer drops the actionable detail.
  • #51 — every LLM call site had its own timeout (6 / 20 / 30 / 60 s), all tuned for Haiku. Unified to 120 s across pkg/llm/client.go::defaultTimeout, query_translate.go::queryTranslateTimeout, alert/investigator::SummarizerTimeout, and aiops/investigator::defaultLLMTimeout. DB / tool / probe / monitor-sync timeouts deliberately untouched.
  • #52 — on .91 session b528bfb0-..., an assistant emitted 4 parallel host_bash tool_calls but only 2 of 4 role=tool rows landed in chat_messages. Replay then sent an envelope DeepSeek rejected with 400 insufficient tool messages following tool_calls. The error classifier ALSO mis-categorised this as "余额不足/限流" because of a bare insufficient substring match — operator chased provider config while the actual bug was history corruption. Two fixes: (a) replay precheck — before emitting an assistant with hydrated ToolCalls, every call_id must have a hoistable role=tool row, or the whole turn is dropped; (b) classifier tightened (insufficient_quota, insufficient balance, credit balance is too low, etc.) + a distinct case for the protocol error that tells the user truthfully: this session's history is poisoned, open a new one.
  • #53 — Layer 2 of the integrity fix: PersistenceHandler now tracks the per-assistant tool batch, marks each tool_call_id seen in persistToolEnd, and at the next ChatModel.OnStart (and on chatruntime defer for browser-close cases) writes a stub role=tool row for every missing call_id. Stub body honestly says {"error":"tool response was not persisted ...","autoheal":true}. Adds ongrid_chat_tool_response_loss_total{outcome,tool_name} counter + info-level traces on every callback firing so the underlying eino bug becomes observable instead of being discoverable only via user-reported HTTP 400. Tests cover the 4-of-4 / 2-of-4 / sequential-batches / no-batch / finalize-idempotent cases.

Operations

  • #46 / #47 — edge curl-pipe uninstaller (https://<server>/uninstall.sh) printed [OK] while every agent process kept running. Two issues: (1) only node_exporter + process_exporter got rm -f'd, leaving promtail + plugin work dir orphaned; (2) the if systemctl list-unit-files | grep -q ... precondition silently skipped on hosts where formatting confused the anchored grep. Fix: wholesale rm -rf of /usr/local/lib/ongrid-edge + /var/lib/ongrid-edge; stop units unconditionally + pkill -9 -f /usr/local/{bin,lib}/ongrid-edge as a belt-and-suspenders.

Docs

  • #48 / #49ROADMAP.md + ROADMAP.zh-CN.md land at the open-core root with nested-bullet structure, A–L sections, status legend ◯ □ ◐ ✓. Sections A (root-cause RCA), B–G (value chain + ops), H (sandbox), I (security/compliance), J (ecosystem), K (SOP), L (periodic agent jobs).

Upgrade

wget https://github.com/ongridio/ongrid/releases/download/v0.7.179/ongrid-v0.7.179-linux-amd64.tar.xz
tar -xJf ongrid-v0.7.179-linux-amd64.tar.xz
cd ongrid-v0.7.179-linux-amd64
bash upgrade.sh

In-place; no schema migration. Edge agents pick up #46/#47 on their next bundle-upgrade heartbeat (ADR-024).

Checksums

59f7cb572bb514f3373de5b4dfb8af433610df4044247391a4f6964047e16052  ongrid-v0.7.179-linux-amd64.tar.xz

Ongrid v0.7.176 — DeepSeek replay + sub-agent routing + conntrack metrics

05 Jun 16:52
3684118

Choose a tag to compare

Highlights

Seven fixes since v0.7.169 — five of them resolve chat-stream HTTP 400 failures we tripped in production after rolling DeepSeek v4. The remaining two clear up UI auto-scroll and an upstream node_exporter gap on modern kernels.

chat replay + LLM routing (5 fixes)

DeepSeek v4 enforces the OpenAI tool-call protocol strictly: every assistant message with tool_calls MUST be followed by tool responses pairing each tool_call_id. Several historical shortcuts in our persistence + replay layers produced subtly malformed history that older permissive providers tolerated and DeepSeek v4 rejected.

  • #39 — buildMessages dropped Content=NULL assistant rows (the natural shape for a turn that emitted only tool_calls). The following tool messages became orphans and the next request 400'd. Hydrated Message.ToolCalls via JOIN, added chat_tool_calls.llm_call_id column, factored the pairing logic into a new toolreplay package shared between the legacy agent path and the graph kernel.
  • #40 — graph kernel's PersistenceHandler exposed WithMessageID / WithToolCallID seams that production code never called → chat_tool_calls.message_id was empty → NOT NULL violation → silent log warn → 0 rows written. Tool messages received synthetic name|type IDs. Handler now self-wires via lastAssistantID + a pendingLLMCalls FIFO populated from msg.ToolCalls.
  • #41 — sub-agent workers (AgentTool) called the routing chat model with no opts and defaulted to openai. On installs configured for Zhipu / Anthropic / DeepSeek only, the specialist call hard-failed with "provider not configured". Coordinator LLM choice now propagates through context (basetool.WithLLMChoice) into SpawnRequest{Provider, Model} and the worker's chat model opts.
  • #42 — when AgentTool finishes seconds after parallel sibling tools, persistence stores rows in created_at order, which interleaves the next assistant turn between the parent and its delayed tool response. DeepSeek then 400'd with "insufficient tool messages following tool_calls message". Replay now indexes tool messages by tool_call_id and hoists each immediately after its parent assistant via emitToolByCallID.
  • (IM bridge model resolution — already shipped in #38 / v0.7.169.)

UI

  • #43 — long chat threads stopped auto-scrolling. The post-update useEffect measured distance AFTER React had already appended the new message, so scrollHeight - scrollTop - clientHeight always cleared the 80px threshold and the code bailed. Replaced with a stickToBottomRef flipped by the scroller's own onScroll (120px slack at the bottom).

Edge metrics

  • #44 / #45node_exporter 1.8.2's conntrack collector reads /proc/sys/net/nf_conntrack_count, which doesn't exist on modern kernels (the file lives at /proc/sys/net/netfilter/nf_conntrack_count). The collector registered but emitted nothing, leaving the manager's "conntrack 利用率" panel empty on every edge. hostmetrics plugin now wraps the subprocess with a 15s producer writing node_nf_conntrack_entries{,_limit} to a managed textfile collector dir. #45 adds a guard so the shim stays quiet on older kernels (where the built-in collector is already emitting the same series).

Upgrade

wget https://github.com/ongridio/ongrid/releases/download/v0.7.176/ongrid-v0.7.176-linux-amd64.tar.xz
tar -xJf ongrid-v0.7.176-linux-amd64.tar.xz
cd ongrid-v0.7.176-linux-amd64
bash upgrade.sh

In-place; no data migration. Edge agents pick up the conntrack fix automatically on their next bundle-upgrade heartbeat (ADR-024).

Checksums

687f50938e8960640455416940c169545c9a820be167cd2bd3a302fc6400125b  ongrid-v0.7.176-linux-amd64.tar.xz