Chatting with Jason

Where chats live, how to write a message, what you see while Jason works, how to answer questions and steer a running task, and how to reach Jason by email.

Jason is the agent that builds, changes and repairs pipelines and answers questions about your data. Everything you ask Jason to do happens in a chat. This page covers the chat surfaces, the composer, what the transcript shows, and the controls around a running task.

Where chats live

Every chat belongs to one workspace. There are three places to find them:

  • Chat History in the sidebar opens the list of all chats in the workspace, at /chat/history.
  • The Jason button bottom-right on every non-chat page opens the floating panel, with a Conversation history icon listing the six most recent chats.
  • Rest the pointer on Chat History in the sidebar for a hover panel with New chat and the eight most recent chats.

The Chat History page

The Chat History page with an active chat card at the top, grouped rows for Today and Earlier, and a New chat button
Chat History. Active chats sit in their own grid above the grouped list.

The toolbar has a search box (Search chats…, matching titles, the first message, and who started the chat), two filters and New chat.

Filter What it shows
Recent Every chat that is not archived, grouped as Pinned chats, Today, Yesterday, Previous 7 days and Earlier. Chats where Jason is working, monitoring a run or waiting for an answer appear first as cards under N active chats.
Archived Chats you have archived. Read-only; no menus or selection.

Each row shows the title, a snippet of the first message or the live status (Jason is working · 0:42, Jason is queued, Monitoring run, Needs answer), a source badge (web, email, MCP, timer, and so on), who started it and when. A red icon marks a chat where Jason stopped on an error and is waiting on you; an amber clock marks a chat with scheduled follow-ups. The row menu offers Pin and Archive; select several rows for a bulk Archive.

The chat page

Open any chat and you get a full page at /chat/<id>.

A full chat page showing a build conversation with user messages, collapsed activity folds, Jason's replies and the Chat details rail on the right
A build chat. The rail on the right lists everything the chat has touched.

From top to bottom and left to right:

  • Breadcrumbs. Home / Chats / the chat title. New chat sits top right.
  • Transcript. Your messages on the right, Jason’s replies and activity on the left. A Jump to latest pill appears when you scroll up.
  • Status area. Under the transcript: any pending question, a Goal card when Jason is working towards a longer objective, Monitoring when the chat is waiting on a run, and the Jason is working · m:ss status with Stop.
  • Composer. The message box, Attach and the send button.
  • Chat details rail. A column of icons on the right that expands on hover or pin. See the right-hand rail.

The browser tab’s icon pulses while Jason works, so you can leave the tab and glance back.

The composer

The chat composer with a message mentioning a pipeline, an attached file chip and the Attach and Send buttons
The composer with a pipeline mention and an attachment.
Control Behaviour
Message box Grows as you type. Enter sends; Shift+Enter adds a line. Up to 65,536 characters; attach anything longer as a file.
Attach Opens the file picker. Any file type.
Send button Sends the message and attachments together. If the send fails the text and files stay put for a retry.
@ Type @ and start a name to mention a pipeline or a ready dataset. Arrow keys move, Enter or Tab accepts, Escape closes. The mention becomes a chip and tells Jason exactly which item you mean.

Attachment limits: 20 files per message, 25 MB per file, 100 MB per message. Attached files show as green chips; the X removes one. Jason reads attachments as part of the message: a spreadsheet of products, a PDF spec, a screenshot of the result you want.

@price-promotion-tracking is missing the multibuy offers on Sainsbury’s. Here is a screenshot of one. Add an offer_text column and capture them.

On a dataset page, rows you have selected in the table travel with the message as an amber N rows chip (up to 1,000 rows), so “why are these five prices zero?” needs no further explanation.

Other pages open a small Edit pipeline or New Pipeline dialog instead of the panel. It has the same box, Attach, dataset mentions, suggestion pills, and ⌘↵ to send.

The floating panel versus the full page

