> ## Documentation Index
> Fetch the complete documentation index at: https://docs.purna.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Jobs

> Run long-running computational pipelines autonomously in the background.

Jobs are long-running computational tasks that run autonomously in a dedicated cloud sandbox. Unlike [inline code execution](/code-execution) — which runs a single code block and returns results immediately — jobs are designed for multi-step pipelines that can take minutes to hours: RNA-seq analysis, MD simulations, genome assembly, multi-file processing, and other workflows that require sustained compute.

You start a job from chat. Purna spins up a sandbox, plans the work, and executes it step by step. You can monitor progress, send follow-up instructions, pause, resume, or cancel at any time. When the job finishes, output files are saved to your [Files](/guides/files) library.

<iframe width="100%" height="400" src="https://www.youtube.com/embed/kGSaNjWCn8A" title="YouTube video player" frameBorder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen />

## Starting a job from chat

Ask Purna to run something that requires extended computation. Be specific about what you want done, what data to use, and what outputs you expect.

Examples:

* "Run differential expression analysis on my RNA-seq count matrix using DESeq2. Compare treated vs control groups. Output a results CSV and a volcano plot."
* "Set up and run a 10ns MD simulation of PDB 1UBQ using OpenMM. Save the trajectory and energy plots."
* "Process all FASTA files in my uploaded dataset — run BLAST against nr, filter hits with E-value \< 1e-10, and generate a summary table."

Purna will create a background job, plan the steps, and begin execution. A job panel opens in your chat showing real-time progress.

<Tip>
  Include specific parameters, file references, and expected outputs in your request. The job agent works autonomously — the more context you provide upfront, the better the results.
</Tip>

## How a job runs

Once triggered, the job follows this lifecycle:

1. **Planning** — The agent reads your instructions, inspects available data, and creates a step-by-step execution plan.
2. **Execution** — Each step runs sequentially: installing packages, writing scripts, processing data, generating outputs. You can see progress in the job panel.
3. **File sync** — Output files are uploaded directly to cloud storage as they are produced. No data passes through the web server.
4. **Completion** — The job finishes, output files appear in your [Files](/guides/files) library, and you receive a notification.

### What the job panel shows

While a job is running, the panel displays:

* **Progress bar** with current step and total steps
* **Timeline** of completed steps with outputs
* **Plan** showing the agent's to-do list and completion status
* **Messages** for any follow-up communication between you and the agent
* **Files** produced so far, with download links

## Sandbox environment

Each job runs in an isolated cloud sandbox with:

**Pre-installed tools:**

* Python 3 with pip
* R with development libraries
* Git, curl, jq, and standard build tools
* BWA, SAMtools, BCFtools for bioinformatics workflows

**Pre-installed Python libraries:**

* Core: NumPy, SciPy, pandas, matplotlib
* Bioinformatics: Biopython, openpyxl
* R integration via rpy2

Additional packages can be installed by the agent during execution using `pip install` or `apt-get`.

**Data access:**

* Your uploaded files are automatically available in the sandbox workspace
* The agent can download additional data from public sources as needed

## Interacting with a running job

You are not limited to watching. While a job is running, you can:

| Action | How |
| - | - |
| **Send a message** | Type in the job panel to give the agent additional instructions or answer its questions |
| **Pause** | Suspend execution. The sandbox state is preserved — you can resume later. |
| **Resume** | Continue a paused job from where it left off. |
| **Cancel** | Stop the job permanently. Output files generated so far are still available. |

<Note>
  If the agent needs input from you — for example, to choose between analysis options — the job will show an input prompt. Respond in the message panel to continue execution.
</Note>

## Output files

All files produced by a job are automatically saved to your [Files](/guides/files) library. Common outputs include:

* Results tables (CSV, TSV)
* Plots and figures (PNG, SVG)
* Processed data files (H5AD, BED, FASTA)
* Scripts used during execution
* Execution logs

Files are uploaded directly from the sandbox to cloud storage — they never pass through the web application. Each file gets a time-limited download URL when you access it.

You can find job outputs on the [Files](/guides/files) page, where they appear with a **Generated by Purna AI** badge. You can also download them directly from the job panel.

## Jobs vs code execution

| | Inline code execution | Background jobs |
| - | - | - |
| **Triggered by** | Quick code requests in chat | Complex pipeline requests in chat |
| **Execution** | Single code block, runs immediately | Multi-step autonomous workflow |
| **Duration** | Seconds (30s max) | Minutes to hours (1 hour per session) |
| **Results** | Rendered inline in chat | Saved to Files library |
| **Interaction** | None — wait for result | Pause, resume, message, cancel |
| **Best for** | Quick plots, data exploration, small transforms | Pipelines, simulations, multi-file processing |
| **State** | Stateless — each execution is independent | Stateful — agent builds on previous steps |
| **File size** | Small outputs inline | Up to 5 GB per file |

<Tip>
  Use inline code execution for quick tasks: "Plot the distribution of allele frequencies" or "Convert this CSV to JSON." Use jobs for anything that requires multiple steps or will take more than a minute.
</Tip>

## Limits

| Constraint | Limit |
| - | - |
| Max execution time per session | 1 hour (can pause and resume) |
| Concurrent jobs per user | 3 |
| Jobs per chat | 1 |
| Max file size per output | 5 GB |

## Viewing all jobs

Navigate to **Jobs** in the sidebar to see all your background jobs. The page shows:

* Job title and status (running, paused, completed, failed, cancelled)
* Progress indicator (steps completed)
* Duration
* Creation date

Click any job to open its detail panel with the full timeline, messages, files, and execution plan.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.