How it works: React to any Discord message with a configured emoji (like :huss:
or 🧿
- used as an example in this val) and it automatically becomes a Linear ticket with context from the Discord thread.
Team members can use custom emojis to identify themselves as the ticket creator.
Before you can run this cron, you must add the following Environment Variables (via left sidebar of this val):
DISCORD_BOT_TOKEN
: Your Discord bot token
Bot
on the sidebar → Copy token (or Reset Token
and then Copy
if you didn't copy it the first time)DISCORD_SERVER_ID
: Your Discord server ID (right-click server name → Copy ID)DISCORD_MONITORED_CHANNELS
: Comma-separated channel IDs to monitor (right-click channel → Copy ID)
1327384540187983926,1327384540187983927
LINEAR_API_KEY
: Your Linear API key
LINEAR_TEAM_ID
: Your Linear team UUID, this is NOT the 3 letter Team Identifier
found in issue IDs
CMD+K
to pull up the quick menu + enter Dev: Copy model UUID
to copy your UUID6312a2a0-633b-47dc-a225-81d5d1759bf4
bot
unfurls a Bot Permissions dropdown below → Select View Channels
, Read Message History
, Add Reactions
main.tsx
- Main cron job that runs every minute checking for new reactions, you can also manually press Run
to run it immediatelybackend/config.ts
to customize team member emojis:TARGET_EMOJIS: {
"huss": "Huss", // Custom Discord emoji :huss:, use just the name without colons (e.g., `"huss"` for `:huss:`)
"nas": "Nas", // Custom Discord emoji :nas:
"🧿": "Team", // Unicode built-in emoji, use the actual emoji (e.g., `"🧿"`)
}