Skip to content

Ticket prompts

A ticket prompt turns a feature idea into a ticket in Linear, the tool your team tracks its work in, in a few clicks. You post an idea in a channel, and if no ticket covers it, the bot sends you a direct message with a draft. You edit it and create it. Only you see the prompt, and nothing is filed unless you submit the form. The bot files the ticket in your Linear team, adds labels (tags such as “audio” or “UI”) that fit, and assigns it to you when it knows who you are in Linear. You do not need a Linear account to get a prompt.

For example: you write “It would be great if we could mute the whole lobby from the host menu, so tutorials are easier to run” in a channel. Nobody has opened a ticket for it. A moment later you get a draft titled “Add a mute-all option to the host menu”.

Ticket prompts are off unless whoever runs the bot has switched them on. You do nothing to enable them. If you never get one, see why you might not get one.

Example of the bot in Discord

Doge Bot sends you a DM

Hi Sam, this sounds like a feature idea: https://discord.com/channels/123456789012345678/200000000000000001/300000000000000002

Draft ticket: Add a mute-all option to the host menu

Want a Linear ticket for it? You can edit it before anything is created.

Only you got this. I ask when a post looks like a new feature and Linear has no matching ticket, at most 3 times a day.
Create ticket No thanks
  • The link goes back to your message.
  • The bold title is the bot’s draft. You can change it.
  • The number in the last line is your daily limit, which can differ if the limit was changed.

If Linear has similar tickets that are not clearly the same, the bot lists up to three first, so you can check before you create another:

Example of the bot in Discord

Doge Bot sends you a DM

Hi Sam, this sounds like a feature idea: https://discord.com/channels/123456789012345678/200000000000000001/300000000000000002

Draft ticket: Add a mute-all option to the host menu

These existing tickets look similar, check them first:

  • ENG-12 Host controls for lobby audio

Want a Linear ticket for it? You can edit it before anything is created.

Only you got this. I ask when a post looks like a new feature and Linear has no matching ticket, at most 3 times a day.
Create ticket No thanks

If Linear already has a ticket for the same idea, the bot sends you nothing.

ButtonWhat it does
Create ticketOpens a form where you check the draft, choose a team if you have a choice, and create the ticket.
No thanksCloses the prompt. Nothing is created and the bot never asks about that message again.

Only you can press them. If someone else does, they see This prompt is not for you.

Create ticket opens a form titled New Linear ticket with Title and Description. Team comes first when you have a choice of team, and Cycle comes last when a team you can file into uses cycles. A cycle is a fixed stretch of work time in Linear, often one or two weeks. Leave Cycle on No cycle if you are unsure. Once you submit, any further change is made in Linear itself.

Team choice required

A drop-down with the placeholder Choose a team, sorted by name. It appears only when more than one team is on offer. With one team there is no drop-down and the ticket goes to that team. A team is a group in Linear, such as Engineering or Art, that owns a list of tickets. When the bot can tell which team your message belongs to, that team is listed first and selected, and the hint reads Suggested from your message. Change it if it is wrong. Discord allows 25 choices, so with more teams the field says Showing 25 of N teams. Ask an admin if yours is missing. instead of the suggestion hint, though the suggested team is still first and selected. See Which team, and who it goes to.

Title text required

Starts with the bot’s draft. One line, never blank.

Allowed: up to 200 characters

Description text optional

Starts with the bot’s draft. Optional. The hint reads Optional. A link to your Discord message is added automatically.

Default: the bot's draft Allowed: up to 4000 characters

Cycle choice optional

A drop-down with No cycle, Current cycle and Next cycle. It appears only when at least one of your teams uses cycles in Linear, and starts on No cycle. With a single team the options show that team’s cycle and dates, for example Next cycle · Cycle 88 (Oct 19–25), in the time zone you set with /hours set (see Timezone and working hours), or UTC if you set none. If the dates are slow to load, only the plain names show. The choice is matched to the team you file in when you submit, and a cycle that has just ended is never used.

Default: No cycle

If the team list is slow to arrive, the form does not open and you see Linear is slow right now. Press Create ticket again in a moment. Press the button again.

