Goal
Handle @mention interactions where users ask agents for quick feedback on posts/drafts. This is lightweight agent interaction with read-only tools for conversational feedback.
Which Agents Use This
- content_creator — Punch up hooks, suggest alternatives, provide creative feedback
- reviewer — Check brand compliance, voice profile matching, strategy alignment
- analytics — Provide performance context, timing suggestions, data insights
- engagement — Suggest engagement tactics, audience resonance predictions
- All agent types can provide their specialized perspective via @mentions
Hard Rules
- MUST use read-only mode (no write tools like approve, publish, edit)
- MUST provide post/draft context to agent
- MUST respond as comment (not edit directly)
- MUST NOT grant write access to mentioned agents
- Response time should be < 5 seconds
Steps
1. Parse mention
- Extract agent name from @mention in comment
- Identify which agent is being requested
- Load mention_comment_id to get user's specific question
2. Load context
bolta.get_post(post_id) → get full post content
- Load comment thread for context
- If content job:
bolta.get_voice_profile(voice_profile_id) for reference
3. Invoke agent in mention mode
- Set mode="mention" (read-only tools only)
- Provide context: post content, comment thread, user question
- Agent analyzes and formulates response
4. Post response
bolta.add_comment(post_id, response_text, reply_to=mention_comment_id)
- Response appears as threaded reply to original mention
5. Return confirmation
- Return comment_id and response_text
Output
{
"comment_id": "uuid",
"response_text": "This hook is generic. Try: 'We cut onboarding from 2 weeks to 2 days.'"
}
Failure Handling
- If agent_id not found: return error "Agent not found"
- If post_id not found: return error "Post not found"
- If agent response times out (> 10s): return "Agent is thinking... check back in a moment"
- If agent has no relevant context: agent responds "I don't have enough context to help with this"
Agent-Specific Behaviors
@HypeMan (Content Creator):
- Focuses on engagement, hooks, energy
- Example: "This hook is generic. Try: 'We cut onboarding from 2 weeks to 2 days.'"
@QABot (Reviewer):
- Focuses on brand compliance, voice profile matching
- Example: "Remove 'leverage' (not in voice profile). Otherwise looks good."
@AnalyticsBot (Analytics):
- Provides data context, timing suggestions
- Example: "Thursday posts get 2x engagement. Consider rescheduling to Thursday 9am."
@EngageBot (Engagement):
- Suggests audience resonance tactics
- Example: "Add a question at the end to boost comment engagement."
Example Usage
Scenario: User asks HypeMan to punch up hook
User comment: "@HypeMan can you make this hook stronger?"
Post content: "We just launched a new feature..."
Agent response:
"This hook is announcement-focused. Try benefit-led instead:
'We cut onboarding from 2 weeks to 2 days.'
This is more specific and compelling. Lead with the transformation, not the release."
Scenario: User asks QABot for voice check
User comment: "@QABot does this match our voice?"
Post content: "Leverage our platform to optimize your workflow..."
Agent response:
"❌ 'Leverage' not in voice profile (avoid corporate jargon)
❌ 'Optimize' too vague
✅ Rest matches voice
Suggestion: 'Use our platform to save 5 hours per week on admin tasks.'"
1---2name: bolta-agent-mention3version: 2.0.04description: Handle @mention interactions where users ask agents for quick feedback on posts and drafts5category: agent6roles_allowed: [Viewer, Creator, Editor, Admin]7required_scopes: [posts:read, workspace:read]8agent_types: [content_creator, reviewer, analytics, engagement, custom]9safe_defaults:10 read_only_mode: true11 no_write_permissions: true12tools_required:13 - bolta.get_post14 - bolta.get_voice_profile15 - bolta.add_comment16 - bolta.list_recent_posts17inputs_schema:18 type: object19 required: [agent_id, post_id, mention_comment_id]20 properties:21 agent_id: { type: string, description: "Agent being mentioned" }22 post_id: { type: string, description: "Post or draft where mention occurred" }23 mention_comment_id: { type: string, description: "Comment containing the @mention" }24 context: { type: string, description: "Additional context from the comment" }25outputs_schema:26 type: object27 properties:28 comment_id: { type: string, description: "Response comment ID" }29 response_text: { type: string, description: "Agent's feedback" }30organization: bolta.ai31author: Bolta Team32---3334## Goal35Handle @mention interactions where users ask agents for quick feedback on posts/drafts. This is **lightweight agent interaction** with read-only tools for conversational feedback.3637## Which Agents Use This38- **content_creator** — Punch up hooks, suggest alternatives, provide creative feedback39- **reviewer** — Check brand compliance, voice profile matching, strategy alignment40- **analytics** — Provide performance context, timing suggestions, data insights41- **engagement** — Suggest engagement tactics, audience resonance predictions42- All agent types can provide their specialized perspective via @mentions4344## Hard Rules451. MUST use read-only mode (no write tools like approve, publish, edit)462. MUST provide post/draft context to agent473. MUST respond as comment (not edit directly)484. MUST NOT grant write access to mentioned agents495. Response time should be < 5 seconds5051## Steps5253### 1. Parse mention54- Extract agent name from @mention in comment55- Identify which agent is being requested56- Load mention_comment_id to get user's specific question5758### 2. Load context59- `bolta.get_post(post_id)` → get full post content60- Load comment thread for context61- If content job: `bolta.get_voice_profile(voice_profile_id)` for reference6263### 3. Invoke agent in mention mode64- Set mode="mention" (read-only tools only)65- Provide context: post content, comment thread, user question66- Agent analyzes and formulates response6768### 4. Post response69- `bolta.add_comment(post_id, response_text, reply_to=mention_comment_id)`70- Response appears as threaded reply to original mention7172### 5. Return confirmation73- Return comment_id and response_text7475## Output76```json77{78 "comment_id": "uuid",79 "response_text": "This hook is generic. Try: 'We cut onboarding from 2 weeks to 2 days.'"80}81```8283## Failure Handling84- If agent_id not found: return error "Agent not found"85- If post_id not found: return error "Post not found"86- If agent response times out (> 10s): return "Agent is thinking... check back in a moment"87- If agent has no relevant context: agent responds "I don't have enough context to help with this"8889## Agent-Specific Behaviors9091**@HypeMan (Content Creator):**92- Focuses on engagement, hooks, energy93- Example: "This hook is generic. Try: 'We cut onboarding from 2 weeks to 2 days.'"9495**@QABot (Reviewer):**96- Focuses on brand compliance, voice profile matching97- Example: "Remove 'leverage' (not in voice profile). Otherwise looks good."9899**@AnalyticsBot (Analytics):**100- Provides data context, timing suggestions101- Example: "Thursday posts get 2x engagement. Consider rescheduling to Thursday 9am."102103**@EngageBot (Engagement):**104- Suggests audience resonance tactics105- Example: "Add a question at the end to boost comment engagement."106107## Example Usage108109### Scenario: User asks HypeMan to punch up hook110**User comment:** "@HypeMan can you make this hook stronger?"111**Post content:** "We just launched a new feature..."112113**Agent response:**114"This hook is announcement-focused. Try benefit-led instead:115'We cut onboarding from 2 weeks to 2 days.'116117This is more specific and compelling. Lead with the transformation, not the release."118119### Scenario: User asks QABot for voice check120**User comment:** "@QABot does this match our voice?"121**Post content:** "Leverage our platform to optimize your workflow..."122123**Agent response:**124"❌ 'Leverage' not in voice profile (avoid corporate jargon)125❌ 'Optimize' too vague126✅ Rest matches voice127128Suggestion: 'Use our platform to save 5 hours per week on admin tasks.'"