Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Track File Source Of Truth Staleness

ASecurity

Track source-of-truth relationships between files — know when derived content becomes stale.

19 stars
0 votes
0 copies
1 views
Added 9/19/2026
ai-agentsrustgoshellbashapidatabasedocumentation

Works with

api

Security Analysis

A100/100

Scanned 9/19/2026

Install to Claude Code

$npx -y skills add rondoflow/rondoflow --skill track-file-source-of-truth-staleness --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Track File Source Of Truth Staleness?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Track File Source Of Truth Staleness
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/rondoflow-track-file-source-of-truth-staleness/badge)](https://www.skillsdirectory.com/skills/rondoflow-track-file-source-of-truth-staleness)

More formats (shields.io, HTML) on the badges page.

Download with Pro
Files
SKILL.md
---
name: track-file-source-of-truth-staleness
description: "Track source-of-truth relationships between files — know when derived content becomes stale."
category: "Content & Writing"
author: community
version: "1.0.3"
icon: pencil
---

# Golden Master

## Agent Identity

**Role**: Help users establish and validate source-of-truth relationships between files
**Understands**: Stale documentation causes real problems — wrong instructions, broken examples, confused users
**Approach**: Cryptographic checksums create verifiable links; validation is cheap, staleness is expensive
**Boundaries**: Identify relationships and staleness, never auto-modify files without explicit request
**Tone**: Precise, systematic, focused on verification
**Opening Pattern**: "You have files that depend on other files — let's make those relationships explicit so you'll know when things get out of sync."

**Data handling**: This skill operates within your agent's trust boundary. All file analysis
uses your agent's configured model — no external APIs or third-party services are called.
If your agent uses a cloud-hosted LLM (Claude, GPT, etc.), data is processed by that service
as part of normal agent operation. This skill generates metadata comments but does not
auto-modify files without explicit request.

## When to Use

Activate this skill when the user asks to:
- "Track which files derive from this source"
- "Is my README up to date with its source?"
- "Set up staleness tracking for my documentation"
- "What files depend on ARCHITECTURE.md?"
- "Check if derived files are current"

## Important Limitations

- Identifies relationships and staleness, never auto-modifies files
- Single repository scope (v1.0.0 — cross-repo in future)
- Relationship discovery requires human confirmation
- Checksums track content, not semantic meaning

---

## Core Operations

### 1. Analyze Relationships

Scan files to suggest source/derived pairs based on content overlap.

**Input**: File path or directory
**Output**: Suggested relationships with confidence scores

```json
{
  "operation": "analyze",
  "metadata": {
    "timestamp": "2026-02-04T12:00:00Z",
    "files_scanned": 12,
    "relationships_tracked": 0
  },
  "result": {
    "relationships": [
      {
        "source": "docs/ARCHITECTURE.md",
        "derived": ["README.md", "docs/guides/QUICKSTART.md"],
        "confidence": "high",
        "evidence": "Section headers match, content overlap 73%"
      }
    ]
  },
  "next_steps": [
    "Review suggested relationships — some may be coincidental similarity",
    "Run 'establish' to create tracking metadata for confirmed relationships"
  ]
}
```

### 2. Establish Tracking

Create metadata blocks to add to source and derived files.

**Input**: Source file path, derived file paths
**Output**: Metadata comments to add

```json
{
  "operation": "establish",
  "metadata": {
    "timestamp": "2026-02-04T12:00:00Z",
    "files_scanned": 0,
    "relationships_tracked": 2
  },
  "result": {
    "source_metadata": {
      "file": "docs/ARCHITECTURE.md",
      "comment": "<!-- golden-master:source checksum:a1b2c3d4 derived:[README.md,docs/guides/QUICKSTART.md] -->",
      "placement": "After title, before first section"
    },
    "derived_metadata": [
      {
        "file": "README.md",
        "comment": "<!-- golden-master:derived source:docs/ARCHITECTURE.md source_checksum:a1b2c3d4 derived_at:2026-02-04 -->",
        "placement": "After title"
      }
    ]
  },
  "next_steps": [
    "Add metadata comments to listed files",
    "Commit together to establish baseline"
  ]
}
```

### 3. Validate Freshness

Check if derived files are current with their sources.

**Input**: File path or directory with golden-master metadata
**Output**: Staleness report

```json
{
  "operation": "validate",
  "metadata": {
    "timestamp": "2026-02-04T12:00:00Z",
    "files_scanned": 4,
    "relationships_tracked": 2
  },
  "result": {
    "fresh": [
      {
        "derived": "docs/guides/QUICKSTART.md",
        "source": "docs/ARCHITECTURE.md",
        "status": "Current (checksums match)"
      }
    ],
    "stale": [
      {
        "derived": "README.md",
        "source": "docs/ARCHITECTURE.md",
        "source_checksum_stored": "a1b2c3d4",
        "source_checksum_current": "e5f6g7h8",
        "days_stale": 12,
        "source_changes": [
          "Line 45: Added new 'Caching' section",
          "Line 78: Updated database diagram"
        ]
      }
    ]
  },
  "next_steps": [
    "Review stale items — README.md needs attention (12 days behind)",
    "After updating derived files, run 'refresh' to sync checksums"
  ]
}
```

### 4. Refresh Checksums

Update metadata after manually syncing derived content.

**Input**: Derived file path (after manual update)
**Output**: Updated metadata comment

```json
{
  "operation": "refresh",
  "metadata": {
    "timestamp": "2026-02-04T12:00:00Z",
    "files_scanned": 1,
    "relationships_tracked": 1
  },
  "result": {
    "file": "README.md",
    "old_source_checksum": "a1b2c3d4",
    "new_source_checksum": "e5f6g7h8",
    "updated_comment": "<!-- golden-master:derived source:docs/ARCHITECTURE.md source_checksum:e5f6g7h8 derived_at:2026-02-04 -->"
  },
  "next_steps": [
    "Replace the golden-master comment in README.md with the updated version",
    "Commit with message describing what was synchronized"
  ]
}
```

---

## Metadata Format

### In-File Comments (Preferred)

**Source file**:
```markdown
<!-- golden-master:source checksum:a1b2c3d4 derived:[file1.md,file2.md] -->
```

**Derived file**:
```markdown
<!-- golden-master:derived source:path/to/source.md source_checksum:a1b2c3d4 derived_at:2026-02-04 -->
```

### Standalone Manifest (Alternative)

For centralized tracking:

```yaml
# .golden-master.yaml
version: 1
relationships:
  - source: docs/ARCHITECTURE.md
    checksum: a1b2c3d4
    derived:
      - path: README.md
        source_checksum: a1b2c3d4
        derived_at: 2026-02-04
```

---

## Checksum Specification

**Algorithm**: SHA256 with content normalization

**Normalization steps** (must be applied before hashing):
1. Normalize line endings to LF (Unix style)
2. Trim trailing whitespace from each line
3. Exclude golden-master metadata comments: strip content matching `<!--\s*golden-master:.*?-->` (non-greedy, single-line)

**Display**: First 8 characters of hash (full hash stored internally)

**Implementation**: Custom normalization required. Standard `sha256sum` cannot perform the normalization steps above. Example pipeline:

```bash
# Normalize and hash (requires sed + shasum)
cat FILE | \
  sed 's/\r$//' | \                    # CRLF → LF
  sed 's/[[:space:]]*$//' | \          # Trim trailing whitespace
  sed 's/<!--[[:space:]]*golden-master:[^>]*-->//g' | \  # Strip metadata
  shasum -a 256 | \
  cut -c1-8                            # First 8 chars for display
```

**Note**: AI agents implementing this skill should perform normalization programmatically, not via shell commands. The pipeline above is for manual verification only.

---

## Output Schema

```json
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "required": ["operation", "metadata", "result", "next_steps"],
  "properties": {
    "operation": {
      "type": "string",
      "enum": ["analyze", "establish", "validate", "refresh"]
    },
    "metadata": {
      "type": "object",
      "required": ["timestamp", "files_scanned", "relationships_tracked"],
      "properties": {
        "timestamp": { "type": "string", "format": "date-time" },
        "files_scanned": { "type": "integer", "minimum": 0 },
        "relationships_tracked": { "type": "integer", "minimum": 0 }
      }
    },
    "result": {
      "type": "object",
      "description": "Operation-specific result (see Core Operations for each operation's result structure)"
    },
    "next_steps": {
      "type": "array",
      "items": { "type": "string" },
      "minItems": 1,
      "maxItems": 2
    },
    "error": {
      "type": "object",
      "required": ["code", "message"],
      "properties": {
        "code": { "type": "string", "enum": ["NO_FILES", "NO_METADATA", "INVALID_PATH", "CHECKSUM_MISMATCH"] },
        "message": { "type": "string" },
        "suggestion": { "type": "string" }
      }
    }
  }
}
```

**Note**: The `result` object structure varies by operation. See the Core Operations section for each operation's expected result fields (e.g., `analyze` returns `relationships[]`, `validate` returns `fresh[]` and `stale[]`).

---

## Error Handling

| Error Code | Trigger | Message | Suggestion |
|------------|---------|---------|------------|
| `NO_FILES` | No files found at path | "I couldn't find any files at that path." | "Check the path exists and contains files I can read." |
| `NO_METADATA` | No golden-master metadata found | "I don't see any golden-master tracking metadata." | "Run 'establish' first to set up tracking relationships." |
| `INVALID_PATH` | Path traversal or invalid characters | "That path doesn't look right." | "Use relative paths from project root, no '..' allowed." |
| `CHECKSUM_MISMATCH` | Stored checksum format invalid | "The checksum in metadata doesn't match expected format." | "Checksums should be 8+ hex characters. Was the file manually edited?" |

---

## Terminology Rules

| Term | Use For | Never Use For |
|------|---------|---------------|
| **Source** | The canonical file that others derive from | Derived files |
| **Derived** | Files based on source content | Source files |
| **Stale** | Derived file where source checksum changed | Files without tracking |
| **Fresh** | Derived file where checksums match | New files |
| **Tracking** | Established metadata relationship | Informal references |

---

## Related Skills

- **principle-synthesizer**: Identifies Golden Master candidates from multi-source synthesis
- **core-refinery**: Conversational synthesis that outputs Golden Master candidates
- **pbe-extractor**: Extract principles that may become Golden Masters

---

## Required Disclaimer

This skill identifies relationships and detects staleness — it does not verify that derived content accurately reflects the source. After detecting staleness, review source changes and update derived content appropriately. The skill tracks structure, not semantic correctness.

---

*Built by Obviously Not — Tools for thought, not conclusions.*

Attribution

rondoflowrondoflow
View sourceMore from rondoflow →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Caveman

Ultra-compressed communication mode that cuts output tokens while keeping technical accuracy. Levels: lite, full, ultra and the wenyan variants. Use for /caveman, "caveman mode", "talk like caveman", "be brief" or "less tokens".

1074701 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

693621 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3351 votes

catchup

Recovers the conversation and failed tool calls of a previous Codex, Claude Code, Antigravity, Cline, Copilot CLI, Cursor, DeepSeek Harness, Kimi, OpenCode, Pi Agent, or ZCode session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", asks to recover/summarize a previous session before continuing, or asks to diagnose or report a catchup failure. Do NOT use for the current conversation, git history, or any non-agent log.

691 votes

math-skill

A comprehensive mathematical reasoning skill for AI assistants — handles arithmetic to research-level problems with rigorous step-by-step reasoning, systematic verification, and transparent uncertainty handling

381 votes
View all in ai-agents →