Skip to content
Agentmart
Submit a tool

custodian

Memory system custodian for health checks, validation, and maintenance.

Skill by modeled-information-format

IndexedMIT★ 23
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/modeled-information-format-custodian

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Memory system custodian for health checks, validation, and maintenance. Trigger phrases: "check memory health", "validate memories", "fix broken links", "update decay", "relocate memories", "audit memories", "memory maintenance", "custodian", "memory health"

Use cases: security

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found
Runs as
Python package

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/custodian
  • Your home directory (~)

What's inside

Skill name
custodian
Description
Memory system custodian for health checks, validation, and maintenance. Trigger phrases: "check memory health", "validate memories", "fix broken links", "update decay", "relocate memories", "audit memories", "memory maintenance", "custodian", "memory health"
License
MIT
Instructions
125 lines in SKILL.md · view on GitHub

Before installing

  • Ships executable scripts

Agent Skills spec issues

  • allowed-tools: must be a space-separated string

Files (9)

  • SKILL.md
  • __init__.py · lib/
  • custodian.py · lib/
  • decay.py · lib/
  • link_checker.py · lib/
  • memory_file.py · lib/
  • relocator.py · lib/
  • report.py · lib/
  • validators.py · lib/

SKILL.md (first lines)

<!-- BEGIN MNEMONIC PROTOCOL -->
## Memory

Search first: `/mnemonic:search {relevant_keywords}`
Capture after: `/mnemonic:capture {namespace} "{title}"`

Run `/mnemonic:list --namespaces` to see available namespaces from loaded ontologies.
<!-- END MNEMONIC PROTOCOL -->

# Custodian Skill

Provides custodial services for the mnemonic memory system: auditing, validation, link repair, decay management, relocation, and summarization.

## When to Use

- **Proactively** when session_start reports low health scores or potential duplicates
- **On request** when user asks about memory health, broken links, or maintenance
- **After project renames** to relocate memories and update references
- **Periodically** to keep decay scores current and identify orphaned memories

## Architecture

The custodian operates through focused Python modules:

| Module | Responsibility |
|--------|---------------|
| `memory_file.py` | Parse/validate/update MIF frontmatter |
| `link_checker.py` | Build UUID/slug index, validate links, find orphans |
| `decay.py` | Calculate exponential/linear/step decay, update strength |
| `relocator.py` | Move files + update all cross-references |
| `validators.py` | MIF schema validation, ontology relationship checks |
| `report.py` | Structured findings with markdown/JSON output |
| `custodian.py` | CLI orchestrator dispatching to modules |

## Subcommands

### audit (default)

Runs all checks in a single pass. This is the recommended entry point.

```
/mnemonic:custodian audit [--fix] [--dry-run]
```

Checks performed:
1. **Frontmatter**: Required fields, UUID format, type enum, date format
2. **Links**: Wiki-links resolve to existing memories
3. **Relationships**: Types match MIF built-in or ontology-defined types
4. **Decay**: Recalculates strength values using configured model
5. **Orphans**: Detects memories with no incoming references

### relocate

Moves memories when project or org names change:

```
/mnemonic:custodian relocate <old-path> <new-path> [--dry-run]
```

1. Builds link index across all memory roots
2. Updates path references in ALL memory files (not just relocated ones)
3. Moves files using `git mv` for history preservation
4. Cleans up empty directories

### validate-links

```
/mnemonic:custodian validate-links [--fix]
```

With `--fix`: broken `[[wiki-links]]` are replaced with plain text.

### decay

```
/mnemonic:custodian decay [--dry-run]
```

Updates `temporal.decay.currentStrength` (or `strength`) in-place.
Formula: `strength * 0.5^(days_since_access / half_life_days)`

### summarize

```
/mnemonic:custodian summarize
```

Identifies compression candidates (>100 lines, >30d old or strength < 0.3).
Delegate actual compression to `mnemonic:compression-worker` agent.

### ensure-bidirectional

```
/mnemonic:custodian ensure-bidirectional [--fix]
```

Scans all memory relationships and checks that each has a corresponding inverse
back-reference in the target. For example, if A `supersedes` B, B should have
`superseded-by` pointing back to A. Legacy spellings (`SupersededBy`,
`superseded_by`) and bare-UUID targets count as present; new back-references
are written in MIF 1.4.2 form (kebab-case type, `urn:mif:<uuid>` target, plus a
body `## Relationships` link).

Without `--fix`: reports missing back-references as warnings.
With `--fix`: auto-creates the missing inverse relationships.

### validate-memories / validate-relationships

Read-only validation. Reports errors without modifying files.

## Integration

- **Complements gc**: GC handles cleanup/archival; custodian handles validation/repair
- **Complements memory-curator**: Curator handles conflicts/deduplication; custodian handles schema/links/decay
- **Uses PathResolver**: Centralized path resolution from `lib/paths.py`
- **Uses compression-worker**: Delegates summarization to existing agent

## Key Design Decisions

- **Non-destructive by default**: `--dry-run` support on all mutation operations

From modeled-information-format/mnemonic, MIT.

More from modeled-information-format/mnemonic

Signals

Stars
23
Forks
5
Open issues
0
Last commit (this folder)
Oct 9, 2026 (20 days ago)
Last release
Oct 8, 2026 (20 days ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from modeled-information-format

Cite this page

custodian skill. Agent Mart. https://agentmart.dev/skills/modeled-information-format-custodian (last updated 2026-10-24)