Actions overview

Learn how to create, configure, and manage automations so Storytell runs tasks for you—on a schedule, when files are added, or when other events happen in your project.

Written By Mark Ku

Last updated About 2 hours ago

Overview

Actions in Storytell let you automatically trigger a chat response whenever new data is added to the scope of a chat—or on a schedule. You define when the Action runs (a trigger) and what prompt Storytell should run; the Action runs in the background so you don’t have to be in the project or online.

🚀 Pro-tip: Want to see how Storytell’s CEO uses Actions in his workflow? Read How Nate B. Jones Advises Our Product Roadmap at 4 AM Every Morning (While We're Both Asleep)

An example Action

Benefits:

  • Save time — Automate repetitive tasks (e.g. summarize new uploads, run a weekly report over your project).

  • Consistency — The same prompt runs every time, so outputs are predictable.

  • Scale — One Action can process each new file as it’s uploaded, or run on all matching assets on a schedule.

  • Integration — Actions use your project’s Knowledge (files, collections, labels, concepts) in the prompt via @ mentions and # variable fields, so they’re aligned with how you already work in Storytell.

Actions are scoped to a project. Each project has its own Actions; when you switch projects, you see that project’s list. Who can create or edit Actions depends on your project role (e.g. Owners and Collaborators can create and edit; Readers may only view).


What are Actions?

An Action is a single automation with:

  • Trigger — When it runs. You can choose On a schedule (e.g. daily, weekly) or Whenever there is new source data (when a new file is uploaded to the project). For new-source-data triggers, you also choose whether to run only on the new asset or on all matching assets.

  • Prompt — The instruction Storytell runs each time (e.g. “Summarize this file”). In the prompt you can @mention Files, Labels, Collections, or Concepts to put them in scope, and use # to add variable fields.

  • Settings — Name, description, schedule details (if time-based), and options like Send email when action completes.

When the trigger fires, Storytell runs the prompt; results appear in Run history in the Actions tab and, if enabled, via email.


Opening the Actions tab

  1. Open a project (e.g. from the sidebar or Projects page).

  2. In the tab bar under the main header, click Actions (automation icon). The tabs are SmartChat, Knowledge, Actions, Insights, and Settings.

  3. The Actions view opens. You’ll see your list of Actions (if any), Create Action, and options to view run history or templates.

💡 Tip: If you don’t see the Actions tab, make sure you’re inside a project (not on the home page). The tab bar only appears in project context. If it’s still missing, your plan or role may limit access—check with your admin.


Creating an Action

You can create an Action in two ways: from the Actions tab (below) or from a chat after a response completes—see Creating an Action from a chat.

To create an Action from the Actions tab:

  1. Go to Actions (tab bar) in your project.

  2. Click Create Action (or + New Action).

  3. The Action creation modal opens. Configure:

    • Name (required) and Description — So you and your team can identify the Action.

    • Prompt (required) — The instruction that runs each time. Use @ to mention Files, Labels, Collections, or Concepts; use # to add variable fields.

    • Trigger TypeOn a schedule or Whenever there is new source data.

    • Trigger options — If you chose new source data: Run only on the new asset or Run on all matching assets. If you chose On a schedule: in the Schedule section set Hour, Day of week, Day of month, and Timezone.

    • Send email when action completes — Optional; check to get an email when the run finishes.

  4. Click Create Action. The Action is created and will run when its trigger fires.

⚠️ Important: Actions can read and use your project’s files, collections, and labels according to the scope you set. Only create Actions in projects where you trust the members and data. Review who has access to the project before enabling Actions that handle sensitive content.


Creating an Action from a chat

You can turn a chat result into a repeatable Action. The modal title is “Turn this result into a repeatable Action.” Actions let you automatically trigger that chat response whenever new data is added to the scope of the chat thread—or on a schedule.

To create an Action from a chat:

  1. In your project, open SmartChat and run a prompt (e.g. “Summarize this file” or “Extract action items from the meeting notes”). Optionally @mention Files, Labels, Collections, or Concepts so the response uses that scope.

  2. Wait for the response to complete. When the turn is complete, look for Create an Action (or Turn this result into a repeatable Action) in the response area—usually near the bottom of the reply or in the response actions row.

  3. Click it. The Action creation modal opens with your prompt pre-filled.

  4. In the modal, set Name (required), Description, and Trigger Type: On a schedule or Whenever there is new source data. If new source data, choose Run only on the new asset or Run on all matching assets. Optionally enable Send email when action completes. Adjust the prompt if you want (use @ for mentions, # for variable fields).

  5. Click Create Action. The Action is created and appears under Actions; it will run when its trigger fires.

💡 Tip: Creating an Action from a chat is best when you’ve just run a prompt you want to repeat. The prompt is copied into the Action’s first step so you don’t have to retype it. You can then add more steps, change the trigger, or narrow the scope in the modal.

Good to know: The Create an Action control is shown only when the response is complete and is hidden on small screens and in readonly mode. If you don’t see it, scroll to the end of the reply or open the same chat on a larger screen.


Action settings and setup

After you create an Action (or when you edit one), you configure the following. Each section below explains what the setting does and how to set it.

Trigger

The Trigger Type defines when the Action runs. There are two options:

  • On a schedule — Run at a fixed time. When you select this, a Schedule section appears where you set Hour (e.g. 9 AM), Day of week (e.g. Any day or a specific weekday), Day of month (e.g. Any or a specific date), and Timezone.

  • Whenever there is new source data — Run when a new file is uploaded to the project. The Action uses the scope of the chat (or the scope you set when creating the Action). Under Trigger Options you choose:

    • Run only on the new asset — Process just the newly uploaded file.

    • Run on all matching assets — Process all assets that match the Action’s scope.

To set the trigger:

  1. In the Action editor (or creation modal), select Trigger Type: On a schedule or Whenever there is new source data.

  2. If On a schedule, fill in the Schedule section: Hour, Day of week, Day of month, and Timezone. If Whenever there is new source data, choose Run only on the new asset or Run on all matching assets in Trigger Options.

  3. Save or click Create Action.

The Action runs each time the trigger condition is met (e.g. at the scheduled time, or every time a new file is uploaded to the project).

Prompt

The Prompt is the instruction Storytell runs each time the Action is triggered. You write it in the Action’s prompt field (or it is pre-filled when you create from a chat).

In the prompt you can:

  • Use @ to mention Files, Labels, Collections, or Concepts — they become part of the scope for that run (e.g. “Summarize the files in @[Q4 Reports]” or “Using @Summarizer, summarize this file”).

  • Use # to add variable fields — template variables let the Action fill in values (e.g. for the new file or other inputs) when it runs.

The same prompt runs every time the trigger fires. When the trigger is Whenever there is new source data, the “new asset” is the file that was just uploaded; your prompt can refer to it in context. When the trigger is On a schedule, the prompt runs over whatever scope the Action was created with (e.g. the scope of the chat thread you turned into an Action).

🚀 Pro-Tip: When writing the prompt, @mention the collections, files, labels, or concepts you want in scope so the Action has the right context. Use Run only on the new asset if you want to process just each new upload; use Run on all matching assets to re-run over the full set each time.

Scope

When you create an Action from a chat, the Action uses the scope of that chat thread—the Files, Labels, Collections, or Concepts you had in scope when you ran the prompt. You can also @mention items in the Action’s Prompt so they’re included every time the Action runs.

When the trigger is Whenever there is new source data:

  • Run only on the new asset — The Action runs over just the newly uploaded file (plus any @mentioned context in the prompt).

  • Run on all matching assets — The Action runs over all assets that match the Action’s scope (e.g. all files in the project or in the chat’s scope).

Keeping the prompt focused and @mentioning only what you need keeps runs fast and predictable.

Name and description

  • Name — A short title for the Action (e.g. “Daily summary of Q4 Reports”). It appears in the Actions list and in run history.

  • Description — Optional. Explain what the Action does and when it runs (e.g. “Summarizes every new file added to the Inbox collection and saves the summary to the Summaries collection”). Helps your team understand and maintain the Action.

Set these in the Action editor (e.g. at the top or in a Details section). Name is usually required; description is optional but recommended.

Schedule (when trigger is On a schedule)

When Trigger Type is On a schedule, a Schedule section appears with:

  • Hour — What time of day the Action runs (e.g. 9 AM).

  • Day of week — Which day(s) of the week (e.g. Any day, or a specific weekday like Monday).

  • Day of month — Which day(s) of the month (e.g. Any, or a specific date).

  • Timezone — The time zone for the scheduled time so it runs at the correct local time.

Set these in the Schedule section when On a schedule is selected. The Action runs at the next matching time.

Notifications and outputs

  • Run history — Runs are recorded in the Actions tab under Run history (or Runs). You can open a run to see inputs, outputs, and status (success or error).

  • Send email when action completes — In the Action creation or edit modal, check this option to receive an email when the Action run finishes.

Enable and disable

  • Enabled — The Action runs when its trigger fires.

  • Disabled — The Action is saved but does not run. Use this to pause an Action without deleting it (e.g. during maintenance or when you’re changing scope).

Toggle Enabled / Disabled in the Action editor or from the Actions list (e.g. switch or Enable / Disable in the menu). Disabling does not delete run history.


Managing Actions

Editing an Action

  1. Go to Actions in your project.

  2. Click the Action you want to edit (or use the Edit or menu on the Action card).

  3. The Action editor opens with current trigger, steps, scope, and settings. Change any of these.

  4. Click Save. The updated Action will use the new configuration on the next run.

📝 Note: Changing an Action does not re-run past runs. Only future trigger events use the new setup (next scheduled time or next new file upload).

Run history

Run history (or Runs) shows every time an Action ran.

  • List — Run date/time, Action name, status (e.g. success, failed), and optionally duration. Click a run to open details.

  • Details — Inputs (e.g. which file was the new asset or what was in scope), outputs (e.g. summary text or file), and any error message if the run failed.

Use run history to verify that the Action is running as expected, to copy or reuse outputs, and to debug failures (e.g. missing scope, invalid prompt).

To open run history:

  1. Go to Actions.

  2. Click Run history (or Runs, or the history icon). Filter by Action or date if the UI supports it.

  3. Click a run to see details.

Deleting an Action

  1. Go to Actions and open the Action (or use the menu on the Action card).

  2. Open the menu (or Settings) and choose Delete (or Remove Action).

  3. Confirm in the dialog. The Action is removed and will no longer run. Run history for that Action may still be visible for a period, depending on your plan.

Deletion is permanent. If you might need the Action again, Disable it instead of deleting.


Best practices

  • Use clear names and descriptions — Name and describe Actions so your team knows what they do and when they run. It makes managing and debugging much easier.

  • @mention only what you need — In the prompt, @mention the Files, Labels, Collections, or Concepts the Action needs. This keeps scope clear and runs predictable.

  • Choose the right trigger option — For Whenever there is new source data, use Run only on the new asset to process each new file alone, or Run on all matching assets to re-run over the full set each time.

  • @mention Skills for consistency — Use the same skills you use in chat (e.g. @Summarizer, @Meeting action items) in the Action’s prompt so behavior is consistent.

  • Check run history after changes — After editing an Action, check run history to ensure the next run succeeded and the output looks correct.

  • Disable instead of delete — If you’re not sure you’re done with an Action, disable it and revisit later. You can always delete it after you’re confident it’s no longer needed.


Examples

Here are concrete examples of Actions you can set up. Actions can only be triggered on a schedule or whenever a new file is uploaded to the project. Use these as starting points and adjust trigger options and prompts to fit your project.

Summarize every new file uploaded to the project

Use case: Whenever someone uploads a new file to the project, you want a short summary generated automatically.

  • Trigger Type: Whenever there is new source data.

  • Trigger Options: Run only on the new asset — so the Action processes just the newly uploaded file each time.

  • Prompt: e.g. “Summarize this file in 3–5 bullet points. Include the main topic and any decisions or action items.” You can @mention a skill (e.g. “Using @Summarizer, summarize this file”) so the same instructions you use in chat apply here.

  • Result: Each new upload gets summarized; read summaries in Run history or enable Send email when action completes to get the result by email.

Run on all matching assets when new data arrives

Use case: When a new file is uploaded, you want the Action to run over all files in scope (e.g. the whole project or the chat’s scope), not just the new one—for example to refresh a “state of the project” summary.

  • Trigger Type: Whenever there is new source data.

  • Trigger Options: Run on all matching assets.

  • Prompt: e.g. “Review all documents in scope and write a one-paragraph summary: main themes, key findings, and any recommendations.” Use @ to mention a collection or label if you want to limit scope (e.g. @[Research]).

  • Result: Every time a new file is uploaded, the Action runs over all matching assets and produces one combined output in Run history or by email.

Weekly digest on a schedule

Use case: Every Friday you want a short digest of what’s in your project (or in a specific collection you @mention).

  • Trigger Type: On a schedule.

  • Schedule: Set Hour (e.g. 5 PM), Day of week (e.g. Friday), Day of month (e.g. Any), and Timezone.

  • Prompt: e.g. “Review the documents in scope and write a one-paragraph weekly digest: main themes, key findings, and any recommendations. Keep it under 200 words.” @mention a collection (e.g. @[Research]) if you want the digest limited to that set.

  • Result: Every Friday the Action runs and produces a digest; view it in Run history or enable Send email when action completes.

Extract action items from meeting notes on a schedule

Use case: Every Monday morning, you want action items pulled from meeting notes in a collection.

  • Trigger Type: On a scheduleSchedule: Hour (e.g. 9 AM), Day of week (e.g. Monday), Day of month (e.g. Any), Timezone.

  • Prompt: e.g. “From the meeting notes in scope, list all action items with owner and due date if mentioned. Format as a bullet list.” @mention the collection (e.g. @[Meetings]) so the Action runs over that set. You can also @mention a skill (e.g. @Meeting action items) for consistent formatting.

  • Result: Every Monday the Action runs over the @mentioned collection and produces an action-item list in Run history or by email.


Advanced examples

These examples use @mentions and # variable fields in the prompt.

@mentioning a collection in the prompt

Use case: When a new file is uploaded, you want it compared against a fixed “Compliance” or “Legal playbook” collection.

  • Trigger Type: Whenever there is new source dataRun only on the new asset.

  • Prompt: In the prompt, @mention the reference collection so it’s in scope, e.g. “Compare the new file to the guidelines in @[Compliance Guidelines]. List any gaps or violations.” Or: “Using @[Legal playbook], check this document for missing clauses and standard terms.”

  • Result: Each new upload is evaluated against the @mentioned collection; output appears in Run history or by email.

Why it’s useful: @mentioning in the prompt brings specific collections, files, labels, or concepts into scope for that run. The new file is the “new asset”; the @mentioned items add context.

@mentioning a skill in the prompt

Use case: You want the Action to use the same instructions as your “Contract clause checker” or “ELI5” skill.

  • Trigger Type: Whenever there is new source data (or On a schedule if you run over a fixed set).

  • Prompt: @mention the skill, e.g. “Using @Contract clause checker, review this document for missing or risky clauses” or “Using @ELI5, explain the main ideas in this file in simple terms.”

  • Result: The Action applies that skill’s instructions to the asset(s); output appears in Run history or by email.

Why it’s useful: @mentioning a skill in the prompt reuses the same instructions you use in chat, so behavior is consistent.

Using # for variable fields in the prompt

Use case: You use # in the prompt to add variable fields (e.g. for the document or other inputs). When the Action runs, those fields can be filled in—for example with the new file when the trigger is Whenever there is new source data.

  • Trigger Type: Whenever there is new source dataRun only on the new asset (or On a schedule with a fixed scope).

  • Prompt: Use # to add variable fields as supported by the product. The Action can resolve them (e.g. to the new file) when it runs.

  • Result: Each run uses the resolved values; output is in Run history or by email.

Why it’s useful: Variable fields keep prompts reusable and let the Action fill in the right context (e.g. the new asset) each time.

💡 Tip: Create the Action from a chat where you’ve already run the prompt and set the scope (e.g. @mentioned a collection). The modal will open with the prompt pre-filled; choose On a schedule or Whenever there is new source data and Run only on the new asset or Run on all matching assets, then click Create Action.


Troubleshooting

If you’re experiencing issues with Actions—runs not firing, errors in run history, or missing results—try these steps in order:

  1. Check that the Action is enabled — In the Actions list or editor, ensure the Action is Enabled. Disabled Actions do not run when the trigger fires.

  2. Verify trigger and scope — For Whenever there is new source data, ensure files are actually being uploaded to the project. For On a schedule, check Hour, Day of week, Day of month, and Timezone in the Schedule section. If the prompt @mentions a collection or label, confirm it exists; empty or missing scope can cause a run to skip or fail.

  3. Review run history — Open ActionsRun history, click the failed or missing run, and read the error message. Common causes: invalid prompt, permission issues, or a @mentioned file/collection was deleted.

  4. Simplify the prompt — Edit the Action and try a shorter prompt or fewer @mentions to see if the next run succeeds.

If the problem continues, note the Action name, trigger type, the error message from run history, and when the run failed. Reach out via in-app support or your usual Storytell channel with those details so the team can help.


FAQ

Will my Action still run if I leave the project or go offline?
Yes. Actions run in the background based on their trigger. You don’t need to be in the project or online. Results appear in Run history in the Actions tab.

What happens if I delete a file or collection that an Action uses?
If the prompt @mentions that file or collection, or the Action’s scope included it, the next run may fail or skip. Check run history for errors and edit the Action to update the prompt or scope.

Can I run an Action on demand?
Actions run only when their trigger fires: On a schedule or Whenever there is new source data. There is no manual “Run now” trigger; the next run happens at the next scheduled time or when the next file is uploaded to the project.

Why don’t I see the Actions tab?
The Actions tab appears when you’re inside a project. If you’re on the home page, the tab bar may not show it. If you’re in a project and still don’t see it, your plan or role may not include Actions—check with your admin or plan features.

Can I create an Action from something I just asked in chat?
Yes. When a chat response is complete, use Create an Action on that response. The modal opens with your prompt pre-filled as the first step; set the trigger, name, and other settings, then save. See Creating an Action from a chat.

Can I use my Prompt Library prompts in an Action?
You can use the same wording as a Prompt Library prompt in the Action’s Prompt field. Use @ to mention Files, Labels, Collections, or Concepts and # to add variable fields as needed.

Are Actions the same in every project?
No. Actions are scoped to the project. Each project has its own Actions list. When you switch projects, you see that project’s Actions. To reuse a workflow in another project, create a new Action there (e.g. from a chat in that project) and set the trigger type and options.

What if a run fails?
Open Run history, click the failed run, and check the error message. Common causes: empty scope, invalid prompt, or permission issues. Edit the Action’s prompt or scope and the next trigger will use the updated configuration.


More on Actions & workflows

  • Skills — Create and use skills; @mention them in the Action’s prompt for consistent behavior.

  • Prompt Library — Save prompts; reuse the same wording and @ / # in the Action’s prompt field.

  • Files and Collections — @mention them in the prompt to put them in scope for the Action.

  • Labels and Concepts — @mention them in the prompt to include them in scope.

  • Projects — Actions are per project; only members with the right role can create or edit Actions.