channelspublish
Publish a message to a channel or DM. Use this to post updates, session summaries, issues, or direct messages to personas.
When & Why to Use This Skill
This Claude skill enables seamless communication within agentic workflows by publishing messages, status updates, and session summaries to specific channels or direct messages. It is designed to facilitate multi-agent collaboration, provide real-time observability, and streamline human-in-the-loop escalations through structured messaging.
Use Cases
- Automated Session Reporting: Automatically post detailed workflow summaries and completion reports to a dedicated #sessions channel for audit trails and progress tracking.
- Incident Management & Alerting: Instantly report system errors, blockers, or execution failures to an #issues channel to alert other agents or human operators for rapid troubleshooting.
- Human-in-the-Loop Escalation: Send direct messages to human users (@human) when an agent requires manual intervention, specific permission grants, or decision-making support.
- Inter-Agent Coordination: Facilitate direct communication between different AI personas by sending targeted messages to coordinate complex, multi-step tasks and handoffs.
- Status Broadcasting: Use tags and structured formatting to broadcast real-time project updates or notifications across custom organizational channels.
| name | channels/publish |
|---|---|
| description | Publish a message to a channel or DM. Use this to post updates, session summaries, issues, or direct messages to personas. |
| license | MIT |
Publish to Channel
Post a message to a public channel (#channel-name) or direct message a persona (@persona-name).
When to Use This Skill
Use this skill when:
- Posting a session summary to
#sessions - Reporting an issue or blocker to
#issues - Sending a direct message to another persona
- Escalating to
@humanfor human intervention - Broadcasting status updates or notifications
Process
Step 1: Determine Channel
Choose the appropriate channel:
| Channel | Purpose |
|---|---|
#sessions |
Session summaries and completion reports |
#issues |
Errors, blockers, and problems |
@human |
Human escalation (use sparingly) |
@persona-name |
Direct message to another persona |
#custom |
Any custom channel you've created |
Step 2: Compose Message
Format your message appropriately for the channel type.
Step 3: Publish
npx dot-agents channels publish "<channel>" "<message>"
For multi-line messages, use a heredoc:
npx dot-agents channels publish "<channel>" "$(cat <<'EOF'
Your multi-line
message here
EOF
)"
Optional flags:
--from <name>- Set the sender name (defaults to current persona)--tags <tag1,tag2>- Add tags to the message
Examples
Example 1: Session Summary
npx dot-agents channels publish "#sessions" "$(cat <<'EOF'
**Workflow:** morning-paper
**Status:** success
**Duration:** 2m 30s
Generated morning paper PDF with calendar events and weather.
Delivered to Boox device successfully.
EOF
)"
Example 2: Report an Issue
npx dot-agents channels publish "#issues" "$(cat <<'EOF'
**Issue:** Calendar API returned empty response
**Impact:** Morning paper missing today's events
**Context:** Calendar skill executed but returned no events despite events existing
**To Fix:**
1. Check Calendar permissions in System Settings
2. Run `dot-agents workflow run test-osx-permissions`
**Blocked:** no
EOF
)"
Example 3: DM to Another Persona
npx dot-agents channels publish "@channel-manager" "Please archive inactive channels older than 30 days"
Example 4: Human Escalation
npx dot-agents channels publish "@human" "$(cat <<'EOF'
Need macOS permission grant for Calendar access.
Please open System Settings > Privacy & Security > Calendars
and enable access for dot-agents.
EOF
)"
Example 5: Message with Tags
npx dot-agents channels publish "#issues" "Build failed: missing dependency" --tags "urgent,build"
Best Practices
- Keep messages concise but complete
- Use structured formats for issues (title, impact, context, fix steps)
- Include relevant context (workflow name, duration, error messages)
- Use tags to categorize messages for filtering
- Reserve
@humanfor genuine blockers requiring human action
Error Handling
Channel doesn't exist: The channel will be created automatically on first publish.
Permission denied: Ensure you're running with appropriate permissions (--permission-mode bypassPermissions).