Demo Recording Script¶
Purpose: 60-second conference-ready demo showing PikoClaw's complete extraction workflow.
Target: Panathenea 2026 — Athens, May 27–29
No dependencies: WiFi-free, runs locally, reproducible
Preparation (Before Recording)¶
1. Install PikoClaw¶
# Create a fresh virtual environment
python3 -m venv demo-env
source demo-env/bin/activate
# Install PikoClaw
pip install pikoclaw
# Verify installation
pikoclaw info
2. Download Test Data¶
Option A: Enron Dataset (Recommended for authenticity)
# Download the full Enron corpus (~400 MB compressed, ~1.3 GB extracted)
wget https://www.cs.cmu.edu/~enron/enron_mail_20150507.tar.gz
# Extract a single user's mailbox for the demo (smaller, faster)
tar -xzf enron_mail_20150507.tar.gz maildir/allen-p/
# This gives you ~1700 messages from Phillip Allen's mailbox
Option B: Synthetic Test Data (Faster download)
# Create a minimal maildir for testing
mkdir -p demo-maildir/{cur,new,tmp}
# Generate a few sample emails (you'll need to create these)
# Or use an existing personal MBOX export
Option C: Your Own Data
# Gmail Takeout: Download from https://takeout.google.com
# Select "Mail" only, MBOX format
# You'll get a file like "All mail Including Spam and Trash.mbox"
# Outlook PST: Export from Outlook via File → Open & Export → Import/Export
# Choose "Export to a file" → "Outlook Data File (.pst)"
3. Set Up Obsidian (Optional but Impressive)¶
# Download Obsidian: https://obsidian.md
# Create a new vault pointing to where you'll extract output
# This lets you show the wiki with live wikilinks in the demo
Demo Script (60 seconds)¶
Scene 1: The Problem (0:00–0:10)¶
Screen: Terminal with empty directory
Voiceover:
"When someone leaves your organization, their email doesn't have to leave with them. Let's extract institutional knowledge from this email archive."
Action:
Scene 2: The Command (0:10–0:20)¶
Screen: Terminal, typing the command
Voiceover:
"One command. That's it."
Action:
On-screen text overlay:
✓ Detected format: Maildir
✓ Processing 1,729 messages
✓ Building conversation threads
✓ Analyzing contact graph
✓ Generating wiki
Scene 3: The Output — Wiki (0:20–0:35)¶
Screen: Obsidian with the generated wiki open
Voiceover:
"You get a navigable wiki with conversation threads, contacts, and full-text search."
Action:
- Open allen-kb/wiki/index.md in Obsidian
- Click a wikilink to a contact: [[Phillip Allen]]
- Show the contact page with sent/received counts
- Click a thread: [[Thread: Q3 Budget Discussion]]
- Show the threaded conversation with participants and timeline
On-screen text overlay:
Scene 4: The Output — Network Graph (0:35–0:45)¶
Screen: Browser with graph.html open
Voiceover:
"Interactive force-directed graph shows who talked to whom, weighted by message count."
Action:
- Open allen-kb/graph.html in a browser
- Hover over a node to show tooltip with contact details
- Drag a node to show the force simulation
- Zoom in/out
On-screen text overlay:
Scene 5: The Output — Provenance (0:45–0:55)¶
Screen: Terminal, displaying provenance.json
Voiceover:
"Every extraction is auditable. SHA-256 source hash, tool version, warnings log."
Action:
Output:
{
"source_hash": "a3f5b8c...",
"tool_version": "0.5.0",
"extraction_timestamp": "2026-05-15T10:30:00Z",
"message_count": 1729,
"contact_count": 142,
"thread_count": 387,
"warnings": []
}
On-screen text overlay:
Scene 6: The Pitch (0:55–1:00)¶
Screen: Title card with repo and docs links
Voiceover:
"PikoClaw. Institutional knowledge extraction. MIT licensed. Try it today."
On-screen text:
Technical Details (Not in Video, But Good to Know)¶
Timing Breakdown¶
| Stage | Time | Notes |
|---|---|---|
| Problem intro | 10s | Show raw data, set context |
| Command execution | 10s | Type + run (may need to speed up processing in post) |
| Wiki navigation | 15s | Click through 2-3 pages in Obsidian |
| Graph visualization | 10s | Show interactive D3 graph |
| Provenance display | 10s | Display provenance.json |
| Closing CTA | 5s | Repo links |
Total: 60 seconds
Post-Production Tips¶
-
Speed up processing: If the extraction takes longer than 5-10 seconds on screen, use video editing to compress time with a "Processing..." overlay.
-
Smooth transitions: Fade between terminal, Obsidian, and browser windows. Avoid jarring cuts.
-
Annotations: Use text overlays to highlight key features (wikilinks, graph metrics, SHA-256 hash).
-
No audio needed: This script works as a silent demo with captions, or with a live voiceover during presentation.
-
Backup plan: Pre-render the output in case live extraction fails. Have
allen-kb/already generated in a backup directory.
Fallback: Slide Deck (If Demo Fails)¶
If live demo or video playback fails at the venue:
-
Slide 1: Problem statement — "Email archives are institutional memory waiting to be unlocked."
-
Slide 2: Command screenshot —
pikoclaw extract mailbox.pst -
Slide 3: Wiki screenshot in Obsidian with wikilinks visible
-
Slide 4: Graph visualization screenshot with clusters highlighted
-
Slide 5: Provenance JSON screenshot with SHA-256 hash circled
-
Slide 6: GitHub repo QR code + pip install command
Total slides: 6 (60 seconds = 10s/slide)
Checklist Before Recording¶
- [ ] Fresh Python virtual environment
- [ ]
pikoclaw infoshows version 0.5.0 or later - [ ] Test data downloaded and extracted (Enron or personal archive)
- [ ] Obsidian installed and vault configured
- [ ] Graph visualization loads in browser (check
graph.htmlopens) - [ ]
provenance.jsondisplays correctly withjq - [ ] Screen recording software ready (OBS, QuickTime, etc.)
- [ ] Clear terminal history (
clear) - [ ] Close unnecessary windows/notifications
- [ ] Test full workflow once before recording
Recording Settings¶
Resolution: 1920x1080 (Full HD)
Frame rate: 30 fps (60 fps if showing smooth graph interactions)
Audio: Optional voiceover or silent with captions
Length: 60 seconds ± 5 seconds
Format: MP4 (H.264 codec) for maximum compatibility
Alternative: Live Demo at Conference¶
If presenting live instead of pre-recorded video:
-
Have backup data: Pre-extracted output in case WiFi fails or extraction is slow.
-
Practice timing: Rehearse the full workflow to stay under 60 seconds.
-
Use presenter notes: Keep this script as a reference during the talk.
-
Show the command first: Type it out for the audience, then run it.
-
Fallback to slides: If anything breaks, switch to the slide deck (see above).
Post-Demo: Distribute Files¶
After the conference, share:
- Demo video: Upload to YouTube with captions
- Sample output:
allen-kb.zip(sanitized Enron extraction) on GitHub Releases - Instructions: Link to this script from the main README
Goal: Anyone should be able to reproduce the demo on their own machine in under 5 minutes.
Questions to Answer in Q&A¶
Q: How long does extraction take for large archives?
A: Enron corpus (~1.3 GB, ~500K messages) takes ~5-10 minutes on a modern laptop. Extraction is I/O-bound, not CPU-bound.
Q: Does it work on Windows?
A: Yes, but libpff installation for PST support can be tricky. We recommend Docker on Windows. Maildir/MBOX/EML/Slack work natively.
Q: Can I use this for GDPR compliance?
A: Yes. --redact flag scrubs PII. Provenance metadata provides chain of custody for audits.
Q: Does it send data anywhere?
A: No. Zero network dependencies. Air-gapped by default. No telemetry.
Q: What's the difference between PikoClaw and PicoClaw?
A: PicoClaw (Sipeed, 12K+ stars) is a lightweight edge AI agent. PikoClaw is its long-term memory layer — the institutional knowledge store that agents query.
Success Metrics¶
After the demo:
- Immediate: GitHub stars spike, docs site traffic increases
- Short-term: 3+ people run the demo and open issues/PRs
- Mid-term: Someone builds a PikoClaw + PicoClaw integration (§25 in roadmap)
- Long-term: Academic citation in a threading/knowledge extraction paper
Good luck! 🦀