一键导入
bolta-job-execute
Documentation of V2 execution engine - how jobs fire and agents reason through tasks (NOT a callable tool)
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Documentation of V2 execution engine - how jobs fire and agents reason through tasks (NOT a callable tool)
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Activate a paused job after preview and voice validation - the explicit trust moment where user says "yes, start posting"
Modify an existing agent's configuration including persona, model tier, enabled skills, and job settings
Create and onboard a new AI agent teammate from marketplace presets with conversational discovery and preview generation.
Store and retrieve information across job runs - how agents learn and improve over time
Handle @mention interactions where users ask agents for quick feedback on posts and drafts
Bolta Skills Registry - canonical index and orchestration layer for all Bolta skills, organized by plane
| name | bolta.job.execute |
| version | 2.0.0 |
| description | Documentation of V2 execution engine - how jobs fire and agents reason through tasks (NOT a callable tool) |
| category | agent |
| type | documentation |
| roles_allowed | [] |
| agent_types | [] |
| tools_required | [] |
| inputs_schema | {"type":"object","description":"This is system documentation, not a callable skill","properties":{}} |
| outputs_schema | {"type":"object","description":"This is system documentation, not a callable skill","properties":{}} |
| organization | bolta.ai |
| author | Bolta Team |
Document how the V2 execution engine works — the core system that powers agentic job execution. This is not a skill agents call, but documentation for developers and users.
A Job connects:
When a job fires:
class Job:
agent = ForeignKey(Agent) # Which agent executes this
name = CharField() # Human-readable job name
voice_profile_id = UUIDField() # Voice to use
account_ids = JSONField() # Social accounts to target
schedule = JSONField() # Cron expression
trigger = CharField() # "scheduled" | "manual" | "event"
status = CharField() # "active" | "paused" | "failed"
run_instructions = TextField() # Natural language task brief
Key insight: run_instructions is a BRIEF, not a script. The agent reads it and decides its own path.
Celery Beat (every 60s)
→ Query: Jobs WHERE status='active' AND next_run <= now()
→ For each due job: Create Run object, spawn Celery task
Worker picks up task:
→ Acquire Postgres advisory lock (prevent concurrent posts to same account)
→ Load agent, job, voice profile, account
→ Build initial message with task brief
→ Call execute_claude(agent, messages, mode="job")
Agent reasoning loop:
→ Read task brief
→ Recall memory
→ Call tools (get_voice_profile, list_recent_posts, draft_post, etc.)
→ Return output
Run completes:
→ Update Run (status, tokens, cost, trace)
→ Release lock
→ Update Job (last_run, next_run)
→ Draft appears in Inbox
System prompt structure:
[Base Template for Agent Type]
→ Type-specific behavioral guidelines
[Persona]
→ User-editable personality
[Memory]
→ What agent has learned over time
[Runtime Context]
→ Current task brief
→ Available tools
This context makes the agent intelligent.
By agent type:
By agent role:
Runtime validation:
The balance: Agent has creative freedom within safety constraints.
{
"run_id": "uuid",
"status": "completed",
"total_tokens": 4523,
"cost_usd": 0.087,
"trace": [
{
"turn": 1,
"thinking": "I need to check recent posts first...",
"tool_calls": [
{"tool": "bolta.list_recent_posts", "input": {...}, "output": {...}},
{"tool": "bolta.get_voice_profile", "input": {...}, "output": {...}}
]
},
{
"turn": 2,
"thinking": "Now I'll draft the post...",
"tool_calls": [
{"tool": "bolta.draft_post", "input": {...}, "output": {...}}
]
}
]
}
This shows how the agent reasoned, which tools it chose, and in what order — essential for debugging.
| Aspect | V1 (RecurringTemplates) | V2 (Job Execution) |
|---|---|---|
| Execution | Template fill → post | Agent reasoning → tools → output |
| Flexibility | Fixed pipeline | Agent chooses path |
| Learning | Static template | Memory accumulation |
| Adaptation | Manual template edits | Agents adapt based on performance |
| Intelligence | Regex-level | LLM reasoning |