studio / core /registry /tasks_registry.py
Ava2lon's picture
Upload 170 files
345855e verified
Raw
History Blame Contribute Delete
5.64 kB
"""
BASYX V11 — Dynamic Task Registry
---------------------------------
Single Source Of Truth for:
• UI generation
• API routes
• Executor routing
• Documentation builder
• Autonomous Brain planning
"""
# =========================================================
# ANALYSIS TASKS
# =========================================================
from publisher.tasks.transcribe import run as transcribe
from publisher.tasks.subtitles import run as subtitles
from publisher.tasks.highlights import run as highlights
from publisher.tasks.viral_score import run as viral_score
from publisher.tasks.strategy import run as strategy
# =========================================================
# RENDER TASKS
# =========================================================
from publisher.tasks.render import run as render
from publisher.tasks.generate_thumbnail import run as generate_thumbnail
from publisher.tasks.generate_metadata import run as generate_metadata
# =========================================================
# PUBLISH TASKS
# =========================================================
from publisher.tasks.publish_tiktok import run as publish_tiktok
from publisher.tasks.publish_youtube import run as publish_youtube
from publisher.tasks.publish_instagram import run as publish_instagram
# =========================================================
# SYSTEM TASKS
# =========================================================
from publisher.tasks.batch_runner import run as batch_runner
from publisher.tasks.autonomous_mode import run as autonomous_mode
# =========================================================
# TASK REGISTRY
# =========================================================
TASKS = {
# -----------------------------------------------------
# ANALYSIS
# -----------------------------------------------------
"analysis": [
{
"id": "transcribe",
"name": "Transcribe",
"description": "Generate transcript from video/audio",
"inputs": ["file", "url_input"],
"output": "json",
"handler": transcribe,
},
{
"id": "subtitles",
"name": "Subtitles",
"description": "Generate SRT subtitles",
"inputs": ["file", "url_input"],
"output": "file",
"handler": subtitles,
},
{
"id": "highlights",
"name": "Highlights",
"description": "Detect viral highlight segments",
"inputs": ["file"],
"output": "json",
"handler": highlights,
},
{
"id": "viral-score",
"name": "Viral Score",
"description": "AI virality prediction",
"inputs": ["file"],
"output": "json",
"handler": viral_score,
},
{
"id": "strategy",
"name": "Strategy",
"description": "Content strategy generation",
"inputs": ["file"],
"output": "json",
"handler": strategy,
},
],
# -----------------------------------------------------
# RENDER
# -----------------------------------------------------
"render": [
{
"id": "render",
"name": "Render Video",
"description": "Render final short-form video",
"inputs": ["file", "url_input"],
"output": "video",
"video_output": True,
"handler": render,
},
{
"id": "generate-thumbnail",
"name": "Thumbnail",
"description": "Generate AI thumbnail",
"inputs": ["file"],
"output": "image",
"handler": generate_thumbnail,
},
{
"id": "generate-metadata",
"name": "Metadata",
"description": "Generate captions, hashtags, titles",
"inputs": ["file"],
"output": "json",
"handler": generate_metadata,
},
],
# -----------------------------------------------------
# PUBLISH
# -----------------------------------------------------
"publish": [
{
"id": "publish-tiktok",
"name": "Publish TikTok",
"description": "Upload video to TikTok",
"inputs": ["file"],
"output": "json",
"handler": publish_tiktok,
},
{
"id": "publish-youtube",
"name": "Publish YouTube",
"description": "Upload YouTube Short",
"inputs": ["file"],
"output": "json",
"handler": publish_youtube,
},
{
"id": "publish-instagram",
"name": "Publish Instagram",
"description": "Upload Instagram Reel",
"inputs": ["file"],
"output": "json",
"handler": publish_instagram,
},
],
# -----------------------------------------------------
# SYSTEM
# -----------------------------------------------------
"system": [
{
"id": "batch",
"name": "Batch Processor",
"description": "Execute batch pipeline",
"inputs": [],
"output": "json",
"handler": batch_runner,
},
{
"id": "autonomous",
"name": "Autonomous Mode",
"description": "Start autonomous AI publisher",
"inputs": [],
"output": "json",
"handler": autonomous_mode,
},
],
}