* feat(hub): deploy canonical workflow bundles Keep CLI deployment aligned with Hub's authored bundle boundary so validation and activation receive the same deterministic source files. Public documentation now teaches that boundary as the only configuration format. * test(hub): assert validation diagnostics directly * refactor(hub): deepen HTTP client module * feat(hub): validate named agent configurations * docs(hub): align Claude mode example
1.3 KiB
1.3 KiB
title, description, nav, order, category
| title | description | nav | order | category |
|---|---|---|---|---|
| Discord triggers | Configure Discord mentions and replies in one workflow file. | Discord | 69 | Hub |
Discord triggers
discord.mention fires when the bot or a managed role is mentioned in a guild channel or thread.
.paseo/workflows/discord-help.yml:
name: discord-help
on: discord.mention
max_runtime: 1h
filters:
guild: "123456789012345678"
channels: ["234567890123456789"]
from_users: ["345678901234567890"]
steps:
- id: answer
environment: dev
max_runtime: 30m
idle_timeout: 5m
agent: codex
prompt:
- text: |
Answer with hub.reply, then call hub.finish_execution.
${{ paseo.prompt }}
allow_outputs:
- { type: discord.reply, max: 1, required: true }
Turn on Discord Developer Mode to copy IDs. from_users matches the author; guild and channels constrain where the mention arrived. All filters must pass.
The reply posts in the triggering thread or channel. discord.reply grants hub.reply, but does not rewrite the prompt. A Discord trigger grants no GitHub credential; add a github block to the step that needs one.
Leading declared inputs follow the mention. Hub exposes the remaining text as ${{ paseo.prompt }}. See Workflows.