Inspiration

Every family has a box of old photos, a drawer of letters, and a relative who tells stories that don't quite match. My own family has decades of unsorted media on hard drives — photos without labels, scanned letters with conflicting dates, voice recordings of grandparents whose stories sometimes contradict each other. I wanted a way to turn that chaos into a single, trustworthy family record — without losing the messy, human details that make it real.

What it does

Legacy Guardian scans family photos, documents, and voice recordings stored on a UGREEN NAS. It extracts people, places, dates, and factual claims from every source, then cross-checks them all against each other using its Contradiction Radar. When it finds conflicts — say, a letter that says "1989" but a photo's EXIF data says "1992" — it presents them as Conflict Cards for the user to resolve. Once resolved, it generates a Legacy Book PDF: a verified family timeline with a people index, resolved conflicts appendix, and a full evidence trail linking every statement back to its source. Originals are never moved or deleted.

How we built it

The Skill is built as a pure Markdown orchestration package following the UGOS uliya-skill-kit 0.7.3 standard. It delegates work to five NAS expert agents: file-agent (via ug-filesystem and ug-filemgr) for file inventory and output structure, photo-agent (via ug-photo) for EXIF and face extraction, document-agent (via ug-document) for text extraction and PDF generation, and knowledge-agent (via ug-knowledge) for speech transcription and knowledge-base storage. The contradiction detection logic is the Skill's own reasoning layer — no external APIs or cloud services needed. All processing stays on-NAS.

Challenges we ran into

The biggest challenge was understanding the UGOS Skill format — the official Starter Kit uses a specific section naming convention that differs from what community examples show. Getting the static checker to zero errors required matching exact heading names (Generation-time capability evidence, Orchestration) and using the precise capability evidence format with backtick-wrapped CLI names and Unicode arrows. Another challenge was designing the contradiction detection to be useful without being noisy — balancing sensitivity (catch real conflicts) with specificity (don't flag every ambiguity as a problem).

Accomplishments that we're proud of

The package passes the official uliya-skill-kit static checker with zero errors. The Contradiction Radar concept is genuinely novel — no existing NAS tool cross-checks facts across photos, documents, and audio to catch conflicting claims. The five-pass architecture cleanly separates concerns, and every write operation requires explicit user approval, so the Skill can never accidentally damage the family archive.

What we learned

We learned the full UGOS Skill development lifecycle: capability catalog lookup, expert delegation patterns, approval boundaries, and static validation. We also learned that family data is messy in ways that are hard to anticipate — mixed languages, dates in different calendars, the same person known by different names across decades, and photos with no metadata at all. Designing for these edge cases made the Skill much more robust.

What's next for Legacy Guardian

Round 2: runtime testing on actual UGREEN NAS hardware, building the demo video, and stress-testing with large archives (10,000+ files). Future plans include multi-language timeline support (Sinhala and English side by side), collaborative family editing where multiple family members can contribute resolutions, and integration with the NAS surveillance agent for automatic identification of people in home security footage.

Built With

Share this project:

Updates

Submission history