All checks were successful
Stuffle/personal-learn/pipeline/head This commit looks good
▶ video button expands a player panel directly below the card: - Vimeo (player.vimeo.com): iframe embed - YouTube: iframe embed - Direct MP4 / local file: <video> element Click ▶ video to open, ✕ close (or click again) to dismiss. Playback stops on close (iframe src reset, video.pause()). No external navigation — user stays on the catalogue page. Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
personal-learn
Content server + thin KB demo UI backing a "talk to my course content" POC on the agOS platform.
- Serves the normalized Futurense GenAI corpus (transcripts, slides, notebooks,
docs) as provenance-rich HTML under
/kb/...— the artifacts agOS url-ingestion fetches. - Serves original media under
/files/...(videos/PDFs) for deep-linking (mounted separately; not baked into the image). /— demo UI: ask-your-content with ▶ video-timestamp / page deep-links./api/ask— server-side proxy to the agOS corpus query API.
Pipeline
build_corpus.py # normalize ~/futurense_courses -> _kb_corpus/ (+ catalog.json)
server.py # FastAPI content server + demo UI + agOS proxy
ingest.py # create agOS corpus + one url source per artifact (checkpointed)
Normalized artifacts carry inline provenance markers that survive agOS chunking:
[HH:MM:SS] (→ video #t=), [page N] (→ pdf #page=), [cell N].
Deploy
GitOps: Jenkins (kaniko) builds harbor.armco.dev/library/personal-learn,
Argo syncs products/personal-learn, served at personal-learn.armco.dev.
Env: KB_ROOT, AGOS_BASE, AGOS_CORPUS_ID, AGOS_TOKEN, PORT.
Description
Languages
HTML
99.7%
Python
0.3%