mcpField
C
cache-expert

cache-expert

github.com/dagger开发16.5k56 次安装今天更新
代码仓库

关于 cache-expert

cache-expert 是用于调查和调试 Dagger Engine 缓存的技能;其 GraphQL API 以不可变操作构成的 DAG 执行工作流。它指引查阅当前参考资料,并附带用于离线分析缓存快照的 Go 脚本。

主要功能

  1. 01Dagger 缓存架构概览
  2. 02缓存调查参考指南
  3. 03调试与 CI 跟踪说明
  4. 04离线分析缓存快照的脚本

适用场景

  1. 01调查保留的缓存根及其闭包
  2. 02调试 Dagger 缓存行为
  3. 03离线分析缓存快照转储

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/dagger/dagger --skill cache-expert

安装后在 Claude Code 中输入/cache-expert确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
cache_persistence.md
cache_pruning.md
cachebasics.md
dagqltypes.md
debugging.md
dynamicinputs.md
egraph.md
filesync.md
lazy_evaluation.md
mutablecache.md
session_resources.md
typedefs.md
writingcoreapis.md
scripts/
dagql-cache-analyzer.go

详细介绍

缓存专家

高层架构

Dagger Engine 提供基于 GraphQL 的 API,用于构建和执行 DAG 工作流。

每个操作都将不可变对象/标量值作为输入,并生成不可变对象/标量值作为输出。“可变性”通过对不可变值执行这些操作形成的 DAG 来模拟,类似于函数式编程。

这使缓存成为可能:由于输入不可变且操作具有确定性,因此可以根据操作及其输入推导出缓存键。

操作的 DAG 可以序列化为 ID,这些 ID 关联的摘要可用作操作的缓存键。

references/ 中的参考文档均为最新版本,应作为了解缓存、持久化、剪枝、惰性求值、会话资源、文件同步、类型定义和 e-graph 行为的当前指南。代码仍是最终事实来源,但参考文档预计与当前实现保持一致。

调试缓存相关问题时,务必阅读相关参考文档。对于范围广泛的缓存调查,请阅读所有参考文档。references/debugging.md 包含有关运行测试、重放 CI 跟踪以及一般调试的重要说明。

脚本

  • scripts/dagql-cache-analyzer.go 离线分析 /debug/dagql/cache 快照转储,并汇总保留的根、结果类别和近似的累计闭包。

    用法:

    go run ./skills/cache-expert/scripts/dagql-cache-analyzer.go /tmp/dagql.cache.1
    

评论

支持 Markdown