On every page except a chat page, the Jason button bottom-right (or ⌘J, Ctrl+J elsewhere) opens a 400-pixel panel. It is a real chat, scoped to the page you are on: a pipeline page seeds a new conversation with that pipeline as context, a dataset page with that dataset.

  Floating panel Full page
Opens from Jason button, ⌘J, Send to Jason on Home Chat History, the panel’s Open full page, links in notifications
Context Seeded from the current page for a new chat Chosen in the rail; the workspace by default
Sending while Jason works Not offered; wait for the turn to end Allowed; see steering a running turn
Attachments Yes (icon-only Attach) Yes
Details rail, timers, attachments list No Yes
Size Docked panel, or click the header to expand to a modal Whole page

The panel’s empty state suggests starters for the page you are on, such as Add a field… on a pipeline page or Check data quality… on a dataset page. Clicking one fills the composer; nothing is sent until you press send. The header icons are New conversation, Conversation history, Open full page and Close. The panel remembers whether it was open and how big across reloads; a chat left idle for half an hour is replaced with a fresh one next time.

Dashboard, newsletter and alert editing are not available from the panel yet. Jason can inspect and repair the pipelines behind them, and can create dashboards from a full chat.

What a turn is

Each message you send is a turn. Jason reads the message, the attachments, the workspace memory and the chat so far, then works: reading pipelines and runs, fetching pages, testing a change, asking you something. A turn ends with a reply. The reply’s last line reads Took 4m 12s.

Only one turn runs at a time in a chat. If Jason is busy when a scheduled follow-up is due, it waits. If your workspace has several chats working at once, a new turn may show Jason is queued with the note Waiting for an available slot. Jason will start automatically.

What you see in the transcript

Everything below is projected from the chat’s record, so a reload shows exactly the same thing.

Your messages

A bubble on the right with your name above it. Long messages collapse with View more. Attached files are listed underneath; click a name to view it. A message that arrived by email shows an envelope header with the subject, From and To.

Jason’s replies

Flat text on the left under a Jason label. Replies use headings, lists, tables and links. Links to pipelines, runs and datasets open in the app; external links open in a new tab.

Activity folds

While Jason works, its steps collapse into one line that reads like Fetch tesco.com (14) with a chevron and the count of steps inside. The line updates as work continues; a shimmer marks the live fold. Expand it to see every step in order. Steps are labelled in plain terms:

You see Meaning
Fetch followed by a URL and the site’s favicon Jason opened that page.
Search followed by a query A web search.
Read pipeline, Read run activity, Check run, Read run output Jason is reading what already exists.
Run pipeline, Test candidate, Resume run, Cancel run Jason started or controlled a run.
Edit pipeline, Start pipeline change, Pipeline reviewer Jason is changing a pipeline and having the change reviewed.
Query data, Sample dataset, Import dataset, Export dataset Dataset work.
Schedule pipeline, Configure auto-heal, Update pipeline cache Pipeline settings changed on your behalf.
Create timer, Edit timer, Cancel timer A scheduled follow-up was created or changed.
Read workspace memory, Update workspace memory Jason consulted or updated the shared memory.
Send email, Read email Email in or out of the workspace address.
Create integration, Save alert, Test alert, Send delivery Connections and alerts.
Create dashboard, Save dashboard widget, Create newsletter Analytics work.
Read file, Write file, Inspect files, Run command, Test Jason working on the pipeline itself.

A violet brain icon marks a line of Jason’s reasoning. Clicking a step that has a recorded page opens it with Rendered and Raw tabs, exactly as Jason saw it.

Task completed cards

When Jason finishes something concrete, a green card headed Task completed (or the name of the dataset it points to) sits under the reply with a one-line summary and a link: View data, the pipeline, the run. A red That didn’t work card explains a failure the same way.

A green Task completed card at the end of a build chat with a summary and a View data link
The card at the end of a build. Follow the link to what Jason made.

