[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-entireio--cli":3,"tool-entireio--cli":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 真正成长为懂上",148568,2,"2026-04-09T23:34:24",[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":66,"readme_en":67,"readme_zh":68,"quickstart_zh":69,"use_case_zh":70,"hero_image_url":71,"owner_login":72,"owner_name":73,"owner_avatar_url":74,"owner_bio":75,"owner_company":76,"owner_location":76,"owner_email":76,"owner_twitter":77,"owner_website":78,"owner_url":79,"languages":80,"stars":92,"forks":93,"last_commit_at":94,"license":95,"difficulty_score":32,"env_os":96,"env_gpu":97,"env_ram":97,"env_deps":98,"category_tags":105,"github_topics":106,"view_count":32,"oss_zip_url":76,"oss_zip_packed_at":76,"status":17,"created_at":113,"updated_at":114,"faqs":115,"releases":146},6027,"entireio\u002Fcli","cli","Entire is a new developer platform that hooks into your git workflow to capture AI agent sessions on every push, unifying your code with its context and reasoning.","Entire CLI 是一款专为开发者设计的命令行工具，它无缝集成到现有的 Git 工作流中，旨在自动记录 AI 编程助手（如 Claude Code、Cursor 等）的完整会话过程。\n\n在日常开发中，AI 生成的代码往往缺乏上下文，导致团队难以理解“代码为何这样修改”，且在 AI 出错时难以快速回退。Entire CLI 解决了这一痛点：它在每次提交时自动捕获提示词、回复内容、修改文件及工具调用等详细信息，并将这些元数据存储在独立的分支中，既保持了主分支提交历史的整洁，又建立了可搜索的代码演变档案。\n\n该工具特别适合频繁使用 AI 辅助编程的软件工程师和技术团队。其核心亮点在于“时间旅行”般的能力——用户可以随时将项目状态“倒带”至之前的任意检查点，无缝恢复中断的会话或撤销错误的修改，极大提升了调试效率与协作透明度。此外，它还满足了审计与合规需求，让每一次代码变更都有据可查。通过简单的两步配置，Entire CLI 即可在不干扰原有习惯的前提下，为项目增添一层智能记忆与安全网。","# Entire CLI\n\nEntire hooks into your Git workflow to capture AI agent sessions as you work. Sessions are indexed alongside commits, creating a searchable record of how code was written in your repo.\n\nWith Entire, you can:\n\n- **Understand why code changed** — see the full prompt\u002Fresponse transcript and files touched\n- **Recover instantly** — rewind to a known-good checkpoint when an agent goes sideways and resume seamlessly\n- **Keep Git history clean** — preserve agent context on a separate branch\n- **Onboard faster** — show the path from prompt → change → commit\n- **Maintain traceability** — support audit and compliance requirements when needed\n\n## Why Entire\n\n- **Understand why code changed, not just what** — Transcripts, prompts, files touched, token usage, tool calls, and more are captured alongside every commit.\n- **Rewind and resume from any checkpoint** — Go back to any previous agent session and pick up exactly where you or a coworker left off.\n- **Full context preserved and searchable** — A versioned record of every AI interaction tied to your git history, with nothing lost.\n- **Zero context switching** — Git-native, two-step setup, works with Claude Code, Codex, Gemini, and more.\n\n## Table of Contents\n\n- [Why Entire](#why-entire)\n- [Quick Start](#quick-start)\n- [Typical Workflow](#typical-workflow)\n- [Key Concepts](#key-concepts)\n  - [How It Works](#how-it-works)\n  - [Strategy](#strategy)\n- [Local Device Auth Testing](#local-device-auth-testing)\n- [Commands Reference](#commands-reference)\n- [Configuration](#configuration)\n- [Security & Privacy](#security--privacy)\n- [Troubleshooting](#troubleshooting)\n- [Development](#development)\n- [Getting Help](#getting-help)\n- [License](#license)\n\n## Requirements\n\n- Git\n- macOS, Linux or Windows\n- [Supported agent](#agent-hook-configuration) installed and authenticated\n\n## Quick Start\n\n```bash\n# Install via Homebrew\nbrew tap entireio\u002Ftap\nbrew install entireio\u002Ftap\u002Fentire\n\n# Or install via Scoop (Windows)\nscoop bucket add entire https:\u002F\u002Fgithub.com\u002Fentireio\u002Fscoop-bucket.git\nscoop install entire\u002Fcli\n\n# Or install via Go\ngo install github.com\u002Fentireio\u002Fcli\u002Fcmd\u002Fentire@latest\n\n# Linux: Add Go binaries to PATH (add to ~\u002F.zshrc or ~\u002F.bashrc if not already configured)\nexport PATH=\"$HOME\u002Fgo\u002Fbin:$PATH\"\n\n# Enable in your project\ncd your-project && entire enable\n\n# Check status\nentire status\n```\n\n## Typical Workflow\n\n### 1. Enable Entire in Your Repository\n\n```\nentire enable\n```\n\nThis installs agent and Git hooks to work with your AI agent. You'll be prompted to select which agents to enable. To enable a specific agent non-interactively, use `entire enable --agent \u003Cname>` (e.g., `entire enable --agent cursor`).\n\nThe hooks capture session data as you work. Checkpoints are created when you or the agent make a git commit. Your code commits stay clean, Entire never creates commits on your active branch. All session metadata is stored on a separate `entire\u002Fcheckpoints\u002Fv1` branch.\n\n### 2. Work with Your AI Agent\n\nJust use one of your AI agents as before. Entire runs in the background, tracking your session:\n\n```\nentire status  # Check current session status anytime\n```\n\n### 3. Rewind to a Previous Checkpoint\n\nIf you want to undo some changes and go back to an earlier checkpoint:\n\n```\nentire rewind\n```\n\nThis shows all available checkpoints in the current session. Select one to restore your code to that exact state.\n\n### 4. Resume a Previous Session\n\nTo restore the latest checkpointed session metadata for a branch:\n\n```\nentire resume \u003Cbranch>\n```\n\nEntire checks out the branch, restores the latest checkpointed session metadata (one or more sessions), and prints command(s) to continue.\n\n### 5. Disable Entire (Optional)\n\n```\nentire disable\n```\n\nRemoves the git hooks. Your code and commit history remain untouched.\n\n## Key Concepts\n\n### Sessions\n\nA **session** represents a complete interaction with your AI agent, from start to finish. Each session captures all prompts, responses, files modified, and timestamps.\n\n**Session ID format:** `YYYY-MM-DD-\u003CUUID>` (e.g., `2026-01-08-abc123de-f456-7890-abcd-ef1234567890`)\n\nSessions are stored separately from your code commits on the `entire\u002Fcheckpoints\u002Fv1` branch.\n\n### Checkpoints\n\nA **checkpoint** is a snapshot within a session that you can rewind to—a \"save point\" in your work.\n\nCheckpoints are created when you or the agent make a git commit. **Checkpoint IDs** are 12-character hex strings (e.g., `a3b2c4d5e6f7`).\n\n### How It Works\n\n```\nYour Branch                    entire\u002Fcheckpoints\u002Fv1\n     │                                  │\n     ▼                                  │\n[Base Commit]                           │\n     │                                  │\n     │  ┌─── Agent works ───┐           │\n     │  │  Step 1           │           │\n     │  │  Step 2           │           │\n     │  │  Step 3           │           │\n     │  └───────────────────┘           │\n     │                                  │\n     ▼                                  ▼\n[Your Commit] ─────────────────► [Session Metadata]\n     │                           (transcript, prompts,\n     │                            files touched)\n     ▼\n```\n\nCheckpoints are saved as you work. When you commit, session metadata is permanently stored on the `entire\u002Fcheckpoints\u002Fv1` branch and linked to your commit.\n\n### Strategy\n\nEntire uses a manual-commit strategy that keeps your git history clean:\n\n- **No commits on your branch** — Entire never creates commits on the active branch\n- **Safe on any branch** — works on main, master, and feature branches alike\n- **Non-destructive rewind** — restore files from any checkpoint without altering commit history\n- **Metadata stored separately** — all session data lives on the `entire\u002Fcheckpoints\u002Fv1` branch\n\n### Git Worktrees\n\nEntire works seamlessly with [git worktrees](https:\u002F\u002Fgit-scm.com\u002Fdocs\u002Fgit-worktree). Each worktree has independent session tracking, so you can run multiple AI sessions in different worktrees without conflicts.\n\n### Concurrent Sessions\n\nMultiple AI sessions can run on the same commit. If you start a second session while another has uncommitted work, Entire warns you and tracks them separately. Both sessions' checkpoints are preserved and can be rewound independently.\n\n## Local Device Auth Testing\n\nIf you're working on the CLI device auth flow against a local `entire.io` checkout:\n\n```bash\n# In your app repo\ncd ..\u002Fentire.io-1\nmise run dev\n\n# In this repo, point the CLI at the local API\ncd ..\u002Fcli\nexport ENTIRE_API_BASE_URL=http:\u002F\u002Flocalhost:8787\n\n# Run the smoke test\n.\u002Fscripts\u002Flocal-device-auth-smoke.sh\n```\n\nUseful commands while developing:\n\n```bash\n# Run the login flow against a local server (prompts to press Enter before opening the browser)\ngo run .\u002Fcmd\u002Fentire login --insecure-http-auth\n\n# Run the focused integration coverage for login\ngo test -tags=integration .\u002Fcmd\u002Fentire\u002Fcli\u002Fintegration_test -run TestLogin\n```\n\n## Commands Reference\n\n| Command          | Description                                                                                       |\n| ---------------- | ------------------------------------------------------------------------------------------------- |\n| `entire clean`   | Clean up session data and orphaned Entire data (use `--all` for repo-wide cleanup)                |\n| `entire disable` | Remove Entire hooks from repository                                                               |\n| `entire doctor`  | Fix or clean up stuck sessions                                                                    |\n| `entire enable`  | Enable Entire in your repository                                                                  |\n| `entire explain` | Explain a session or commit                                                                       |\n| `entire login`   | Authenticate the CLI with Entire device auth                                                      |\n| `entire resume`  | Switch to a branch, restore latest checkpointed session metadata, and show command(s) to continue |\n| `entire rewind`  | Rewind to a previous checkpoint                                                                   |\n| `entire status`  | Show current session info                                                                         |\n| `entire sessions stop` | Mark one or more active sessions as ended                                                   |\n| `entire version` | Show Entire CLI version                                                                           |\n\n### `entire enable` Flags\n\n| Flag                                        | Description                                                                                                       |\n| ------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |\n| `--agent \u003Cname>`                            | AI agent to install hooks for: `claude-code`, `codex`, `gemini`, `opencode`, `cursor`, `factoryai-droid`, or `copilot-cli` |\n| `--force`, `-f`                             | Force reinstall hooks (removes existing Entire hooks first)                                                       |\n| `--local`                                   | Write settings to `settings.local.json` instead of `settings.json`                                                |\n| `--project`                                 | Write settings to `settings.json` even if it already exists                                                       |\n| `--skip-push-sessions`                      | Disable automatic pushing of session logs on git push                                                             |\n| `--checkpoint-remote \u003Cprovider:owner\u002Frepo>` | Push checkpoint branches to a separate repo (e.g., `github:org\u002Fcheckpoints-repo`)                                 |\n| `--telemetry=false`                         | Disable anonymous usage analytics                                                                                 |\n\n**Examples:**\n\n```\n# Force reinstall hooks\nentire enable --force\n\n# Save settings locally (not committed to git)\nentire enable --local\n```\n\n## Configuration\n\nEntire uses two configuration files in the `.entire\u002F` directory:\n\n### settings.json (Project Settings)\n\nShared across the team, typically committed to git:\n\n```json\n{\n  \"enabled\": true\n}\n```\n\n### settings.local.json (Local Settings)\n\nPersonal overrides, gitignored by default:\n\n```json\n{\n  \"enabled\": false,\n  \"log_level\": \"debug\"\n}\n```\n\n### Configuration Options\n\n| Option                               | Values                                       | Description                                             |\n| ------------------------------------ | -------------------------------------------- | ------------------------------------------------------- |\n| `enabled`                            | `true`, `false`                              | Enable\u002Fdisable Entire                                   |\n| `log_level`                          | `debug`, `info`, `warn`, `error`             | Logging verbosity                                       |\n| `strategy_options.push_sessions`     | `true`, `false`                              | Auto-push `entire\u002Fcheckpoints\u002Fv1` branch on git push    |\n| `strategy_options.checkpoint_remote` | `{\"provider\": \"github\", \"repo\": \"org\u002Frepo\"}` | Push checkpoint branches to a separate repo (see below) |\n| `strategy_options.summarize.enabled` | `true`, `false`                              | Auto-generate AI summaries at commit time               |\n| `telemetry`                          | `true`, `false`                              | Send anonymous usage statistics to Posthog              |\n\n### Agent Hook Configuration\n\nEach agent stores its hook configuration in its own directory. When you run `entire enable`, hooks are installed in the appropriate location for each selected agent:\n\n| Agent            | Hook Location                 | Format            |\n| ---------------- | ----------------------------- | ----------------- |\n| Claude Code      | `.claude\u002Fsettings.json`       | JSON hooks config |\n| Codex            | `.codex\u002Fhooks.json`           | JSON hooks config |\n| Copilot CLI      | `.github\u002Fhooks\u002Fentire.json`   | JSON hooks config |\n| Cursor           | `.cursor\u002Fhooks.json`          | JSON hooks config |\n| Factory AI Droid | `.factory\u002Fsettings.json`      | JSON hooks config |\n| Gemini CLI       | `.gemini\u002Fsettings.json`       | JSON hooks config |\n| OpenCode         | `.opencode\u002Fplugins\u002Fentire.ts` | TypeScript plugin |\n\nYou can enable multiple agents at the same time — each agent's hooks are independent. Entire detects which agents are active by checking for installed hooks, not by a setting in `settings.json`.\n\n### Checkpoint Remote\n\nBy default, Entire pushes `entire\u002Fcheckpoints\u002Fv1` to the same remote as your code. If you want to push checkpoint data to a separate repo (e.g., a private repo for public projects), configure `checkpoint_remote` with a structured provider and repo:\n\n```json\n{\n  \"strategy_options\": {\n    \"checkpoint_remote\": {\n      \"provider\": \"github\",\n      \"repo\": \"myorg\u002Fcheckpoints-private\"\n    }\n  }\n}\n```\n\nOr via the CLI:\n\n```bash\nentire enable --checkpoint-remote github:myorg\u002Fcheckpoints-private\n```\n\nEntire derives the git URL automatically using the same protocol (SSH or HTTPS) as your push remote. It will:\n\n- Fetch the checkpoint branch locally if it exists on the remote but not locally (one-time)\n- Push `entire\u002Fcheckpoints\u002Fv1` to the checkpoint repo instead of your default push remote\n- Skip pushing if a fork is detected (push remote owner differs from checkpoint repo owner)\n- If the remote is unreachable, warn and continue without blocking your main push\n\n### Auto-Summarization\n\nWhen enabled, Entire automatically generates AI summaries for checkpoints at commit time. Summaries capture intent, outcome, learnings, friction points, and open items from the session.\n\n```json\n{\n  \"strategy_options\": {\n    \"summarize\": {\n      \"enabled\": true\n    }\n  }\n}\n```\n\n**Requirements:**\n\n- Claude CLI must be installed and authenticated (`claude` command available in PATH)\n- Summary generation is non-blocking: failures are logged but don't prevent commits\n\n**Note:** Currently uses Claude CLI for summary generation. Other AI backends may be supported in future versions.\n\n### Settings Priority\n\nLocal settings override project settings field-by-field. When you run `entire status`, it shows both project and local (effective) settings.\n\n### Agent-Specific Steps & Limitations\n\n- When enabling Entire for Codex, the command will also create or update `.codex\u002Fconfig.toml` with `codex_hooks = true` to enable Codex hooks. If you configure Codex manually, make sure this flag is set in your `.codex\u002Fconfig.toml`. Or select Codex from the interactive agent picker when running `entire enable`.\n- Entire supports Cursor IDE and Cursor Agent CLI tool, but `entire rewind` is not available at this time. Other commands (`doctor`, `status` etc.) work the same as all other agents.\n- Entire supports Copilot CLI, but not Copilot in VS Code, in other IDEs, or on github.com.\n\n## Security & Privacy\n\n**Your session transcripts are stored in your git repository** on the `entire\u002Fcheckpoints\u002Fv1` branch. If your repository is public, this data is visible to anyone.\n\nEntire automatically redacts detected secrets (API keys, tokens, credentials) when writing to `entire\u002Fcheckpoints\u002Fv1`, but redaction is best-effort. Temporary shadow branches used during a session may contain unredacted data and should not be pushed. See [docs\u002Fsecurity-and-privacy.md](docs\u002Fsecurity-and-privacy.md) for details.\n\n## Troubleshooting\n\n### Common Issues\n\n| Issue                    | Solution                                                |\n| ------------------------ | ------------------------------------------------------- |\n| \"Not a git repository\"   | Navigate to a Git repository first                      |\n| \"Entire is disabled\"     | Run `entire enable`                                     |\n| \"No rewind points found\" | Work with your configured agent and commit your changes |\n| \"shadow branch conflict\" | Run `entire clean --force`                              |\n\n### SSH Authentication Errors\n\nIf you see an error like this when running `entire resume`:\n\n```\nFailed to fetch metadata: failed to fetch entire\u002Fcheckpoints\u002Fv1 from origin: ssh: handshake failed: ssh: unable to authenticate, attempted methods [none publickey], no supported methods remain\n```\n\nThis is a [known issue with go-git's SSH handling](https:\u002F\u002Fgithub.com\u002Fgo-git\u002Fgo-git\u002Fissues\u002F411). Fix it by adding GitHub's host keys to your known_hosts file:\n\n```\nssh-keyscan -t rsa github.com >> ~\u002F.ssh\u002Fknown_hosts\nssh-keyscan -t ecdsa github.com >> ~\u002F.ssh\u002Fknown_hosts\n```\n\n### Debug Mode\n\n```\n# Via environment variable\nENTIRE_LOG_LEVEL=debug entire status\n\n# Or via settings.local.json\n{\n  \"log_level\": \"debug\"\n}\n```\n\n### Cleaning Up State\n\n```\n# Clean session data for current commit\nentire clean --force\n\n# Clean all orphaned data across the repository\nentire clean --all --force\n\n# Disable and re-enable\nentire disable && entire enable --force\n```\n\n### Accessibility\n\nFor screen reader users, enable accessible mode:\n\n```\nexport ACCESSIBLE=1\nentire enable\n```\n\nThis uses simpler text prompts instead of interactive TUI elements.\n\n## Development\n\nThis project uses [mise](https:\u002F\u002Fmise.jdx.dev\u002F) for task automation and dependency management.\n\n### Prerequisites\n\n- [mise](https:\u002F\u002Fmise.jdx.dev\u002F) - Install with `curl https:\u002F\u002Fmise.run | sh`\n\n### Getting Started\n\n```\n# Clone the repository\ngit clone \u003Crepo-url>\ncd cli\n\n# Install dependencies (including Go)\nmise install\n\n# Trust the mise configuration (required on first setup)\nmise trust\n\n# Build the CLI\nmise run build\n```\n\n### Common Tasks\n\n```\n# Run tests\nmise run test\n\n# Run integration tests\nmise run test:integration\n\n# Run all tests (unit + integration, CI mode)\nmise run test:ci\n\n# Lint the code\nmise run lint\n\n# Format the code\nmise run fmt\n```\n\n## Getting Help\n\n```\nentire --help              # General help\nentire \u003Ccommand> --help    # Command-specific help\n```\n\n- **GitHub Issues:** Report bugs or request features at https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fissues\n- **Contributing:** See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines\n\n## License\n\nMIT License - see [LICENSE](LICENSE) for details.\n","# Entire CLI\n\nEntire 可以无缝集成到你的 Git 工作流中，在你编写代码的过程中捕获 AI 代理会话。这些会话会与提交记录一同索引，从而在你的仓库中创建一个可搜索的代码编写过程记录。\n\n使用 Entire，你可以：\n\n- **了解代码变更的原因** — 查看完整的提示\u002F响应对话记录以及被修改的文件\n- **即时恢复** — 当代理行为异常时，回退到已知良好的检查点并无缝继续工作\n- **保持 Git 历史整洁** — 将代理上下文保存在单独的分支上\n- **更快地完成入职培训** — 展示从提示 → 变更 → 提交的完整路径\n- **确保可追溯性** — 在需要时支持审计和合规要求\n\n## 为什么选择 Entire\n\n- **理解代码为何变更，而不仅仅是变更了什么** — 每次提交都会伴随对话记录、提示内容、涉及的文件、令牌使用情况、工具调用等信息一起被捕获。\n- **从任意检查点回退并恢复** — 随时返回之前的代理会话，并从中断的地方继续工作。\n- **完整上下文保存且可搜索** — 每次 AI 交互都会生成版本化的记录，并与你的 Git 历史绑定，不会丢失任何信息。\n- **无需切换上下文** — 原生支持 Git，两步即可完成设置，兼容 Claude Code、Codex、Gemini 等多种模型。\n\n## 目录\n\n- [为什么选择 Entire](#why-entire)\n- [快速入门](#quick-start)\n- [典型工作流程](#typical-workflow)\n- [核心概念](#key-concepts)\n  - [工作原理](#how-it-works)\n  - [策略](#strategy)\n- [本地设备认证测试](#local-device-auth-testing)\n- [命令参考](#commands-reference)\n- [配置](#configuration)\n- [安全与隐私](#security--privacy)\n- [故障排除](#troubleshooting)\n- [开发](#development)\n- [获取帮助](#getting-help)\n- [许可证](#license)\n\n## 系统要求\n\n- Git\n- macOS、Linux 或 Windows\n- 已安装并认证的[支持的代理](#agent-hook-configuration)\n\n## 快速入门\n\n```bash\n# 通过 Homebrew 安装\nbrew tap entireio\u002Ftap\nbrew install entireio\u002Ftap\u002Fentire\n\n# 或通过 Scoop（Windows）安装\nscoop bucket add entire https:\u002F\u002Fgithub.com\u002Fentireio\u002Fscoop-bucket.git\nscoop install entire\u002Fcli\n\n# 或通过 Go 安装\ngo install github.com\u002Fentireio\u002Fcli\u002Fcmd\u002Fentire@latest\n\n# Linux：将 Go 二进制文件添加到 PATH（如果尚未配置，请添加到 ~\u002F.zshrc 或 ~\u002F.bashrc）\nexport PATH=\"$HOME\u002Fgo\u002Fbin:$PATH\"\n\n# 在项目中启用\ncd your-project && entire enable\n\n# 检查状态\nentire status\n```\n\n## 典型工作流程\n\n### 1. 在你的仓库中启用 Entire\n\n```\nentire enable\n```\n\n此命令会安装代理和 Git 钩子，以便与你的 AI 代理协同工作。系统会提示你选择要启用的代理。若需非交互式地启用特定代理，可以使用 `entire enable --agent \u003Cname>`（例如 `entire enable --agent cursor`）。\n\n钩子会在你工作时捕获会话数据。当你或代理执行 Git 提交时，会创建检查点。你的代码提交将保持干净，Entire 不会在你的当前分支上创建任何提交。所有会话元数据都将存储在名为 `entire\u002Fcheckpoints\u002Fv1` 的独立分支上。\n\n### 2. 使用你的 AI 代理\n\n只需像往常一样使用你的 AI 代理即可。Entire 会在后台运行，跟踪你的会话：\n\n```\nentire status  # 随时查看当前会话状态\n```\n\n### 3. 回退到之前的检查点\n\n如果你想撤销部分更改并回到之前的检查点：\n\n```\nentire rewind\n```\n\n此命令会显示当前会话中的所有可用检查点。选择其中一个，即可将代码恢复到该状态。\n\n### 4. 恢复之前的会话\n\n要为某个分支恢复最新的检查点会话元数据：\n\n```\nentire resume \u003Cbranch>\n```\n\nEntire 会检出该分支，恢复最新的检查点会话元数据（可能包含一个或多个会话），并输出继续工作的命令。\n\n### 5. 禁用 Entire（可选）\n\n```\nentire disable\n```\n\n此命令会移除 Git 钩子。你的代码和提交历史将不受影响。\n\n## 核心概念\n\n### 会话\n\n**会话** 表示与 AI 代理从开始到结束的完整交互过程。每个会话会记录所有的提示、响应、修改的文件以及时间戳。\n\n**会话 ID 格式：** `YYYY-MM-DD-\u003CUUID>`（例如 `2026-01-08-abc123de-f456-7890-abcd-ef1234567890`）\n\n会话数据与你的代码提交分开存储在 `entire\u002Fcheckpoints\u002Fv1` 分支上。\n\n### 检查点\n\n**检查点** 是会话中的一个快照，你可以回退到它——相当于工作中的“存档点”。\n\n当您或代理执行 Git 提交时，会创建检查点。**检查点 ID** 是一个 12 位的十六进制字符串（例如 `a3b2c4d5e6f7`）。\n\n### 工作原理\n\n```\n您的分支                    entire\u002Fcheckpoints\u002Fv1\n     │                                  │\n     ▼                                  │\n[基础提交]                           │\n     │                                  │\n     │  ┌─── 代理工作 ───┐           │\n     │  │  第一步           │           │\n     │  │  第二步           │           │\n     │  │  第三步           │           │\n     │  └───────────────────┘           │\n     │                                  │\n     ▼                                  ▼\n[您的提交] ─────────────────► [会话元数据]\n     │                           （对话记录、提示、\n     │                            修改的文件）\n     ▼\n```\n\n检查点会在你工作时保存。当你提交时，会话元数据会被永久存储在 `entire\u002Fcheckpoints\u002Fv1` 分支上，并与你的提交关联。\n\n### 策略\n\nEntire 采用手动提交策略，以保持你的 Git 历史整洁：\n\n- **不在你的分支上创建提交** — Entire 绝不会在当前分支上创建任何提交\n- **适用于任何分支** — 无论是 main、master 还是特性分支，都能正常使用\n- **无破坏性的回退** — 从任意检查点恢复文件，而不会改变提交历史\n- **元数据独立存储** — 所有会话数据都保存在 `entire\u002Fcheckpoints\u002Fv1` 分支上\n\n### Git 工作树\n\nEntire 可以与 [Git 工作树](https:\u002F\u002Fgit-scm.com\u002Fdocs\u002Fgit-worktree) 无缝协作。每个工作树都有独立的会话跟踪，因此你可以在不同的工作树中同时运行多个 AI 会话，而不会发生冲突。\n\n### 并发会话\n\n同一份提交上可以同时进行多个 AI 会话。如果你在另一个会话尚未提交时启动第二个会话，Entire 会发出警告，并分别跟踪这两个会话。两个会话的检查点都会被保留，可以独立回退。\n\n## 本地设备认证测试\n\n如果你正在针对本地的 `entire.io` 代码库开发 CLI 设备认证流程：\n\n```bash\n# 在你的应用仓库中\ncd ..\u002Fentire.io-1\nmise run dev\n\n# 在本仓库中，将 CLI 指向本地 API\ncd ..\u002Fcli\nexport ENTIRE_API_BASE_URL=http:\u002F\u002Flocalhost:8787\n\n# 运行冒烟测试\n.\u002Fscripts\u002Flocal-device-auth-smoke.sh\n```\n\n开发过程中的一些实用命令：\n\n```bash\n# 对本地服务器运行登录流程（会提示按 Enter 键后再打开浏览器）\ngo run .\u002Fcmd\u002Fentire login --insecure-http-auth\n\n# 运行登录功能的集成测试覆盖\ngo test -tags=integration .\u002Fcmd\u002Fentire\u002Fcli\u002Fintegration_test -run TestLogin\n```\n\n## 命令参考\n\n| 命令          | 描述                                                                                       |\n| ---------------- | ------------------------------------------------------------------------------------------------- |\n| `entire clean`   | 清理会话数据和孤立的 Entire 数据（使用 `--all` 可进行仓库范围的清理）                |\n| `entire disable` | 从仓库中移除 Entire 钩子                                                               |\n| `entire doctor`  | 修复或清理卡住的会话                                                                    |\n| `entire enable`  | 在您的仓库中启用 Entire                                                                  |\n| `entire explain` | 解释一个会话或提交                                                                       |\n| `entire login`   | 使用 Entire 设备认证对 CLI 进行身份验证                                                 |\n| `entire resume`  | 切换到分支，恢复最新的检查点会话元数据，并显示继续执行的命令                           |\n| `entire rewind`  | 回退到之前的检查点                                                                       |\n| `entire status`  | 显示当前会话信息                                                                         |\n| `entire sessions stop` | 将一个或多个活动会话标记为结束                                                   |\n| `entire version` | 显示 Entire CLI 版本                                                                     |\n\n### `entire enable` 标志\n\n| 标志                                        | 描述                                                                                                       |\n| ------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |\n| `--agent \u003Cname>`                            | 要为其安装钩子的 AI 助手：`claude-code`、`codex`、`gemini`、`opencode`、`cursor`、`factoryai-droid` 或 `copilot-cli` |\n| `--force`, `-f`                             | 强制重新安装钩子（先移除现有的 Entire 钩子）                                                       |\n| `--local`                                   | 将设置写入 `settings.local.json` 而不是 `settings.json`                                                |\n| `--project`                                 | 即使 `settings.json` 已存在，也仍将其写入                                               |\n| `--skip-push-sessions`                      | 禁用在 Git 推送时自动推送会话日志                                                                     |\n| `--checkpoint-remote \u003Cprovider:owner\u002Frepo>` | 将检查点分支推送到单独的仓库（例如 `github:org\u002Fcheckpoints-repo`）                                 |\n| `--telemetry=false`                         | 禁用匿名使用情况分析                                                                                 |\n\n**示例：**\n\n```\n# 强制重新安装钩子\nentire enable --force\n\n# 将设置保存在本地（不提交到 Git）\nentire enable --local\n```\n\n## 配置\n\nEntire 在 `.entire\u002F` 目录中使用两个配置文件：\n\n### `settings.json`（项目设置）\n\n团队共享，通常提交到 Git：\n\n```json\n{\n  \"enabled\": true\n}\n```\n\n### `settings.local.json`（本地设置）\n\n个人覆盖设置，默认被 Git 忽略：\n\n```json\n{\n  \"enabled\": false,\n  \"log_level\": \"debug\"\n}\n```\n\n### 配置选项\n\n| 选项                               | 值                                       | 描述                                             |\n| ------------------------------------ | -------------------------------------------- | ------------------------------------------------------- |\n| `enabled`                            | `true`、`false`                              | 启用或禁用 Entire                                   |\n| `log_level`                          | `debug`、`info`、`warn`、`error`             | 日志记录的详细程度                                       |\n| `strategy_options.push_sessions`     | `true`、`false`                              | 在 Git 推送时自动推送 `entire\u002Fcheckpoints\u002Fv1` 分支    |\n| `strategy_options.checkpoint_remote` | `{“provider”: “github”, “repo”: “org\u002Frepo”}` | 将检查点分支推送到单独的仓库（见下文）                 |\n| `strategy_options.summarize.enabled` | `true`、`false`                              | 在提交时自动生成 AI 摘要                               |\n| `telemetry`                          | `true`、`false`                              | 向 Posthog 发送匿名使用统计                             |\n\n### 助手钩子配置\n\n每个助手将其钩子配置存储在其各自的目录中。当您运行 `entire enable` 时，钩子会安装到所选助手的相应位置：\n\n| 助手            | 钩子位置                 | 格式            |\n| ---------------- | ----------------------------- | ----------------- |\n| Claude Code      | `.claude\u002Fsettings.json`       | JSON 钩子配置 |\n| Codex            | `.codex\u002Fhooks.json`           | JSON 钩子配置 |\n| Copilot CLI      | `.github\u002Fhooks\u002Fentire.json`   | JSON 钩子配置 |\n| Cursor           | `.cursor\u002Fhooks.json`          | JSON 钩子配置 |\n| Factory AI Droid | `.factory\u002Fsettings.json`      | JSON 钩子配置 |\n| Gemini CLI       | `.gemini\u002Fsettings.json`       | JSON 钩子配置 |\n| OpenCode         | `.opencode\u002Fplugins\u002Fentire.ts` | TypeScript 插件 |\n\n您可以同时启用多个助手——每个助手的钩子都是独立的。Entire 通过检查已安装的钩子来检测哪些助手处于活动状态，而不是通过 `settings.json` 中的设置。\n\n### 检查点远程\n\n默认情况下，Entire 会将 `entire\u002Fcheckpoints\u002Fv1` 推送到与代码相同的远程仓库。如果您希望将检查点数据推送到单独的仓库（例如用于公共项目的私有仓库），可以使用结构化的提供者和仓库配置 `checkpoint_remote`：\n\n```json\n{\n  \"strategy_options\": {\n    \"checkpoint_remote\": {\n      \"provider\": \"github\",\n      \"repo\": \"myorg\u002Fcheckpoints-private\"\n    }\n  }\n}\n```\n\n或者通过 CLI：\n\n```bash\nentire enable --checkpoint-remote github:myorg\u002Fcheckpoints-private\n```\n\nEntire 会自动使用与您的推送远程相同的协议（SSH 或 HTTPS）生成 Git URL。它将：\n\n- 如果检查点分支存在于远程但本地不存在，则将其一次性拉取到本地\n- 将 `entire\u002Fcheckpoints\u002Fv1` 推送到检查点仓库，而不是您的默认推送远程\n- 如果检测到分叉（推送远程所有者与检查点仓库所有者不同），则跳过推送\n- 如果远程无法访问，会发出警告并继续操作，而不会阻止您的主要推送\n\n### 自动摘要\n\n启用后，Entire 会在提交时为检查点自动生成 AI 摘要。摘要会捕获会话中的意图、结果、经验教训、痛点以及待办事项。\n\n```json\n{\n  \"strategy_options\": {\n    \"summarize\": {\n      \"enabled\": true\n    }\n  }\n}\n```\n\n**要求：**\n\n- 必须安装并认证 Claude CLI（`claude` 命令需在 PATH 中可用）\n- 摘要生成是非阻塞的：如果失败，只会记录日志，不会阻止提交\n\n**注意：** 目前使用 Claude CLI 生成摘要。未来版本可能会支持其他 AI 后端。\n\n### 设置优先级\n\n本地设置会逐字段覆盖项目设置。运行 `entire status` 时，会同时显示项目和本地（生效）设置。\n\n### 特定于代理的步骤与限制\n\n- 为 Codex 启用 Entire 时，该命令还会创建或更新 `.codex\u002Fconfig.toml` 文件，并将 `codex_hooks = true` 设置为启用 Codex 钩子。如果您手动配置 Codex，请确保在 `.codex\u002Fconfig.toml` 中设置了此标志。或者，在运行 `entire enable` 时，从交互式代理选择器中选择 Codex。\n- Entire 支持 Cursor IDE 和 Cursor Agent CLI 工具，但目前尚不支持 `entire rewind` 命令。其他命令（如 `doctor`、`status` 等）与其他代理的功能相同。\n- Entire 支持 Copilot CLI，但不支持 VS Code 中的 Copilot、其他 IDE 或 github.com 上的 Copilot。\n\n## 安全与隐私\n\n**您的会话记录存储在 Git 仓库的 `entire\u002Fcheckpoints\u002Fv1` 分支中。** 如果您的仓库是公开的，这些数据将对任何人可见。\n\nEntire 在写入 `entire\u002Fcheckpoints\u002Fv1` 时会自动遮盖检测到的敏感信息（API 密钥、令牌、凭据），但遮盖仅为尽力而为。会话期间使用的临时影子分支可能包含未遮盖的数据，不应推送。有关详细信息，请参阅 [docs\u002Fsecurity-and-privacy.md](docs\u002Fsecurity-and-privacy.md)。\n\n## 故障排除\n\n### 常见问题\n\n| 问题                    | 解决方法                                                |\n| ------------------------ | ------------------------------------------------------- |\n| “不是 Git 仓库”           | 首先导航到一个 Git 仓库                                 |\n| “Entire 已禁用”          | 运行 `entire enable`                                    |\n| “未找到回溯点”           | 使用您配置的代理工作并提交更改                         |\n| “影子分支冲突”           | 运行 `entire clean --force`                             |\n\n### SSH 认证错误\n\n如果您在运行 `entire resume` 时看到如下错误：\n\n```\n无法获取元数据：无法从 origin 获取 entire\u002Fcheckpoints\u002Fv1：ssh：握手失败：ssh：无法认证，尝试的方法 [无, 公钥]，没有剩余的支持方法\n```\n\n这是 [go-git 的 SSH 处理已知问题](https:\u002F\u002Fgithub.com\u002Fgo-git\u002Fgo-git\u002Fissues\u002F411)。通过将 GitHub 的主机密钥添加到您的 known_hosts 文件来修复：\n\n```\nssh-keyscan -t rsa github.com >> ~\u002F.ssh\u002Fknown_hosts\nssh-keyscan -t ecdsa github.com >> ~\u002F.ssh\u002Fknown_hosts\n```\n\n### 调试模式\n\n```\n# 通过环境变量\nENTIRE_LOG_LEVEL=debug entire status\n\n# 或通过 settings.local.json\n{\n  \"log_level\": \"debug\"\n}\n```\n\n### 清理状态\n\n```\n# 清理当前提交的会话数据\nentire clean --force\n\n# 清理整个仓库中的所有孤立数据\nentire clean --all --force\n\n# 禁用并重新启用\nentire disable && entire enable --force\n```\n\n### 辅助功能\n\n对于屏幕阅读器用户，可以启用无障碍模式：\n\n```\nexport ACCESSIBLE=1\nentire enable\n```\n\n这将使用更简单的文本提示，而不是交互式 TUI 元素。\n\n## 开发\n\n该项目使用 [mise](https:\u002F\u002Fmise.jdx.dev\u002F) 进行任务自动化和依赖管理。\n\n### 先决条件\n\n- [mise](https:\u002F\u002Fmise.jdx.dev\u002F) - 使用 `curl https:\u002F\u002Fmise.run | sh` 安装\n\n### 入门\n\n```\n# 克隆仓库\ngit clone \u003Crepo-url>\ncd cli\n\n# 安装依赖项（包括 Go）\nmise install\n\n# 信任 mise 配置（首次设置时必需）\nmise trust\n\n# 构建 CLI\nmise run build\n```\n\n###常用任务\n\n```\n# 运行测试\nmise run test\n\n# 运行集成测试\nmise run test:integration\n\n# 运行所有测试（单元 + 集成，CI 模式）\nmise run test:ci\n\n# 代码 lint 检查\nmise run lint\n\n# 格式化代码\nmise run fmt\n```\n\n## 获取帮助\n\n```\nentire --help              # 一般帮助\nentire \u003Ccommand> --help    # 命令特定帮助\n```\n\n- **GitHub Issues：** 在 https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fissues 报告错误或请求功能\n- **贡献：** 请参阅 [CONTRIBUTING.md](CONTRIBUTING.md) 以获取指南\n\n## 许可证\n\nMIT 许可证 - 详情请参阅 [LICENSE](LICENSE)。","# Entire CLI 快速上手指南\n\nEntire 是一款集成到 Git 工作流中的开源工具，旨在捕获 AI 代理（如 Claude Code、Cursor 等）的会话记录。它将提示词、响应、修改文件等元数据与 Git 提交关联，帮助你理解代码变更原因、随时回滚到之前的检查点，并保持主分支历史整洁。\n\n## 环境准备\n\n在开始之前，请确保你的开发环境满足以下要求：\n\n*   **操作系统**：macOS、Linux 或 Windows\n*   **核心依赖**：已安装并配置好 `Git`\n*   **AI 代理**：已安装并登录至少一个支持的 AI 编程助手（例如：Claude Code, Cursor, Codex, Gemini, Copilot CLI 等）\n\n## 安装步骤\n\n根据你的操作系统选择以下任一方式进行安装：\n\n### macOS (推荐)\n使用 Homebrew 安装：\n```bash\nbrew tap entireio\u002Ftap\nbrew install entireio\u002Ftap\u002Fentire\n```\n\n### Windows\n使用 Scoop 安装：\n```bash\nscoop bucket add entire https:\u002F\u002Fgithub.com\u002Fentireio\u002Fscoop-bucket.git\nscoop install entire\u002Fcli\n```\n\n### Linux \u002F 通用 (Go 环境)\n如果你已安装 Go 环境，可以直接编译安装：\n```bash\ngo install github.com\u002Fentireio\u002Fcli\u002Fcmd\u002Fentire@latest\n```\n*注意：安装完成后，请确保将 Go 二进制目录添加到环境变量 PATH 中：*\n```bash\nexport PATH=\"$HOME\u002Fgo\u002Fbin:$PATH\"\n# 建议将上述命令添加到 ~\u002F.zshrc 或 ~\u002F.bashrc 以永久生效\n```\n\n## 基本使用\n\n### 1. 启用 Entire\n进入你的项目根目录，运行以下命令以初始化 Git Hooks 并选择要集成的 AI 代理：\n```bash\ncd your-project && entire enable\n```\n*系统会提示你选择需要挂钩的 AI 代理。若需非交互式指定代理（例如 Cursor），可使用：`entire enable --agent cursor`*\n\n### 2. 正常工作\n像往常一样使用你的 AI 代理进行编码。Entire 会在后台自动运行：\n*   当你或 AI 执行 `git commit` 时，Entire 会自动创建一个**检查点 (Checkpoint)**。\n*   所有的会话元数据（提示词、回复、文件变动）会被存储在独立的 `entire\u002Fcheckpoints\u002Fv1` 分支中，不会污染你的主分支历史。\n\n你可以随时查看当前会话状态：\n```bash\nentire status\n```\n\n### 3. 回滚与恢复\n如果 AI 生成的代码不符合预期，你可以轻松回退到之前的任意检查点：\n\n**回滚到特定检查点：**\n```bash\nentire rewind\n```\n*该命令会列出所有可用的检查点，选择后即可将代码恢复到该状态。*\n\n**恢复之前的会话上下文：**\n如果你想切换到某个分支并恢复最近的会话元数据以便继续工作：\n```bash\nentire resume \u003Cbranch-name>\n```\n\n### 4. 停用 (可选)\n如果不再需要使用，可以移除 Hooks，这不会影响你的代码和提交历史：\n```bash\nentire disable\n```","资深后端工程师李明正在利用 AI 助手重构一个遗留的支付模块，需要在多次迭代中频繁调整核心逻辑。\n\n### 没有 cli 时\n- **变更原因成谜**：一周后回顾代码，只看到最终的 Git 提交记录，完全忘记当时为何采纳某种特定的算法实现，丢失了关键的决策上下文。\n- **试错成本高昂**：当 AI 生成的代码导致严重回归错误时，只能手动逐行回滚文件或重置整个分支，极易误删其他有效修改。\n- **协作交接困难**：同事接手任务时，面对一堆没有前因后果的代码变更，需要花费大量时间重新询问或猜测之前的开发思路。\n- **审计合规风险**：在需要追溯代码来源以满足安全审计时，无法提供完整的 AI 交互凭证和提示词记录。\n\n### 使用 cli 后\n- **全景追溯决策**：Entire 自动将每次 AI 对话的提示词、回复内容及修改文件索引到 Git 历史中，李明可随时查看代码背后的完整推理链条。\n- **一键无损回退**：发现逻辑偏差时，只需运行 `entire rewind`，即可瞬间恢复到之前任意一个正常的检查点状态，无缝继续开发。\n- **高效团队协同**：新成员通过 Entire 记录的“从提示到提交”路径，能迅速理解代码演变过程，大幅缩短上手时间。\n- **天然合规归档**：所有 AI 交互会话作为版本化记录独立存储，轻松满足企业对代码可追溯性和安全审计的严格要求。\n\nEntire 通过将 AI 会话深度融入 Git 工作流，让代码演进过程从“黑盒”变为透明、可逆且可追溯的资产。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fentireio_cli_8bed1ea9.png","entireio","Entire","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fentireio_2a3c1b47.png","Building the world's next developer platform",null,"EntireHQ","https:\u002F\u002Fentire.io","https:\u002F\u002Fgithub.com\u002Fentireio",[81,85,88],{"name":82,"color":83,"percentage":84},"Go","#00ADD8",97.8,{"name":86,"color":87,"percentage":32},"Shell","#89e051",{"name":89,"color":90,"percentage":91},"TypeScript","#3178c6",0.2,3913,291,"2026-04-09T18:48:41","MIT","macOS, Linux, Windows","未说明",{"notes":99,"python":97,"dependencies":100},"该工具是一个命令行界面 (CLI)，需预先安装并认证支持的 AI 代理（如 Claude Code, Codex, Gemini, Cursor 等）。它通过 Git Hooks 运行，将会话元数据存储在独立的 Git 分支中，无需 GPU 或特定 Python 环境。可通过 Homebrew、Scoop 或 Go 命令安装。",[101,102,103,104],"Git","Go (用于从源码安装)","Homebrew (macOS)","Scoop (Windows)",[13,15,14],[107,108,109,110,111,112],"agents","ai","claude","developer","developer-platform","gemini","2026-03-27T02:49:30.150509","2026-04-10T07:43:48.008163",[116,121,126,131,136,141],{"id":117,"question_zh":118,"answer_zh":119,"source_url":120},27293,"如何解决因孤儿会话（Orphaned sessions）导致的内存占用过高和 Git 提交变慢的问题？","当使用 Claude Code 等代理频繁生成子会话时，可能会积累大量未清理的“僵尸”会话，导致内存飙升和每次 Git 提交阻塞数分钟。解决方法如下：\n1. 运行诊断命令修复卡住的会话：`ACCESSIBLE=1 entire doctor`\n2. 强制清理孤儿会话：`entire clean --force`\n3. 验证会话数量是否恢复正常：`entire status`\n此外，建议升级到 v0.5.1 或更高版本，该版本包含了性能改进和新的 `entire trace` 命令，有助于定位内存问题。","https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fissues\u002F591",{"id":122,"question_zh":123,"answer_zh":124,"source_url":125},27294,"如何在 WSL2 环境下解决 `entire hooks claude-code session-start` 无限挂起导致 Claude Code 无法启动的问题？","在 WSL2 (Ubuntu) 环境下，`session-start` 钩子可能会无限挂起。这是一个已知问题，官方已将其合并到专门的 WSL 兼容性追踪议题中。临时解决方法是重命名或删除 `.claude\u002Fsettings.json` 文件（其中包含 Entire 钩子配置），以便让 Claude Code 正常启动。建议关注官方关于 WSL 支持的最新进展。","https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fissues\u002F249",{"id":127,"question_zh":128,"answer_zh":129,"source_url":130},27295,"OpenCode 的检查点在 UI 中显示为空会话，但命令行中能看到，该如何解决？","这是一个已修复的 Bug。维护者已经发布了修复补丁。请确保将 Entire CLI 更新到最新版本。修复后，UI 中将正确显示 OpenCode 的会话内容。此外，新版本还在 `entire status` 和日志中增加了模型信息的显示，以提高可见性。如果问题仍然存在，请重新提交包含详细日志的新 Issue。","https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fissues\u002F490",{"id":132,"question_zh":133,"answer_zh":134,"source_url":135},27296,"Entire 是否支持集成 Pi Coding Agent？如何配置？","是的，Entire 现已支持 Pi Coding Agent。官方改变了集成模式，将 Pi 作为外部代理插件（External Agent）提供。你可以通过访问 `entireio\u002Fexternal-agents` 仓库获取相关插件代码和配置说明。该仓库还包含了用于构建和调试外部代理的技能工具（agent skill \u002F debugging skill）。","https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fissues\u002F221",{"id":137,"question_zh":138,"answer_zh":139,"source_url":140},27297,"Entire 是否支持集成 Codex CLI？","是的，Codex CLI 的集成支持已在 Dispatch 0x0007 版本中正式发布。用户现在可以直接使用 Entire 来跟踪和管理 Codex CLI 的会话。","https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fissues\u002F245",{"id":142,"question_zh":143,"answer_zh":144,"source_url":145},27298,"运行 `entire enable` 会覆盖或删除我现有的自定义 Git 钩子吗？","是的，这是一个需要注意的行为。执行 `entire enable` 命令可能会移除仓库中用户自定义的现有 Git 钩子。在启用 Entire 之前，建议先备份现有的 `.git\u002Fhooks` 目录下的自定义脚本，或者在启用后手动将它们重新合并到由 Entire 管理的钩子逻辑中，以防止工作流中断。","https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fissues\u002F261",[147,152,157,162,167,172,177,182,187,192,197,202,207,212,217,222,227,232,237,242],{"id":148,"version":149,"summary_zh":150,"released_at":151},180420,"v0.5.3","### 新增\n\n- `entire sessions` 子命令（`list`、`info`、`stop`），用于管理活动和已结束的会话（[#822](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F822)、[#739](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F739)）\n- `entire attach` 命令，用于手动关联未跟踪的会话（[#688](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F688)、[#743](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F743)）\n- Gemini CLI 对会话日志和摘要的支持（[#819](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F819)）\n- 检查点 v2（开发中）：在 `\u002Fmain` 引用上压缩 `transcript.jsonl` 文件及元数据（[#828](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F828)）\n- `ENTIRE_CHECKPOINT_TOKEN` 环境变量，用于认证后的检查点推送与拉取（[#818](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F818)、[#827](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F827)）\n\n### 变更\n\n- 废弃 `entire reset` 命令，改用 `entire rewind`（[#720](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F720)）\n\n### 修复\n\n- 当本地尚未获取检查点时，恢复功能无法正常工作的问题（[#796](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F796)）\n- OpenCode 转录导出对标准输出截断的容错性增强（[#832](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F832)）\n\n### 日常维护\n\n- Windows 平台 Scoop 安装说明（[#808](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F808)）\n- 移除导致测试套件卡死的实时等待操作（[#823](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F823)）\n- 加速策略模块及外部依赖包中的慢速单元测试（[#830](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F830)）\n- 依赖库升级：go-git\u002Fgo-git v6 alpha.1、jdx\u002Fmise-action 4（[#831](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F831)、[#809](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F809)）\n\n\n","2026-04-03T05:55:32",{"id":153,"version":154,"summary_zh":155,"released_at":156},180421,"v0.5.2","### 新增\n\n- Codex CLI 代理与生命周期钩子、端到端测试运行器、会话记录解析及令牌跟踪的集成。注：由于 Codex 缺少 `pre-task`\u002F`post-task` 钩子，目前尚不支持子代理跟踪（[#772](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F772)、[#794](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F794)）。\n- Windows 支持：跨平台路径处理、CRLF 兼容的 Git 解析、分离进程启动以及 `WINDOWS.md` 指南（[#766](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F766)）。\n- 检查点 v2（开发中）：在 `checkpoints_v2` 功能标志下实现双写机制，并采用 `\u002Fmain` 和 `\u002Ffull\u002Fcurrent` 引用布局；通过轮转生成方式限制会话记录的增长；统一为 Claude Code 和 OpenCode 提供 `transcript.jsonl` 压缩功能（[#742](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F742)、[#759](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F759)、[#781](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F781)、[#788](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F788)）。\n- `entire configure --checkpoint-remote` 命令，用于交互式设置检查点远程存储位置（[#798](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F798)）。\n- `entire logout` 命令，用于清除已保存的凭据（[#740](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F740)）。\n- 带有 Slack 集成的端到端故障诊断 CI 流程，用于自动化失败分析（[#741](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F741)）。\n- 检查点链接失败及会话内容过滤的诊断日志记录（[#785](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F785)）。\n\n### 变更\n\n- 将 GitHub Discussions 中的问题和支持链接重定向至 Discord（[#761](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F761)）。\n\n### 修复\n\n- 修复了回合中途光标问题和 Gemini 交互式提示卡顿现象（[#780](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F780)）。\n- 修复了 Copilot CLI 端到端测试中的问题：编辑模式处理、子代理可靠性以及斜杠命令的关闭机制（[#782](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F782)、[#797](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F797)）。\n- 优化了长时间会话的归属权处理（[#792](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F792)）。\n- 使用 `filepath.ToSlash` 实现跨平台的 `files_touched` 路径规范化（[#803](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F803)）。\n- 修复了 OpenCode 系统提醒消息出现在会话记录解析中的问题（[#671](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F671)）。\n- 在执行 Git 钩子时确保外部代理插件能够被正确发现，并将令牌使用数据纳入元数据中（[#716](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F716)）。\n- 为非 Claude 代理解决了本地开发钩子路径解析问题（[#745](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F745)）。\n- 修复了 Gemini 子代理提交信息中缺少 `Entire-Checkpoint` 尾注的问题（[#780](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F780)）。\n- 通过强化断言和检查点压缩的传递机制，解决了端到端测试时间上的不稳定问题（[#787](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F787)）。\n\n### 日常维护\n\n- 实现了兼容 Windows 的外部代理名称推导与二进制文件发现功能（[#729](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F729)）。\n- 在 README 中添加了 Linux 下使用 `go install` 的 PATH 设置说明（[#764](https:\u002F\u002Fgithub.","2026-03-30T15:37:03",{"id":158,"version":159,"summary_zh":160,"released_at":161},180422,"v0.5.1","### 新增\n\n- 基于按需 Blob 解析的稀疏元数据获取，以降低内存和网络开销（[#680](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F680)，[#721](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F721)）\n- `entire trace` 命令，用于诊断性能缓慢的钩子和生命周期事件（[#652](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F652)）\n- 使用类型化令牌进行 PII 数据的可选脱敏处理（[#397](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F397)）\n- 在 `entire enable`、`entire rewind` 和 `entire resume` 过程中自动发现外部代理（[#678](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F678)）\n- 预览支持专用的检查点数据远程仓库，并已将 CLI 仓库接入该功能（[#677](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F677)，[#732](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F732)）\n- 使用 roger-roger 金丝雀版本对外部代理进行端到端测试（[#700](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F700)，[#702](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F702)）\n- hk 钩子管理器检测（[#657](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F657)）\n\n### 变更\n\n- 升级 go-git 版本，提升大型 packfile 的内存效率（[#731](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F731)）\n- 使用会话内容大小而非行数来检测新内容（[#726](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F726)）\n- 通过 `os.OpenRoot` 提升对遍历攻击的防御能力（[#704](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F704)）\n- 升级至 Go 1.26.1 和 golangci-lint 2.11.3（[#699](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F699)）\n- 改进了 CLI 命令输出的一致性（[#709](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F709)）\n\n### 修复\n\n- 修复 Gemini CLI 0.33+ 中的钩子配置校验问题，移除钩子配置中的非数组值（[#714](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F714)）\n- 修复 Copilot 检查点令牌的作用域、会话令牌补全以及 modelMetrics 结构体相关问题（[#717](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F717)）\n- 修复 Cursor 2026.03.11 在会话过程中从扁平路径切换为嵌套路径的问题（[#707](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F707)）\n- 修复从子目录运行时的回滚文件路径解析问题（[#663](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F663)）\n- 修复裸仓库中 `.bare\u002Fworktrees\u002F` 目录结构下 `GetWorktreeID` 的处理问题（[#669](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F669)）\n- 修复 OpenCode 在会话记录中过度脱敏的问题（[#703](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F703)）\n- 修复 Factory AI Droid 在钩子未提供提示时回退到脚本解析的问题（[#705](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F705)）\n- 修复在全新克隆且本地不存在 `entire\u002Fcheckpoints\u002Fv1` 分支时，恢复操作中元数据分支的拉取问题（[#680](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F680)）\n- 修复 v6 元数据合并时的远程分支检测问题（[#662](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F662)）\n- 修复 update 命令中 Mise 安装检测的问题（[#659](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F659)）\n- 修复 Cursor-cli 在使用隔离配置目录时的端到端测试不稳定问题（[#654](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F654)）\n\n### 日常维护\n\n- 将 Factory AI Droid 添加到所有文档中（[#655](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F655)）","2026-03-19T19:10:27",{"id":163,"version":164,"summary_zh":165,"released_at":166},180423,"v0.5.0","### 新增\n\n- 外部代理插件系统，支持懒加载发现、超时保护、功能标志控制以及标准输入\u002F输出限制（[文档](https:\u002F\u002Fdocs.entire.io\u002Fcli\u002Fexternal-agents)、[#604](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F604)）\n- Vogon 确定性假代理，用于无成本的端到端金丝雀测试（[#619](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F619)）\n- `entire resume` 现在支持通过解析元数据分支中的检查点 ID 来处理压缩合并提交（[#534](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F534)、[#602](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F602)、[#593](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F593)）\n- `entire rewind` 现在也支持压缩合并提交（[#612](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F612)）\n- 在会话信息中跟踪并显示 Claude Code、Gemini CLI、Cursor 和 Droid 的模型名称（[#595](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F595)、[#581](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F581)）\n- 性能度量（`perf` 包），通过基于 span 的埋点覆盖所有生命周期钩子（[#614](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F614)）\n- Cursor 会话指标：持续时间、回合数、使用的模型及归因信息，均通过钩子捕获（[#613](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F613)）\n- 提交钩子性能基准测试，包含对照基线和扩展性分析（[#549](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F549)）\n- Discord 新版本发布通知（[#624](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F624)）\n- 基于变更日志的发布说明，并通过 CI 强制执行（[#635](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F635)）\n\n### 变更\n\n- 在提交后钩子中用 `git diff-tree` 替代 O(N) 复杂度的 go-git 树遍历，以提升提交速度（[#594](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F594)）\n- 移除 `context.md` 文件，并将 `prompt.txt` 的作用范围限定为仅检查点提示；现在提示的唯一权威来源是影子分支\u002F文件系统，而非会话记录（[#572](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F572)）\n- 将会话记录文件提取逻辑整合到 `resolveFilesTouched` 和 `hasNewTranscriptWork` 函数中（[#597](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F597)）\n- 在读写操作时以及执行 `entire enable` 时，自动同步断开的本地\u002F远程元数据分支（[#533](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F533)）\n\n### 修复\n\n- `entire explain` 在多会话检查点中显示“(无提示)”的问题（[#633](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F633)）\n- 两回合问题：第二回合提交的文件与第一回合不同，导致后续无法正确传递文件（[#578](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F578)）\n- 幻影文件传递导致影子分支残留的问题（[#537](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F537)）\n- 对于没有 `SubagentStart` 钩子的代理，出现虚假任务检查点的问题（[#577](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F577)）\n- 通过 `server.instance.disposed` 检测 OpenCode 会话结束（[#584](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F584)）\n- 为 Cursor 实现可靠的子代理停止和转录后的 `modified_files` 转发钩子链（[#541](https:\u002F\u002Fgithub.com\u002Fentireio\u002Fcli\u002Fpull\u002F541)）\n- Cursor `modified_files` 从子代理停止和转录处转发","2026-03-06T15:45:15",{"id":168,"version":169,"summary_zh":170,"released_at":171},180424,"v0.4.9","## 更改日志\n* 7b4797375b816535d503266c77317ba6ddb7ed7c 0.4.9\n* c73ebfba9c53ac4e6718629279540e99ad0ee0c8 将 AgentTypeFactoryAIDroid 添加到详尽的 switch 语句中，并提取 Droid 转录助手\n* e310224536f04970472ea6f90889fed083624ce8 添加使用 BYOK Anthropic API 认证的 Droid 端到端测试支持\n* f08746256b4b526d6bcfb516a20072c846ca41c8 添加 Droid 转录测试并修复 E2E PATH 设置\n* 69ec586c8608d95bcbb0d0fb92b66b7c6b1fbd8b 将 FACTORY_API_KEY 添加到 Droid 平台认证的 E2E 工作流中\n* ac7c4438e40bc9cb0e058b0ce1f3072fe7f2071f 添加 Factory AI Droid 的 E2E 测试运行器\n* eb08adac6f38b0b403e1fe27788e356a7cbc88db 将 Factory AI Droid 代理安装添加到 E2E 工作流中\n* 3c37cf55fae5c5d03e428f4fa4e16947457f1676 添加 Factory AI Droid 代理集成\n* c83248a7423dc126dcc7c85ae0441eff6e4bc6a2 添加 Factory AI Droid 集成测试\n* c1ef11abe4df128245cb0bb08618a49b967bc251 添加强制执行代理包边界的架构测试\n* ffb79f974c613fe075e78cb4308ff493390f3f06 将 droid 添加到会话折叠的 switch 中\n* e0489ea53b2e761168046343aa2324f962cc44ae 将 droid 添加到 e2e 测试中\n* 6e0a155f60580ccacc9918d04afda595bfb88120 为 ReadLatestSessionPromptFromCommittedTree 添加单元测试\n* 35dec307fe2e7680733f2f685c487a0f73467fc9 处理拉取请求反馈\n* 8fa5dc39b70f0acd6a763375bcd1dfdf39c6ce90 审计 Droid 测试套件：移除 13 个琐碎测试，添加 9 个高价值测试\n* 4c6c877ed734e8c218e110a6554cd0b37290ec11 清理\n* d862941a56647cb3148e08cf6a52262eadfd44c4 清理\n* f9c6270a6a509a2bcef5e59defa5bbbb102e2f8d 在会话重新激活时清除 FullyCondensed 标志\n* c3bec395f6655f575b9cc14b39e9bca7e2b20767 确保注释保持最新\n* 4b0b0bc0d6e0247c0b813207ba9cc5823586e079 提取 testMainGoFile 常量以修复 goconst lint 错误\n* 12d2099ebb7e63459d67be6991c2c66ef7dfeda6 通过添加代理特定的转录解析，修复 Droid 在提交后的“(无提示)”问题\n* 0e67969a64e04a2e251466b733ec6f7b92ad73bb 为 v0.63 及以上版本的自定义模型选择和仓库设置修复 Droid E2E 测试\n* c9f67b82c31951b16ce57841970eb427b687cdb0 修复在令牌计算中于原始 JSONL 层应用的 Droid startOffset\n* bdf4c1af5dc472cdef1f839da0261ef5027295ab 修复 Factory AI Droid 转录解析和会话生命周期相关问题\n* 2ea43db1b74f569a159fd308f1cf47d8d0c975d0 修复 PR 审查意见：语法错误、步骤编号和缺失参数\n* 0051efbbb48a07aa3211d7f0bd22508e1faca247 修复架构测试：缺少 continue、零保护和过时注释\n* 81a5e7e38ec8a50bbe3312b7fd6343a4d5c6c938 修正检查点基准测试，使其使用 checkpoint 包而非 checkpoint_test\n* 576302e737cfdbcef1b87008494b9126f3e7b372 修复 droid 执行问题\n* 4b380d87f8f687e22aa782ab215f3162de151c88 修复单策略重构后集成测试的编译错误\n* 1a02ae6165dc92f2b8cbbb008062e689965b2429 修复迁移后的仓库测试\n* d5eea9ffdb43a6790a3a9e8bd94af4c0a5bfd90c 修正实现命令描述中的拼写错误\n* 94a1d70d4411924cf9d445c26f4336fe061ee213 实现 Factory AI Droid 的 GetSessionDir 方法\n* d4fa282fe84569ab32e11125969c60","2026-03-02T17:18:07",{"id":173,"version":174,"summary_zh":175,"released_at":176},180425,"v0.4.8","## 更改日志\n* ecfa04664bceadb2694e0f287d23a864113f961c 将“数据库已锁定”添加到 opencode 临时错误模式中\n* 600d98117cf29c3dbe2bf647402d76f600a558d1 添加 Cursor 代理会话和转录测试\n* 17e00316b95bae616e2de143a0236a0c5111c4fe 在提交提示中添加 [Y\u002Fn\u002Fa]，并简化 commit_linking 的设置\n* f004d01fcf37508a4b4c1b3373b6ee1e64bb7b46 为以 colon 命名空间的子命令添加 agent-integration 插件\n* cad9d35e5ef0944511e2ef87f4add52a5ca6f554 添加 parse_tree 原语（UpdateSubtree、ApplyTreeChanges）的基准测试\n* 50b8f2d2aa41a9475ecb65ac41e349c9e82fe7a2 添加面包屑导航\n* 7db812e7668a71188c9f25fd5d7b41b30f5f77e9 为 PostCommit 优化添加缓存等价性和部分缓存测试\n* 783215ffff3e03a53da6754899c3cee1351954fa 在所有地方添加一致的上下文处理逻辑\n* 0468ca4ab8f9ba4ad3c84ddbdb487fd763db5e50 将调试 e2e 技能引用添加到 test-writer.md 中\n* 0c8ce3f9f68d7224034bb59ae698ad321853afbe 为 addTaskMetadataToTree 添加增量路径等价性测试\n* 256640dc64078f1101d45060e5c3a6e3dad425c7 其他修复\n* 324b230cecff0d5ef92a16a3a67e3ad1ed971f24 处理 PR 审查意见\n* c6c3a0d3aab5f798ddeb6b11b30fc26b98533b93 处理 PR 审查反馈：验证 commit_linking 并修复重新启用行为\n* cb1042a8ee8048399b03cc4aede080661fde78f6 处理审查反馈：防御性错误处理和冲突测试\n* 2292dac298e0fe03b085f88a902054e2d9fa6d73 处理审查：精确 glob + 正向影子分支断言\n* a83cdda3d7bc3d795e1769f6c70ecc0f3c242a1b 在 getAllChangedFilesBetweenTrees 中，如果上下文被取消则提前退出\n* 2e4859947c7d967391d8065726f837f1ad4e2b2e 将 actions\u002Fupload-artifact 从 4 升级到 6\n* 05c343f3f4b9853cb435e0a6f36a436a8644444a 在 go-dependencies 组中升级 github.com\u002Fgo-git\u002Fgo-git\u002Fv5\n* 90495addd7cdc8d7fea74a846d02aa4e7868b37b 将 goreleaser\u002Fgoreleaser-action 从 6 升级到 7\n* 842e903869af2f10f07507629d29133a8f6e5441 缓存 GetWorktreePath 的结果，以避免重复执行 git 命令\n* 2995dcf366375d7811e2050894600c9f06964467 CalculateTokenUsage：调试记录错误\n* b8fd83fc0f6559c146c14693eea3b010c7532750 检查 getAllChangedFilesBetweenTrees 中的 ForEach 错误\n* 3a1dfff46323220a0745e535389d0e42d05c5814 检查 go-git 迭代循环中的 ctx.Err()\n* dccce09ab4ee5a7b12cb9b5b675d91d4d2454862 清理已弃用的 strategy 字段，并在重新启用时编写 commit_linking\n* 7d51e824fde1f3235f9780faeaa5a7b0fdebad9c 清理 readme\n* 1b02f40679891d21ffb812912cca88cf1f6b7fe8 将插件命令去重，委托给技能 md 文件\n* 956d9d43a57b53b2508fb9c2731be974ed0bc3a9 将 GetWorktreePath 委托给 paths.RepoRoot，以消除重复缓存\n* 439b169a499beae24ad0f1ddea767e332573f9fe 在 `entire explain` 分支视图中，按 Ctrl+C 时静默退出\n* b7654f33be9bbe2960d1e04856f7ccd8a8ae8149 过滤掉现有的 GIT_ 变量。\n* d62f41c0ae636a8b0b97b9b989a041bbda72860c 修复在 PR 392 审查中发现的 Cursor 代理问题，并对照 PR 442 的检查清单进行修正\n* 0070be03eeaecd0327b16cebc05d08bb5fcb7816 修复 Cursor 转录生成空浓缩输出的问题","2026-02-27T13:19:57",{"id":178,"version":179,"summary_zh":180,"released_at":181},180426,"v0.4.7","## 更改日志\n* 0c567a7194c7912473006281d496ab66865c61fe 添加端到端隔离测试工作流\n* 91d2ceabec2cc7fcd7d299913d17496d1e693855 将 opencode 代理添加到文档中\n* bb5dd7e7b764b16464509eb92419af30a2379b00 应用 @Copilot 的建议\n* 9c6efe19b3f2486d7d9fe6d8e103761926a7817d 为 0.4.7 版本更新 CHANGELOG.md\n* 49c04497b9567c79b3913e108e1bdc7c3de6f9c0 合并 entireio\u002Fsoph\u002Fremove-prof-files 分支的第 477 号拉取请求\n* 2e8f1300605c3e3e7c8d8bcad2b70018427b3066 合并 entireio\u002Fdocs\u002Fopencode-agent-documentation 分支的第 478 号拉取请求\n* f81dad7889de54da69206f4602ef90297d5cc886 合并 entireio\u002Fsoph\u002Fchangelog-0-4-6 分支的第 480 号拉取请求\n* 6538cf2dcb5cad99fa2029aff0925832e1b05fae 合并 entireio\u002Fsoph\u002Fopencode-acknowledgment 分支的第 481 号拉取请求\n* a6bb4c114f3dee817b2fa1948547d46897458aaa 合并 entireio\u002Fsoph\u002Funnecessary-wait-fix 分支的第 482 号拉取请求\n* 80695ef9e2aaa8060db586d734cd34a6980d6b6b 合并 entireio\u002Fsoph\u002Fchangelog-0-4-7 分支的第 484 号拉取请求\n* bc0448c6c67cb8c5e90c46811487d1e2ad8a36fa 更新 README，将 OpenCode 纳入代理列表（#476）\n* 1db2007adc235b2d545513e7b8fef3106d76726d 在等待永远不会到来的转录更新时提交卡住\n* 2dfbc35934946377e105fb11d6a5e4fe2f962ed1 创建 CLAUDE.md 到 AGENTS.md 的符号链接\n* d69be1b37f544f731750c494316bae11d65e711c 进行了一些小更新\n* c0027d8a58f88998bb6f895dfd87bd94725ae86c 移除 prof 文件，并确保不再添加它们\n* d343993776437b290952d6709be057044132c4af 更新 CHANGELOG.md，以感谢 OpenCode 的拉取请求\n* e5c4ca0ac95f358d975bab04dbae688a519d5f40 更新 0.4.6 版本的更改日志\n* 4de17c02ca9e6f3c54767875b0e9ef41abb92ad9 更新 agent\u002Fclaude 指令并使其对齐，移除 gemini.md\n","2026-02-24T16:08:47",{"id":183,"version":184,"summary_zh":185,"released_at":186},180427,"v0.4.6","## 更改日志\n* fd77a71ca30a5003e945dbf6fb65980b1befc889 向 Agent 接口添加 IsPreview() 方法，以替代硬编码的名称检查\n* 42d2aac571b12dc3ba17e900f58624f16ebc68ed 添加 OpenCode 代理支持\n* cd949282e61278912025677b3ccab7147883a4ff 向代理多选提示中添加内联验证\n* e3f11d5ffd0cb1001f3663bfe12d136253bc176c 在 `entire enable` 中为代理选择添加重新运行感知功能\n* 0301248e28575943398166ecf55154bc2b5e37ce 添加安全和隐私文档 (#398)\n* 6ed2a1346b540200a6f6cd1c33126f53c353ad74 为状态样式辅助函数和格式化函数添加测试覆盖率\n* 21f7239d4fbc898b747e95a5b06d3f0893994c29 在会话计数页脚后添加尾随换行符\n* 4beb60c7f768fe53ca2abcff486a8d82fe19a6c6 当从 opencode 会话中提取修改后的文件失败时，添加警告日志\n* 98749b32e0e0d02e12b293936082d5f03196f6ab 处理 PR 审查反馈\n* 232956794ddee5b0c1d66e145a9fca504738e103 处理审查反馈：移除死代码，改进测试\n* 882c0b024c792b27d1c102e4614947f576ba1300 避免在 UTF-8 截断中进行冗余的 []rune 分配\n* 84d5213972002b9c271662ec91d2e3cab389ccc4 将 go-dependencies 组中的 golang.org\u002Fx\u002Fmod 从 0.29.0 升级到 0.33.0\n* 4fc9356037dc7f5d1552e416508ec59c24a783ac 清理过期的会话文件 (#438)\n* 67a0e0d7d0077b437205e12103965c4baf7ee742 通过 SQLite 导入启用 OpenCode 恢复\u002F倒带功能\n* b2c38dee6fe93af485e86b6735eb4f6f172c3417 修复 OpenCode 恢复\u002F倒带功能：将导出数据存储在检查点中\n* 29adb1af330dff1fd83e663614aa91b7dc0de1b3 修复 UTF-8 截断导致 CJK\u002Femoji 字符出现乱码的问题\n* a463fb4bec38df625d8e7d2ee48de2d0685246e3 修复取消选择的代理在重新启用时又显示为预选的问题\n* 8253d4b7d07191035ff0f4656ce2a5d0e7d10360 修复集成测试在带有 TTY 的机器上挂起的问题\n* b9a7534954fbf75fcd4f3cbe5e12fe09c34b9273 修复代理重构 PR 审查中发现的问题\n* cf871a58f64057745493d86f3ba0634dd3ab6f2a 修复会话记录中过于激进的敏感信息遮蔽问题\n* bd811de6cd8a45792db297dc62c48d79bb280205 将分支 'main' 合并到 protect-against-invalid-git-refs 中\n* 18621fc08c51c57ce9f9d743e03de9d78d070448 将分支 'main' 合并到 rwr\u002Fcleanup-ParseHookInput 中\n* 4d9c93654315369b7ecbddd48587a79eca85c79c 将分支 'main' 合并到 rwr\u002Fmove-hooks-to-hook-interface 中\n* 7c0e56d1cdcd1a77eeb87b3d585a71615fdd4d3c 将分支 'main' 合并到 rwr\u002Fstreamline-setup 中\n* b7247804b4bf880a3fee3e03ca9474743be183a7 将分支 'main' 合并到 soph\u002Fbetter-agent-agent-instructions 中\n* db1566dc0a7ced98f7b7789f6bfbc3cc0b07ac60 将分支 'main' 合并到 soph\u002Fopencode-refactor 中\n* 08591264dba7e384458c51aaeb3bdfe343af4aa5 将 github.com:entireio\u002Fcli 的分支 'main' 合并到 rwr\u002Fmove-hooks-to-hook-interface 中\n* b48280b60157a2f4aef74a60a2dc9ae472527e74 合并 pull request #360 from entireio\u002Fsoph\u002Fagent-refactor\n* cc63eff93cb5d66d8edc32487ab89191078f46d7 合并 pull request #362 from entireio\u002Fupdate_enable\n* 401c1c843edbfca983b6d658a2c4fbfaaf17c28c 合并 pull request #390 from entireio\u002Fsoph\u002Fmore-test-coverage\n* a0746526bfefcc4042b600d5262c43bd","2026-02-24T05:37:20",{"id":188,"version":189,"summary_zh":190,"released_at":191},180428,"v0.4.5","## 更改日志\n* 71644aa98cec9588b0ff45cbe9b37e3c1c950085 将 1:1 检查点提交\n* afc6d68adb03f877e3e4cccd6d41ca6189211d88 在测试设置中为 .entire\u002F 添加 .gitignore，以修复 go-git v5.16.5 的测试失败\n* 552f959a523e54e6cbaec5195fe9cae2bea3ca2e 添加 ExtractAllModifiedFiles，用于从主代理和子代理中提取文件\n* 24a7cb907dd59ab635c69b16fafd13cc01db2f67 回应 PR 审核意见：添加调试日志并修复 TranscriptBuilder 格式\n* 64274e0fb9ea8310913cf36a123ed2eceecc569d 避免对 Claude Code 代理进行冗余的对话记录解析\n* cc09b88d0319761e7b88d2ae76146c0496b93c73 使用 3 次更新提升 go-dependencies 组\n* ef092a62bee6a0952e419d41bbc8b5ac7bb52511 合作伙伴反馈\n* bfe48cf1276a962cf45fd81aee5cfa77057a5f9d 将重复的 JSONL 对话记录解析器整合到共享的对话记录包中\n* 99d5ec3e384d9711335af8555ae4b3deb8efa181 确保通用操作始终运行，并传播处理程序错误\n* f5ba7ade1cc9707faceff85ba754cc516f285ba9 提取用于子代理感知的实时对话记录文件的共享辅助函数\n* 138eb573bcc8e7e71880730d12b3c6ca84668ab1 修复 extractSessionDataFromLiveTranscript，使其包含子代理文件\n* 561971b02b291041901a3125471ab552dee3ca24 修复 sessionHasNewContentFromLiveTranscript，使其能够检测子代理文件的修改\n* c899b5912da4654364930ed72f87f9fa4f4ba774 将分支 'main' 合并到 alex\u002Fent-297-fix-subagent-only-changes-checkpointing 中\n* 5d6f4c4b0f31c7c7965ac2b0fd669576d7f6a874 将分支 'main' 合并到 alex\u002Fent-297-fix-subagent-only-changes-checkpointing 中\n* 209ee930d12a072a8fc7016373ff018f9c4354d6 将分支 'main' 合并到 dependabot\u002Fgo_modules\u002Fgo-dependencies-8020cebb01 中\n* 3640748d730fd987f67c5a7ec4571f5c0ebc94af 将分支 'main' 合并到 feat\u002Fdetect-hook-managers 中\n* 7edae197a7b1e440f21097e10d699b41598cbab2 将分支 'main' 合并到 gtrrz-victor\u002Ffix-extra-shadow-branches 中\n* e39e2f10c14bde894f425153343dd5ea022b7006 将分支 'main' 合并到 gtrrz-victor\u002Frun-e2e-test-gh-actions 中\n* 3152459c9a3296721bcbd44874bc4bad40929ab3 将分支 'main' 合并到 gtrrz-victor\u002Funify-transcript-parser 中\n* 9e4174f1b4e595525e05e265d0b9ff846bf13d57 将分支 'main' 合并到 kevin\u002Ffix-hooks-git-path-hooks 中\n* a5ff4be7480c8f4017abfa6c4cafda1043e9e215 将分支 'soph\u002Fone-to-one-checkpoints' 合并到 alex\u002Fent-297-fix-subagent-only-changes-checkpointing 中\n* 380a9451b5d268fcc230bfb217b9df7ba4def8c6 合并拉取请求 #323，来自 entireio\u002Falex\u002Fent-297-fix-subagent-only-changes-checkpointing\n* f446dcfc09fda981a5c373a5f47c54363761fa6e 合并拉取请求 #325，来自 entireio\u002Fsoph\u002Fone-to-one-checkpoints\n* 69edddbeb812d35441aabdf0ead329b343021b7f 合并拉取请求 #326，来自 entireio\u002Fupdate-contributing-md\n* 230b49bf0b8a32be2006f7987e7f3648f420f9b8 合并拉取请求 #332，来自 entireio\u002Faction-handler\n* 470412affbf9445429215fb29028569a50bd63fa 合并拉取请求 #342，来自 entireio\u002Falex\u002Ffix-gemini-checkpointing\n* 237b343e6c5231134d5d0f748e7758382927b3a1 合并拉取请求 #343，来自 entireio\u002Fsoph\u002F1to1-bugs-found-by-e2e\n* bded7a4bddfd02c9ec6b3d3e998f4649246de3cf 合并拉取请求 #3","2026-02-17T16:56:54",{"id":193,"version":194,"summary_zh":195,"released_at":196},180429,"v0.4.4","## 更改日志\n* 353f20a424e3a0e609a47d9d21b45c138534a2aa 添加 Gemini 转录摘要测试\n* a8b6afa9293528fbf70f36cbf81b96f819f82eb8 在贡献指南中添加依赖项要求\n* a179dd8443e48ba54ded84166d9a29a7b72d2594 澄清 --local\u002F--project 标志引用的是 entire\u002F 设置，而非代理设置\n* 1d919c6497b1f3a1ac6155668f21f4061083bf24 辅助编程工具反馈\n* 39164890c95fc854fc20729a225ac03880528cad 实现辅助编程工具反馈\n* c27e044982a64c8b693fad013bf74f01bf72d9bb 合并分支 'main' 到 gtrrz-victor\u002Fdelete-old-sessionid-logic\n* 46f74c20447ce41a6909f31495de1b2dcf5e1be5 合并拉取请求 #231，来自 entireio\u002Fdocs\u002Fupdate-contributing-requirements\n* 84e24c7d7139dea7cadea59278fece6637441012 合并拉取请求 #236，来自 entireio\u002Ffix\u002Fgemini-explain\n* 5b24230e0f99d39f26b30999f1ede0d9d95054c7 合并拉取请求 #262，来自 entireio\u002Fsoph\u002Finitialize-checkpointbranch-with-user-email\n* f69f91f5222e2d1e412bed679243e9500839c0de 合并拉取请求 #285，来自 entireio\u002Fgtrrz-victor\u002Fdelete-old-sessionid-logic\n* a435acda39bbd5f02980e747b8b2ba1a41c4b748 合并拉取请求 #298，来自 entireio\u002Fsoph\u002Fensure-hooks-improvement\n* 848bd8d389404fe3641146c6155ab73796827e07 合并拉取请求 #306，来自 entireio\u002Frwr\u002Fadd-note-for-enable-local\n* 84f2d4f821eef526351322142aba34149a73d6f2 合并拉取请求 #312，来自 entireio\u002Fupdatereadme\n* 46134299f648aabc8e7617bae0b317c125508dda 合并拉取请求 #314，来自 entireio\u002Fsoph\u002Fsafer-agent-hook-parsing\n* 2f0ad9abc811e6e137f86ef0520008910151a35b 合并拉取请求 #322，来自 entireio\u002Fsoph\u002Frelease-0-4-4\n* e0a89c961aaef6db68ea87d4b477df40a9919d2d 在 explain 命令中支持 Gemini 转录格式\n* a43474c7f8531c98b87f0fc5964389755e27c1ec 更新 cmd\u002Fentire\u002Fcli\u002Fresume.go\n* 03b312ac0a5c2a55c09c1d5f808a1fbbdaa30f9e 添加删除后重新添加场景的测试\n* 424a8803dad6447c2aac1586fbda4ed0e05545d5 回应了 PR 反馈\n* a6b9dfedbb9601995f7aa93037a6513180056eab 为 0.4.4 版本更新更改日志\n* df21b8983b84b1c5869811f4d7e7a8ea64a42ba8 删除所有对 entireID 的引用\n* 966e0df2cac074466dd58aaefc6547b5ccd2d843 不再提示用户重新启用\n* 70a3e80a88c2b82caec97cc9ebdb207ef1484d18 确保自动提交也会设置 Git 钩子，并将其移至流程的更早阶段\n* 2f112b296311998edcdb3c22368571bab3463942 目前将 Gemini 视为 Gemini，其他则视为 Claude\n* 60c8ff592d4da872375f4d7fe146260d64b68f47 这不是一个裸仓库\n* 25c86adbfeb4ff09e9d8d47cc775ac4de051981e 更安全地解析代理钩子，确保保留未知类型的钩子\n* a7c1a773249b39b49288e3b2129534bd63d32fe8 测试修复\n* 900be3a32ee61d6a2a8f1df0dab87069c9c85f4f 更新自述文件\n* 58bd18f91ec458ef0dab1be0088b5586919c34fe 对初始检查点分支提交使用通用逻辑来确定提交作者","2026-02-13T10:22:57",{"id":198,"version":199,"summary_zh":200,"released_at":201},180430,"v0.4.3","## Changelog\n* 90c4eaaa24d3a5822c110effecd3be6e61053603 Add gitleaks pattern-based secret detection alongside entropy\n* 819669271712ab47339439af543dd7a43fe39aa3 Add tests for region merge logic\n* baf139d78fe71a8a41bd0bcd8b5afa9401d1a4ff Add warnings for failed agent resolution and signpost sync.Once cache\n* 49af598ed1aadd1623d4e26dbc8f9162f9db7060 Apply same empty-repo check to Gemini CLI hook handler\n* ebe598c295fc4d24ce79634200ab733be21b164c ComputeNewFiles, ComputeDeletedFiles: Remove deprecated & unused methods.\n* 83cb9f22e1812d93025ce88dc81cde1aa6e80101 ComputeNewFilesFromTask: Remove more dead code.\n* f0bea6191b2c13602e6a80eb002af68340f0f450 Fix empty repo \"reference not found\" error (#242)\n* 1098baee15703392499e9a8b1d47eee2e9beb899 Fix resume to resolve agent from checkpoint metadata\n* 3fc591ad3e7bcfb071a03c0edf599f4001f7bcb7 Fix review feedback: t.Parallel(), warning ordering, comment accuracy\n* a789e53a49957d9f8c4b8782b9484d07fd1963d4 Fix task checkpoint detection without pre-existing untracked files.\n* 813cc5b962d6fea8ebe9eb7886340e6a06579a28 Merge pull request #214 from entireio\u002Fsoph\u002Fgemini-rewind\n* 07743bedae1e5c206e11c3b1f0a3df48ce9fe131 Merge pull request #217 from entireio\u002Fsoph\u002Fupdate-sessions-and-checkpoints-doc\n* 6a794a15e5fc58baa37a03224c5e2093f7d7bd17 Merge pull request #218 from fakepixels\u002Ffix\u002Fcompute-deleted-files-in-task-checkpoints\n* 25bfc241d4202251df5f68c494e17e3c8a8aab67 Merge pull request #223 from kserra1\u002Fkserra1\u002Fdocs\u002Fmise-trust\n* 4fb2ffef221ebfabc3332eb29ec6ef76e167e80e Merge pull request #224 from jaydenfyi\u002Ffeature\u002Ffix-resume-readme-docs\n* 4f09f97c2a2d90f5fa28609ff98dbd9ccb988794 Merge pull request #238 from entireio\u002Fgtrrz-victor\u002Fignore-hidden-commands\n* f4d065a011db5fd90ec9dfd82bdcef61c14b00a3 Merge pull request #255 from entireio\u002Frwr\u002Ffix-empty-repo-reference-not-found\n* 325ec8147a5bbc2a6f3496177ba0f0af04a90cbf Merge pull request #272 from entireio\u002Fsoph\u002Fbetter-git-hook-handling\n* 29b6533a1dc85cc9f46b63a685671e0920da4cb7 Merge pull request #280 from entireio\u002Ffeat\u002Fsecret-detection\n* 599435651c16f5b0fd921ead525040bdff996163 Merge pull request #301 from entireio\u002Fsoph\u002Fprepare-0-4-3\n* 4c05c2faf7def9a89f756f7b530275c710bd415f Pin golangci-lint version 2.8.0 (#234)\n* ddfb8c148bbf372d969d7a176c2d1955cd3ae3a8 Record conversation for empty repo fix (#242)\n* c90d714779d92effa68109c67e74f51b6731012f Remove ErrEmptyRepository handling from InitializeSession\n* 582504ecfc04010de03474a285308cf02f91ced3 Remove redundant empty-repo special-casing in start-of-turn hooks\n* 9d08084f603f34fc0717c3ef92ff076f805a4c0d Unify DetectChangedFiles and ComputeFileChanges into DetectFileChanges. (#241)\n* 8914807aad641cbf079d59d9ed0d195feb385b80 Update README.md (#235)\n* 9173a8e6f185b8077f84bd3d08ae0470c95d3440 Update docs\u002Farchitecture\u002Fsessions-and-checkpoints.md\n* e115f16d2c2ff88c8684a523ea3de1a8b50b3d82 Update docs\u002Farchitecture\u002Fsessions-and-checkpoints.md\n* 0cee34522ef135ecd95d98cd9dbd35f0f20958ac Update tests to use exported ResolveAgentForRewind\n* e2a83f9a1be5f35996f8dcc25d7130216810bebe add .gemini to protected paths, make the handling more generic (but not perfect)\n* eca05680b710bbab8c3b14b7ba12f575f5f497c3 add early exit for hook\n* 9be6e9f3137ed07c710aa05a9b53619081199ba2 add protected dirs to agent interface\n* 4d5c201b809ff4064a768020a6aee0f915f7bab1 added some more tests to the changes\n* 11e74530f1830e51d0a0be3c9adba6c7583f4ccc adding changelog, prefilled for 0.4.3 release\n* 9617342d4a41968c07ba65fb8b8d3c44b7d9a993 better fallback, performance improvement\n* b353cef5e43327ae0262377771ce8baa3a52e167 check full command chain if any command is hidden\n* a790770a7ed6a4c04ff1ae51fcb426303a1e0e9e correct id, but still wrong path. now it's working\n* c1683ddb35ba4b94cf5141392048f324d741bf0a debug.go: Reshuffle case statement for clarity.\n* ecbc9f2dcad5238010a023ab5b0747834b9a556b fix: compute deleted files in task checkpoints\n* ec3942f6858448300d4d98aa9cef57c9bd64c272 flattened logic, removed complexity, DRYed\n* 698c624dedc8504d72f9722f093060f120af1087 get file extension from agent\n* 9eb70dfb00879db6ef01ff966e1a67da98b9858c handleClaudeCodePostTask: use ComputeFileChanges to find deletions.\n* d9963df4b95d312fd01a6d5bd99c4d9e500f4ab1 make it more clear gemini has no subagent tracking right now\n* 8895a187cd7d7901ff6e1b47007dc4f59d7a8407 make rewind more multi agent capable\n* 944074d13d9d5eaf47a2ddc20a000b6e43d0af73 make sure we handle multiple runs with other hooks well\n* 31b333ff5bca294c4aae12af3cea7d2a63dca7bb more tests coverage, add parallel where possible\n* ff140f8fafc6b62c8b030a3c3a3ac57690833eb6 only need strategy.ResolveSessionFilePath()\n* 7598ecd7fa67405cf0c60a7620116d2b0f206044 only remove if it's really our hook\n* 150ba2a832ea7cad0d097f06a0bdbc8272e648c9 proper gemini session id extraction\n* 1b69ae14da4a0d3deb08922bb6798b9bc5fb6e02 resume and rewind supports multi session and multi agent\n* 2647d91874303ac76a2623843b83cb8b001a9c41 reviewed all the changes to remove what is obsolete now\n* 505ad9517fc138a","2026-02-12T13:47:19",{"id":203,"version":204,"summary_zh":205,"released_at":206},180431,"v0.4.2","## Changelog\n* 70a89868440579e7e0937db34ff391d787322982 .goreleaser.yaml: Await notarization. (#208)\n* 4e47c531f2d247509a2874c7bd3d62d7f32b25d5 Apply suggestion from @Soph\n* b733e9940597532ca014a6f454bda27090563863 Fix getting started URL\n* 79b11b54260f9ed7dbe18ba47ea2c2ca281c72fe Fix misleading README wording about checkpoint creation\n* 607776754783256b2c38dce5ce718ab74acc66ee Initial plan\n* c85939bc30b681897550844d44abf12598d051c6 Mark preëxisting lints in codebase (#210)\n* 541022f8233e29a5585cbcd0c1c8a153b7141afd Merge branch 'main' into alex\u002Fentire-explain-fixes\n* 0ce2828bfc271bd7741bc7a9c29918e6af68c37f Merge branch 'main' into copilot\u002Fsub-pr-213\n* 5f5f045c8e9e8f5217cbc001126469a89d6c7b70 Merge branch 'main' into fix\u002Fgemini-quit-duplicate-checkpoint\n* 21e374c0e4d54232fa19fff0af09d61cbe26f56e Merge pull request #158 from entireio\u002Ffix\u002Fgemini-token-usage-metadata-json\n* 565763f345a7d4542d625813c5fe269bbfbc9cab Merge pull request #162 from entireio\u002Ffix\u002Fgemini-quit-duplicate-checkpoint\n* 36eca890602c99e652f40082e981a712d2238bae Merge pull request #207 from entireio\u002Falex\u002Fentire-explain-fixes\n* 7c8323e9911bf671e123c432bd9060ebe9f503b4 Merge pull request #209 from entireio\u002Fgtrrz-victor\u002Fdelete-dead-code\n* 70aeeb29eefa6d67e163092b25ef0bceca229056 Merge pull request #212 from entireio\u002Fsoph\u002Fissue-templates\n* ca850b76599b532487144cbcbeb453413c6d6a50 Merge pull request #213 from entireio\u002FupdateReadme\n* 6d6d3864f2c20ecb26055e43660c18c1eba34934 Merge pull request #215 from entireio\u002Fcopilot\u002Fsub-pr-213\n* 2a9998e55094e8caae2864cfdde9693240c19163 Merge pull request #216 from entireio\u002F20260210-docs-getting-started-url\n* f335223c2787f9756aac8d59b1c8cf8a11426574 Remove ambiguous \"as you work\" phrasing\n* 01892515df546cf2b0ecfbeb356ff491e50cadcb Reuse isGeminiFormat variable instead of recalculating\n* 123c3b908fb537a7d5db2cafbcca1d0d88fd8d7d Update README for clarity on agent and git hooks\n* 8cda9827df7241403d215fb401ea0a9ed7d07c52 Update README.md\n* 4890c4e132bc658df42743ddcc96758626e4477b Update bug reporting instructions in SECURITY.md\n* cf24e351f7f16dc08fca0653762904da221ca1f2 actions run same lint method as local linting (#178)\n* d59e877a3c09547117ea06ae7b7d5268d058fb28 adding issue templates\n* ce34101166dc6a6cf430dda8b500ade99ac2a9be addressed PR feedback\n* 5bf8d0e5f43f68b2a4318bf16d4d0a33bbe6154f addresses pull request feedback\n* 0eb837354b26e55acce67da747e8ba4d803255aa delete unused code\n* 318a41a5f2cee47560d5e685a3dbbfb72d82d0c0 don't to line slicing for gemini format for now\n* 51fa23cfd70ea5703fe1c04eca45d168db273e25 fix gemini tokenUsage in metadata.json for manual commit strategy\n* f7f50e49d02a6bf1f47cab007e52ab1c1725ba98 fix: use full DAG walk for getBranchCheckpoints on default branch\n* 5cb78b838715fa709bdf3e471929f3362a8eb1f1 fix: use storer.ErrStop in ForEach to avoid error propagation\n* d5243a9634435204e0641517ff90ecaf80485e34 gemini stop session should behave same as claude code stop event\n* 8f4f33517a8bd2df552bf1b5d75d2ab834e5d81d lint: GH inline feedback & golangci-lint latest (#211)\n* 74113d31e2ffd20c26ae27597c3386ceb512116e more test fixes\n* 30187a5c9613686bd761571709b8671d42ce29fb reopen it\n* 8bfa34120d7e82acc733bb1272057dfcdff642d5 replace countTranscriptLines with countTranscriptItems after rebase\n* b38ceb539caaaea01d72287351a8d521442d32d0 small refactor\n* 3737f6fa5c98d845f7368b9223ed3d03ad88802c update checkpoint to stpes\n* c407d6cd6e823ee7b9b7587cdb9030f1acef5aaf update readme\n\n","2026-02-10T14:33:22",{"id":208,"version":209,"summary_zh":210,"released_at":211},180432,"v0.3.13","## Changelog\n* 49f60d05a6d71f1cfe6df892390193116c670fc5 Add backward compat for PrePromptState JSON tag rename and fix StepCount comment\n* ba7b3b65bbd06c89f35ad3b668eff05d93130894 Add negative assertions for default cobra\u002Fpflag error message\n* 6e4b418de736a9c9ccff2b0f01aed8697fb343ef Add nolint:dupl to TestCountTranscriptLines table-driven test\n* e4e7a027aa4d7a6a461c22bae11ed75f2c3ca463 Add pure session phase state machine (ENT-221)\n* a894116603b66a8e5c529acb764e73c7ceeb75a4 Add t.Parallel() and fallback-path test to TestCountTranscriptLines\n* 424aa506dd47b4e94e0777597977b12b29947f8f Add t.Parallel() to 38 integration tests for 4x speedup\n* 5baba5e882b605b277f0a942beaf69bb6bc3ab05 Add t.Parallel() to duplicate session ID tests\n* 624821700904f3432d1d0b1ebebf3128ea2f7706 Add tests for Fish shell completion detection and appendShellCompletion\n* 5020de37154e62b503a87118d4f0e4b2c5ae1c71 Address Bugbot review: extract turn-end helper, add load-error warnings\n* 296197a14bef3ab59598f5a9d818d77da29b9027 Address Bugbot review: two-pass PostCommit to fix migration-before-condensation\n* 65457adeaed904349fcd70903ab34c8c996d09a5 Address Copilot review: worktree-safe repo open, help text, test comment\n* 6a337e0c299f0fc2bcb22c9f64ff10293a797385 Address PR review feedback for branch deletion fixes\n* a5eca19c6331c6ca4fb4c8f1da3a0b2de09a12ff Address PR review feedback: fix comments, migration, and dead code\n* f4bc03757117718939756d9d1c28a8a415707163 Address PR review: cleaner diagram edges, non-parallel Mermaid test\n* 3c72126734864e2fcfab08e985cd79b4968254e1 Address PR review: fail-closed on error, remove os.Stderr side effect\n* bea3d339ba518a81a5e9e1ec42c759ec37c72e0e Address PR review: fix comments, diagram labels, output path\n* 96013cd356772b553dc94602391775b351473730 Address PR review: rename rebase test, use findModuleRoot in Mermaid test\n* 5934e029de5c365d4f2eec1029ff6f240f05727c Address PR review: scope BaseCommit update to active sessions, guard hash slice\n* 37ebcde16047f462e6762257f4d843258b2ded81 Address PR review: use state.WorktreePath, scope amend to current HEAD\n* 2fd9bc2035e464650925653a34ffe2cfc73554bf Address review feedback for enable onboarding flow\n* 3a7e272ebd06b721a3ebd23da95f1a68d4ee09c2 Address review feedback: backfill AttributionBaseCommit on load\n* 667b2df0b8ca53c6690b62ffe724e941af07d2ee Address review feedback: classifySession tests, type safety, and testability\n* 527a7df66f25013356e51703f6603bf2f130b281 Clarify GetTranscriptStart comment and document one-way migration trade-off\n* e06a3602fc52177b8a2d860c0a02c14364e05666 Clarify session_id is only present when known\n* 8e02c9ce76b2e96b5b574cdfbb5e2e125beaa2a7 Cleanup: session state helpers, amend -m fix, transition logging (ENT-221)\n* e82511da8cb91945fdd2fd5e9f8dd8fabb6158a8 Consolidate logging to single file per worktree\n* f5950b1c9d164ce50ae705947e925bcb4edf6ca8 Consolidate session state types and simplify transcript tracking (ENT-221)\n* 343d64a89140e16865ed9eb02149533fcc0f3bfe Distinguish show-ref exit codes in DeleteBranchCLI pre-check\n* 46ce0a83a165a4382cb2de5afb97f5d9fbfe33d7 Document known limitations (checkpoint amend, worktree GC corruption)\n* 99ce4e8863494f219444de61277d4e89eee2fc9e ENT-248: Completion installation (#180)\n* 6bb0b15943099f690732249071ea863a9b360fe7 ENT-248: Fix Zsh completion setup.\n* 27f160326db5e5c4e0b85ea93447f3fb3cd44a53 ENT-259: Fix attribution in deferred condensation\n* 054691d0c27f6e5084e5064118225800936fa8e4 Expand t.Parallel exception to mention t.Setenv and t.Chdir\n* 4dfa520b139caba4155d001ead243d2b93d92802 Fish auto-install support\n* 10d94d88a5ab5280c4fad101739fcabf7ccd3cb0 Fix Gemini transcript position tracking\n* b937884a47107e2fc5c2b5dfa22fe97a9abcd5e1 Fix InitializeSession call sites after agentType parameter addition\n* c007db231c7286f80723bc325569e18bea6b1fdb Fix Mermaid diagram test on CI by creating output dir\n* a251eb14cdcac2ba15a8cb35e546b1ebe41d6b35 Fix MermaidDiagram doc comment to reflect variant selection\n* 22c57db70174473e3aabdd74d38dba0f06e9a73c Fix `entire clean` logging leak and shadow branch deletion with packed refs\n* b5e924cd405230c7189e54e01c3b37abdde41696 Fix checkpoint ID mismatch and unsafe shadow branch deletion at turn-end\n* eafc95128727c56fd3302f51f14be36aae58d4a2 Fix condensation failure orphaning shadow branch, add PostCommit test coverage\n* 97ce79e96bcf01aa63f3287115283e46b000d607 Fix deferred condensation: dispatch remaining actions on TurnEnd\n* b61a21a93f89cd6f08351f20c190a6ce8b4c7ec9 Fix duplicate session IDs in checkpoint storage (ENT-252)\n* 632df201d59fb8adf11bd24ff20735201c064424 Fix expectations\n* 4663ccce600b5cdc204cd3d725079eae03977d60 Fix git hook installation order and nil-pointer risk\n* 2d5c2cca28de7cfd8e2bb30006b3b342b13aaf2e Fix gofmt alignment\n* ffa06892c48bfdc45f19c7903d8d4c98c128571a Fix inconsistent PendingCheckpointID handling in CondenseSessionByID\n* 2a31b62d83e12f4669509b3ac2c118ad84dcc84c Fix integration tests for consolidated log file\n* dfba508342655952248ebac","2026-02-10T05:36:35",{"id":213,"version":214,"summary_zh":215,"released_at":216},180433,"v0.3.12","## Changelog\n* 5b24cb4e8b1763e8158637f5edc40723661a6d1b Add LastInteractionAt to session state conversion functions\n* 97db16b6ac3b0403f88c8413d55ee878eaa899c9 Add agent type label to status session output\n* b9a0419abd8a8cfd40de96e9d23db7dc209a1e1f Add integration tests for LastInteractionAt tracking\n* 815a2cb3c39bfeb77974bc8f47c3d327048b342a Address PR review feedback on migration logic\n* baeaa96accac1b8fb0b999fe7a220801041217d5 Allow JSONL to be a naked array, too.\n* 7751fb3e86446ac01f9c242eab0b05ece83b3f4d Clearer expectations.\n* a9c44759cd10d31ed1a821fc027d758a3559f4e2 Extract status command into dedicated status.go file\n* 469cb2eea385df9f53408bc96b3f90cb03f65657 Fix broken import path and missing worktreeID arg in migration\n* 5d07f68fac5c45e32063daa65b011e2339165882 Fix function name\n* 256bf20ac2bf55965fa03e711859b2dee508d13c Fix settings variable shadowing after rebase\n* 31fa2da171f9e177034002b81fe1e555db498001 Fix shell injection vulnerability in CLAUDE_PROJECT_DIR export\n* dccd839afdd34764f7fca9ab4652c836b275777f Fix up nonsensical test.\n* e6135b037c55403e202e206d3866266f2f45b6b9 JSONLBytes and JSONLContent can throw errors now.\n* fcc9a14a23d4b6a48c629b1f4cf87fe16f8137d4 Justify entropyThreshold.\n* ff129d39cb22442db47e36a2ce4a393d22961019 Merge branch 'alex\u002Fent-64-status-shows-sessions' into alex\u002Fent-232-track-last-interaction-for-sessions\n* f9d5e4611f36b6f57fe6deb72f12782140e2daf7 Merge branch 'main' into alex\u002Fent-207-fix-agent-name-misattribution\n* 3ada318b2690d148c5df0479ec8c1d06037e3e95 Merge branch 'main' into alex\u002Fent-207-fix-agent-name-misattribution\n* 7ad1fc541e61ff256a47909ddc71df9131b26195 Merge branch 'main' into alex\u002Fent-232-track-last-interaction-for-sessions\n* e23db7a86ec5618dd588f43f4485eb12c75ed6e4 Merge branch 'main' into alex\u002Fent-242-fix-index-corruption\n* 461d182a864a74a83f50b7b395f9c3d144f07b3d Merge branch 'main' into alex\u002Fent-64-status-shows-sessions\n* 564c989b67bd83013d79ed52529d04ab977bbada Merge branch 'main' into gtrrz-victor\u002Fprompt-entire-enable-and-multi-session\n* 9e8903db4baa112074585f0cab6511329fef2507 Merge branch 'main' into soph\u002Fbug-with-rebase-or-commit-change-during-claude-session\n* 03fd5c21023f00f4acb962ee62e3aeb83787898c Merge branch 'main' into soph\u002Fbug-with-rebase-or-commit-change-during-claude-session\n* af4f21dec36ea76a80cbff47137d86fec6c74aa4 Merge origin\u002Fmain into alex\u002Fent-207-fix-agent-name-misattribution\n* aa50bdd98d626a41a967b85c67d21d23944a2f06 Merge origin\u002Fmain into alex\u002Fent-207-fix-agent-name-misattribution\n* 091e3bbeee7a36be8c4d5a08ec3972290816b145 Merge pull request #117 from entireio\u002Fsoph\u002Fbug-with-rebase-or-commit-change-during-claude-session\n* 36567f3586207cb7333adee6af0c2ba7db904818 Merge pull request #154 from entireio\u002Fclaude\u002Frun-all-tests-E7DmT\n* edbba296eafef972cce49ed1d6a810d4fc8637e0 Merge pull request #159 from entireio\u002Fgoreleaser-fix-ld-flags\n* d746f9586086b49a874b60261b0934e50f223d37 Merge pull request #161 from entireio\u002Fgtrrz-victor\u002Fprompt-entire-enable-and-multi-session\n* 759e1846254267f38acba76ef7e6b1aeb3dbe99a Merge pull request #163 from entireio\u002Falex\u002Fent-64-status-shows-sessions\n* 7183afd4fdbc47e95141e9cfef8fca11567ae7b5 Merge pull request #164 from entireio\u002Falex\u002Fent-207-fix-agent-name-misattribution\n* f6206a4fa4ba95f2891424832824e623322b0d25 Merge pull request #165 from entireio\u002Falex\u002Fent-232-track-last-interaction-for-sessions\n* 94cda18d5199f98b47908728a15ee717659ade28 Merge pull request #166 from entireio\u002F20260206-secrets-redaction\n* 2a7a86e29ff5988ae0bbcb2f4ca8bf4dc057ed66 Merge pull request #173 from entireio\u002Falex\u002Fent-242-fix-index-corruption\n* bc58b21e88fceca73bd05a2f41e8b95bacbae229 Merge pull request #175 from entireio\u002Falex\u002Frename-last-interaction-time\n* a036cae16ce221c8e48c6434dac1d7561e1b7be5 Parse prompt field from Claude Code user-prompt-submit hook input\n* 37e25c11deef9f63571441315a72f00b266e6557 Persist CLAUDE_PROJECT_DIR for entire hooks in remote environment\n* 80d85b1e80a6bcef7acad3f940dc56814ab24735 Prefix session age with \"started\" for clarity\n* 13c23b37f61eeec5395db7ad6582a6c7cd9e398a Remove duplicated migration logic from InitializeSession\n* 904f990dafe220d96e5f8c75c2e19dc19e6b8ffb Remove redundant needSave assignments before unconditional set\n* f382f6fca36bd99604a4fc38e30d6d101a8eeb35 Rename LastInteractionAt to LastInteractionTime\n* d4ce3f480826dfe26f2e836298e96a09723d0fcd Show active sessions in detailed status mode too\n* 8ee652509b3d6d8ed5702bf9e621c490c850940a Show active sessions in entire status output\n* a2574a6260dfb2b0549dc492b42065b7f600d769 Simplify status session output: drop checkpoint count and uncheckpointed indicator\n* 364e148d4772fbeacd55b13eb8ca4930f2e0837c Skip binary files.\n* 6ca42818e338f5d5d54b6015068c0dd8ce97ec0e Strict JSON settings parsing (#157)\n* 2b1279c4c4c02bd85bee2593e54eb56b6e9805bc Test redaction field skipping.\n* 0b9ce3fb81f70d04b5290e23062b9d7aa9d485a1 Track last interaction time for sessions and show in status\n* 36eefb7ce6dcefb8f37e1958ff7fc5fc3537fa75 Update redact\u002Fredact_test.go\n","2026-02-08T20:06:10",{"id":218,"version":219,"summary_zh":220,"released_at":221},180434,"v0.3.11","## Changelog\n* b5349cf1f4236bbbf4052b0a5a6988db1c8fe9ef Add environment setup instructions for web\u002Fcloud sessions\n* dc58c0bb38dc2cf7630ebe693718033d3a197ce9 Merge branch 'main' into claude\u002Fsetup-dns-mise-xqmU7\n* 64d6cfee62c9274e555a10ab8700285214df1a78 Merge pull request #147 from entireio\u002Fclaude\u002Fsetup-dns-mise-xqmU7\n* 0f12305dbcc02e308585c2cca5850437f732d016 Merge pull request #152 from entireio\u002Falex\u002Fupdate-migration-instructions\n* 01e95ba044f04d07dee855adbf548acdc2d0caa0 Merge pull request #155 from entireio\u002Falex\u002Fcheckpoints-is-way-better-thanks-daniel\n* a744365eedfee89ca3c337020e948942882ce26c Use CLAUDE_CODE_REMOTE env var to detect web sessions\n* 0b5df2939e51fe73731f2914e4b33a029019785f disable for test commits too\n* 5484ef69bafd7931ab02e3f8a229852ed1368fe5 more robust gpg signing disable\n* e0b5de5bad8784ce4fb77f9bfdb468df69f47cb9 refactor: call a checkpoint a checkpoint\n* 4f326978a24a0be124011ad97b30f4208088f61e update all entire\u002Fsessions branch references\n* 86a1d7bcb25518a66eacd031a92f10665f5ee705 update migration instructions for entire\u002Fsessions-legacy workflow\n* fe56a336212f5f2bdc33d6410178a7c5e35102fc working handling of mise paths\n* aa453354c7d8505bccc312ce150552a8ab26b0cf working setup for Claude Code Web\n\n","2026-02-05T09:52:13",{"id":223,"version":224,"summary_zh":225,"released_at":226},180435,"v0.3.10","## Changelog\n* 51e122266d7dd5cfd82c39e0857e758d1023f1ad \u002F0 as first session folder\n* 5665a76596008fb4bd7df1d06a87582afbb06948 Fix HasUncommittedChanges to respect global gitignore\n* b9813208cd5de096e001a4a949000a2c74aa06ef Import ordering\n* b7b88a759777b6d26cc7e82c705e3805ede13fe0 Merge branch 'main' into alex\u002Fent-96-auto-summaries\n* 0c5ed0b5e3ef59ba0deeed6caf924f60f81faaac Merge branch 'main' into alex\u002Fent-96-auto-summaries\n* 562ed57d91ce8de1443c058b05cb13065e35391e Merge branch 'main' into alex\u002Fent-96-auto-summaries\n* cae5274f9bb266e1d8133a4e450408d64103d2bb Merge branch 'main' into alex\u002Fent-96-auto-summaries\n* 86b53171a5b18785b2dcd8e2f7167f3c656e326b Merge branch 'main' into alex\u002Fent-96-auto-summaries\n* 495f8bab0aa49c5de4f749ae17437a48cba4f7a4 Merge branch 'main' into alex\u002Fent-96-auto-summaries\n* e01f8737c240b29d629fcbaf3904974a5149d53a Merge branch 'main' into alex\u002Fimprove-explain\n* 6344862532f11b0516046d90d2acc90cb2f3fa01 Merge branch 'main' into alex\u002Fimprove-explain-2\n* 46edd132232b66c91bf0a81233541c5a8d6d0337 Merge branch 'main' into alex\u002Fmark-sessions-as-closed\n* 640a3d7ee3c0eda501dcc214b5b0b6501fac036b Merge branch 'main' into alex\u002Ftest-explain-checkpoint-boundaries\n* 9a66788961ed1c2d01057a93899e09569d9a3a81 Merge branch 'main' into fix\u002Fagent-test-parallel-chdir\n* a61cb365869450d248a052a74c32769958163324 Merge branch 'main' into fix\u002Fagent-test-parallel-chdir\n* 7805a9732aa92eb2ff051651e08525119b854adb Merge branch 'main' into fix\u002Fagent-test-parallel-chdir\n* 4df8957097850e58c386ee02907cda9606bf35d3 Merge branch 'main' into gtrrz-victor\u002Fadds-entire-reset-command\n* 4593180709c0e7dc87b58a9ea3bc717e52fb2c56 Merge branch 'main' into gtrrz-victor\u002Falt-better-multi-session-flow\n* b5f0f1763d60acc7d951f54e7a95ae951b376e07 Merge branch 'main' into gtrrz-victor\u002Ffix-latest-gemini-config\n* 75aa9a1b537c2d427d902b47c7019f10b5c49125 Merge pull request #129 from entireio\u002Fsoph\u002Ffix-global-gitignore\n* 3ebe0593b7e88e20cf45bc632600e0391ed3a620 Merge pull request #130 from entireio\u002Falex\u002Ftest-explain-checkpoint-boundaries\n* 1eebc9ac9c6ebfa434e971895917a30dbbad17d4 Merge pull request #132 from entireio\u002Falex\u002Fexplain-raw-transcript\n* 4f4f61a7d11cb4bd9710dd1c6f45c354e9591a11 Merge pull request #133 from entireio\u002Falex\u002Fent-96-auto-summaries\n* 152989a53aefe8f285879a5ef4a06d10ed8a874b Merge pull request #134 from entireio\u002Fgtrrz-victor\u002Fadds-entire-reset-command\n* 247464779966293a94a019332b2ee79c89e5d166 Merge pull request #135 from entireio\u002Falex\u002Ffix-worktree-shadow-branch-collision\n* d1a48a5273ac5b89681d26a6232b14e548cdf535 Merge pull request #136 from entireio\u002Falex\u002Fmark-sessions-as-closed\n* 706e2e3314fef3b2208da19d2ba0388870c1656a Merge pull request #137 from entireio\u002Fupdate-security-email\n* 52807f7023c7ae4bccc4377a5825738f80a53575 Merge pull request #138 from entireio\u002Fgtrrz-victor\u002Falt-better-multi-session-flow\n* 975805acf4dfb13ae5bc3a14cc42c75d5ee31efc Merge pull request #139 from entireio\u002Falex\u002Fimprove-explain\n* 54076643d8feccd2cc69ad2e309b338d85198152 Merge pull request #140 from entireio\u002Falex\u002Fupdate-hooks-session-end\n* 9b38d84f4e1f6333689f84dad12f3a2560b11498 Merge pull request #141 from entireio\u002Falex\u002Finvestigate-stop-slowness\n* 2c8c128b36460e23571c7f51b5bf968ab7409466 Merge pull request #142 from entireio\u002Fgtrrz-victor\u002Frestructure-entire-session-files\n* 7b69a5baa2c2a9870029ecbd5d920d21af9b0d33 Merge pull request #144 from entireio\u002Falex\u002Fimprove-explain-2\n* 1f018fdb5cf820ba690b7a5be16ce6a9c889a9a3 Merge pull request #146 from entireio\u002Ffix\u002Fagent-test-parallel-chdir\n* 64503a485a387a56aebfe42f76649b648171c280 Merge pull request #148 from entireio\u002Fdependabot\u002Fgo_modules\u002Fgo-dependencies-8fdfec68a0\n* a57d6e97fbe09b8814d72817e49a06136d3a5ac7 Merge pull request #150 from entireio\u002Fgtrrz-victor\u002Ffix-latest-gemini-config\n* c05553be1fcc4dbfea993b35d246e1e1015cb1d6 Merge pull request #151 from entireio\u002F20260205-use-github-package-names\n* 4abb6d249a2bc5c616eae161affc0250eb536501 Merge remote-tracking branch 'origin\u002Fmain' into alex\u002Fimprove-explain\n* 314004c88420c734dc6d92d2bc73303a7c8d271e Prepare for `curl|bash` installation. (#128)\n* cb86befa82e283a26714f6b0a5f5ce8c121ae8e3 Update README.md\n* a94287d4bb0afc4d72d8b4b4c3775cf4fced4f9a Update cmd\u002Fentire\u002Fcli\u002Fagent\u002Fgeminicli\u002Fhooks.go\n* a0c1a582df00cdc03882933edb03824f1f411c91 Update cmd\u002Fentire\u002Fcli\u002Fagent\u002Fgeminicli\u002Ftypes.go\n* d8612bb17ac4f582cc031eed4d0de7ea4d417c13 Update cmd\u002Fentire\u002Fcli\u002Fhooks.go\n* 3991f102c5163c530e19137f354630c45b166a66 Update cmd\u002Fentire\u002Fcli\u002Fhooks.go\n* 8431f4f50c70beb75402475889ea418f6ade2ff6 Update cmd\u002Fentire\u002Fcli\u002Fpaths\u002Fpaths.go\n* 4045cb72887a3c31798e75ed4c7665ec877403a1 Update cmd\u002Fentire\u002Fcli\u002Fstate.go\n* 2331864be7d062c9041a663ac147f60fe06b65cf Update security email\n* c0ab55eeed6d175c1979a7e01ea6c767c037445e Use github.com as our Go package repo.\n* 9571a23e043af41c8cc6daf522ed74931a2d21ea add checkpoint tests\n* 69d7674f3a08fce64a0a815f5f8fc428f26f8fb8 add git retry with exponential backoff for index.lock races\n* 4e02ba8a1de7be095bafa7115148ad217ddecd9e add idempotency support to migrat","2026-02-05T05:13:08",{"id":228,"version":229,"summary_zh":230,"released_at":231},180436,"v0.3.9","## Changelog\n* b2668cc925a7613f55f3460b133ed1bfa4936da0 Merge branch 'alex\u002Fent-109-text-output-checkpoint-flag' into alex\u002Fent-108-add-ai-summaries\n* 7098056540608c1fe4014a30e935b12c54448f80 Merge branch 'main' into alex\u002Fent-108-add-ai-summaries\n* 320315cabaa49aa1591e33ed6a31020d1bf279e4 Merge branch 'main' into gtrrz-victor\u002Fcleanup-config\n* b386f5faaec2fd2f78941bf3621d89d4000bdf9d Merge pull request #112 from entireio\u002Falex\u002Fent-109-text-output-checkpoint-flag\n* e59934c7b5ba6d07129eb52c1e17a7528a1ed633 Merge pull request #114 from entireio\u002Fdelete-old-strategies-references\n* 560f18559e20a2d6e6b5bac4dae11774b4e76742 Merge pull request #121 from entireio\u002Falex\u002Fent-108-add-ai-summaries\n* 4d649500748648bb9173536967bf0790ebdd70d0 Merge pull request #122 from entireio\u002Fgtrrz-victor\u002Fdo-not-show-suggestions-if-cmd-fails\n* 5b1cc262ed915c11126434b7e22342e081b1958e Merge pull request #123 from entireio\u002Fgtrrz-victor\u002Fcleanup-config\n* f70f2b9cf42a3f5b02046340dff2d0f92f375877 Merge pull request #126 from entireio\u002Fsoph\u002Fmake-sure-https-works\n* afece746d57863615228ee359261405670a83fe9 Merge pull request #127 from entireio\u002Falex\u002Fexplain-help-for-positional-args\n* b87e0d562be4d8bd565c3257c5ccf3f6b7cd62c1 Merge remote-tracking branch 'origin\u002Fmain' into alex\u002Fent-109-text-output-checkpoint-flag\n* c29a22e0d78d6be3f0103d423ef1933e112885da Merge remote-tracking branch 'origin\u002Fmain' into alex\u002Fent-109-text-output-checkpoint-flag\n* 167249ba9cda64996f8f59ff9a6e02ca84221857 Merge remote-tracking branch 'origin\u002Fmain' into alex\u002Fent-109-text-output-checkpoint-flag\n* b4a7bb1a17719935300a17c00e9b950aef275645 Merge remote-tracking branch 'origin\u002Fmain' into alex\u002Fent-109-text-output-checkpoint-flag\n* 5457fb4c46afa18f9c4c860555fea7e937f54eff Merge remote-tracking branch 'origin\u002Fmain' into alex\u002Fent-109-text-output-checkpoint-flag\n* e53f6caf53054d4f444397438673d5b1a20fcd40 Update cmd\u002Fentire\u002Fcli\u002Fexplain.go\n* 0391d03a2295234b8291fc3ecb35f4633812b21a Update cmd\u002Fentire\u002Fcli\u002Fexplain.go\n* 74c5f0058c50d49d2fd3e7b2dd9912d3f68bf641 clean up agent, agentautodetect, agentoptions from config\n* 36ff9a90022b2cd83719cfb357a8680bb5add24e close iterator\n* d36bcc0e3ca8b11752e9ad97ccd8e19d21dd4682 deletes all references about legacy strategies names\n* 68cb1d914dc2f78259888171852a9b9cb02c415a do not display suggestions if command fails\n* aaa7d7a74650b7b9db50050887c012d22799b9a5 docs(explain): update help text for new flags and verbosity levels\n* d3be86d531c3d828d7dd7fd6fa010c2be89f91ed feat(explain): add --checkpoint, --verbose, --full flags\n* ee894ec9eab6d786cc92e931b41f34d8feb3a494 feat(explain): add --generate and --force flags for AI summaries\n* ba9ae1a89e883d51482939a782726e09773a49db feat(explain): add -c shorthand for --checkpoint flag\n* 755d3e87db73dc9c56fafe4652b06ea26f2bad35 feat(explain): add mutual exclusivity check and routing\n* 4a1d79e52450e99ae3ae9c7eaa35630b54c3c064 feat(explain): add ~ prefix for temporary checkpoint IDs\n* 6ea7dbce7bf58301e4b91c91e6d4f64e98fba33c feat(explain): change default to branch-focused checkpoint view\n* b32b54f4487678f7d0fadee9bb7460f8a4f7d6e9 feat(explain): filter out metadata-only temporary checkpoints\n* e7b77e295ccf069678a053d1f46e4aae3231168c feat(explain): group checkpoints by ID and improve list format\n* 03a2f880f0984e67ff2e6c26c9aa0c3d08d62b33 feat(explain): implement checkpoint lookup by ID prefix\n* 5afb02e62fbded0ce1a4eb5fd567f2536bf9cddf feat(explain): implement default checkpoint output format\n* 09ea3c1e2b76a240fadcd7c0594744be77348a94 feat(explain): implement full checkpoint output format\n* 614cb411d874377e0f2f0087d0c0323eab24d7b9 feat(explain): implement verbose checkpoint output format\n* 0535c282d3e3afba1410f1dcaa500fb2e6bdc0ab feat(explain): make checkpoint viewing strategy-agnostic with branch filtering\n* 5dad9810e25ce6eb7974c4ca26d9b7bb9f724e45 feat(explain): make verbose the default for checkpoint inspection\n* a12a83da6a00627a1dbd2656360271b31d3f9f9d feat(explain): show git commit message in verbose mode\n* 53104661eb0dc06482d65b7e4ac9ae2a5b12e4b7 feat(summarise): use Sonnet model for summarisation\n* c0dd4af9130104b523631fa53eccef4496bde482 feat(summarize): add AI summary types and Claude CLI generator\n* 02003d1a0b2d702afa01631c1d26e9ae418aedc8 fix lint\n* 89628fe4f57dc4541dbb79e2bd4c4211babae420 fix(explain): address Copilot PR feedback\n* 387eacf47f655c2315edc72a0a627a13bea1511f fix(explain): address PR review feedback for checkpoint inspection\n* 09bd59e2ae01684dd5fc4ebba738ec350ce86876 fix(explain): address additional PR feedback\n* 369627091e7819f2ad11f898ed8c0463bc9b5370 fix(explain): address low severity PR feedback\n* 3f1eae5e4efa4ce89294f422a7c9944a4f89f885 fix(explain): address low severity PR feedback\n* c2b02731e4c289c3e2a12b09de6dd8018917cf95 fix(explain): address medium severity PR feedback\n* 188d88353ffa764e0efeb4ae628b24271583aa34 fix(explain): address medium severity PR feedback\n* 003ded23c87d85b83bbf76e786a81327e76c55d7 fix(explain): address remaining PR feedback\n* 7f010c5753b0e38fc295eff0c4742cc0815f5708","2026-01-30T00:25:07",{"id":233,"version":234,"summary_zh":235,"released_at":236},180437,"v0.3.8","## Changelog\n* 32611c14a3f93fe587ceb6423fdf063844a8c693 APIKey and Endpoint fields have been removed from EventPayload\n* 3e627519379cf1de38c8f09b5438028c67daa789 Bump github.com\u002Fsergi\u002Fgo-diff in the go-dependencies group\n* 982fe0a085170d7c9f38b9cd0bc75b21fa107cbb Merge branch 'main' into soph\u002Ftest-attribution-flow-script\n* 38e815162c8ca25f28da7eaf88e75df53895c867 Merge pull request #111 from entireio\u002Fgtrrz-victor\u002Fdetach-posthog-emit-event\n* de8fc93256e3146f6f6e9e87aa7cc319531f6f63 Merge pull request #115 from entireio\u002Fsoph\u002Ftest-attribution-flow-script\n* 6763b147ed8a40efc31d531dfcb91c8286732349 Merge pull request #116 from entireio\u002Fdependabot\u002Fgo_modules\u002Fgo-dependencies-0fc8bc1058\n* cef1ae6e21669120e9a673501e9e8b588ca16147 Merge pull request #118 from entireio\u002Fsoph\u002Fgo-1-25-6\n* 8c0db60163d4e094eb7574921c2857de7e2650c2 add no-op spawnDetachedAnalytics for non-unix platforms\n* 9d839950989c117f5256c06b73edefc8dc8d8f94 adds a attribution test script\n* 1e377550dd91e775ddc229e5a68828c5c13165c6 fix lint\n* 23a9c9d0db25c3904a19c3ac64886bdd3c11308d fix lint\n* 3d0f9eede616a9ac11d9a50026c068baaa950356 fix test\n* 732e3424e639a8899c17b5f95294dc0e7c0e9fae fix: point stdout to is.Discard Entire-Checkpoint: e032154c0b18\n* 65fa5640b575ca2495caf3abdaffa17ccdc4b64b go back to use go run\n* 1fc9e4cc02f8c9c555f2b97088b2a4c8d73e62f9 sends posthog events in a detached mode\n* 8c3007ffd952aaaff3cf0abe60ea377ac817e3c8 update to go 1.25.6\n\n","2026-01-28T23:16:16",{"id":238,"version":239,"summary_zh":240,"released_at":241},180438,"v0.3.7","## Changelog\n* 89210777b59a5f6280ae1e8a05005f4b5cb87670 --detailed instead of --long\n* 03520fc6d53af8b4aba80f7b65d4437dc5bb8c6a Add backward compatibility for legacy date-prefixed session IDs\n* 845ffb8635123f3d80916e7182eab175989afc26 Add path safety validation to FindLegacyEntireSessionID\n* c6fed716688562b843772397a0cbaaf81e3bb269 Fix handleGeminiBeforeAgent to use currentSessionIDWithFallback\n* 36fdb4debfd9127be5800e65a4010b7a4f67783d Merge branch 'main' into gtrrz-victor\u002Fimprove-status-cmd-output\n* fc60549fe3b9b6b2eef0d9379a00f8878afc8792 Merge branch 'main' into gtrrz-victor\u002Fimprove-status-cmd-output\n* a02da0f300aabe8fb5dbc5bd9c7b3f2bcf6cecda Merge pull request #106 from entireio\u002Fgtrrz-victor\u002Fimprove-status-cmd-output\n* b53f67220e841d315747e13a0c11d9440aca742f Merge pull request #108 from entireio\u002Fgtrrz-victor\u002Fmake-manual-mode-default\n* 7d83d898fb853104b3d5a3f6ec9fd6921d052ff9 Merge pull request #113 from entireio\u002Fgtrrz-victor\u002Falt-date-prefix-session-id\n* bc262af18fd4539e3d10277e9192326f65c1d2fa Rename Claude handlers to use ClaudeCode prefix for consistency\n* 233faa16689429f266dffee46802d515068ffc1c Update cmd\u002Fentire\u002Fcli\u002Fconfig.go\n* 970a0a63dd7c7abd81ba622de57254489ed66d17 Update cmd\u002Fentire\u002Fcli\u002Fconfig.go\n* f15eb534c4b0731af4a25fe88e19a2c14df0fdb7 Update cmd\u002Fentire\u002Fcli\u002Fsetup.go\n* b2b7eb7d91f63f6c06cb1d29a891802f61e67fad Update cmd\u002Fentire\u002Fcli\u002Fsetup_test.go\n* 714cf331eb24413b8ab43466c58af5f3d47ecd4d Update cmd\u002Fentire\u002Fcli\u002Fsetup_test.go\n* 255936938fe96431d194a1118f9b557d794cb263 Update cmd\u002Fentire\u002Fcli\u002Fsetup_test.go\n* 5880bb5450046bed7db1da726c3a42e4747b524e adds --long status command flag that prints diffs between local and project config\n* 63fa84d15fb758b2ff90b89171e72b305667f1e9 delete redundant strategy.NormalizeStrategyName\n* 71dc43aae0c52425ddf1d200c51b483f710128da entire session id is just agent session id\n* d465412c590614cdc2f37a77b90b0f399e0efbf5 fix lint\n* 74be582280ff75195a2e4cceb6d9db205849d8c1 manual-commit is default\n* f8eeb9d01d07bde6b01264b14f7cfec237d9217e minor fix\n* 2a439fb58595f39179b5a5d1018687af60def1b4 reuse logic reading settings from json\n\n","2026-01-28T20:57:14",{"id":243,"version":244,"summary_zh":245,"released_at":246},180439,"v0.3.6","## Changelog\n* 9ba6975c2dc2a5c0312338ab3b69e8f3e4b0175e .claude\u002Fsettings.json: Trailing newline.\n* f704738eb43b826b9f7b21f662a62502a2dbf077 .entire\u002Fsettings.json: Trailing newline.\n* f39fc0787db250a4d57ef9828ae65a239f4de9c2 .github\u002Fworkflows: I don't believe we need GITHUB_TOKEN to install tools.\n* 2f98cdf3640f7ca6220d37649d7bd396f0a46cdd 1. create telemetry client at postrunhook, it gets latest settings value 2. adds extra fields to telemetry like: agent,strategy,isEntireEnabled Entire-Checkpoint: eacf5c355b86\n* 92a83f0f55a9665dbec668bcbb9a291a8281728f Add 'This is a work in progress' notice to Gemini CLI hook in entire enable\n* b543b3ae79e713c65e8338787768e994dd833a17 Add Agents array to CommittedMetadata for multi-agent checkpoints\n* f1965c8b6539a80f94819faa562fccb200091bcd Add Gemini CLI integration for session tracking with entire\n* bf0644e095f41326d46bfc96d47fe2099c1eef60 Add GitHub Copilot instructions for coding agent onboarding\n* afec2bb6b2082c9a743aee4d957279b16acea409 Add PR review feedback\n* 4c8382673bdf9df6d759b938dae3ac6fb737f7c9 Add USER_GUIDE.md doc\n* b7c06a2536c159cb522e03b80276948886efb230 Add code duplication detection tooling\n* 3fc83e06aea84dda057685b38ea3c18821da5d39 Add interactive prompt tests using pty\n* 28c5452651ada9ccfd83aa2af2c18d08be59a196 Add missing metadata fields to Gemini SaveContext (same as Claude Code)\n* 7407d1a863fd840b291566bdd79c01bf2f76b725 Add session token tracking for metadata.json (#82)\n* 2cf243b28c90562d1bac0973ea175c0a115191da Add trailing newline to JSON files.\n* 011bec4a94604a95057de9e9038ba5e49ca4af7b Add unit and integration tests for Gemini hooks to match Claude hooks\n* f747a8a4eeb909ed46436c261fecd4af05e3c642 Address PR review comments for dup:staged task\n* 75bb02828edee3272fd6c2f77283dd63f8e945e2 Agent type determined by hook execution\n* 4df7ccb3b478f5e94c8ff0d0852b7ab7c0b11884 BugBot feedback\n* e05c065c0d15a0155811951e13cfd63f00871293 Bump github.com\u002Fposthog\u002Fposthog-go in the go-dependencies group\n* 370f795f461f27e824ff14b861127812f04a84a6 Bump github.com\u002Fspf13\u002Fpflag in the go-dependencies group\n* 921e76a2a71b81f86b9c0fdcad410891c72bac66 Changed InitializeSession() to always store PendingPromptAttribution when CheckpointCount > 0 (even when all values are zero) to maintain a complete attribution history for every checkpoint.\n* 88cecec60bd69e75a9761abb84f9ef429086ff94 Consolidate hook_handler_test.go\n* b5e48b768fe92961c22005e9ffe3225b672a7633 Fix Gemini CLI hooks: AfterAgent creates checkpoints, SessionEnd cleanup\u002Ffallback only\n* 733186309d94dd301730be83560b790b2c514ef4 Fix resume integration test hanging on interactive prompt\n* 26155539ce30256423e4ef5b16aaf74b8eb97108 Fix review feedback: add tests, fix comments, restore omitempty\n* 0031e84ed3c39fa696c86050aa5e9ae3db8612f9 Fix session current to show current strategy when session.Strategy is empty\n* 64fd725a0386353bf8382f7e43a7fecb1a18e0ad Fix temp file and space-handling issues in mise dup tasks\n* 0623ceb43a7f9aea43b20b32f41d543a7c8d4ef2 Fix up a few more spots.\n* 7e4170cd76793840ebe1a843dd436dada20b9fb7 GITHUB_TOKEN is indeed needed\n* 66a4406511754645e2ca6e63b95d9ab77e681eb8 GITHUB_TOKEN is no longer needed\n* f14777b346cfa08649fa9dfc6bbae4ea3f1a6517 Implement feedback: Remove duplicates, add hooks.enabled assertion, file consistency, test improvements\n* 05b72ec871a47db298db726d6dcb04f7f7553361 Make Gemini hooks always use go run (#80)\n* a706baeb744e7669675e1e3f3cedd7a50466607d Merge USER_GUIDE into README\n* d8cefedc553f82bd649903ae2012414cb4bee501 Merge branch 'main' into add-hooks-documentation\n* b7bf267c8b37ceae7c69bc5dce8f8caf5afe34e8 Merge branch 'main' into alex\u002Fadd-copilot-review-instructions\n* d7d7c3a1c3b132e0241c27e356c7c9545c249c79 Merge branch 'main' into alex\u002Fcode-dup-tooling\n* 0b0f5025dfe2bc8d5c66c40897741785f4923ce4 Merge branch 'main' into alex\u002Fcode-dup-tooling\n* 4c161ffc6cad8a6735933c601d2248e4a17b2973 Merge branch 'main' into feat\u002Fgemini-cli-agent\n* 0628b5db6dff6d2383bee768ab5fa0df9c568f4a Merge branch 'main' into gtrrz-victor\u002Fadd-token-usage-manual-commit\n* 99514870a9110a313de375e8cf21434e06cfb7e6 Merge branch 'main' into gtrrz-victor\u002Fmissing-telemetry-config-means-disable\n* 5e6be822b6f1eeccab4f79ea453a3aa834580aab Merge branch 'main' into gtrrz-victor\u002Fmissing-telemetry-config-means-disable\n* b3d15008320718b3948f8d75e9bbc5d7873eeb49 Merge branch 'main' into gtrrz-victor\u002Fopt-disable-multisession-warning\n* 9d7260ff59b5846cf1f18c9b995e336d4f2ef1d2 Merge branch 'main' into soph\u002Falign-all-multi-session-issues\n* 6b725a6ff00d162c6096b96958313cb38d199c49 Merge branch 'main' into soph\u002Falign-all-multi-session-issues\n* 855e84b559c21c0a4b6646fec30038523b9c38bd Merge branch 'main' into soph\u002Fchunking\n* 0f186b810a10c82d122f424d560ac6c432decb66 Merge branch 'main' into soph\u002Fdo-not-truncate\n* 7d2fcd13417f19e90cbdce00647757069e3eea04 Merge branch 'main' into soph\u002Ffetch-sessions-if-needed-during-resume\n* e44cb1d721e2bb6237678c8308e911f41d09cf5f Merge branch 'main' into soph\u002Ffetch-sessions-if-needed-duri","2026-01-28T10:51:22"]