
Dark Factory Experiment
https://github.com/coleam00/dark-factory-experiment- Category
- AI Tools
- Rank
- No. 1934Tools index
- Pricing
- Open Source
- Type
- APP
- Builder
- coleam00
- GitHub
- 150 stars
- Date
About
AI chat app for conversational RAG over YouTube video transcripts.
What it does
This is primarily an experiment in autonomous software delivery. Humans file issues and promote releases, while scheduled agent workflows triage requests, implement changes, run tests, review pull requests, attempt fixes, and merge approved work. GitHub labels hold workflow state. The resulting application searches video transcripts and streams answers with timestamped citations.
Why it's ranked here
The project is compelling because its autonomy has explicit boundaries. Independent validation ignores the implementation plan, protected governance and security areas reject automated edits, and deterministic dispatch replaces model judgment for scheduling. It also exposes the experiment through a substantial working product. However, a critical orchestration component lives outside the repository, limiting reproducibility from this source alone.
What's good
The factory design turns useful safety ideas into enforceable mechanics. Agents cannot rewrite their governing rules. Review uses fresh context and checks results against the original issue. Per-node budgets and intake limits constrain cost and abuse. The application also combines keyword and vector retrieval, preserves transcript timestamps, streams responses, and protects user-scoped data with authentication.
Tradeoffs
This is not full specification-to-production autonomy. Humans still create issues and promote releases. The external cron dispatcher is required but absent from the repository. Running the application needs Python, Bun, Postgres with vector support, and paid external services for models, embeddings, and transcript retrieval. Channel synchronization is synchronous and sequential, so callers may need long request timeouts.
How to use it well
Study it when designing an agent-managed engineering pipeline, especially if you want concrete patterns for holdout review, immutable governance, label-based state, bounded retries, and deterministic scheduling. The included application provides a realistic test bed for those ideas. Do not treat it as a self-contained factory distribution, an offline transcript tool, or a database-free starter.
Technical notes+
README.md defines the Archon workflow model, label state machine, protected perimeter, mixed Python and Bun validation, and the external /opt/dark-factory/orchestrator.sh. docs/API.md documents the session-authenticated HTTP API and SSE message stream. app/backend/main.py runs Alembic migrations, initializes Postgres, registers FastAPI routers, and optionally serves the built SPA. app/backend/config.py requires DATABASE_URL and configures OpenRouter, Supadata, retrieval, and model settings. app/backend/rag/tools.py exposes hybrid, keyword, semantic, and full-transcript retrieval to the model. app/backend/rate_limit.py and app/backend/signup_rate_limit.py use Postgres advisory locks for race-safe quotas. app/frontend/src/App.tsx defines authenticated chat, conversation, signup, login, and admin routes. app/frontend/vite.config.ts proxies /api to FastAPI, while app/frontend/vitest.config.ts configures jsdom tests.
Observed
- Primary languages
- Python backend and TypeScript React frontend
- Interfaces
- Browser application and session-authenticated FastAPI HTTP API with Server-Sent Events
- Install surface
- Requires Python 3.11+, uv, Bun, Postgres 16+ with pgvector, and an OpenRouter API key
- Application stack
- FastAPI, React 18, Vite, Tailwind CSS, asyncpg, Postgres full-text search, and pgvector
- Factory structure
- Archon workflows handle triage, implementation, validation, regression testing, and merging through GitHub state
- Repository boundary
- The cron-driven bash orchestrator is explicitly not included in the repository
- Testing surface
- Documented validation includes ruff, mypy, pytest, TypeScript checking, Biome, Vitest, and browser scenarios
Read from README.md, docs/API.md, scripts/transcribe_all.py, app/backend/main.py, app/backend/config.py, app/backend/rate_limit.py, app/frontend/vite.config.ts, app/frontend/vitest.config.ts, app/frontend/postcss.config.js, app/frontend/tailwind.config.js, app/backend/signup_rate_limit.py, app/frontend/src/App.tsx, app/backend/data/seed.py, app/backend/rag/tools.py.
What it can do
Extract transcripts from YouTube videos
YouTube video URL → Video transcript text
Answer questions about YouTube video content
Natural language question and video transcript → AI-generated answer based on video content
Search for specific information within video transcripts
Search query and video transcript → Relevant transcript segments and timestamps
Summarize YouTube video content
Video transcript → Summary of key points from the video
Enable conversational dialogue about video topics
Follow-up questions and previous chat context → Contextual responses maintaining conversation flow
Provide citations from video content
User query about video information → Answer with specific references to transcript locations
Tags
Tech Stack
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.