File size: 5,644 Bytes
345855e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
"""
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,
        },
    ],
}