How to Write Jira Cloud Automation Rules from a Workflow Description

Jira automation fails when a rule auto-closes Bugs and pings a Slack webhook nobody pasted. Linear field names do not belong here. If the status does not exist, the rule does not exist.
The matching generator is the Jira Automation Rule Pack from a Workflow Description prompt. Browse related cards in the PromptDig library (Browse more prompts). When a filled run survives, share the version you actually use (Share a prompt).
Scope the project key you actually have
Turn a workflow description into Jira Cloud automation rules. No invented project keys, smart values, or Slack webhooks. Start by filling Inputs, not by asking the model to remember last week's run. If a field is blank, write NONE or NOT IN INPUTS and leave it blank through Generate. The card is built so the model cannot honestly invent a number, owner, URL, or command that you did not paste.
Paste these fields before you hit run:
Jira Cloud site and project key: [Project]
Issue types and workflow statuses I actually have: [Workflow]
Triggers I want (issue created, field changed, scheduled): [Triggers]
Conditions and fields I can prove exist: [Fields]
Actions I allow (transition, comment, assign, email): [Actions]
Actors I may assign (account IDs or names as in Jira): [Actors]
Notifications (email only unless a webhook URL is pasted): [Notify]
What must never auto-transition: [Never]
How many rules: [Count or 4]
Words I must not use: [Banned]
That inventory is the honesty ledger. Anything that does not appear there is forbidden in the draft. If you catch yourself adding a nice-to-have after the run, you are no longer using the card. You are ghostwriting. Put the extra fact in Inputs and run again.
Smart values only from named fields
Generate is numbered on purpose. Do not skip a step because the first paragraph looked done. The early steps exist to stop later prose from smuggling claims.
Walk the Generate list in order:
- Honesty ledger: project key, statuses, fields, actors, notify URLs. Forbidden: Slack unless a URL is pasted, custom fields not in Fields.
- Rule list: Count rules. Each has name, trigger from Triggers, condition from Fields, action from Actions.
- Smart values: only fields in Fields. If a smart value is unknown, write NOT IN INPUTS rather than {{issue.madeUp}}.
- Transition table: from-status to-status only if both exist in Workflow. Honor Never.
- Notify: email from Notify. Webhook only with a pasted URL. No invented Slack channel.
- Scope: project Project only. Do not enable global automation unless Inputs say so.
- Test cases: 5 issues that should and must-not fire, using Workflow names.
- Compliance pass: quote Banned words, Linear fields, invented webhooks. Cut them.
If a step asks for a version lock, quote the version from Inputs in the output. If a step asks for a refuse list, keep the refuse list in the published artifact, not in a sidebar you delete. Reviewers should see what the model was not allowed to do.
Honor the never-auto-transition list
Most failures are the same shape: a missing field gets a confident fill. A conversion rate appears. A Gradle task appears. A flash point appears. A caption appears on a job that asked for slide text only. Your review is to search the draft for numbers, names, and commands, then grep Inputs. No match means cut.
Honor the constraints as hard stops, not vibes:
- Jira Cloud automation only. Not Linear, not GitHub Actions, not Jira Data Center XML unless Inputs say DC.
- Never invent a project key, custom field, or webhook.
- Do not auto-transition statuses in Never.
- No Slack without a pasted webhook URL.
- No emojis.
When the card says not legal advice, not certification, not an exam dump, or not a caption engine, that sentence belongs at the top of the output. Deleting it to look more finished is how you inherit risk.
No Slack without a pasted webhook URL
Finish with the compliance pass the prompt already asks for. Quote the banned-word hits. Cut them. Print character counts when the job has a cap. Print word counts when the job has a budget. List gaps as gaps. Five missing facts are more useful than one smooth paragraph.
Tags on the card (jira cloud automation rules, jira workflow automation, no invented smart values) are a reminder of the job shape, not an invitation to wander into a neighboring cluster. If you need a different surface, open a different PromptDig card rather than stretching this one.
Fill the card, then run
Replace every bracket. Run on ChatGPT, Claude, or Gemini. Read the ledger first, then the artifact. If the model invents a commit, KPI, DOI, PEL, bid, or logo, discard the run. Tighten Inputs. Run again. Share the filled card that survived, not the first draft that sounded done.