The bot works out which Linear user you are by comparing your server display name (the name other members see for you in this server) with the names in Linear. It links you only when exactly one Linear user has that name and no one else in the server shares it. An admin can also link you by hand: see Linking members to Linear. You cannot link yourself.

If you areTeams you are offeredAssignee
Linked to a Linear user who is on one teamThat team. The form has no team fieldYou
Linked and on several teamsThose teams, and no others. You pickYou
Linked but on no teamAll public teams. You pickYou
Not linkedAll public teams. You pickNo one

A public team is one any member of your Linear workspace can see. Your teams include private ones you belong to. Someone who is not a member never sees a private team. If a name you expected is missing from the drop-down, ask an admin to check your link.

When you are offered two or more teams, the bot reads your message again with the names and short descriptions of those teams and selects the one it clearly belongs to. It never guesses: if the message could fit several teams or none, nothing is selected. You still decide.

If you are not linked when you submit, and an admin has not already decided about you, the bot tries once more to match you by name. A match made then assigns this ticket to you but does not change the team you picked. Your teams apply from the next prompt.

Submitting the form creates one ticket in the team you chose, or the only team offered. It has:

  • Your title.
  • Your description, followed by a line --- and then Proposed by Sam (Discord id 123456789012345678) in Discord: with a link to your message.
  • You as the assignee, if you are linked.
  • The cycle you picked, if any. When the bot cannot use it, the ticket is filed without one and the message says why, with one of:
    • Engineering does not use cycles, so the ticket was filed without one.
    • Engineering has no current cycle, so the ticket was filed without one.
    • Engineering has no next cycle, so the ticket was filed without one.
    • Could not read Engineering's cycles, so the ticket was filed without one.
  • Up to three labels the AI picks from the labels that already exist for that team and the workspace. It picks only labels that clearly fit and never makes a new one. If it cannot decide, or something fails, the ticket gets no labels and is still created.

Nothing else is set: no project, priority or state. Linear applies your team’s usual state for new tickets.

If Linear refuses the assignee, a label or the cycle, the bot files the ticket again without them, so a wrong link, an out-of-date label or an old cycle never blocks it. The last line then says Filed in instead of Assigned to you in, and another line names what was left out, for example Linear rejected some details, so it was filed without its labels or cycle. It names only what the bot had sent.

While the bot files it, the line Creating the ticket… appears under the prompt. Pressing Create ticket again meanwhile only says it is still being created. If the create fails, the line is removed and the reply says why. When it works, the buttons are replaced by one button that opens the ticket:

Example of the bot in Discord

Doge Bot sends you a DM

Ticket created: ENG-9 Add a mute-all option to the host menu
From your message: https://discord.com/channels/123456789012345678/200000000000000001/300000000000000002\ Assigned to you in Engineering.

Open ENG-9

The last line is Assigned to you in <team>. when the ticket was assigned to you and Filed in <team>. when it was not. With a cycle it names it too, for example Filed in Engineering · Cycle 88 (Oct 19–25). If Linear was too slow to confirm and the bot found the ticket on a second try, the last line is Linear did not confirm this ticket's details, so check them in Linear., because the bot cannot tell which team and cycle it ended up in.

Press No thanks and the message changes to this, with no buttons:

Example of the bot in Discord

Doge Bot sends you a DM

No ticket created for Add a mute-all option to the host menu
Your message: https://discord.com/channels/123456789012345678/200000000000000001/300000000000000002\ I will not ask about that message again.

A prompt you dismiss still counts toward your daily limit.

A prompt has no timer. You can press Create ticket days later while your message still exists. Three things close it:

  • You press No thanks, or the ticket is created.
  • The message, or its channel or thread, is deleted. The prompt then says Your original message was deleted, so I closed this prompt.
  • The prompt is 30 days old. The bot clears drafts that old only when it next starts, and from then on the prompt gives the same answer even though your message still exists.

When a button finds a finished prompt, the buttons disappear and a private note says what happened. A ticket still being created keeps its buttons.

  • At most 3 prompts in any 24 hours by default. Whoever runs the bot can set it from 1 to 50, and the last line of the message shows it.
  • At most one prompt per message. If you dismiss it or something goes wrong, the bot does not ask again.
  • Messages skipped because Linear already had the ticket do not count.

