[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-lmnr-ai--lmnr":3,"tool-lmnr-ai--lmnr":61},[4,18,26,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",145895,2,"2026-04-08T11:32:59",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108111,"2026-04-08T11:23:26",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":10,"last_commit_at":59,"category_tags":60,"status":17},4487,"LLMs-from-scratch","rasbt\u002FLLMs-from-scratch","LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目，旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型（LLM）。它不仅是同名技术著作的官方代码库，更提供了一套完整的实践方案，涵盖模型开发、预训练及微调的全过程。\n\n该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型，却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码，用户能够透彻掌握 Transformer 架构、注意力机制等关键原理，从而真正理解大模型是如何“思考”的。此外，项目还包含了加载大型预训练权重进行微调的代码，帮助用户将理论知识延伸至实际应用。\n\nLLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API，而是渴望探究模型构建细节的技术人员而言，这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计：将复杂的系统工程拆解为清晰的步骤，配合详细的图表与示例，让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础，还是为未来研发更大规模的模型做准备",90106,"2026-04-06T11:19:32",[35,15,13,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":67,"readme_en":68,"readme_zh":69,"quickstart_zh":70,"use_case_zh":71,"hero_image_url":72,"owner_login":73,"owner_name":74,"owner_avatar_url":75,"owner_bio":76,"owner_company":77,"owner_location":77,"owner_email":77,"owner_twitter":77,"owner_website":77,"owner_url":78,"languages":79,"stars":107,"forks":108,"last_commit_at":109,"license":110,"difficulty_score":32,"env_os":111,"env_gpu":112,"env_ram":112,"env_deps":113,"category_tags":120,"github_topics":123,"view_count":32,"oss_zip_url":77,"oss_zip_packed_at":77,"status":17,"created_at":144,"updated_at":145,"faqs":146,"releases":176},5532,"lmnr-ai\u002Flmnr","lmnr","Laminar - open-source observability platform purpose-built for AI agents. YC S24.","Laminar 是一款专为 AI 智能体（AI Agents）打造的开源可观测性平台，旨在帮助开发者全面掌控智能体的运行状态。在构建复杂的 AI 应用时，追踪调用链路、评估模型表现以及监控逻辑错误往往充满挑战，Laminar 通过提供一体化的解决方案有效解决了这些痛点。\n\n它核心具备三大能力：首先是强大的链路追踪，仅需一行代码即可自动集成 Vercel AI SDK、LangChain、OpenAI 等主流框架，让每次调用清晰可见；其次是灵活的评估体系，支持在本地或 CI\u002FCD 流程中运行测试，并提供可视化界面比对结果；最后是独特的\"Signals\"监控功能，允许用户用自然语言定义事件，主动捕捉智能体的逻辑异常或特定行为。此外，平台内置 SQL 编辑器，支持直接查询数据并定制仪表盘，极大提升了数据分析的灵活性。\n\n技术层面，Laminar 采用 Rust 语言编写，拥有极高的运行性能，其定制的实时引擎能让开发者即时查看追踪数据，配合超快的全文检索能力，确保在大规模数据下依然流畅。无论是正在研发 AI 应用的工程师，还是需要调优模型表现的研究人员，Laminar 都提供了从自托管 Doc","Laminar 是一款专为 AI 智能体（AI Agents）打造的开源可观测性平台，旨在帮助开发者全面掌控智能体的运行状态。在构建复杂的 AI 应用时，追踪调用链路、评估模型表现以及监控逻辑错误往往充满挑战，Laminar 通过提供一体化的解决方案有效解决了这些痛点。\n\n它核心具备三大能力：首先是强大的链路追踪，仅需一行代码即可自动集成 Vercel AI SDK、LangChain、OpenAI 等主流框架，让每次调用清晰可见；其次是灵活的评估体系，支持在本地或 CI\u002FCD 流程中运行测试，并提供可视化界面比对结果；最后是独特的\"Signals\"监控功能，允许用户用自然语言定义事件，主动捕捉智能体的逻辑异常或特定行为。此外，平台内置 SQL 编辑器，支持直接查询数据并定制仪表盘，极大提升了数据分析的灵活性。\n\n技术层面，Laminar 采用 Rust 语言编写，拥有极高的运行性能，其定制的实时引擎能让开发者即时查看追踪数据，配合超快的全文检索能力，确保在大规模数据下依然流畅。无论是正在研发 AI 应用的工程师，还是需要调优模型表现的研究人员，Laminar 都提供了从自托管 Docker 部署到云端托管的灵活选择，是构建可靠 AI 系统的得力助手。","\u003Ca href=\"https:\u002F\u002Fwww.ycombinator.com\u002Fcompanies\u002Flaminar-ai\">![Static Badge](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FY%20Combinator-S24-orange)\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fx.com\u002Flmnrai\">![X (formerly Twitter) Follow](https:\u002F\u002Fimg.shields.io\u002Ftwitter\u002Ffollow\u002Flmnrai)\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fdiscord.gg\u002FnNFUUDAKub\"> ![Static Badge](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FJoin_Discord-464646?&logo=discord&logoColor=5865F2) \u003C\u002Fa>\n\n![Laminar banner](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flmnr-ai_lmnr_readme_b190119fd07e.png)\n\n# Laminar\n\n[Laminar](https:\u002F\u002Flaminar.sh) is an open-source observability platform purpose-built for AI agents.\n\n- [x] Tracing. [Docs](https:\u002F\u002Fdocs.laminar.sh\u002Ftracing\u002Fintroduction)\n    - [x] OpenTelemetry-native powerful tracing SDK - 1 line of code to automatically trace **Vercel AI SDK, Browser Use, Stagehand, LangChain, OpenAI, Anthropic, Gemini, and more**.\n- [x] Evals. [Docs](https:\u002F\u002Fdocs.laminar.sh\u002Fevaluations\u002Fintroduction)\n    - [x] Unopinionated, extensible SDK and CLI for running evals locally or in CI\u002FCD pipeline.\n    - [x] UI for visualizing evals and comparing results.\n- [x] AI monitoring. [Docs](https:\u002F\u002Fdocs.laminar.sh\u002Fsignals)\n    - [x] Define events with natural language descriptions to track issues, logical errors, and custom behavior of your agent.\n- [x] SQL access to all data. [Docs](https:\u002F\u002Fdocs.laminar.sh\u002Fplatform\u002Fsql-editor)\n    - [x] Query traces, metrics, and events with a built-in SQL editor. Bulk create datasets from queries. Available via API.\n- [x] Dashboards. [Docs](https:\u002F\u002Fdocs.laminar.sh\u002Fcustom-dashboards\u002Foverview)\n    - [x] Powerful dashboard builder for traces, metrics, and events with support of custom SQL queries.\n- [x] Data annotation & Datasets. [Docs](https:\u002F\u002Fdocs.laminar.sh\u002Fdatasets\u002Fintroduction)\n    - [x] Custom data rendering UI for fast data annotation and dataset creation for evals.\n- [x] Extremely high performance.\n    - [x] Written in Rust 🦀\n    - [x] Custom realtime engine for viewing traces as they happen.\n    - [x] Ultra-fast full-text search over span data.\n    - [x] gRPC exporter for tracing data.\n\n![Traces](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flmnr-ai_lmnr_readme_c4f056168670.png)\n\n## Documentation\n\nCheck out full documentation here [docs.laminar.sh](https:\u002F\u002Fdocs.laminar.sh).\n\n## Getting started\n\nThe fastest and easiest way to get started is with our managed platform -> [laminar.sh](https:\u002F\u002Flaminar.sh)\n\n### Self-hosting with Docker compose\n\nLaminar is very easy to self-host locally. For a quick start, clone the repo and start the services with docker compose:\n```sh\ngit clone https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\ncd lmnr\ndocker compose up -d\n```\n\nThis will spin up a lightweight but full-featured version of the stack. This is good for a quickstart \nor for lightweight usage. You can access the UI at http:\u002F\u002Flocalhost:5667 in your browser.\n\nYou will also need to properly configure the SDK, with `baseUrl` and correct ports. See [guide on self-hosting](https:\u002F\u002Fdocs.laminar.sh\u002Fhosting-options#self-hosted-docker-compose).\n\nFor production environment, we recommend using our [managed platform](https:\u002F\u002Flaminar.sh) or `docker compose -f docker-compose-full.yml up -d`.\n\n### Enabling the Signals feature\n\nTo enable [Signals \u002F AI monitoring](https:\u002F\u002Fdocs.laminar.sh\u002Fsignals) in self-hosted mode, set the `GOOGLE_GENERATIVE_AI_API_KEY` environment variable in your `.env` file. This key is required by both the app-server and the frontend.\n\n```sh\n# In .env at the repo root\nGOOGLE_GENERATIVE_AI_API_KEY=your_key_here\n```\n\n## Contributing\n\nFor running and building Laminar locally, or to learn more about docker compose files,\nfollow the guide in [Contributing](\u002FCONTRIBUTING.md).\n\n## TS quickstart\n\nFirst, [create a project](https:\u002F\u002Flaminar.sh\u002Fprojects) and generate a project API key. Then,\n\n```sh\nnpm add @lmnr-ai\u002Flmnr\n```\n\nIt will install Laminar TS SDK and all instrumentation packages (OpenAI, Anthropic, LangChain ...)\n\nTo start tracing LLM calls just add\n```typescript\nimport { Laminar } from '@lmnr-ai\u002Flmnr';\nLaminar.initialize({ projectApiKey: process.env.LMNR_PROJECT_API_KEY });\n```\n\nTo trace inputs \u002F outputs of functions use `observe` wrapper.\n\n```typescript\nimport { OpenAI } from 'openai';\nimport { observe } from '@lmnr-ai\u002Flmnr';\n\nconst client = new OpenAI({ apiKey: process.env.OPENAI_API_KEY });\n\nconst poemWriter = observe({name: 'poemWriter'}, async (topic) => {\n  const response = await client.chat.completions.create({\n    model: \"gpt-4o-mini\",\n    messages: [{ role: \"user\", content: `write a poem about ${topic}` }],\n  });\n  return response.choices[0].message.content;\n});\n\nawait poemWriter();\n```\n\n## Python quickstart\n\nFirst, [create a project](https:\u002F\u002Flaminar.sh\u002Fprojects) and generate a project API key. Then,\n\n```sh\npip install --upgrade 'lmnr[all]'\n```\nIt will install Laminar Python SDK and all instrumentation packages. See list of all instruments [here](https:\u002F\u002Fdocs.laminar.sh\u002Finstallation)\n\n\nTo start tracing LLM calls just add\n```python\nfrom lmnr import Laminar\nLaminar.initialize(project_api_key=\"\u003CLMNR_PROJECT_API_KEY>\")\n```\n\nTo trace inputs \u002F outputs of functions use `@observe()` decorator.\n\n```python\nimport os\nfrom openai import OpenAI\n\nfrom lmnr import observe, Laminar\nLaminar.initialize(project_api_key=\"\u003CLMNR_PROJECT_API_KEY>\")\n\nclient = OpenAI(api_key=os.environ[\"OPENAI_API_KEY\"])\n\n@observe()  # annotate all functions you want to trace\ndef poem_writer(topic):\n    response = client.chat.completions.create(\n        model=\"gpt-4o\",\n        messages=[\n            {\"role\": \"user\", \"content\": f\"write a poem about {topic}\"},\n        ],\n    )\n    poem = response.choices[0].message.content\n    return poem\n\nif __name__ == \"__main__\":\n    print(poem_writer(topic=\"laminar flow\"))\n```\n\n## Client libraries\n\nTo learn more about instrumenting your code, check out our client libraries:\n\n \u003Ca href=\"https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002F@lmnr-ai\u002Flmnr\"> ![NPM Version](https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002F%40lmnr-ai%2Flmnr?label=lmnr&logo=npm&logoColor=CB3837) \u003C\u002Fa>\n \u003Ca href=\"https:\u002F\u002Fpypi.org\u002Fproject\u002Flmnr\u002F\"> ![PyPI - Version](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Flmnr?label=lmnr&logo=pypi&logoColor=3775A9) \u003C\u002Fa>\n","\u003Ca href=\"https:\u002F\u002Fwww.ycombinator.com\u002Fcompanies\u002Flaminar-ai\">![静态徽章](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FY%20Combinator-S24-orange)\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fx.com\u002Flmnrai\">![X（原Twitter）关注](https:\u002F\u002Fimg.shields.io\u002Ftwitter\u002Ffollow\u002Flmnrai)\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fdiscord.gg\u002FnNFUUDAKub\"> ![静态徽章](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FJoin_Discord-464646?&logo=discord&logoColor=5865F2) \u003C\u002Fa>\n\n![Laminar横幅](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flmnr-ai_lmnr_readme_b190119fd07e.png)\n\n# Laminar\n\n[Laminar](https:\u002F\u002Flaminar.sh) 是一个专为 AI 代理打造的开源可观测性平台。\n\n- [x] 跟踪。[文档](https:\u002F\u002Fdocs.laminar.sh\u002Ftracing\u002Fintroduction)\n    - [x] 原生支持 OpenTelemetry 的强大跟踪 SDK —— 只需一行代码即可自动跟踪 **Vercel AI SDK、浏览器使用、Stagehand、LangChain、OpenAI、Anthropic、Gemini 等**。\n- [x] 评估。[文档](https:\u002F\u002Fdocs.laminar.sh\u002Fevaluations\u002Fintroduction)\n    - [x] 无偏见、可扩展的 SDK 和 CLI，用于在本地或 CI\u002FCD 流水线中运行评估。\n    - [x] 用于可视化评估结果并进行比较的 UI。\n- [x] AI 监控。[文档](https:\u002F\u002Fdocs.laminar.sh\u002Fsignals)\n    - [x] 使用自然语言描述定义事件，以跟踪问题、逻辑错误以及代理的自定义行为。\n- [x] 所有数据的 SQL 访问。[文档](https:\u002F\u002Fdocs.laminar.sh\u002Fplatform\u002Fsql-editor)\n    - [x] 使用内置 SQL 编辑器查询跟踪、指标和事件。可通过查询批量创建数据集。也可通过 API 使用。\n- [x] 仪表板。[文档](https:\u002F\u002Fdocs.laminar.sh\u002Fcustom-dashboards\u002Foverview)\n    - [x] 强大的跟踪、指标和事件仪表板构建工具，支持自定义 SQL 查询。\n- [x] 数据标注与数据集。[文档](https:\u002F\u002Fdocs.laminar.sh\u002Fdatasets\u002Fintroduction)\n    - [x] 自定义数据渲染 UI，用于快速数据标注和评估用数据集的创建。\n- [x] 极高的性能。\n    - [x] 使用 Rust 🦀 编写\n    - [x] 自定义实时引擎，可在跟踪发生时即时查看。\n    - [x] 对 Span 数据的超快速全文搜索。\n    - [x] gRPC 导出器用于跟踪数据。\n\n![跟踪记录](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flmnr-ai_lmnr_readme_c4f056168670.png)\n\n## 文档\n\n完整的文档请访问 [docs.laminar.sh](https:\u002F\u002Fdocs.laminar.sh)。\n\n## 开始使用\n\n最快最简单的方式是使用我们的托管平台 -> [laminar.sh](https:\u002F\u002Flaminar.sh)\n\n### 使用 Docker Compose 自行部署\n\nLaminar 非常容易在本地自行部署。要快速开始，请克隆仓库并使用 Docker Compose 启动服务：\n```sh\ngit clone https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\ncd lmnr\ndocker compose up -d\n```\n\n这将启动一个轻量级但功能齐全的堆栈版本。适合快速入门或轻量级使用。您可以在浏览器中通过 http:\u002F\u002Flocalhost:5667 访问 UI。\n\n您还需要正确配置 SDK，包括 `baseUrl` 和正确的端口。请参阅[自行部署指南](https:\u002F\u002Fdocs.laminar.sh\u002Fhosting-options#self-hosted-docker-compose)。\n\n对于生产环境，我们建议使用我们的[托管平台](https:\u002F\u002Flaminar.sh)或执行 `docker compose -f docker-compose-full.yml up -d`。\n\n### 启用 Signals 功能\n\n要在自行部署模式下启用 [Signals \u002F AI 监控](https:\u002F\u002Fdocs.laminar.sh\u002Fsignals)，请在 `.env` 文件中设置 `GOOGLE_GENERATIVE_AI_API_KEY` 环境变量。此密钥对应用服务器和前端均是必需的。\n\n```sh\n# 在仓库根目录的 .env 文件中\nGOOGLE_GENERATIVE_AI_API_KEY=your_key_here\n```\n\n## 贡献\n\n如需在本地运行和构建 Laminar，或想了解更多关于 Docker Compose 文件的信息，请参阅 [贡献指南](\u002FCONTRIBUTING.md)。\n\n## TS 快速入门\n\n首先，[创建项目](https:\u002F\u002Flaminar.sh\u002Fprojects)并生成项目 API 密钥。然后，\n\n```sh\nnpm add @lmnr-ai\u002Flmnr\n```\n\n这将安装 Laminar TS SDK 以及所有插装包（OpenAI、Anthropic、LangChain 等）。\n\n要开始跟踪 LLM 调用，只需添加：\n```typescript\nimport { Laminar } from '@lmnr-ai\u002Flmnr';\nLaminar.initialize({ projectApiKey: process.env.LMNR_PROJECT_API_KEY });\n```\n\n要跟踪函数的输入\u002F输出，请使用 `observe` 包装器。\n\n```typescript\nimport { OpenAI } from 'openai';\nimport { observe } from '@lmnr-ai\u002Flmnr';\n\nconst client = new OpenAI({ apiKey: process.env.OPENAI_API_KEY });\n\nconst poemWriter = observe({name: 'poemWriter'}, async (topic) => {\n  const response = await client.chat.completions.create({\n    model: \"gpt-4o-mini\",\n    messages: [{ role: \"user\", content: `write a poem about ${topic}` }],\n  });\n  return response.choices[0].message.content;\n});\n\nawait poemWriter();\n```\n\n## Python 快速入门\n\n首先，[创建项目](https:\u002F\u002Flaminar.sh\u002Fprojects)并生成项目 API 密钥。然后，\n\n```sh\npip install --upgrade 'lmnr[all]'\n```\n这将安装 Laminar Python SDK 以及所有插装包。所有插装列表请参阅 [此处](https:\u002F\u002Fdocs.laminar.sh\u002Finstallation)。\n\n要开始跟踪 LLM 调用，只需添加：\n```python\nfrom lmnr import Laminar\nLaminar.initialize(project_api_key=\"\u003CLMNR_PROJECT_API_KEY>\")\n```\n\n要跟踪函数的输入\u002F输出，请使用 `@observe()` 装饰器。\n\n```python\nimport os\nfrom openai import OpenAI\n\nfrom lmnr import observe, Laminar\nLaminar.initialize(project_api_key=\"\u003CLMNR_PROJECT_API_KEY>\")\n\nclient = OpenAI(api_key=os.environ[\"OPENAI_API_KEY\"])\n\n@observe()  # 标注所有您想要跟踪的函数\ndef poem_writer(topic):\n    response = client.chat.completions.create(\n        model=\"gpt-4o\",\n        messages=[\n            {\"role\": \"user\", \"content\": f\"write a poem about {topic}\"},\n        ],\n    )\n    poem = response.choices[0].message.content\n    return poem\n\nif __name__ == \"__main__\":\n    print(poem_writer(topic=\"laminar flow\"))\n```\n\n## 客户端库\n\n要了解如何为您的代码添加插装，请查看我们的客户端库：\n\n \u003Ca href=\"https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002F@lmnr-ai\u002Flmnr\"> ![NPM 版本](https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002F%40lmnr-ai%2Flmnr?label=lmnr&logo=npm&logoColor=CB3837) \u003C\u002Fa>\n \u003Ca href=\"https:\u002F\u002Fpypi.org\u002Fproject\u002Flmnr\u002F\"> ![PyPI - 版本](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Flmnr?label=lmnr&logo=pypi&logoColor=3775A9) \u003C\u002Fa>","# Laminar (lmnr) 快速上手指南\n\nLaminar 是一个专为 AI Agent 打造的开源可观测性平台，支持追踪（Tracing）、评估（Evals）、AI 监控（Signals）以及通过 SQL 查询数据。它基于 Rust 构建，具有极高的性能，并原生支持 OpenTelemetry。\n\n## 环境准备\n\n在开始之前，请确保您的开发环境满足以下要求：\n\n*   **操作系统**：Linux, macOS 或 Windows (需安装 Docker Desktop)。\n*   **运行时依赖**：\n    *   **Docker & Docker Compose**：用于本地自托管部署。\n    *   **Node.js** (v18+)：如果您使用 TypeScript\u002FJavaScript。\n    *   **Python** (3.9+)：如果您使用 Python。\n*   **API Key**：\n    *   若使用托管版，需在 [laminar.sh](https:\u002F\u002Flaminar.sh) 创建项目并获取 `Project API Key`。\n    *   若自托管并启用 AI 监控功能，需准备 `GOOGLE_GENERATIVE_AI_API_KEY`。\n\n## 安装步骤\n\n您可以选择**自托管**（适合本地开发\u002F轻量使用）或直接使用**托管平台**。\n\n### 方案 A：使用 Docker Compose 自托管（推荐本地开发）\n\n这是最快启动完整功能栈的方式。\n\n1.  克隆仓库并进入目录：\n    ```sh\n    git clone https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\n    cd lmnr\n    ```\n\n2.  启动服务：\n    ```sh\n    docker compose up -d\n    ```\n\n3.  访问界面：\n    打开浏览器访问 `http:\u002F\u002Flocalhost:5667`。\n\n    > **注意**：若需启用 **Signals (AI 监控)** 功能，请在项目根目录的 `.env` 文件中配置 Google API Key：\n    > ```sh\n    > GOOGLE_GENERATIVE_AI_API_KEY=your_key_here\n    > ```\n    > 配置后需重启容器。生产环境建议使用 `docker-compose-full.yml` 或直接使用托管平台。\n\n### 方案 B：安装 SDK\n\n根据您的开发语言选择对应的安装方式。\n\n#### TypeScript \u002F Node.js\n\n```sh\nnpm add @lmnr-ai\u002Flmnr\n```\n*该命令会自动安装 Laminar SDK 及所有相关的插桩包（如 OpenAI, Anthropic, LangChain 等）。*\n\n#### Python\n\n```sh\npip install --upgrade 'lmnr[all]'\n```\n*该命令会安装 Laminar Python SDK 及所有支持的插桩包。*\n\n## 基本使用\n\n### 1. 初始化 SDK\n\n无论使用哪种语言，首先需要初始化 SDK 并传入您的项目 API Key。\n\n**TypeScript:**\n```typescript\nimport { Laminar } from '@lmnr-ai\u002Flmnr';\n\nLaminar.initialize({ projectApiKey: process.env.LMNR_PROJECT_API_KEY });\n```\n\n**Python:**\n```python\nfrom lmnr import Laminar\n\nLaminar.initialize(project_api_key=\"\u003CLMNR_PROJECT_API_KEY>\")\n```\n\n### 2. 自动追踪 LLM 调用\n\nLaminar 能够自动追踪主流 LLM 库（OpenAI, Anthropic 等）的调用，无需额外代码，只需完成上述初始化即可。\n\n### 3. 追踪自定义函数\n\n使用提供的包装器（Wrapper）或装饰器（Decorator）来追踪特定函数的输入输出。\n\n**TypeScript 示例 (`observe` 包装器):**\n\n```typescript\nimport { OpenAI } from 'openai';\nimport { observe } from '@lmnr-ai\u002Flmnr';\n\nconst client = new OpenAI({ apiKey: process.env.OPENAI_API_KEY });\n\n\u002F\u002F 使用 observe 包裹异步函数\nconst poemWriter = observe({name: 'poemWriter'}, async (topic) => {\n  const response = await client.chat.completions.create({\n    model: \"gpt-4o-mini\",\n    messages: [{ role: \"user\", content: `write a poem about ${topic}` }],\n  });\n  return response.choices[0].message.content;\n});\n\nawait poemWriter(\"laminar flow\");\n```\n\n**Python 示例 (`@observe` 装饰器):**\n\n```python\nimport os\nfrom openai import OpenAI\nfrom lmnr import observe, Laminar\n\n# 确保已初始化\nLaminar.initialize(project_api_key=\"\u003CLMNR_PROJECT_API_KEY>\")\n\nclient = OpenAI(api_key=os.environ[\"OPENAI_API_KEY\"])\n\n# 使用 @observe() 装饰需要追踪的函数\n@observe()\ndef poem_writer(topic):\n    response = client.chat.completions.create(\n        model=\"gpt-4o\",\n        messages=[\n            {\"role\": \"user\", \"content\": f\"write a poem about {topic}\"},\n        ],\n    )\n    poem = response.choices[0].message.content\n    return poem\n\nif __name__ == \"__main__\":\n    print(poem_writer(topic=\"laminar flow\"))\n```\n\n完成上述步骤后，您可以在 Laminar 仪表盘（自托管为 `http:\u002F\u002Flocalhost:5667`）中实时查看链路追踪、延迟指标及模型调用详情。","某电商初创团队正在开发一个基于 LangChain 的智能客服 Agent，用于自动处理用户的退货咨询与订单查询。\n\n### 没有 lmnr 时\n- **故障定位如大海捞针**：当 Agent 错误拒绝合法退货请求时，开发者只能翻阅杂乱的服务器日志，难以还原完整的对话链路和模型思考过程。\n- **评估流程手工且低效**：每次更新提示词（Prompt）后，团队需人工逐条测试数百个案例来判断效果，无法集成到 CI\u002FCD 流水线中自动化验证。\n- **隐性错误难以察觉**：对于“语气生硬”或“逻辑跳跃”等非崩溃类问题，缺乏自然语言定义的监控手段，往往等到用户投诉才发现。\n- **数据洞察门槛高**：想要分析特定类型的失败案例以构建测试集，需要编写复杂的脚本导出数据库，无法直接通过 SQL 快速查询追踪数据。\n\n### 使用 lmnr 后\n- **全链路追踪一目了然**：只需一行代码初始化，lmnr 自动捕获 LangChain 和 LLM 调用的完整轨迹，开发者可在 UI 中直观看到每一步的输入输出及耗时，秒级定位逻辑断点。\n- **自动化评估闭环**：利用 lmnr 的 Evals 功能，团队将回归测试嵌入发布流程，通过可视化界面直接对比不同版本的表现，确保迭代质量。\n- **主动式行为监控**：通过 Signals 功能用自然语言定义“不当拒绝”等事件，系统实时监测并报警，在用户感知前拦截潜在体验风险。\n- **数据驱动迭代**：内置 SQL 编辑器允许直接用 SQL 查询追踪数据，快速筛选出特定错误场景的对话记录，一键生成标注数据集用于微调模型。\n\nlmnr 将黑盒的 AI 代理转化为可观测、可量化、可信赖的生产力工具，让团队从繁琐的调试中解放，专注于核心业务逻辑的创新。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flmnr-ai_lmnr_b190119f.png","lmnr-ai","Laminar","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Flmnr-ai_049154de.png","",null,"https:\u002F\u002Fgithub.com\u002Flmnr-ai",[80,84,88,92,96,100,104],{"name":81,"color":82,"percentage":83},"TypeScript","#3178c6",70.6,{"name":85,"color":86,"percentage":87},"Rust","#dea584",24.5,{"name":89,"color":90,"percentage":91},"MDX","#fcb32c",2.5,{"name":93,"color":94,"percentage":95},"Python","#3572A5",2.1,{"name":97,"color":98,"percentage":99},"CSS","#663399",0.2,{"name":101,"color":102,"percentage":103},"Dockerfile","#384d54",0.1,{"name":105,"color":106,"percentage":103},"JavaScript","#f1e05a",2768,191,"2026-04-08T02:29:18","Apache-2.0","Linux, macOS, Windows","未说明",{"notes":114,"python":112,"dependencies":115},"该工具主要作为可观测性平台运行，推荐使用 Docker Compose 进行自托管部署。若需启用 Signals（AI 监控）功能，必须在环境变量中配置 GOOGLE_GENERATIVE_AI_API_KEY。核心后端使用 Rust 编写以确高性能。生产环境建议使用官方托管平台或完整的 docker-compose-full.yml 配置。",[116,117,118,119],"@lmnr-ai\u002Flmnr (TypeScript SDK)","lmnr (Python SDK)","Docker","Docker Compose",[14,121,13,35,15,122],"其他","音频",[124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143],"aiops","developer-tools","observability","agents","ai","rust-lang","analytics","llm-evaluation","llm-observability","monitoring","open-source","self-hosted","ai-observability","llmops","evals","evaluation","typescript","ts","rust","agent-observability","2026-03-27T02:49:30.150509","2026-04-08T21:10:53.333191",[147,152,157,162,167,172],{"id":148,"question_zh":149,"answer_zh":150,"source_url":151},25114,"在使用 Laminar OTel 集成运行 Chainlit 应用时，遇到 'Thread' object has no attribute '_otel_context' 错误怎么办？","该问题已在 lmnr==0.7.20 版本中修复。如果您遇到此错误，请升级您的 lmnr 包到最新版本。在修复发布前，维护者曾建议测试分支版本，命令如下：\npip uninstall lmnr\npip install lmnr git+https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr-python@threading-fix\n现在直接升级到正式版即可解决。","https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fissues\u002F821",{"id":153,"question_zh":154,"answer_zh":155,"source_url":156},25115,"如何在 Laminar 中正确记录 OpenRouter 的使用成本（usage cost）信息？","确保您发送的是浮点数（float）而不是字符串，并且使用正确的属性名。Laminar 会查找输入和输出成本并推导总成本。您可以尝试显式设置以下属性：\nspan.set_attribute(\"gen_ai.usage.output_cost\", 0.031)\nspan.set_attribute(\"gen_ai.usage.cost\", 0.1)\n如果之前配置不生效，请检查代码逻辑是否进入了设置属性的条件判断块，并确认数值类型正确。","https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fissues\u002F706",{"id":158,"question_zh":159,"answer_zh":160,"source_url":161},25116,"使用 Browser-use 进行可观测性记录时，提示 \"No browser session was recorded\" 且怀疑是 SDK 版本过旧，如何解决？","这通常是由于本地 Docker 容器中的服务版本过旧导致的。即使 Python SDK 是最新的，也需要更新后端服务。请执行以下命令重启 Docker 容器以拉取最新镜像：\ndocker compose down\ndocker compose up\n如果问题依旧，可以尝试从 main 分支拉取最新代码。","https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fissues\u002F634",{"id":163,"question_zh":164,"answer_zh":165,"source_url":166},25117,"在 Model provider API keys 中添加 Gemini 密钥后，运行时报错 \"Failed to decode api_key GEMINI_API_KEY\" 怎么办？","这通常不是 Laminar 本身的代码缺陷，可能是密钥存储或缓存的临时问题。有效的解决方法是：删除已添加的 Gemini 密钥，然后重新添加一次。此外，确保您的 Docker 容器是最新状态，有时需要清理并重新启动 compose 环境（docker compose down && docker compose up -d）来消除配置缓存问题。","https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fissues\u002F581",{"id":168,"question_zh":169,"answer_zh":170,"source_url":171},25118,"Laminar 是否支持自定义追踪（Traces）表格中显示的列？","是的，Laminar 计划并已开始实施允许用户选择性显示或隐藏表格列的功能（适用于 traces\u002Fspans\u002Fsessions 表）。用户体验设计类似于 AWS 界面，提供一个包含启用列复选框的对话框。请关注后续版本更新以获取该功能的正式使用入口。","https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fissues\u002F79",{"id":173,"question_zh":174,"answer_zh":175,"source_url":156},25119,"如果在生产环境中发现成本数据未正确发送（例如只发送了 gen_ai.usage.cost 而缺少 output_cost），该如何排查？","首先确认代码中是否正确进入了设置属性的条件分支（例如 `if response.usage and hasattr(response.usage, \"cost\")`）。其次，验证发送的成本值是否为浮点型而非字符串。如果平台显示 output_cost 为 0，尝试显式同时发送 `gen_ai.usage.output_cost` 和 `gen_ai.usage.input_cost`，因为系统可能依赖这两个字段来推导总成本。",[177,182,187,192,197,202,207,212,217,222,227,232,237,242,247,252,257,262,267,272],{"id":178,"version":179,"summary_zh":180,"released_at":181},154520,"v0.1.33","## 变更内容\n* 在日期范围选择器中添加3个月快捷选项，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1294 中实现\n* LAM-931：将评估进度查询接口从 GET 改为 POST，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1300 中完成\n* 功能：按组分组的发票行，由 @olzhik11 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1302 中实现\n* LAM-1097：显示警告，提示阅读模式仅展示 LLM 和工具调用跨度，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1312 中完成\n* 修复 React Hooks 的 ESLint 问题，由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1292 中解决\n* 功能：修复别名问题，由 @olzhik11 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1319 中实现\n* 按照结构体的顺序选择列，由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1316 中完成\n* 通过进行“更安全”的版本升级来解决多个 Dependabot 问题，由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1321 中完成\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fcompare\u002Fv0.1.32...v0.1.33","2026-03-03T20:53:32",{"id":183,"version":184,"summary_zh":185,"released_at":186},154521,"v0.1.32","## 变更内容\n* 功能：由 @olzhik11 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1284 中添加了调试器的全新实时事件\n* 不再将 LLM Span 的完整输入和输出上传至存储，由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1283 中实现\n* 修复：由 @olzhik11 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1285 中修复了布局问题\n* 功能：由 @olzhik11 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1290 中改进了引导流程\n* 修复：由 @kolbeyang 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1291 中优化了跟踪引导页面的布局\n* 功能：由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1289 中添加了用于批量摄入 Span 的 \u002Fv1\u002Fspans 端点\n* 开发：由 @skull8888888 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1293 中完成\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fcompare\u002Fv0.1.31...v0.1.32","2026-03-01T03:57:47",{"id":188,"version":189,"summary_zh":190,"released_at":191},154512,"v0.1.41","## 变更内容\n* 移除锁级别上的 `exclude-newer` 配置，由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1561 中完成\n\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fcompare\u002Fv0.1.40...v0.1.41","2026-04-01T14:33:04",{"id":193,"version":194,"summary_zh":195,"released_at":196},154513,"v0.1.40","## 变更内容\n* 1\u002F2：使用项目+信号锁密钥；迁移期间保留旧密钥，由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1485 中完成。\n* 2\u002F2：修复聚类锁。现由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1492 中移除旧的项目级锁。\n* 信号幂等运行，由 @Rainhunter13 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1496 中实现。\n* 功能：新增跨度表，由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1495 中添加。\n* Gemini 模型试用平台，由 @skull8888888 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1502 中开发。\n* 功能（Trace View）：信号事件面板 + 双布局策略，由 @kolbeyang 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1486 中实现。\n* 为 Gemini 模型添加预览功能，由 @skull8888888 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1504 中完成。\n* 易于实现的代理改进，由 @skull8888888 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1505 中进行。\n* 修复（LAM-1388）：将已弃用的 input_lower\u002Foutput_lower 列替换为 lower() 表达式，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1512 中完成。\n* 禁用向 spans v2 写入数据，由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1514 中实施。\n* 功能（LAM-1389）：Slack 报告与邮件告警——统一通知渠道，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1517 中实现。\n* 还原提交 46669fe0f1e2f3e3866e5417ae4fffa69eec6a1b，由 @Rainhunter13 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1521 中完成。\n* 功能（代码片段），由 @Rainhunter13 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1519 中实现。\n* 修复信号的跨度显示问题，由 @skull8888888 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1518 中解决。\n* 修复（LAM-1393）：从跨度表查询中移除跨度的输入输出字段，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1525 中完成。\n* 修复：修正信号事件中的筛选器问题，由 @olzhik11 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1526 中解决。\n* 功能：根据提供商匹配及 LLM 备用生成跨度预览（LAM-1384），由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1497 中实现。\n* 功能：修复阅读模式，由 @olzhik11 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1532 中完成。\n* 功能：显示成本信息，由 @olzhik11 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1535 中实现。\n* 修复（LAM-1361）：从跨度表而非旧的标签表中读取 SDK 跨度数据，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1510 中完成。\n* 每次调用插入数据点时覆盖评估值，由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1536 中实施。\n* 前端更新 yaml 和 picomatch 依赖项版本，由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1528 中完成。\n* 修复（评估）：防止页面刷新时评分列被清空（LAM-1380），由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1484 中解决。\n* 修复（LAM-1394）：在对同一列进行聚合和筛选时，防止别名遮蔽问题，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1530 中完成。\n* 功能：在跨度搜索中添加追踪信息，由 @olzhik11 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1543 中实现。\n* 功能：深度解析输出，不将其持久化到数据库，由 @olzhik11 在 https:\u002F\u002Fgithub.c","2026-04-01T13:31:53",{"id":198,"version":199,"summary_zh":200,"released_at":201},154514,"v0.1.39","## 变更内容\n* 由 @skull8888888 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1487 中正确移除镜像\n* 功能：添加 Keycloak 作为 OAuth 认证提供商（LAM-1382），由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1488 中实现\n* 开发：由 @skull8888888 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1489 中完成\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fcompare\u002Fv0.1.38...v0.1.39","2026-03-23T22:16:26",{"id":203,"version":204,"summary_zh":205,"released_at":206},154515,"v0.1.38","## 变更内容\n* LAM-1346：使用 INSERT...SELECT 处理评估数据点，停止内存中合并 —— 由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1438 中完成\n* LAM-1301：重构 push_to_notification_queue 函数，使其返回 anyhow::Result 类型 —— 由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1431 中完成\n* 功能：在信号创建页面添加触发器创建 UI（LAM-1347）—— 由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1439 中完成\n* 功能：添加动态间隔计算，并修复刻度以支持时区感知 —— 由 @olzhik11 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1442 中完成\n* LAM-1297：为追踪表添加自定义 SQL 列和排序功能 —— 由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1412 中完成\n* 功能：升级 Next.js —— 由 @olzhik11 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1444 中完成\n* 修复：信号 Gemini 调用中缺失的思考签名 —— 由 @Rainhunter13 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1447 中完成\n* 修复从头安装提示中的 TypeScript 客户端初始化问题 —— 由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1450 中完成\n* 信号代理增加成本和持续时间信息 —— 由 @Rainhunter13 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1440 中完成\n* 增加预览字符数 —— 由 @skull8888888 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1455 中完成\n* 功能：为信号添加实时\u002F批处理模式 —— 由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1441 中完成\n* 删除旧索引 —— 由 @Rainhunter13 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1461 中完成\n* 仅在请求时获取会话图片 —— 由 @Rainhunter13 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1462 中完成\n* 功能：改进 Span 视图 —— 由 @olzhik11 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1457 中完成\n* 使用新表进行预聚合用量计算 —— 由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1460 中完成\n* 在 switchTier 中报告兆字节数 —— 由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1469 中完成\n* 不再使用聚簇键重新拉取模式 —— 由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1470 中完成\n* 从 evaluation_datapoints_ordering 键中删除索引 —— 由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1459 中完成\n* LAM-1370：当配置了真实的身份验证提供商时，隐藏虚拟邮箱输入框 —— 由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1463 中完成\n* 功能：改进自托管部署的用户邀请流程 —— 由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1458 中完成\n* 功能：追踪视图中新增成本热力图切换功能 —— 由 @kolbeyang 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1453 中完成\n* 在 5 次可重试尝试后不丢弃实时 API —— 由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1454 中完成\n* 按照 Stripe 的要求四舍五入用量 —— 由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1473 中完成\n* 升级部分存在漏洞的依赖项，并移除未使用的依赖 —— 由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1464 中完成\n* 不再删除表（已在迁移 63 中删除）—— 由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1474 中完成\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fcompare\u002Fv0.","2026-03-23T14:51:34",{"id":208,"version":209,"summary_zh":210,"released_at":211},154516,"v0.1.37","## 变更内容\n* 由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1435 中完成的 Helm 迁移修复补丁\n\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fcompare\u002Fv0.1.36...v0.1.37","2026-03-17T19:33:28",{"id":213,"version":214,"summary_zh":215,"released_at":216},154517,"v0.1.36","## 变更内容\n* 功能：重新设计信号列表页面，重构 manage-signal-sheet 组件，并由 @kolbeyang 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1387 中添加跟踪选择器。\n* 不在非默认跟踪类型上运行信号，由 @Rainhunter13 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1425 中实现。\n* LAM-1333：为博客添加 YouTube 视频嵌入支持，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1423 中完成。\n* 更新欢迎邮件，重点介绍 AI 代理和平台关键功能，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1424 中完成。\n* 移除带有大量附件的博客文章，并移除损坏的 context7 链接，由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1427 中完成。\n* LAM-1204：通过 LLM 测试发现并修复集成文档中的问题，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1298 中完成。\n* 更新 context7 文件以用于所有权声明，由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1430 中完成。\n* 将 events_to_clusters 表设置为 RMT，由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1432 中完成。\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fcompare\u002Fv0.1.35...v0.1.36","2026-03-17T18:50:14",{"id":218,"version":219,"summary_zh":220,"released_at":221},154518,"v0.1.35","## 变更内容\n* 依赖更新\u002F26 03 04，由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1329 中完成\n* 合并部分漏洞修复，由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1330 中完成\n* 修复：结账时仅发送套餐价格，通过 Webhook 添加超额费用（LAM-1235），由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1326 中完成\n* 新特性：将标志位重构为上下文，由 @olzhik11 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1334 中完成\n* 新特性：将侧边栏中的 Discord 替换为 GitHub，由 @olzhik11 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1336 中完成\n* 新特性：在项目下拉菜单中显示所有用户的工作空间（LAM-1238），由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1338 中完成\n* 新特性：提升所有可分享页面的 OpenGraph 支持（LAM-1236），由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1333 中完成\n* 新特性：模型成本重新设计，由 @Rainhunter13 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1335 中完成\n* 新增博客，由 @SamKomesarook 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1331 中完成\n* 新特性：为仪表板图表构建器添加自定义 SQL 指标支持（LAM-1035），由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1332 中完成\n* 新特性：Sentry 浏览器可观ability，由 @olzhik11 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1342 中完成\n* 新特性：修复 Schema，由 @olzhik11 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1346 中完成\n* 新特性：将集群操作改为点击触发，由 @olzhik11 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1347 中完成\n* 新特性：为标注队列 API 添加幂等性键（LAM-1218），由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1327 中完成\n* LAM-1247：移除 S3 跟踪负载存储，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1352 中完成\n* LAM-1240：在服务器启动时填充模型成本表，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1341 中完成\n* 修复\u002FMCP 内容类型，由 @kolbeyang 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1365 中完成\n* 为评估数据点表添加 FINAL 关键字，由 @dinmukhamedm 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1356 中完成\n* LAM-1250：在删除评估时从 ClickHouse 中删除评估数据点，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1354 中完成\n* 重构：移除 rmcp-actix-web，由 @kolbeyang 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1367 中完成\n* 更新着陆页的 Logo、客户评价和轮播图，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1370 中完成\n* 为每个项目添加自定义模型，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1369 中完成\n* 使表格列宽在页面刷新后保持不变，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1379 中完成\n* LAM-1248：从 convert_span_to_provider_format 中移除所有 OpenAI 相关逻辑，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1353 中完成\n* 为跟踪页面添加根跨度的输入\u002F输出列，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1375 中完成\n* LAM-1229：将缓存的 Token 添加到跨度视图统计信息提示中，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002F","2026-03-17T11:26:41",{"id":223,"version":224,"summary_zh":225,"released_at":226},154519,"v0.1.34","## 变更内容\n* 功能：添加 Okta 作为 NextAuth 的身份验证提供商，由 @laminar-coding-agent[bot] 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1323 中实现\n* 功能：添加 Okta 作为 NextAuth 的身份验证提供商（#1323），由 @skull8888888 在 https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1324 中实现\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fcompare\u002Fv0.1.33...v0.1.34","2026-03-03T22:47:47",{"id":228,"version":229,"summary_zh":230,"released_at":231},154522,"v0.1.31","## What's Changed\r\n* fix: remove min width inflation in condensed timeline by @kolbeyang in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1196\r\n* fix: improve blog post mobile layout and typography (LAM-1160) by @kolbeyang in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1198\r\n* Unify eval tables by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1201\r\n* feat: inline trace slide-in panel for shared evaluations by @kolbeyang in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1200\r\n* batch spans + refactor by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1203\r\n* fix: unconstrained height on shared eval page by @kolbeyang in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1204\r\n* clean up events on frontend + prefetch count by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1205\r\n* fix: large fields in evals caused long loading times by @kolbeyang in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1206\r\n* Liveable Blog by @SamKomesarook in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1208\r\n* fix data count by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1212\r\n* Revise blog post on rebuilding startup with AI agent by @SamKomesarook in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1213\r\n* fix clusters by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1199\r\n* Update blog title and content for AI Agent SDK by @SamKomesarook in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1214\r\n* patch by @Rainhunter13 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1129\r\n* wip by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1210\r\n* num_data_plane_span_workers by @Rainhunter13 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1215\r\n* fix: sync session needle to trace time and fix playback speed by @kolbeyang in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1209\r\n* Update datapoint accept trace by @Rainhunter13 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1216\r\n* Add context7.json with URL and public key by @SamKomesarook in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1217\r\n* sandbox: mcp server by @kolbeyang in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1195\r\n* new blog by @SamKomesarook in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1218\r\n* fix build by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1219\r\n* hotfix by @SamKomesarook in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1220\r\n* fix signals by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1222\r\n* parse gemini format by @Rainhunter13 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1221\r\n* fix: parse system prompt in gemini raw format for rollout sessions by @Rainhunter13 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1228\r\n* feat: move routes, signal events by id by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1231\r\n* refactor: unify eval datapoints query into single JOIN (LAM-1153) by @kolbeyang in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1211\r\n* fix truncation by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1233\r\n* feat: sql editor syntax + ask ai by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1224\r\n* feat: array filters in advanced search by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1235\r\n* Claude.md by @Rainhunter13 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1239\r\n* Add email auth env var by @Rainhunter13 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1246\r\n* Billing page by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1249\r\n* feat: update pricing calculator, add legacy lookup key by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1252\r\n* Billing\u002Fhotfix\u002Fwebhook cancelled events by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1253\r\n* exclude deleted items by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1254\r\n* parse openai chat completions by @Rainhunter13 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1251\r\n* fix: workspace rename button not working when clicked by @laminar-coding-agent[bot] in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1259\r\n* feat: fix pricing calculator by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1255\r\n* hotfix: disable invite to free project, limit to 1 project by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1262\r\n* parse tool def params as parameters, arguments, and input_schema by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1266\r\n* feat: update wording on tier switch, cancel subscription on workspace delete by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1267\r\n* feat: add Anthropic message format support to trace viewer by @laminar-coding-agent[bot] in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1263\r\n* feat(LAM-1135): replace github images by @kolbeyang in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1271\r\n* new blog by @SamKomesarook in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1237\r\n* feat: retake landing screenshots + signals section by @kolbeyang in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1236\r\n* feat: debugger improvements by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1272\r\n* convert image format from url sage base64 to standard by @Rainhunter13 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1275\r\n* fix: touchup banner by @kolbeyang in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1274\r\n* feat: platf","2026-02-27T14:59:43",{"id":233,"version":234,"summary_zh":235,"released_at":236},154523,"v0.1.30","## What's Changed\r\n* updates to sitemap by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1185\r\n* remove more quickwit reserved characters by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1170\r\n* logs ingestion by @Rainhunter13 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1181\r\n* batching signals by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1178\r\n* feat: Condensed timeline view by @kolbeyang in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1176\r\n* mark 429 as retrieable, add provider batch id by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1187\r\n* fix: dashboard time range selection by @kolbeyang in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1191\r\n* fix: realtime traces constantly scrolling to selected span by @kolbeyang in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1189\r\n* autonomy blog by @SamKomesarook in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1190\r\n* record duration, add finish_message to history, small cleanup by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1192\r\n* update signal_runs ordering_key by @Rainhunter13 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1188\r\n* Update dep and LLM prices by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1193\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fcompare\u002Fv0.1.29...v0.1.30","2026-02-05T19:16:46",{"id":238,"version":239,"summary_zh":240,"released_at":241},154524,"v0.1.29","## What's Changed\r\n* New Blog by @SamKomesarook in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1145\r\n* start passing new format input, output, tool defs by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1148\r\n* traces agent by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1151\r\n* Feat\u002Fretroactive analysis test by @Rainhunter13 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1153\r\n* feat: add cache input tokens, add tags tooltip by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1139\r\n* feat: add outputs endpoint to shared trace, separate stores by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1161\r\n* feat: update react-resizable-panels, resend by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1159\r\n* scaffolding blog by @SamKomesarook in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1154\r\n* Signals Blog by @SamKomesarook in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1160\r\n* feat: add controllable posthog by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1149\r\n* Signals:  small improvements by @Rainhunter13 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1162\r\n* Feat\u002Flanding revamp by @kolbeyang in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1146\r\n* landing cleanup by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1165\r\n* Kernl Blog Post by @SamKomesarook in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1164\r\n* fix: improve trace tree view with content toggle and performance optimizations by @kolbeyang in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1166\r\n* batching clustering events by @Rainhunter13 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1173\r\n* improve clustering by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1174\r\n* Comparison Blog by @SamKomesarook in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1168\r\n* Batch browser events by @Rainhunter13 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1177\r\n* bump next and lodash deps for dependabot by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1171\r\n* bump protobuf, zod, streamdown by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1184\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fcompare\u002Fv0.1.28...v0.1.29","2026-02-04T14:42:56",{"id":243,"version":244,"summary_zh":245,"released_at":246},154525,"v0.1.28","## What's Changed\r\n* add wait on quickwit container by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1103\r\n* bump clickhouse and moka to remove dependency on thiserror 1 by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1102\r\n* feat: list visualization in trace view by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1100\r\n* disable clickhouse type validation by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1105\r\n* parse tool calls output for aisdk 5 and 6 by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1108\r\n* readme update by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1127\r\n* Bump some more deps, fix docker compose with wait for quickwit by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1104\r\n* quickwit escape reserved characters by @Rainhunter13 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1106\r\n* feat: add clickhouse syntax, fix chart builder by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1116\r\n* feat: add search to store as prop, redirect on invitation by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1120\r\n* feat: rollout sessions by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1130\r\n* feat: update slack slash commands, add testing to semantic events by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1135\r\n* feat: migrate eslint, next-js by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1133\r\n* feat: advanced search by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1136\r\n* improve metadata merging on DB insert by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1140\r\n* insert items to labeling queue endpoint by @Rainhunter13 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1132\r\n* migration for rollouts, dependabot updates by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1143\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fcompare\u002Fv0.1.27...v0.1.28","2026-01-19T18:24:48",{"id":248,"version":249,"summary_zh":250,"released_at":251},154526,"v0.1.27","## Breaking\r\n\r\nThis release introduces the new concept of the table `traces` in ClickHouse that pre-aggregates all required statistics on a pre-computed table. This speeds up operations on traces at scale by orders of magnitude, but old data will not be immediately available.\r\n\r\n### Instructions:\r\n1. Execute clickhouse-client on the target ClickHouse server.\r\n    - For docker based deployments: `docker exec -it lmnr-clickhouse-1 clickhouse-client`. The name of the container may be slightly different, you can check with `docker ps`\r\n2. Go to `frontend\u002Flib\u002Fclickhouse\u002Fscripts\u002Faggregate_traces_replacing.sql`.\r\n3. Edit the project_id to the one you want to migrate, and optionally set the start_time and end_time.\r\n    - If you need to migrate multiple projects, replace the condition `project_id=` with something like `project_id IN ('id-1', 'id-2')`.\r\n4. Copy and paste the script into the clickhouse-client terminal.\r\n5. Execute the script by pressing Enter.\r\n\r\n## What's Changed\r\n* Bug fix in realtime by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1050\r\n* async stream for real time by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1051\r\n* wip: search spans with quickwit by @Rainhunter13 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1041\r\n* Distributed realtime by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1052\r\n* feat: separate authorization and authentication by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1045\r\n* columns improvements by @shoqqan in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1053\r\n* bump sentry to fix cookies being sent by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1057\r\n* feat: autocomplete by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1055\r\n* feat: delete unused tag classes columns, fix ui by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1059\r\n* search and filter functionality by @shoqqan in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1043\r\n* Events cache by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1060\r\n* fix cost query in frontend when only total cost's reported by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1062\r\n* fix: find eval by index by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1063\r\n* feat: add meta navigations on table, fix shared trace, fix costs by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1064\r\n* feat: fix shared trace, small ui update to calendar, project card by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1065\r\n* bump Next.js to resolve critical CVE in react-server-dom-X by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1068\r\n* Claude SDK Blog by @SamKomesarook in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1066\r\n* blog by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1072\r\n* feat: open in sql editor by @shoqqan in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1067\r\n* fix: fix tree view scroll by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1074\r\n* feat: update onboarding, remove supabase client, add realtime hook, r… by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1075\r\n* Stagehand Post by @SamKomesarook in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1076\r\n* Revert \"fix: fix tree view scroll (#1074)\" by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1079\r\n* improve llm spans view by @shoqqan in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1061\r\n* Lightbox Image by @SamKomesarook in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1082\r\n* wip: fixes metadata query, needs cleanup by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1084\r\n* unification of events + clusters by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1080\r\n* fix clusters link by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1086\r\n* Feat\u002Flam 1028 by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1083\r\n* fix migrations 11,12, remove event clusters by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1089\r\n* fix file rename by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1095\r\n* fix rabbit connection by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1096\r\n* Pg schemas by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1093\r\n* fix realtime, remove trace dep by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1097\r\n* ingest events; instrument quickwit ingest and search functions by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1058\r\n* feat: cleanup files\u002Fdeps by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1087\r\n* remove the aggregate traces feature flag by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1088\r\n* unify query engine with prod, remove settings clause by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1094\r\n* small cleanups, a followup to #1058 by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1098\r\n* bump versions for dependabot updates by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1099\r\n\r\n## New Contributors\r\n* @SamKomesarook made their first contribution in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1066\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fl","2025-12-17T17:46:09",{"id":253,"version":254,"summary_zh":255,"released_at":256},154527,"v0.1.26","## What's Changed\r\n* Clusters by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1022\r\n* hotfix: do not paginate evaluation datapoints within one evaluation by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1029\r\n* feat: ui chart builder LAM-856 by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1027\r\n* feat: add open source sql conversion for open source by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1028\r\n* dynamic columns by @shoqqan in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1020\r\n* fix: quantile parsing by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1030\r\n* fix non-ai-sdk tools, allow for tool parameters to be JSON obj by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1031\r\n* fix: chart, dashboard, onboarding by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1032\r\n* transfer ownership ability by @shoqqan in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1035\r\n* feat: link minimap and session player by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1034\r\n* fix: add custom time range column by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1037\r\n* add has browser session to trace by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1036\r\n* cargo fmt by @Rainhunter13 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1038\r\n* fix: remove v2 validator by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1040\r\n* revive pagination in the eval table, small fixes by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1033\r\n* update prices to 2025-11 by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1047\r\n* remove tag class id (was always nil) by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1046\r\n* bump lmnr to 0.7.8 to remove dep on glob by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1048\r\n* revert accidental path change in query engine for handling path by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1049\r\n\r\n## New Contributors\r\n* @shoqqan made their first contribution in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1020\r\n* @Rainhunter13 made their first contribution in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1038\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fcompare\u002Fv0.1.25...v0.1.26","2025-11-21T16:21:15",{"id":258,"version":259,"summary_zh":260,"released_at":261},154528,"v0.1.25","## What's Changed\r\n* separate servers for tx and rx based on env var by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F927\r\n* redesign by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F980\r\n* consumer port defaults to 8002 by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F985\r\n* Remove-agent-manager by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F984\r\n* fix: delete datapoints, delete evaluation by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F983\r\n* Fix\u002FUI fixes by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F987\r\n* fix: fix infinite datatable ui by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F989\r\n* trace summary by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F991\r\n* Improved realtime by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F996\r\n* fix: remove scroll area, and custom styles by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F997\r\n* fix realtime string by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F998\r\n* fix: remove on key down event by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F990\r\n* notification queue by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F994\r\n* versioned datasets v0 by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F999\r\n* fix: fix submit by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1000\r\n* feat: add schema for interaction payloads by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1001\r\n* slack formating by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1002\r\n* highlight selected trace in session; fix duration by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1003\r\n* connect to postgres via SSL by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F993\r\n* build(deps): bump actions\u002Fsetup-node from 4 to 6 by @dependabot[bot] in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F968\r\n* build(deps): bump astral-sh\u002Fsetup-uv from 6 to 7 by @dependabot[bot] in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F949\r\n* feat: add export jobs update ui by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1006\r\n* move provider and project api keys logic to next by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1005\r\n* trace view ui improvements by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1004\r\n* feat: search spans by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1010\r\n* add ingest only keys by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1012\r\n* feat: hide slack behind feature flag by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1011\r\n* copy error message, update links in footer by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1013\r\n* uninstrument spans that are performed in memory (usually 3-4us) by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1014\r\n* fix span icon color for realtime by sending stringified top span type by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1016\r\n* always wait for async insert except events and tags by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1015\r\n* feat: trace stats chart by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1017\r\n* feat: events chart, delete event def's by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1018\r\n* feat: relax admin role by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1019\r\n* evals on query engine; more datasets apis by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1021\r\n* fix evals page status column, fix status in views by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1023\r\n* allow SSL config for drizzle-kit, fix migration 61 by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1024\r\n* fix shared trace events query by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F1026\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fcompare\u002Fv0.1.24...v0.1.25","2025-11-13T23:49:17",{"id":263,"version":264,"summary_zh":265,"released_at":266},154529,"v0.1.24","## What's Changed\r\n* update tracing config to always log to console by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F979\r\n* record tags in a batch by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F977\r\n* proper ch migrations by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F978\r\n* read llm costs from cache, TTL to 24 hours by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F981\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fcompare\u002Fv0.1.23...v0.1.24","2025-10-24T10:05:10",{"id":268,"version":269,"summary_zh":270,"released_at":271},154530,"v0.1.23","## What's Changed\r\n* Background summary by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F901\r\n* Fix summary by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F909\r\n* remove cache from summaries by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F911\r\n* Revert span start time by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F912\r\n* use pg as buffer for traces stats by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F914\r\n* configurable retries for summaries by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F915\r\n* feat: rename dataset by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F921\r\n* feat: reconstruct tree in shared span by attributes by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F922\r\n* Feat\u002Fbg summary by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F925\r\n* Fix\u002Fkey name by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F926\r\n* build(deps): bump actions\u002Fsetup-node from 4 to 5 by @dependabot[bot] in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F856\r\n* build(deps): bump uuid from 1.18.0 to 1.18.1 in \u002Fapp-server by @dependabot[bot] in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F859\r\n* build(deps): bump log from 0.4.27 to 0.4.28 in \u002Fapp-server by @dependabot[bot] in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F865\r\n* build(deps): bump indexmap from 2.11.0 to 2.11.4 in \u002Fapp-server by @dependabot[bot] in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F890\r\n* build(deps): bump actions\u002Fsetup-python from 5 to 6 by @dependabot[bot] in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F916\r\n* build(deps): bump actions\u002Fcheckout from 4 to 5 by @dependabot[bot] in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F918\r\n* build(deps): bump rust from 1.86-slim-bullseye to 1.90-slim-bullseye in \u002Fapp-server by @dependabot[bot] in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F889\r\n* update sql editor column types to match CH schema by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F924\r\n* remove unused code and packages by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F938\r\n* fix firefox message part render by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F939\r\n* feat: add error state for trace and spans load by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F941\r\n* add metadata to trace view by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F947\r\n* fix trace agg by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F948\r\n* delete datapoints, use body by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F943\r\n* feat: add ux enhancements by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F944\r\n* pass bucket to every storage call by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F786\r\n* show top span name for pending traces by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F945\r\n* refresh cache usages every 16MB by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F958\r\n* cache increment by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F959\r\n* fix: catch error by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F960\r\n* update usage cache for browser events by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F961\r\n* match updates from main by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F962\r\n* feat: add structured output, dont reset msg content by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F957\r\n* feat: add custom renderer color, add handle by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F955\r\n* expire workspace and project caches so that free tier resets after period reset by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F956\r\n* feat: sentry integration by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F954\r\n* fix: fix searching logic, drag handle by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F964\r\n* feat: read usage from cache priority by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F963\r\n* trace summaries triggers by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F952\r\n* feat: event definitions \u002F events \u002F trigger spans \u002F settings by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F953\r\n* create event definitions for new events from traces by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F965\r\n* fix: send timestamp in utc by @olzhik11 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F967\r\n* remove trace eligibility check by @skull8888888 in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F966\r\n* initial version of app-server observability by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F972\r\n* update schemas to latest versions, control trace aggregation by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F973\r\n* bring back turbopack build by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F975\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fcompare\u002Fv0.1.22...v0.1.23","2025-10-22T18:05:24",{"id":273,"version":274,"summary_zh":275,"released_at":276},154531,"v0.1.22","## What's Changed\r\n* fix migration, pass env vars by @dinmukhamedm in https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fpull\u002F907\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Flmnr-ai\u002Flmnr\u002Fcompare\u002Fv0.1.21...v0.1.22","2025-09-26T13:21:02"]