Grok 构建源码精华
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md 的官方指南,在当前 AI 助手中安装 @user_97acf6d1/grok-to-hermes 技能。
技能介绍
要解决的问题
Codex 依赖 FreeLLMAPI 提供的模型,上游不可用或抖动时它会直接失败,而这类失败常常伪装成配置问题,很容易让人掉进反复调试的坑。另一边,Grok Build 的开源侧已经把 agent 基础设施里几处难点做得相当扎实:压缩该何时触发、安全边界在哪、推理错误如何分类重试、崩溃现场为什么要先落盘、钩子的 fail-open 语义到底是什么。这个技能从 74 个 crate、125 万行 Rust 中把这些机制逐个挑出,移植成独立 Python 模块,让你不必等 Codex 也能自己把链路搭起来。
核心能力
scripts/compaction_engine.py— 移植自xai-grok-compaction(6,790 行)。提供FullReplace、TailKeep、Chunked三种策略,should_compact()走 4 层门控,snap_to_safe_boundary()保证不切断 assistant-tool 配对。默认值与上游一致:85% 触发、50% 目标、最多 3 次重试、摘要不超过原文 80%。scripts/retry_backoff.py— 移植自xai-grok-sampler/src/retry.rs。9 步错误分类管道按固定顺序求值:401/403 与加密错误直接外发不重试,413 和图片处理错误走RetryWithImageStrip,429 使用Retry-After且上限 2 次。退避曲线 2s→4s→8s→16s→30s,带 ±20% 抖动。scripts/crash_recovery.py— 先写 crash PC 再做 best-effort frame walk,规避SA_RESETHAND杀进程后现场丢失。scripts/hook_runtime.py— 15 种生命周期事件,仅PreToolUse可阻断;决策 fail-open,JSON 返回值优先于 exit code。scripts/extension_registry.py— Builder → Registry 模式,支持 TurnLifecycle、SessionLifecycle、TurnInput、Command 四类 contributor。
Codex Bridge 集成
scripts/codex_bridge_adapter.py 与 .js 把压缩和重试塞进 bridge-443.mjs,即 Codex 与 FreeLLMAPI 之间的中间层。压缩引擎可在请求发出前后介入,预防 token 超限;重试模块直接包在 HTTP 调用外层。
适用边界
只移植了算法与默认值,不含模型权重、推理 API 后端与系统提示词正文——这三样属于闭源部分。换模型上下文窗口时要重新核对 trigger_threshold_percent 与 min_compactable_tokens。重试分类顺序是上游强约束,调整前先确认不会把 429 当成 5xx 处理。崩溃恢复记录的是单进程信号现场,不解决多进程共享状态的一致性。钩子默认放行,安全策略必须显式返回 deny。
使用场景
- Codex 因 FreeLLMAPI 模型不可用无法启动时,需要跳过无休止调试,直接用移植模块自建压缩与重试链路。
- 长对话 token 超过窗口 85% 时,需要按 FullReplace 或 TailKeep 策略压缩,且不能切断 assistant-tool 配对。
- agent 准备执行危险 shell 命令前,需要在 PreToolUse 钩子拦截;钩子超时或崩溃时应 fail-open 放行。
- 进程被信号杀死后要做现场恢复,需要先落盘 crash PC 再做 frame walk,避免 SA_RESETHAND 清掉现场。
适合人员
- 独立搭建 agent 运行时的工程师,希望不依赖 Codex 也能获得 Grok Build 同等质量的压缩、重试与恢复模块。
- 维护模型网关 FreeLLMAPI 的后端开发者,需要给 HTTP 调用加规范的 9 步错误分类与 429 退避重试。
- 为 agent 设计钩子与插件系统的工程师,希望按 Builder → Registry 模式接入 TurnLifecycle 等 contributor。
- 排查崩溃现场的可靠性工程师,需要先用 GCRX 格式落盘 crash PC 再做 frame walk 恢复栈帧。