> ## Documentation Index
> Fetch the complete documentation index at: https://tbd-6fc993ce-hypeship-docs-website-deploy-hook.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Apps

## `kernel deploy <file>`

Deploy an app to Kernel from the current directory. The entrypoint file and dependency manifest must live in the project root.

| Flag                       | Description                                                        |
| -------------------------- | ------------------------------------------------------------------ |
| `--version <version>`      | Use a specific version label (default: latest).                    |
| `--force`                  | Overwrite an existing version with the same label.                 |
| `--env <KEY=VALUE>`, `-e`  | Set environment variables (repeatable).                            |
| `--env-file <file>`        | Load environment variables from a file (repeatable).               |
| `--output json`, `-o json` | Output JSONL (one JSON object per line for each deployment event). |

<Info>`package.json` (JS/TS) or `pyproject.toml` (Python) must be present next to the entrypoint.</Info>

## `kernel deploy github`

Deploy directly from a GitHub repository without cloning or pushing locally.

| Flag                     | Description                                                               |
| ------------------------ | ------------------------------------------------------------------------- |
| `--url <url>`            | GitHub repository URL (e.g. `https://github.com/org/repo`).               |
| `--ref <ref>`            | Git ref to deploy (branch, tag, or commit SHA).                           |
| `--entrypoint <path>`    | Entrypoint within the repo (e.g. `src/index.ts`).                         |
| `--path <subdir>`        | Subdirectory within the repo (e.g. `apps/api`).                           |
| `--github-token <token>` | GitHub token for private repositories (PAT or installation access token). |
| `--region <region>`      | Deployment region (currently only `aws.us-east-1a`).                      |

<Info>For private repositories, provide `--github-token` or set the `GITHUB_TOKEN` environment variable.</Info>

## `kernel deploy logs <deployment_id>`

Stream build and runtime logs for a deployment.

| Flag                       | Description                                                                                                |
| -------------------------- | ---------------------------------------------------------------------------------------------------------- |
| `--follow`, `-f`           | Continue streaming logs in real time.                                                                      |
| `--since <duration>`, `-s` | Fetch logs starting from a relative duration (e.g. `5m`, `1h`, `1h30m`) or timestamp (`2006-01-02T15:04`). |
| `--with-timestamps`, `-t`  | Prefix each line with an RFC3339 timestamp.                                                                |

<Info>Log lines longer than 64 KiB are truncated. Emit bulky payloads to external storage and log references.</Info>

## `kernel deploy history [app_name]`

Show deployment history for all apps or a specific app.

| Flag                       | Description                                                        |
| -------------------------- | ------------------------------------------------------------------ |
| `--limit <n>`              | Maximum number of deployments to return (default: 100, `0` = all). |
| `--output json`, `-o json` | Output raw JSON array.                                             |

## `kernel deploy get <deployment_id>`

Get details for a deployment.

| Flag                       | Description             |
| -------------------------- | ----------------------- |
| `--output json`, `-o json` | Output raw JSON object. |

## `kernel deploy delete <deployment_id>`

Delete a deployment.

| Flag          | Description               |
| ------------- | ------------------------- |
| `--yes`, `-y` | Skip confirmation prompt. |

## `kernel invoke <app> <action>`

Invoke an app action. By default the CLI returns immediately after the invocation is queued.

| Flag                          | Description                                                                   |
| ----------------------------- | ----------------------------------------------------------------------------- |
| `--version <version>`, `-v`   | Target a specific app version (default: latest).                              |
| `--payload <json>`, `-p`      | Provide a JSON payload (stringified, max 64 KB).                              |
| `--payload-file <path>`, `-f` | Read the JSON payload from a file (use `-` for stdin).                        |
| `--sync`, `-s`                | Wait for completion (timeout after 60 s).                                     |
| `--async-timeout <seconds>`   | Timeout for async invocations (min 10, max 3600). Only applies in async mode. |
| `--since <time>`              | Show invocation events since the given time when following async execution.   |
| `--output json`, `-o json`    | Output JSONL (one JSON object per line for each invocation event).            |

<Info>Press `Ctrl+C` to cancel an in-flight invocation. The associated browser sessions are cleaned up automatically.</Info>

## `kernel invoke get <invocation_id>`

Get an invocation.

| Flag                       | Description             |
| -------------------------- | ----------------------- |
| `--output json`, `-o json` | Output raw JSON object. |

## `kernel invoke history`

Show invocation history.

| Flag                       | Description                                                   |
| -------------------------- | ------------------------------------------------------------- |
| `--app <name>`, `-a`       | Filter by app name.                                           |
| `--action <name>`          | Filter by action name.                                        |
| `--status <status>`        | Filter by status: `queued`, `running`, `succeeded`, `failed`. |
| `--deployment-id <id>`     | Filter by deployment ID.                                      |
| `--version <version>`      | Filter by invocation version.                                 |
| `--since <time>`           | Show invocations started since the given time.                |
| `--limit <n>`              | Max invocations to return (default: 100).                     |
| `--offset <n>`             | Number of results to skip.                                    |
| `--output json`, `-o json` | Output raw JSON array.                                        |

## `kernel invoke update <invocation_id>`

Update an invocation's status or output.

| Flag                | Description                                  |
| ------------------- | -------------------------------------------- |
| `--status <status>` | New status: `succeeded` or `failed`.         |
| `--output <json>`   | Updated invocation output, as a JSON string. |

## `kernel invoke browsers <invocation_id>`

List browser sessions for an invocation.

| Flag                       | Description            |
| -------------------------- | ---------------------- |
| `--output json`, `-o json` | Output raw JSON array. |

## `kernel invoke delete-browsers <invocation_id>`

Delete browser sessions for an invocation.

## `kernel app list`

List deployed app versions.

| Flag                       | Description              |
| -------------------------- | ------------------------ |
| `--name <app_name>`        | Filter by app name.      |
| `--version <version>`      | Filter by version label. |
| `--output json`, `-o json` | Output raw JSON array.   |

## `kernel app history <app_name>`

Show deployment history for a specific app.

| Flag                       | Description                                                        |
| -------------------------- | ------------------------------------------------------------------ |
| `--limit <n>`              | Maximum number of deployments to return (default: 100, `0` = all). |
| `--output json`, `-o json` | Output raw JSON array.                                             |

## `kernel app delete <app_name>`

Delete an app and all its deployments.

| Flag                  | Description                                                       |
| --------------------- | ----------------------------------------------------------------- |
| `--version <version>` | Only delete deployments for this version (default: all versions). |
| `--yes`, `-y`         | Skip confirmation prompt.                                         |

## `kernel logs <app_name>`

Tail app logs.

| Flag                       | Description                                                                                                             |
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| `--version <version>`      | Select an app version (default: latest).                                                                                |
| `--invocation <id>`, `-i`  | Show logs for a specific invocation/run. Accepts a full ID or unambiguous prefix; respects `--follow` if still running. |
| `--follow`, `-f`           | Stream logs continuously.                                                                                               |
| `--since <duration>`, `-s` | Fetch logs from a duration or timestamp (same formats as `kernel deploy logs`).                                         |
| `--with-timestamps`        | Include timestamps in each line.                                                                                        |

<Info>Log lines longer than 64 KiB are truncated.</Info>
