feat: integrate Gemini AI, free media engines, asynchronous task tracker, and PM2 auto-boot daemon#6
Open
randykaskuser wants to merge 10 commits into
Open
feat: integrate Gemini AI, free media engines, asynchronous task tracker, and PM2 auto-boot daemon#6randykaskuser wants to merge 10 commits into
randykaskuser wants to merge 10 commits into
Conversation
added 10 commits
May 26, 2026 23:39
…ver auto-boot deployment
…y title generation
…tation, move lazy requires, add path traversal protection
…t() and array.at()
…), eliminate last bracket notation with Object.fromEntries
…add contributing guidelines and issue tracker
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This pull request transitions the YouTube Automation Agent from a synchronous, OpenAI-dependent local runner into a production-ready, 24/7 background-daemonized platform. By introducing Google Gemini, free community media generation tools, asynchronous task tracking, and a glassmorphic real-time dashboard, the system can now run continuously on a remote VPS without risk of browser request timeouts or active client shutdowns.
🛠️ Summary of Changes
1. 🤖 Gemini AI & Free Content Engine Integration
utils/credential-manager.js): Updated to allow server initialization and startup if eitheropenaiorgeminikeys are defined in the environment.agents/script-writer-agent.js): Integratedgemini-2.5-flashto write rich, creative Indonesian children's stories tailored for the@ceritaku.singkatchannel strategy.utils/ai-video-generator.js):image.pollinations.ai.fluent-ffmpeg.test-gemini-flow.js): Created a standalone flow verification utility to validate Gemini responses, illustration downloads, and TTS assembly without running the full dashboard server.2. ⚡ Non-Blocking Asynchronous Pipeline
index.js):/generateinto a non-blocking asynchronous endpoint that starts the process in a background worker and returns200 OKinstantly to prevent HTTP timeouts./generation-statuspolling endpoint to report progress, current pipeline stage, logs, and estimated remaining duration./healthto support dashboard health checks.3. 🎨 Premium Glassmorphic Dashboard
dashboard/index.html):ReferenceError: process is not definedcrash by retrieving platform uptime from/health..loadingclasses to resolve card content overlap bugs.4. 🚀 VPS Daemonization & Uptime
ecosystem.config.js): Added a production PM2 config to run the service as a background daemon with an automatic memory restart threshold at1GB.package.json,package-lock.json): Added required utility libraries to handle text-to-speech downloads, folder sanitization, and concurrent execution.5. 🔒 Security & Bloat Prevention
.gitignore): Added/data/and related directories to ensure dynamic assets (temporary image downloads, JSON files, output MP4 videos) and credential key backups are never committed or exposed..env.example,README.md): Configured clear setup guides, missing variable examples, and deployment documentation to assist with manual configuration on fresh systems.🚦 Verification Status
test-gemini-flow.js):Successfully tested script drafting, Pollinations cartoon download, and audio concatenation with zero errors.
/generation-status):Verified that status endpoints return detailed JSON payloads mapping active sub-agent states:
{ "status": "generating", "currentStep": "Generating visual illustrations and synthesizing audio narration...", "steps": { "strategy": "completed", "script": "completed", "thumbnail": "completed", "seo": "completed", "production": "processing" }, "estimatedSecondsRemaining": 115 }