克劳德·维格
一 模型上下文协议(MCP) 服务器 检查点、快照和文件恢复 在 克劳德代码完美的快照、选择性还原、bash安全网和诚实的磁盘管理。
______________________________________________________________________
安装
要求:

来自shell:
claude mcp add claude-vigil-mcp -- npx claude-vigil-mcp从内部克劳德 (需要重新启动):
Add this to our global mcp config: npx claude-vigil-mcp
Install this mcp: https://github.com/Vvkmnn/claude-vigil-mcp从任何手动配置 mcp.json:(光标、风帆等)
{
"mcpServers": {
"claude-vigil-mcp": {
"command": "npx",
"args": ["claude-vigil-mcp"],
"env": {}
}
}
}有 不 npm install 必需的 --没有外部数据库,没有索引,只有用于加密、压缩和文件系统的Node.js内置。
然而,如果 npx 解决错误的包,您可以使用以下命令强制解决:
npm install -g claude-vigil-mcp技能
可选地,安装技能来教克劳德在危险工作之前何时主动检查:
npx skills add Vvkmnn/claude-vigil-mcp --skill claude-vigil --global
# Optional: add --yes to skip interactive prompt and install to all agents这使得Claude在破坏性bash命令、风险重构或上下文压缩之前自动保存检查点。MCP在没有技能的情况下工作,但技能提高了可发现性。
插件
对于使用钩子和命令的自动检查点,请从安装 克劳德商场 市场:
/plugin marketplace add Vvkmnn/claude-emporium
/plugin install claude-vigil@claude-emporium这 克劳德守夜 插件提供:
钩子 (背景,零延迟):
PreToolUse (Bash)-在执行破坏性命令之前自动快速保存(rm,mv,sed -i,git checkout,git reset)PreCompact-上下文压缩前的自动检查点,均为手动(/compact)和自动Stop-Claude完成包含文件编辑的响应后的自动检查点PostToolUse (Write|Edit)-文件修改后的检查点SessionEnd-会话终止时的最后机会检查点
命令: /checkpoint
需要先安装MCP服务器。请参阅商场了解其他Claude Code插件和MCP。
特性
5个工具。完美的快照。内容差异。通过文物保护进行安全恢复。
守夜_保存
为整个项目创建一个命名检查点。可选的 description 用于注释。如果插槽已满,Claude会询问用户是删除现有检查点还是增加容量。
🏺 ┏━ saved "before-refactor" ━━ 47 files · 4.2 MB ━━ vigil: 2/3 | quicksave: 8m ago | 4.2 MB
┗ skipped: node_modules, dist, .next首次保存自动检测派生目录 .gitignore 并创建 .vigilignore:
🏺 ┏━ saved "v1.0" ━━ 47 files · 4.1 MB ━━ vigil: 1/3 | quicksave: none | 4.1 MB
┃ skipped: node_modules, dist, .next
┃ first save -- confirm these exclusions look correct
┗ edit .claude/vigil/.vigilignore to adjust当插槽已满时:
🏺 ┏━ 3/3 full -- ask the user before proceeding ━━ vigil: 3/3 | quicksave: 2m ago | 8.7 MB
┃ v1.0 (2h ago) · before-refactor (45m ago) · experiment (5m ago)
┗ ASK the user: delete one with vigil_delete, or increase capacity with max_checkpoints?守夜列表
浏览带有描述的检查点。随着 name:深入检查点的文件。随着 glob:按模式过滤文件。
🏺 ┏━ 2 checkpoints ━━ vigil: 2/3 | quicksave: 3m ago | 8.7 MB
┃ v1.0 2h ago 47 files
┃ Initial stable release
┃ before-refactor 45m ago 47 files
┃ Snapshot before risky auth changes
┗ ~quicksave 3m ago使用glob过滤深入检查点:
vigil_list name="v1.0" glob="src/auth/**"🏺 ┏━ v1.0 ━━ 3 of 47 files matching src/auth/** ━━ vigil: 2/3 | quicksave: 3m ago | 8.7 MB
┃ src/auth/index.ts
┃ src/auth/middleware.ts
┗ src/auth/types.ts守夜\_ off
搜索并调查代码库的以前版本。使用完整的统一差异将检查点与当前工作目录进行比较,将两个检查点相互比较,从任何检查点检索任何文件的内容,或在所有检查点中搜索字符串。
变更摘要:
vigil_diff name="before-refactor" summary=true🏺 ┏━ 3 changes vs before-refactor ━━ vigil: 2/3 | quicksave: 3m ago | 8.7 MB
┃ modified src/auth.ts (+8 -2)
┃ modified src/middleware/validate.ts (+3 -1)
┗ added src/services/oauth.ts完全统一的差异:
vigil_diff name="before-refactor"🏺 ┏━ 3 changes vs before-refactor ━━ vigil: 2/3 | quicksave: 3m ago | 8.7 MB
┃ modified src/auth.ts (+8 -2)
┃ modified src/middleware/validate.ts (+3 -1)
┗ added src/services/oauth.ts
━━ src/auth.ts ━━
--- a/src/auth.ts
+++ b/src/auth.ts
@@ -12,6 +12,8 @@
import { validateToken } from './utils';
-function authenticate(req: Request) {
+function authenticate(req: Request, options?: AuthOptions) {
+ if (options?.skipValidation) return true;
const token = req.headers.authorization;从检查点检索单个文件:
vigil_diff name="v1.0" file="src/auth.ts"🏺 ━━ src/auth.ts from v1.0 ━━
import { validateToken } from './utils';
function authenticate(req: Request) {
const token = req.headers.authorization;
...
━━ diff vs current ━━
--- a/src/auth.ts
+++ b/src/auth.ts
@@ -12,6 +12,8 @@
-function authenticate(req: Request) {
+function authenticate(req: Request, options?: AuthOptions) {比较两个检查点:
vigil_diff name="v1.0" against="before-refactor"显示两个检查点状态之间的统一差异——不涉及工作目录。
在所有检查点中搜索:
vigil_diff name="*" file="src/auth.ts" search="validateToken"🏺 ┏━ "validateToken" in src/auth.ts ━━ 2 checkpoints ━━ vigil: 2/3 | quicksave: 3m ago | 8.7 MB
┃ v1.0 (2h ago)
┃ import { validateToken } from './utils';
┃ before-refactor (45m ago)
┗ import { validateToken } from './utils';守夜商店
将项目还原到检查点状态。首先快速保存当前状态(使用撤消 vigil_restore name="~quicksave").替换的文件(包括自检查点以来修改的和新创建的文件)都保存在 .claude/vigil/artifacts/ 所以什么都不会丢失。对于单个文件还原,请使用 vigil_diff 要检索文件内容,请使用“编辑”应用。
vigil_restore name="v1.0"🏺 ┏━ restored from "v1.0" ━━ 47 files ━━ vigil: 2/3 | quicksave: just now | 8.7 MB
┃ preserved 3 displaced files in .claude/vigil/artifacts/restored_v1.0_20260219_143022/
┃ modified: src/auth.ts (current version saved)
┃ modified: src/middleware/validate.ts (current version saved)
┃ new: src/services/oauth.ts (moved, not in checkpoint)
┃ review .claude/vigil/artifacts/restored_v1.0_20260219_143022/ -- delete when no longer needed
┃ previous state also quicksaved (use ~quicksave to undo)
┃ not restored (derived): node_modules, dist
┗ rebuild these before running the project守夜_结束
删除检查点并回收磁盘空间。GC删除未引用的对象。使用 all=true 删除所有内容。
vigil_delete name="v1.0"🏺 ━━ deleted v1.0 ━━ reclaimed 241 MB (3,412 objects) ━━ vigil: 1/3 | quicksave: 3m ago | 4.5 MB方法论
🏺 claude-vigil-mcp
━━━━━━━━━━━━━━━━━━━
Claude calls tool
vigil_save
│
▼
┌─────────────────┐
│ spawn worker │
_**[克劳迪斯宣布成为皇帝](https://en.wikipedia.org/wiki/Claudius#/media/File:Lebayle_-_Claudius.jpg)** 通过 **[查尔斯·勒贝勒](https://en.wikipedia.org/wiki/Charles_Lebayle)** (1886).克劳迪斯将Vigiles Urbani从消防员扩展到罗马的守夜人——他们在城市巡逻,维护秩序,并确保没有任何东西在黑暗中丢失。_