Reports and previews

  • Pipeline reviewer, Pipeline advisor and Cost analyst cards carry a verdict badge (Passed, Failed, Needs evidence) and a View report button. The reviewer’s report lists findings, whether each is blocking, and the version it activated.
  • After a change passes review, a Pipeline — name · vN card embeds the step diagram, with a pop-out and View full pipeline.
  • Dataset, Dashboard and Newsletter previews show the thing Jason built inline, with View full … to open it.
  • Charts Jason renders appear inline.
  • Created a file cards list files Jason published, with View.
  • Sent email cards fold out to the subject, recipients and body.

Status rows

  • Jason is working · m:ss with Stop. After 30 seconds it adds You can leave this page. This session will keep running. and Notify me.
  • Testing candidate while a change is being verified, with a note that candidate tests can take up to an hour and a link to Latest runs.
  • Monitoring run when the chat is waiting for a live run to finish, with progress and View run.
  • A Goal card when Jason is working towards a longer objective you set, with a status pill (In progress, Paused, Needs input, Complete and so on) and Stop, Resume, Edit and Clear goal.

Banners

Amber banners explain an abnormal end: Jason was stopped, Jason lost contact during that message or Jason could not complete that message, each followed by “Send a new message to continue.” A red Your message wasn’t sent banner means the message never reached Jason; your text is still in the composer.

Questions Jason asks

Rather than guess, Jason pauses with a card headed Jason has a question. A card holds up to three questions, each with up to five choices.

  1. Pick a choice, or choose Write your own and type an answer (up to 2,000 characters). A question with no choices shows the text box directly.
  2. Answer every question on the card. Submit answer enables once each has an answer.
  3. Wait for the turn to continue. The button reads Answer sent and Jason carries on. Your answers stay in the transcript.

Jason will never ask you to type a password or key into a chat. A question about a login-protected site says Complete secure setup in Jsonify first and has no text box.

Chats waiting on you are marked Needs answer in Chat History and under Needs attention on Home. If the chat started by email, the question is emailed to you and a plain reply is taken as the answer.

Stopping a turn

Stop is on the working status row, on the Goal card, and next to Jason is working… during setup. Pressing it records a stop request; the label reads Stopping until the turn ends, then the Jason was stopped banner appears. Anything Jason had already activated stays activated; anything mid-way is abandoned. Any member of the workspace can stop any chat.

Steering a running turn

On the full chat page the composer stays open while Jason works, with the placeholder Jason is working — you can add additional messages here. Send a message and it appears in the transcript at once and is folded into the running turn, so you get one coherent reply rather than two. If the turn finishes first, the new message runs straight after.

Actually skip Ocado for now, just Tesco and Sainsbury’s.

The floating panel hides its composer while a turn runs; open the full page to steer.

The right-hand rail

The Chat details rail is a column of icons that expands on hover; pin it open with the button at the top. Each icon carries a count.

Entry What it holds
Context Working on: the workspace, a pipeline or a dataset. Click to change; only between turns. The context scopes the next message.
Timers Follow-ups Jason has scheduled in this chat. See below.
Chats, Memory, Files, Pipelines, Datasets, Runs, Dashboards, Newsletters, Sources, Downloads, Integrations, Alerts, Shared links One list per kind of thing the chat has touched, each searchable and linked. A run entry shows its row count and age.
Attachments Every file sent in the chat, with a viewer.

The Conversation block at the top holds the editable title (click to rename), how the chat started (Started by email, Started by timer, Started during onboarding, Started through a connected assistant, Automatic pipeline repair) and the live status. Archive chat is at the bottom.

Timers and scheduled follow-ups

Ask Jason to come back later and it creates a timer.

Check again tomorrow at 9am and tell me whether the failed run has been repaired.

Every Monday at 08:00 Europe/London, summarise the price changes from last week in this chat.

