Skip to content
cccskills
FreePublished on GitHub

history-forget

Use when the user asks to remove a session or note from recall, or to unforget or list exclusions. Not for remote, credential, publish, deploy, or irreversible changes.

The English summary is being prepared. Showing the original description.

See how to install

Files included (2)

  • SKILL.md4.4 KB
  • agents/openai.yaml166 B

SKILL.md (original)

Review the instructions the agent will receive before you install.

History forget

Reversibly remove a memory or session from recall and export.

Contract

FieldBound contract
TriggerUser explicitly and human-confirmedly asks to remove a session or note from recall, or asks to list or reverse a prior forget.
AuthorityReversible local: writes only a defined history index overlay; rollback is undo. No remote mutation. No deletion of source records.
Side effectWrites tombstone or exclusion markers to the local index overlay and atomically rebuilds the index before the effect takes hold.
DoneThe target record no longer appears in recall; exclusions also block export; the atomic rebuild is confirmed; stale exclusions are narrated during list.

Inputs

  • Target identifier (required for forget and unforget): the session or note identifier to forget, unforget, or inspect. Must be human-confirmed.
  • Operation mode (required): one of forget, unforget, or list. list takes no target.
  • Explicit human confirmation (required for forget and unforget): the user must confirm the exact target identifier before any write.

Overlay schema

The exclusion overlay lives at $HISTORY_DIR/overlay/exclusions.jsonl. Each line is:

{"id": "<session-or-note-id>", "mode": "exclude", "ts": "<RFC3339>", "reason": "<user-stated>"}

The tombstone overlay lives at $HISTORY_DIR/overlay/tombstones.jsonl. Each line is:

{"id": "<session-or-note-id>", "ts": "<RFC3339>", "reason": "<user-stated>"}

$HISTORY_DIR is the same directory the recall index reads from. If the environment variable is unset, stop and ask the user for the history directory path.

Procedure

  1. Require human confirmation. For forget and unforget, require a human-confirmed request naming one concrete session or note identifier. If confirmation is absent or the target is ambiguous, stop before any write. Done when: the target is confirmed and unambiguous, or the run stopped.
  2. Bound scope. Bound scope to the named record only. Do not read or mutate unrelated records or the underlying source files. Done when: the scope boundary is stated and no out-of-scope target is queued.
  3. Write the marker. For forget: append a tombstone or exclusion entry to the corresponding overlay file. An exclusion blocks both recall and export; a tombstone blocks recall only. Write the entry atomically (write to a temporary file, then rename). Done when: the marker is written and confirmed by reading it back.
  4. Atomically rebuild the index. Rebuild the recall index so the tombstone or exclusion is in effect before any recall query can observe the record. The rebuild must complete before the effect is reported. Done when: the rebuild completes and the record is confirmed absent from a recall query.
  5. For unforget: remove the matching tombstone or exclusion entry from the overlay file (rewrite the file without the entry), then atomically rebuild the index. Done when: the marker is removed and the rebuild completes.
  6. For list: enumerate current tombstones and exclusions from the overlay files. Narrate any stale exclusion whose target no longer exists rather than silently dropping it. Done when: the full enumeration is returned with stale markers narrated.
  7. Verify done. Confirm the record no longer re-ingests on recall, exclusions also block export, and the rebuild is reported complete. Done when: all checks pass.

Failure and recovery

  • Unconfirmed or ambiguous target: stop, do not write. Request human confirmation or a disambiguating target.
  • unconfirmed-target: the target was not human-confirmed. Stop before any write.
  • rebuild-failed: abort the effect, discard the partial rebuild, and leave the index in its pre-mutation state. Never report done.
  • blocked-non-converged: the index was not changed. Report the exact record, the failed step, and that the index was not changed.
  • Stale exclusion: narrate it during list. Do not silently remove it.

Output

A terminal report naming the operation performed (forget, unforget, or list), the affected record, whether the atomic rebuild completed, and any stale exclusions narrated. For list, the full enumeration of current tombstones and exclusions.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Use when explaining System V AMD64, ARM AAPCS, RISC-V psABI, stack frames, variadic calls, or FFI register rules. Not for the Rust FFI binding layer: use rust-ffi.

The English summary is being prepared. Showing the original description.

OutlineDriven/odin-claude-plugin38Updated Sep 29, 2026

Use when configuring ADC sampling time, DMA-driven ADC, calibration, or DAC channel setup on bare-metal MCUs. Not for the DMA stream itself: use dma-baremetal.

The English summary is being prepared. Showing the original description.

OutlineDriven/odin-claude-plugin38Updated Sep 29, 2026

af-xdp

Free

Use when creating AF_XDP sockets, configuring UMEM and XSK rings, writing an XDP redirect program, or choosing copy versus zero-copy mode. Not for full kernel bypass: use dpdk.

The English summary is being prepared. Showing the original description.

OutlineDriven/odin-claude-plugin38Updated Sep 29, 2026

Use when a completed session needs an agent-environment retrospective. Not for an engineering retrospective from telemetry: use engineering-retrospective.

The English summary is being prepared. Showing the original description.

OutlineDriven/odin-claude-plugin38Updated Sep 29, 2026

Use when a redacted, trimmed agent transcript must be appended to a GitHub PR or issue body, with human approval and preview. Not for automated or model-initiated insertion.

The English summary is being prepared. Showing the original description.

OutlineDriven/odin-claude-plugin38Updated Sep 29, 2026

Use when a repo needs agent setup, AGENTS.md added or made lean, CLAUDE.md audited, or agent instructions scored or pruned. Not for remote, credential, publish, deploy, or irreversible changes.

The English summary is being prepared. Showing the original description.

OutlineDriven/odin-claude-plugin38Updated Sep 29, 2026

See all skills by OutlineDriven

Report a problem with this skill