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

# Jobs Quick Start

> Get started with TensorPool Jobs in minutes

<Note>
  Jobs are ideal for running fire-and-forget experiments.
  If you're starting a new project, using a [cluster](/clusters-quickstart) for interactive development is recommended instead.
</Note>

<Note>
  Make sure you've [installed the TensorPool CLI](/installation) and configured your API key.
</Note>

<Steps>
  <Step title="Initialize a Job" icon="file-code">
    Create a job configuration file in your project directory:

    ```bash theme={null}
    tp job init
    ```

    This prompts for a job name and creates a `{job}.tp.toml` file that defines your training job.
  </Step>

  <Step title="Configure Your Job" icon="wrench">
    Edit the generated `{job}.tp.toml` file to specify your training commands:

    ```toml theme={null}
    commands = [
        "pip install -r requirements.txt",
        "python train.py --epochs 100",
    ]

    outputs = [
        "checkpoints/",
        "model.pth",
        "results.json",
    ]

    ignore = [
        ".venv",
        "venv/",
        "__pycache__/",
        ".git",
        "*.pyc",
    ]
    ```
  </Step>

  <Step title="Create or Select a Cluster" icon="server">
    Jobs run on existing TensorPool clusters. Create one if you don't have one already:

    ```bash theme={null}
    tp cluster create 8xB200
    ```

    Or list your existing clusters:

    ```bash theme={null}
    tp cluster list
    ```

    Note the cluster ID — you'll need it in the next step.
  </Step>

  <Step title="Submit Your Job" icon="rocket">
    Push your job to a cluster:

    ```bash theme={null}
    tp job push {job_name.tp.toml} <cluster_id>
    ```

    Your code will be uploaded and executed on the cluster. You'll receive a job ID to track progress.

    Use `--teardown` to automatically destroy the cluster when the job finishes:

    ```bash theme={null}
    tp job push train.tp.toml <cluster_id> --teardown
    ```
  </Step>

  <Step title="Monitor Your Job" icon="chart-line">
    Stream real-time logs from your running job:

    ```bash theme={null}
    tp job listen <job_id>
    ```

    Check job status and details:

    ```bash theme={null}
    tp job info <job_id>
    ```
  </Step>

  <Step title="Download Results" icon="download">
    Once your job completes, pull the output files:

    ```bash theme={null}
    tp job pull <job_id>
    ```

    This downloads all files specified in the `outputs` section of your configuration.
  </Step>
</Steps>

## Next Steps

* Learn about [job configuration](/features/jobs) for advanced options
* Explore [multi-node training](/guides/multi-node-training) for distributed workloads
* Check out [job commands](/cli/job-commands) for the full CLI reference
* Try [cluster deployment](/clusters-quickstart) for interactive development