Timers appear under Timers in the rail, in Scheduled on Home (tagged Jason task), and as an amber clock on the chat’s row in Chat History. A chat holds up to 20. Each card shows the title, the next wake time in your local time, the time zone, a repeat summary such as Every day at 09:00 · Europe/Lisbon, and a countdown.

You cannot create a timer from the rail, but you can change the ones Jason made. The row menu offers:

Action What it does
Edit Opens Edit timer: Title (100 characters), Instruction (2,000 characters), and the schedule (Once with a date and time, or hourly, daily or weekly with a time zone). Save timer applies it.
Cancel timer Stops a scheduled timer but keeps the card. Cancelled timers can be Edit and rescheduled.
Delete Removes the card.

When a timer fires, its instruction is sent into the same chat as an ordinary message. If Jason is busy in that chat the timer waits until it is idle.

Notify me when done

After a turn has run for 30 seconds the status row offers Notify me. One click subscribes this browser to a push notification for the end of this turn (your browser asks permission the first time). If push is not available, or you want another channel, Notify me by lists Browser push and every live notification integration in the workspace: a Slack channel, an email address, a webhook. Once set, the row reads You’ll be notified by … with an edit link and a None option.

This is per turn. The bell on a run page (Notify me when this finishes) is the equivalent for a pipeline run; see Alert history and notifications.

Archiving

Archive chat in the rail, Archive in a row menu, or the bulk Archive on Chat History. Archiving stops any running turn, cancels pending timers, and makes the chat read-only: This chat is archived and read-only. replaces the composer. Archived chats stay readable under the Archived filter. Archiving is the only way to remove a chat from the list; there is no delete and no unarchive.

Jason by email

Every workspace has its own Jason address, shown in Settings → Jason Emails → Allowlist as a mailto link. Sending a message to it starts a new chat in the workspace; replying to Jason’s answer continues that chat. The address does not change if you rename the workspace.

Subject: Weekly menu check

Hi Jason — the attached sheet has 40 more venues. Add them to the menu pipeline, keep the same columns, and let me know once the first run with them has finished.

Rules that keep this safe:

  • Only current members of the organisation can start or continue a chat by email, and the message must be genuinely from their domain. Anything else is ignored silently.
  • Message limits: 5 MiB in total, a 60 KB body, 10 attachments of up to 3 MiB each.
  • Jason replies to organisation members freely. To let it email anyone else, add their address or exact domain to the Outbound email allowlist in the same settings tab (up to 100 entries). Subdomains are not included.
  • Questions Jason asks in an email-started chat are emailed to you; a plain reply is recorded as the answer.

In the app, an email-started chat shows an envelope on its row and Started by email in the rail. Every message Jason sends appears as a Sent email card. Settings are on Workspace settings.

Workspace memory

Ask Jason to remember something durable and it writes it to the shared workspace memory, which every chat in the workspace reads at the start of a turn.

Remember that we always report prices in EUR and treat “RRP” as the list price, not the selling price.

The transcript shows Update workspace memory with the reason, and a Memory entry appears in the rail linking to Settings → Content → Jason Memory, where anyone in the workspace can read and edit the text. Details on Workspace settings.

What’s next

Connect your data assistant

Build datasets and work with your data in ChatGPT, Claude, Copilot or another assistant.

Connect in ChatGPT

  1. Open Settings → Security and login and enable Developer mode.
  2. Open Plugins and select + to create a connection. Name it Jsonify, add a short description, and paste the URL below.
  3. Use OAuth for authentication, select Create, and sign in to your Jsonify account when prompted.
  4. Start a new chat and select Jsonify from + → More, then describe your dataset.
Server URLhttps://factory.jsonify.com/mcp

If Developer mode is unavailable, your plan or workspace settings may restrict custom connections.

Official ChatGPT setup guide ↗

Then say: “build me a dataset of competitor product prices and availability, refreshed daily”. Full instructions per client on /connect.