Skip to main content
skill CX Codex

keeping-one-source-of-truth — Claude Code skill for single source

An agent skill that keeps each fact in exactly one place and stops copies from drifting apart. Useful the moment a value begs to be pasted elsewhere.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add riekelt/principal-engineer --skill keeping-one-source-of-truth -a claude-code
Open on GitHub

What keeping-one-source-of-truth does

The skill encodes a rule: every fact about the system has one owner, and the rest of the code reads it there. Its trigger is the moment copying a value feels faster than pointing at the source, or when two copies already disagree.

Seven points make up the doctrine. First, find whoever owns the data and extend that owner instead of starting a rival. Derive the value at read time when the platform or an existing source can answer, and fold in duplicates you pass on the way. A missing entry must fail loud rather than fall back to a silent default. Generated artifacts are marked as such and never hand-edited. Identifiers and states that code branches on are constants or enums, not free strings. When two sources conflict, the skill says to surface the contradiction first, establish which value is live, collapse to one source and delete the loser. Do not quietly follow whichever one you read first — that cements the error.

The skill lists principal-engineering as required background. Caches and read models are allowed as derived copies when the refresh is automatic and staleness stays bounded and visible; fixtures may freeze a copy of reality on purpose. Without the base skill in place, references in the text lead nowhere.

What it helps with

  • locate the existing owner before adding a new field
  • read a value from the platform instead of keeping a second copy
  • merge a duplicate found while editing old code
  • turn string identifiers into constants or enums
  • settle a conflict between two sources and keep one

Example prompts for the agent

  • I'm about to add a timeout limit to the config — check who already owns that value instead of creating a second one
  • settings.py and service.yaml disagree on the retry threshold: work out which value is live and leave one source
  • Replace the status strings in both services with a shared enum type

How to install keeping-one-source-of-truth

1Skills CLI (Vercel)

npx skills add riekelt/principal-engineer --skill keeping-one-source-of-truth -a claude-code

2Manually: put the files in place

~/.claude/skills/keeping-one-source-of-truth/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/keeping-one-source-of-truth/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about keeping-one-source-of-truth

How do I install keeping-one-source-of-truth in Claude Code?

Run npx skills add riekelt/principal-engineer --skill keeping-one-source-of-truth -a claude-code. The skill file lands at ~/.claude/skills/keeping-one-source-of-truth/SKILL.md.

What does keeping-one-source-of-truth do?

It gives the agent a doctrine: one owner per fact, derive instead of store, fold duplicates, and report conflicting sources out loud.

What does the skill need to work?

The principal-engineering skill from the same repository, which it names as required background.

Similar skills

All skills for Agent setup: memory, context, orchestration →

From the same set5

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor