Skip to content
Productivity
Skill

/rehydrate

Put the real values back into an analysis that was produced from GREEN (placeholder) text — LOCALLY, using the user's own reversible map. Completes the confide round-trip (redact -> cloud-analyze the green -> rehydrate locally). Use when the user says "rehydrate", "restore real

BOOST
From plugin
claude-skills
39214 skills
Install
$ npx -y skills add glebis/claude-skills --skill rehydrate --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/rehydrate

Context preview

The summary Claude sees to decide when to auto-load this skill.

Put the real values back into an analysis that was produced from GREEN (placeholder) text — LOCALLY, using the user's own reversible map. Completes the confide round-trip (redact -> cloud-analyze the green -> rehydrate locally). Use when the user says "rehydrate", "restore real

SKILL.md

rehydrate.SKILL.md
name: rehydrate
description: Put the real values back into an analysis that was produced from GREEN (placeholder) text — LOCALLY, using the user's own reversible map. Completes the confide round-trip (redact -> cloud-analyze the green -> rehydrate locally). Use when the user says "rehydrate", "restore real names", "unmask the analysis", "put the names back", "de-redact this output", "reverse the placeholders", or hands you an analysis full of [CONFIDE_PERSON_0001]/[CONFIDE_DATE_0002] plus a *.map.json. Runs only on the user's own map; the map never leaves the machine; nothing fetched or transmitted. Prints counts only — never echoes restored PII. Warns on placeholders not in the map (possible LLM hallucination).

confide:rehydrate — restore real values into a placeholder analysis

This is the last step of the CONFIDE round-trip:

1. **Redact** locally with `confide:anon` (default reversible mode) → a GREEN copy with unique reserved-sentinel placeholders (`[CONFIDE_PERSON_0001]`, `[CONFIDE_EMAIL_0001]`, `[CONFIDE_DATE_0002]`…) plus a secret `<name>.map.json` (structured: `green_sha256`, `entries[]`…) that stays on the machine. 2. **Analyze the GREEN text** anywhere — including a cloud LLM. The analysis comes back full of those same placeholders (sometimes mangled to `CONFIDE_PERSON_0001`, `[CONFIDE PERSON 0001]`… — but always keeping the full `CONFIDE_TYPE_NNNN` core). 3. **Rehydrate** here: replace every placeholder with its original value from your own map, producing the real analysis — without the cloud ever seeing the originals.

Privacy invariants (do not violate)

  • **Local-only, on the user's OWN map.** The map never leaves the machine. This skill

never fetches or transmits anything.

  • **Counts only on stdout.** The summary reports `restored N, unmatched M`. The

restored text (which contains originals) is written to a local file; it is NEVER echoed to stdout beyond the counts.

  • **Unmatched = possible hallucination.** A placeholder that is not in the map is

reported as `unmatched` and **left in place** — we never invent a value for it. Warn the user that these may be LLM hallucinations.

  • The `<name>.restored.md` output contains originals: it is local-only, do not share

or commit it.

Run it

python3 skills/rehydrate/scripts/rehydrate.py ANALYSIS_FILE [--map <name>.map.json]
  • `ANALYSIS_FILE` — the text/analysis containing placeholders.
  • `--map <name>.map.json` — the secret map from `confide:anon`. If omitted, the

sibling `*.map.json` is auto-found (e.g. an analysis next to `session.map.json`, or one derived from `session.green.md`).

  • `--out PATH` — output path (default: `<name>.restored.md` next to the input).
  • `--verify-green <green_file>` — check the map's `green_sha256` against that GREEN

file; warns loudly if they don't match (wrong map for this document).

Robust to LLM mangling that still keeps the full `CONFIDE_TYPE_NNNN` core: `[CONFIDE_PERSON_0001]`, `[CONFIDE PERSON 0001]`, `CONFIDE_PERSON_0001`, and `confide_person_0001` all restore to the same map entry. Ordinary prose lacking the `CONFIDE` prefix (e.g. "Person 1", "patient 1", "section 2") is **never** touched, and `0001` never eats `0010`. Rehydration is idempotent (re-running on restored text is a no-op). Accepts both the structured map schema and a legacy flat map.

After running

1. Report the restore summary (`restored N, unmatched M`) — never paste PII. 2. If `unmatched > 0`, flag the placeholders as possible hallucinations not in the map. 3. Remind the user the `*.restored.md` is local-only (it now contains originals).

Read more
Ships withclaude-skills

~100 skills for Claude Code — meeting pipelines, research, image generation, TDD, publishing, personal analytics, and Claude Code ops. Each skill is a self-contained folder with a SKILL.md; Claude triggers them from natural language.

Get the whole plugin
Stats
393
Stars
60
Forks
Active
Maintenance
JavaScript
Language
MIT
License
23h ago
Last commit
11mo ago
Created
4h ago
Added

Repo: glebis/claude-skills

Other skills on claude-skills.