The bot skips a message when:

  • It is shorter than 8 words. Code, links, emoji and mentions do not count as words.
  • It was written by a bot, or it is a system message.
  • It was edited, not new.
  • It is a direct message, or it is in another server.
  • It is in a place the bot does not read, such as a private thread or the chat of a voice channel.
  • You already used your prompts for the day.
  • You posted more than 20 messages of 8 or more words in the last hour. The bot checks at most 20 an hour.
  • The bot used up its daily budget of checks, which is shared by everyone.
  • Linear already has a ticket that clearly asks for the same thing.
  • The AI did not read it as a feature idea. Bug reports, questions, status updates, jokes and praise are not.
  • Whoever runs the bot has limited its direct messages to a list of people and you are not on it.
  • Your direct messages from server members are closed. The bot does not try again.
  • You deleted the message before the prompt arrived.
  • The AI service was busy or down. The bot pauses for a minute and skips messages that arrive then, without going back for them.
  • Linear has no public team to file into.
  • Linear returned an error while the bot looked for an existing ticket. If Linear was only slow or told the bot to wait, the bot skips that check and asks you anyway.
  • Too many messages were waiting. The bot holds at most 10 messages from you and 200 in all, counting those being checked, and drops the rest without going back for them.

In every case the bot stays quiet.

The AI never gets your name, id or channel. Only messages that pass the checks above reach it.

  • Reading your message: the AI gets the text, up to the first 4000 characters. If it finds a feature idea, it also gets the titles and short descriptions of up to five related Linear tickets.
  • Suggesting a team, when you are offered two or more: the AI gets the same message text and the name and one-line description (cut to 300 characters) of each team you are offered, including your private teams. If this is slow or fails, the prompt still goes out with no team selected.
  • Picking labels, when you submit: the AI gets your title, your description (up to the first 1000 characters) and the names of the labels your team can use.
  • Linear gets a short search phrase the AI wrote from your message, each time a message looks like a feature idea, to look for an existing ticket. It gets the ticket itself only when you submit: title, description, team, assignee, labels, cycle and the line with your name, Discord id and message link. The bot also reads from Linear its public teams, the users to match names, the teams you belong to, the labels a team can use, and a team’s current and next cycle when the form offers cycles.
  • Private Linear teams are never searched. They are offered only to a member of that team.

For what the bot keeps, and for how long, see What the bot stores.

These messages are only visible to you.

The bot saysWhat it means
Ticket prompts are turned off.The bot has no Linear connection right now. Every button on the prompt says this, including No thanks.
This prompt is not for you.You pressed a button on someone else’s prompt.
This prompt has expired. Nothing was created.The bot cannot find this prompt.
Unknown action.The button is not one the bot recognises.
Something went wrong.An unexpected error. Try again.
Linear is slow right now. Press Create ticket again in a moment.Linear did not give the team list in time. Press Create ticket again.
No Linear team is available.Linear shows no team for you to file into. Ask an admin.
The ticket needs a title. Press Create ticket and add one.You submitted the form with a title that is only spaces.
That team is not available. Press Create ticket and choose another.The team you chose is not one of the teams offered to you any more.
You are no longer in the server, so I cannot create this ticket.You left the server.
Still creating that ticket. Give it a few seconds.The ticket is being created. Wait, then check the message.
Already created: ENG-9.The ticket exists. The text links to it.
You dismissed this one.You pressed No thanks earlier.
This prompt is closed. Nothing was created.The prompt was closed without a ticket. You should rarely see this.
This prompt is still open. Press Create ticket to try again.The prompt is open and nothing was created yet.
Your original message was deleted, so I closed this prompt.The draft is gone, so nothing can be filed. This happens when your message or its channel was deleted, or when the prompt is more than 30 days old and the bot has cleared its draft.
Linear did not answer in time, so I cannot tell yet whether the ticket was filed. Press Create ticket to check: it will not create a second one.Linear was too slow. The ticket may or may not exist. Press Create ticket and submit the form again. The bot finds the ticket if it was made and creates it only if it was not.
Linear rejected the ticket, so nothing was filed. Tell an admin: the bot may lack permission for that team.Linear refused. Tell an admin.
Could not create the ticket in Linear, so nothing was filed. Your text is saved: press Create ticket to try again.Another Linear error. What you typed is saved and is in the form next time.