tool-journal

让工具重试不再重复执行,崩溃后也能安全恢复

tool-journal 是一个面向可重试工具调用的 TypeScript 执行日志库,核心解决 AI Agent 或自动化流程中工具调用因崩溃、超时、重试导致的状态不一致问题。它把每次工具执行记录到 SQLite,提供持久化存储与租约(lease)机制,确保同一任务不会被并发重复执行;通过显式的“不确定状态”标记,让调用方能区分“确定失败”“确定成功”和“可能已执行但结果未知”,从而做出安全的重试决策。项目还内置故障注入与可复现的崩溃测试,帮助开发者在本地验证重试逻辑和幂等性。适合需要可靠工具编排、任务恢复和精确一次语义的 AI 基础设施场景,用轻量 SQLite 替代复杂分布式协调服务。

开源 free 基础设施
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 142
维护状态 活跃
是否开源
定价模式 free

项目数据

分类基础设施
开发团队RaycarlLei
所属国家
定价模式free
价格说明开源免费,无付费版本
访问状态
是否开源
开源协议MIT
主要语言TypeScript
技术栈/模型ai-infrastructure,durable-execution,fault-injection,idempotency,sqlite,typescript
GitHub 星标★ 142
30天Star增速
HF 下载量
上线时间2026-09-07 00:00:00
最近更新2026-09-17 00:00:00
维护状态活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-09-18
浏览次数1

使用教程

核心亮点

  • 用 SQLite 做持久化执行日志,零外部依赖即可获得崩溃恢复能力
  • 租约 fencing 机制防止并发重复执行,保证同一任务只有一个执行者
  • 显式区分不确定状态,避免盲目重试导致副作用重复

不足之处

  • 项目处于早期,星标仅 142,生态和文档成熟度有限
  • 基于 SQLite 单机方案,多节点横向扩展需自行设计

适用场景

  • AI Agent 调用外部工具(如发邮件、下单)时保证精确一次执行
  • 需要断点续跑和崩溃恢复的自动化工作流
  • 本地开发中模拟工具调用失败,验证重试与幂等策略

替代项目

Temporal、Restate、DBOS

项目介绍

tool-journal 是一个基础设施领域的开源项目,官方简介:TypeScript execution journal for retryable tools: SQLite durability, lease fencing, explicit uncertainty, and reproducible crash tests.。项目使用 TypeScript 开发,在 GitHub 上获得 142 星标。

上一篇:brinicle

下一篇:5.0-Ai-Engineering-Toolkit

同类项目推荐

freebuff-proxy 开源

聚合多账号,一键接入 OpenAI 兼容 API,轻松管理会话。

OpenAI-compatible gateway for FreeBuff coding models. Token pool, session lifecycle,···

★ 202 2026-08-20
microduck 开源

用 Rust 造一只会走路的桌面小鸭,快速上手双足机器人。

A Tiny biped duck robot

★ 8433 2026-09-10
soperator 开源

用 Kubernetes 原生方式运行 Slurm,简化 HPC 集群管理。

Run Slurm in Kubernetes

★ 435 2026-08-10
ollama 开源

一条命令本地跑起大模型,免费、私密、不卡顿

Get up and running with Kimi, GLM, MiniMax, DeepSeek, gpt-oss, Qwen, Gemma and other···

★ 181124 2026-08-09