
tool-journal
让工具重试不再重复执行,崩溃后也能安全恢复
tool-journal 是一个面向可重试工具调用的 TypeScript 执行日志库,核心解决 AI Agent 或自动化流程中工具调用因崩溃、超时、重试导致的状态不一致问题。它把每次工具执行记录到 SQLite,提供持久化存储与租约(lease)机制,确保同一任务不会被并发重复执行;通过显式的“不确定状态”标记,让调用方能区分“确定失败”“确定成功”和“可能已执行但结果未知”,从而做出安全的重试决策。项目还内置故障注入与可复现的崩溃测试,帮助开发者在本地验证重试逻辑和幂等性。适合需要可靠工具编排、任务恢复和精确一次语义的 AI 基础设施场景,用轻量 SQLite 替代复杂分布式协调服务。
开源
free
基础设施
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
项目介绍
上一篇:brinicle
同类项目推荐
freebuff-proxy
开源
聚合多账号,一键接入 OpenAI 兼容 API,轻松管理会话。
OpenAI-compatible gateway for FreeBuff coding models. Token pool, session lifecycle,···
microduck
开源
用 Rust 造一只会走路的桌面小鸭,快速上手双足机器人。
A Tiny biped duck robot
soperator
开源
用 Kubernetes 原生方式运行 Slurm,简化 HPC 集群管理。
Run Slurm in Kubernetes
ollama
开源
一条命令本地跑起大模型,免费、私密、不卡顿
Get up and running with Kimi, GLM, MiniMax, DeepSeek, gpt-oss, Qwen, Gemma and other···