Skip to main content
Glama
N0moreher0
by N0moreher0

Workspace checkpoint

project_snapshot
Destructive

Create a checkpoint of workspace files before multi-file refactors or renames, then restore all changed files in one call if edits go wrong. Content-addressed and deduplicated.

Instructions

Checkpoint/rollback for the workspace: snapshot the current bytes before a large edit chain, then restore in one call. Content-addressed and deduplicated (only changed files cost new space). Use when: before a multi-file refactor/rename: action=create (paths defaults to ['.']) then action=restore with the returned id if the change goes wrong. Avoid when: the repo is clean in git (git is cheaper), or only one file changed and can be re-edited. Speed: create walks/hashes the captured files (skips .git/node_modules/dist, symlinks, huge files); repeats only store new blobs. restore is atomic per file, concurrency 4, sha256-verified by default. Output: snapshot_create: id, label, file_count, total_bytes, new_blob_bytes, skipped[], truncated; snapshot_list: checkpoints[]; snapshot_restore: restored_count/restored[], deleted_count, skipped[]; snapshot_delete: deleted, bytes_freed. Batch-safe: no

Input Schema

NameRequiredDescriptionDefault
idNoCheckpoint id (required for restore/delete; returned by create/list).
labelNoHuman label for the checkpoint, e.g. "before refactor auth".
limitNolist only: max checkpoints to return (default 20).
pathsNoPaths to capture (default ['.']); restore accepts a subset to filter files.
actionNocreate
reasonNoWhy this change is made (e.g. "sua loi null pointer o dong 45"). Recorded in the audit trail so later sessions know the intent. Single line, max 400 chars, secrets are redacted.
verifyNorestore only: sha256-verify each blob before writing (default true).
dry_runNorestore only: report what would change without writing.
excludeNoExtra directory/file names to skip.
max_filesNo
delete_extraNorestore only: also delete files inside captured dirs that are not in the checkpoint (default false, capped at 500).
max_total_bytesNo
respect_default_excludesNoDefault true: skip .git/node_modules/dist/build/.next/.venv/__pycache__ and the snapshot store itself.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.5.4

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations, it discloses deduplication, skipped default paths, symlink/huge-file behavior, atomic per-file restore, concurrency 4, and sha256 verification by default. These details substantially clarify storage, performance, and restore safety for a destructive mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with purpose and then organized by Use when, Avoid when, Speed, Output, and Batch-safe. Each section is dense and useful, especially the output enumeration since there is no output schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 13-parameter tool with no output schema, the description supplies the missing return shapes and operational constraints an agent needs to call it correctly. The annotations already cover safety, and the description fills in workflow, deduplication, exclusions, atomic restore, and output expectations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 77%, so the schema already documents most parameters, establishing a baseline of 3. The description adds useful meaning for action workflow, paths defaulting to ['.'], and verify defaulting to true, but it does not explain max_files or max_total_bytes and leaves several other parameter details to the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: checkpoint/rollback for the workspace by snapshotting bytes and restoring in one call. It also distinguishes the tool from nearby file-editing siblings by framing it as a multi-file safety mechanism and by comparing it with git.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives explicit when-to-use guidance: before a multi-file refactor or rename, use action=create then action=restore with the returned id. It also gives explicit avoid conditions: when the repo is clean in git or only one file changed, and it names git as the cheaper alternative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.