Inspiration
I wanted to get some information from an old project I made two years ago, It was a project made in nodejs, and after that I pivoted, so I needed to compare my other project on particular test. However, other than remembering the code, i had trouble finding the real project itself.
Most of us don't remember files by name. We remember "a picture project from May 2022." Normal search can't use that kind of memory, so finished work stays lost on our own drives.
What it does
Digital Archaeologist is an AI Skill for UGREEN AI NAS. You describe a lost project in your own words, and it finds the project, reconstructs its versions, and helps you recover it safely.
- Understands messy memories. A semantic clue translator splits whatever you type into structured clues: name words, file type, time period, phrases inside the file, what it looked like, and whether you deleted it. It works even if you typed into the "wrong" field.
- Searches only where you allow. Only the folders you authorize, plus the recycle bin.
- Treats any size as a project. A single PSD counts as much as a 50-file manuscript.
- Reconstructs versions. Builds a version chain (v1 → v2 → final → exports) and marks duplicates and deleted copies.
- Recovers safely. It's read-only until you approve. Restore, copy and save each need your confirmation, and originals are never moved, deleted or overwritten.
The result is an Excavation Report: the clues it used, the files it found, the version chain, the best file to resume from, at-risk files, and a recovery plan.
How I built it
- Built with UGREEN's Uliya Skill Developer Package. A Skill is pure Markdown: one
SKILL.mdplus reference files. No scripts. - The Skill orchestrates four NAS experts using
delegateonly:file-agent(search, recycle bin, checksums, copy),document-agent(document summaries),photo-agent(text in images, image descriptions) andknowledge-agent(content search, saving the report). - I checked every step against the capability catalog before writing it. For example, I avoided the photo timeline action because the catalog marks it as a state change.
- Clue translation and ranking follow written rules in
references/clue-translation.md, so the behavior is consistent and reviewable. - AI tools: I used Claude (Anthropic) to analyze the catalog and checker, pressure-test my scope, and draft text, and Claude Code to generate the files and run the kit's static checker. The concept, design decisions and testing are mine.
Challenges I ran into
- No NAS to develop on. I'm validating with the official static checker and with simulated expert responses, and saving real-device testing for the finalist round.
- The checker is stricter than the docs. Exact heading names, a specific evidence format, and banned placeholder words all had to be discovered from the checker's source code.
- "Restore old versions" wasn't possible as I first imagined it. The catalog has no snapshot capability, so I redefined recovery as recycle-bin restore plus version-chain reconstruction, and state that limit openly.
- Real projects aren't folders. My first definition required 5+ files, and a single PSD broke it. I switched to defining a project by the user's clues.
- Test data loses its history. Uploaded files can get new modified dates, so timelines also use dates inside documents and photo capture dates.
What I learned
- A good Skill is mostly clear boundaries: what it searches, what it never touches, and when it stops and asks.
- Designing for failure states (
waiting_approval, partial results, no results) matters as much as the happy path. - Stating limits honestly makes the product more trustworthy, not weaker.
What's next
- Validate on a real UGREEN AI NAS: recycle-bin access, PSD indexing, ranking accuracy.
- A "dormant project scan" mode that surfaces forgotten work without needing clues.
- Snapshot-aware recovery, if UGOS exposes snapshots to Skills.