# Aether ## Docs - [Introduction](https://docs.runaether.dev/introduction.md): What is Aether and why it exists - [Quickstart](https://docs.runaether.dev/quickstart.md): Install the CLI, set up Aether, and run your first task - [Projects](https://docs.runaether.dev/guides/projects.md): Create projects, link a repository, and set per-project task defaults - [Tasks](https://docs.runaether.dev/guides/tasks.md): Create, run, and steer AI agent tasks - [Teleport](https://docs.runaether.dev/guides/teleport.md): Move a live Claude Code or Codex session from your machine to an Aether task - [Agents and Models](https://docs.runaether.dev/guides/agents-and-models.md): Choose the agent provider, model, interaction mode, and reasoning effort per task and as defaults. - [Connect Agent Providers](https://docs.runaether.dev/guides/connect-agent-providers.md): Authenticate Codex, Claude Code, and OpenCode so the agent can run under your provider account. - [Workspaces](https://docs.runaether.dev/guides/workspaces.md): The cloud VMs that run agent tasks - [Workspace Screen](https://docs.runaether.dev/guides/workspace-ui.md): The web workspace: chat, composer, file tree, diffs, terminal, and preview - [Skills](https://docs.runaether.dev/guides/skills.md): Author a SKILL.md, upload reusable skills with the CLI, and let repo skills load automatically. - [Environment Variables](https://docs.runaether.dev/guides/environment-variables.md): Set project environment variables that are injected into the agent's process environment - [Secret Files](https://docs.runaether.dev/guides/secret-files.md): Store encrypted files that are materialized into the workspace at task start - [Environment Configuration](https://docs.runaether.dev/guides/environment-json.md): Configure workspace setup with .aether/environment.json - [GitHub Integration](https://docs.runaether.dev/guides/github-integration.md): Install the Aether GitHub App, import a repo into a project, push changes back, and let Aether review pull requests. - [Preview URLs](https://docs.runaether.dev/guides/preview-urls.md): Reach applications running inside a workspace through tokenized preview URLs - [Integrations](https://docs.runaether.dev/guides/integrations.md): Connect GitHub, Sentry, Linear, and Slack, and bring your own coding-agent provider keys. - [Linear Integration](https://docs.runaether.dev/guides/linear-integration.md): Connect Linear so issues route to Aether projects as tasks and results post back as Linear comments. - [Slack Integration](https://docs.runaether.dev/guides/slack-integration.md): Connect Slack so channel messages route to Aether projects as tasks and updates post back to the thread. - [Usage](https://docs.runaether.dev/guides/usage.md): Track credits, VM runtime, tokens, and runs across your tasks in the Usage settings. - [Billing](https://docs.runaether.dev/guides/billing.md): Manage your plan, buy credit packs, open the billing portal, and understand what a task costs. - [Settings](https://docs.runaether.dev/guides/settings.md): The Settings screen: project defaults, connections, billing, appearance, and account preferences. - [Notifications](https://docs.runaether.dev/guides/notifications.md): Notification channels, the event kinds you can subscribe to, and replying by email. - [Core Concepts](https://docs.runaether.dev/concepts/overview.md): The building blocks of Aether and how they fit together - [Projects](https://docs.runaether.dev/concepts/projects.md): The project model, per-project task defaults, and PR review policy - [Tasks & Lifecycle](https://docs.runaether.dev/concepts/tasks-and-lifecycle.md): The persisted task states, the display statuses you see, and the awaiting-input kinds - [Workspaces](https://docs.runaether.dev/concepts/workspaces.md): The isolated cloud VM where the agent runs your code, its lifecycle states, hardware tiers, and toolchain. - [Agents & Models](https://docs.runaether.dev/concepts/agents-and-models.md): The three selectable agent providers, their model catalogs, reasoning-effort options, and interaction modes. - [Skills](https://docs.runaether.dev/concepts/skills.md): Reusable instruction bundles the agent loads into the workspace, authored as SKILL.md folders. - [Warm Slots](https://docs.runaether.dev/concepts/warm-slots.md): Reserved warm capacity that lets tasks start fast, bounded by your subscription tier. - [Billing & Credits](https://docs.runaether.dev/concepts/billing-and-credits.md): How Aether meters usage: credits are VM runtime, tokens are never billed. - [Pricing & Tiers](https://docs.runaether.dev/concepts/pricing-and-tiers.md): Subscription tiers, included credits and warm slots, credit packs, and allowed VM sizes. - [Automation](https://docs.runaether.dev/concepts/automation.md): How Aether reacts to GitHub events and inbound replies to spawn or follow up on tasks. - [Integrations](https://docs.runaether.dev/concepts/integrations.md): How Aether connects to GitHub, Sentry, Linear, and Slack, and how integration events spawn tasks. - [API Overview](https://docs.runaether.dev/api-reference/overview.md): The Aether REST API: base URL, scope, request format, errors, and pagination - [Authentication](https://docs.runaether.dev/api-reference/authentication.md): Authenticate with a platform API key or a session JWT - [List projects](https://docs.runaether.dev/api-reference/v1/projects/get-projects.md) - [Create project](https://docs.runaether.dev/api-reference/v1/projects/post-projects.md) - [Get project](https://docs.runaether.dev/api-reference/v1/projects/get-projects-by-id.md) - [Update project](https://docs.runaether.dev/api-reference/v1/projects/patch-projects-by-id.md) - [Archive project](https://docs.runaether.dev/api-reference/v1/projects/post-projects-by-id-archive.md) - [List workspaces for a project](https://docs.runaether.dev/api-reference/v1/workspaces/get-projects-by-projectid-workspaces.md) - [List workspaces across all projects](https://docs.runaether.dev/api-reference/v1/workspaces/get-workspaces.md) - [Get a workspace](https://docs.runaether.dev/api-reference/v1/workspaces/get-workspaces-by-workspaceid.md) - [Update workspace settings](https://docs.runaether.dev/api-reference/v1/workspaces/patch-workspaces-by-workspaceid.md) - [Delete a workspace](https://docs.runaether.dev/api-reference/v1/workspaces/delete-workspaces-by-workspaceid.md) - [Connect to a workspace](https://docs.runaether.dev/api-reference/v1/workspaces/post-workspaces-by-workspaceid-connect.md) - [Create an authenticated preview](https://docs.runaether.dev/api-reference/v1/workspaces/post-workspaces-by-workspaceid-preview-auth.md): Runs the repository-owned preview auth hook inside the workspace. URL results can be opened directly; local_storage results require explicit client-side application. - [Stop a workspace](https://docs.runaether.dev/api-reference/v1/workspaces/post-workspaces-by-workspaceid-stop.md) - [List tasks](https://docs.runaether.dev/api-reference/v1/tasks/get-tasks.md) - [Create a task](https://docs.runaether.dev/api-reference/v1/tasks/post-tasks.md) - [Get a task with its activity](https://docs.runaether.dev/api-reference/v1/tasks/get-tasks-by-taskid.md) - [List media captured for a task](https://docs.runaether.dev/api-reference/v1/tasks/get-tasks-by-taskid-media.md) - [Replace task settings](https://docs.runaether.dev/api-reference/v1/tasks/put-tasks-by-taskid.md) - [Archive a task](https://docs.runaether.dev/api-reference/v1/tasks/post-tasks-by-taskid-archive.md) - [Unarchive a task](https://docs.runaether.dev/api-reference/v1/tasks/delete-tasks-by-taskid-archive.md) - [Get the task conversation delta after a sequence](https://docs.runaether.dev/api-reference/v1/tasks/get-tasks-by-taskid-conversation-delta.md) - [Get a page of task conversation messages](https://docs.runaether.dev/api-reference/v1/tasks/get-tasks-by-taskid-conversation-messages.md) - [List the task's GitHub feedback dispatch ledger](https://docs.runaether.dev/api-reference/v1/tasks/get-tasks-by-taskid-github-dispatches.md): Requires membership in the task's owning organization. - [Get the task's published pull request merge box and live checks](https://docs.runaether.dev/api-reference/v1/tasks/get-tasks-by-taskid-github-pr.md) - [Get the changed files of the task's published pull request at a pinned commit](https://docs.runaether.dev/api-reference/v1/tasks/get-tasks-by-taskid-github-pr-diff.md): The same live GitHub file listing getPRReviewDiff serves, for the task's published pull request instead of a reviewed one: patch is absent when GitHub provides none (binary or oversized files), and truncated is true at GitHub's 3000-file cap. Nothing is cached or persisted. head_sha pins the answer… - [List the task's published pull request review threads](https://docs.runaether.dev/api-reference/v1/tasks/get-tasks-by-taskid-github-pr-threads.md) - [Dispatch GitHub PR feedback to the task's agent](https://docs.runaether.dev/api-reference/v1/tasks/post-tasks-by-taskid-github-dispatch.md): Requires the task creator or an admin in the task's owning organization. - [Reply to a PR review comment on the task's pull request](https://docs.runaether.dev/api-reference/v1/tasks/post-tasks-by-taskid-github-pr-comments-by-commentid-reply.md): Requires the task creator or an admin in the task's owning organization. - [Resolve the review thread containing a PR review comment on the task's pull request](https://docs.runaether.dev/api-reference/v1/tasks/post-tasks-by-taskid-github-pr-comments-by-commentid-resolve.md): Requires the task creator or an admin in the task's owning organization. - [Merge the task's pull request](https://docs.runaether.dev/api-reference/v1/tasks/post-tasks-by-taskid-github-pr-merge.md): Requires the task creator or an admin in the task's owning organization. - [Remove a queued message from a task](https://docs.runaether.dev/api-reference/v1/tasks/post-tasks-by-taskid-remove-from-queue.md) - [Respond to a task](https://docs.runaether.dev/api-reference/v1/tasks/post-tasks-by-taskid-respond.md) - [Stop a running task](https://docs.runaether.dev/api-reference/v1/tasks/post-tasks-by-taskid-stop.md) - [Create a task from an imported local agent session](https://docs.runaether.dev/api-reference/v1/tasks/post-tasks-teleport.md) - [List project environment variables](https://docs.runaether.dev/api-reference/v1/env-vars/get-projects-by-id-env-vars.md) - [Import project environment variables](https://docs.runaether.dev/api-reference/v1/env-vars/post-projects-by-id-env-vars-import.md) - [Get project environment variable](https://docs.runaether.dev/api-reference/v1/env-vars/get-projects-by-id-env-vars-by-key.md) - [Set project environment variable](https://docs.runaether.dev/api-reference/v1/env-vars/put-projects-by-id-env-vars-by-key.md) - [Delete project environment variable](https://docs.runaether.dev/api-reference/v1/env-vars/delete-projects-by-id-env-vars-by-key.md) - [List project secret files](https://docs.runaether.dev/api-reference/v1/secret-files/get-projects-by-id-secret-files.md) - [Upload project secret file](https://docs.runaether.dev/api-reference/v1/secret-files/post-projects-by-id-secret-files.md) - [Bulk upload project secret files](https://docs.runaether.dev/api-reference/v1/secret-files/post-projects-by-id-secret-files-bulk.md) - [Get project secret file](https://docs.runaether.dev/api-reference/v1/secret-files/get-projects-by-id-secret-files-by-file-key.md) - [Delete project secret file](https://docs.runaether.dev/api-reference/v1/secret-files/delete-projects-by-id-secret-files-by-file-key.md) - [List project skills](https://docs.runaether.dev/api-reference/v1/skills/get-projects-by-id-skills.md) - [List user skills](https://docs.runaether.dev/api-reference/v1/skills/get-skills.md) - [Upload user skill](https://docs.runaether.dev/api-reference/v1/skills/post-skills.md) - [Get user skill](https://docs.runaether.dev/api-reference/v1/skills/get-skills-by-slug.md) - [Delete user skill](https://docs.runaether.dev/api-reference/v1/skills/delete-skills-by-slug.md) - [List automations](https://docs.runaether.dev/api-reference/v1/automations/get-automations.md) - [Update automation](https://docs.runaether.dev/api-reference/v1/automations/put-automations-by-automationid.md) - [Delete automation](https://docs.runaether.dev/api-reference/v1/automations/delete-automations-by-automationid.md) - [Pause automation](https://docs.runaether.dev/api-reference/v1/automations/post-automations-by-automationid-pause.md) - [Resume automation](https://docs.runaether.dev/api-reference/v1/automations/post-automations-by-automationid-resume.md) - [List automation runs](https://docs.runaether.dev/api-reference/v1/automations/get-automations-by-automationid-runs.md) - [Create project automation](https://docs.runaether.dev/api-reference/v1/automations/post-projects-by-projectid-automations.md) - [List agent profiles](https://docs.runaether.dev/api-reference/v1/agent-profiles/get-agent-profiles.md) - [Create agent profile](https://docs.runaether.dev/api-reference/v1/agent-profiles/post-agent-profiles.md) - [Update agent profile](https://docs.runaether.dev/api-reference/v1/agent-profiles/put-agent-profiles-by-profileid.md) - [Delete agent profile](https://docs.runaether.dev/api-reference/v1/agent-profiles/delete-agent-profiles-by-profileid.md) - [Get usage summary](https://docs.runaether.dev/api-reference/v1/usage/get-usage-summary.md) - [Get profile](https://docs.runaether.dev/api-reference/account/profile/get-profile.md) - [Complete onboarding](https://docs.runaether.dev/api-reference/account/profile/post-profile-onboarding-complete.md): Completes onboarding without creating a project or launch task for either a user who belongs to a team or a self-serve user with a connected GitHub installation and a connected Codex, Claude Code, or OpenCode credential. - [Launch the onboarding task](https://docs.runaether.dev/api-reference/account/profile/post-profile-onboarding-launch.md): Idempotently creates the user's first task and completes onboarding in one transaction. Repeat calls return the already-launched task. If onboarding completed without a linked launch, returns 409 with code onboarding_already_completed. - [Set up the onboarding repository](https://docs.runaether.dev/api-reference/account/profile/post-profile-onboarding-repo.md): Idempotently creates the user's project for a GitHub repo — project row, repo link, env vars, and skill indexing commit in one transaction. Repeat calls for the same repo return the already-linked project. - [List my organizations](https://docs.runaether.dev/api-reference/account/orgs/get-orgs.md) - [Create a team organization](https://docs.runaether.dev/api-reference/account/orgs/post-orgs.md) - [List organization members](https://docs.runaether.dev/api-reference/account/orgs/get-orgs-by-orgid-members.md) - [Change an organization member role](https://docs.runaether.dev/api-reference/account/orgs/patch-orgs-by-orgid-members-by-userid.md) - [Remove an organization member](https://docs.runaether.dev/api-reference/account/orgs/delete-orgs-by-orgid-members-by-userid.md): Returns counts of active resources attributed to the removed member that may require credential reassignment. - [Leave an organization](https://docs.runaether.dev/api-reference/account/orgs/post-orgs-by-orgid-leave.md) - [List pending organization invitations](https://docs.runaether.dev/api-reference/account/orgs/get-orgs-by-orgid-invites.md) - [Invite a user to an organization](https://docs.runaether.dev/api-reference/account/orgs/post-orgs-by-orgid-invites.md) - [Revoke an organization invitation](https://docs.runaether.dev/api-reference/account/orgs/delete-orgs-by-orgid-invites-by-inviteid.md) - [List my pending organization invitations](https://docs.runaether.dev/api-reference/account/orgs/get-invites.md) - [Accept an organization invitation](https://docs.runaether.dev/api-reference/account/orgs/post-invites-by-inviteid-accept.md) - [Get dismissed discovery keys](https://docs.runaether.dev/api-reference/account/user-discovery/get-user-discovery.md) - [Dismiss a discovery key](https://docs.runaether.dev/api-reference/account/user-discovery/post-user-discovery-dismiss.md) - [List reviewed pull requests with their review runs](https://docs.runaether.dev/api-reference/account/pr-reviews/get-pr-reviews.md): One group per reviewed pull request, newest activity first. Grouping and the review-run status are resolved server-side so the listing can be paginated by group. needs_attention marks a group whose newest run failed; it does not affect ordering. - [Get one reviewed pull request with its review runs](https://docs.runaether.dev/api-reference/account/pr-reviews/get-pr-reviews-by-pullrequestid.md): The single-PR read of listPRReviews: the same group facts plus the pull request description and captured reviews posted to the PR (newest first), addressed by the pull_request_id every listed group carries. Reviews posted before capture shipped have no content row and are honestly absent. 404 covers… - [Get the changed files of a reviewed pull request with unified-diff patches](https://docs.runaether.dev/api-reference/account/pr-reviews/get-pr-reviews-by-pullrequestid-diff.md): Fetched live from GitHub at request time; nothing is persisted. patch is absent when GitHub provides none (binary or oversized files). truncated is true when the listing hit GitHub's 3000-file cap. expected_head is optional and pins the answer to one commit: GitHub computes this listing against the… - [List the review threads of a reviewed pull request](https://docs.runaether.dev/api-reference/account/pr-reviews/get-pr-reviews-by-pullrequestid-threads.md): The listing getTaskGithubPullRequestThreads serves, addressed by the pull request row instead of an authoring task: the PR review page renders threads for pull requests it did not open. Fetched live from GitHub GraphQL at request time; nothing is persisted. The listing is all-or-nothing — pagination… - [Get one file's content at a reviewed commit of a pull request](https://docs.runaether.dev/api-reference/account/pr-reviews/get-pr-reviews-by-pullrequestid-file-content.md): Fetched live from GitHub at request time; nothing is persisted or cached. ref must be a full commit SHA the review group actually reviewed — the pull request's reconciled head or a review run's head — and any other SHA is a 404 before a single GitHub call: the endpoint serves reviewed commits, not a… - [List Aether feedback dispatches for a reviewed pull request](https://docs.runaether.dev/api-reference/account/pr-reviews/get-pr-reviews-by-pullrequestid-github-dispatches.md): Requires the same owning-organization membership and current GitHub repository access as getPRReview. Returns 404 when the pull request has no same-org authoring Aether task. - [Get a reviewed pull request's merge state and live checks](https://docs.runaether.dev/api-reference/account/pr-reviews/get-pr-reviews-by-pullrequestid-github-pr.md): Authorization matches getPRReview: owning-organization membership and current GitHub repository access are resolved before the pull request or checks are loaded. - [Dispatch reviewed pull request feedback to Aether](https://docs.runaether.dev/api-reference/account/pr-reviews/post-pr-reviews-by-pullrequestid-github-dispatch.md): Requires the same access as getPRReview and targets only a same-org Aether task that published this exact pull request. - [Post a top-level comment on a reviewed pull request](https://docs.runaether.dev/api-reference/account/pr-reviews/post-pr-reviews-by-pullrequestid-github-pr-comments.md): Requires the same owning-organization membership and current GitHub repository access as getPRReview. The idempotency key is claimed before GitHub is called: completed attempts replay successfully, while ambiguous or failed claims conflict without posting again. - [Merge a reviewed pull request](https://docs.runaether.dev/api-reference/account/pr-reviews/post-pr-reviews-by-pullrequestid-github-pr-merge.md): Requires the same access as getPRReview and squash-merges the exact pull request row named by pullRequestID. - [Register an Expo push token for the current user](https://docs.runaether.dev/api-reference/account/push-tokens/post-user-push-tokens.md) - [Unregister an Expo push token for the current user](https://docs.runaether.dev/api-reference/account/push-tokens/post-user-push-tokens-unregister.md) - [Get Cursor auth status](https://docs.runaether.dev/api-reference/account/cursor-auth/get-cursor-auth.md) - [Delete Cursor auth](https://docs.runaether.dev/api-reference/account/cursor-auth/delete-cursor-auth.md) - [Store Cursor subscription auth](https://docs.runaether.dev/api-reference/account/cursor-auth/put-cursor-auth-subscription.md) - [Get Claude Code auth status](https://docs.runaether.dev/api-reference/account/claude-code-auth/get-claude-code-auth.md) - [Delete Claude Code auth](https://docs.runaether.dev/api-reference/account/claude-code-auth/delete-claude-code-auth.md) - [Store Claude Code setup token](https://docs.runaether.dev/api-reference/account/claude-code-auth/put-claude-code-auth-setup-token.md) - [Get Slack install URL](https://docs.runaether.dev/api-reference/account/slack/get-auth-slack-url.md) - [List Slack channels](https://docs.runaether.dev/api-reference/account/slack/get-slack-channels.md) - [Disconnect Slack](https://docs.runaether.dev/api-reference/account/slack/delete-slack-connection.md) - [Update Slack connection](https://docs.runaether.dev/api-reference/account/slack/patch-slack-connection.md) - [Link my Slack identity](https://docs.runaether.dev/api-reference/account/slack/post-slack-identity-link.md) - [Unlink my Slack identity](https://docs.runaether.dev/api-reference/account/slack/delete-slack-identity-link.md) - [List Slack routes](https://docs.runaether.dev/api-reference/account/slack/get-slack-routes.md) - [Create Slack route](https://docs.runaether.dev/api-reference/account/slack/post-slack-routes.md) - [Update Slack route](https://docs.runaether.dev/api-reference/account/slack/patch-slack-routes-by-routeid.md) - [Delete Slack route](https://docs.runaether.dev/api-reference/account/slack/delete-slack-routes-by-routeid.md) - [Get Slack status](https://docs.runaether.dev/api-reference/account/slack/get-slack-status.md) - [List user API keys](https://docs.runaether.dev/api-reference/account/api-keys/get-user-api-keys.md) - [Add user API key](https://docs.runaether.dev/api-reference/account/api-keys/post-user-api-keys.md) - [Remove user API key](https://docs.runaether.dev/api-reference/account/api-keys/delete-user-api-keys-by-provider.md) - [Get Codex auth status](https://docs.runaether.dev/api-reference/account/codex-auth/get-codex-auth.md) - [Delete Codex auth](https://docs.runaether.dev/api-reference/account/codex-auth/delete-codex-auth.md) - [Store Codex API key auth](https://docs.runaether.dev/api-reference/account/codex-auth/put-codex-auth-api-key.md) - [Poll Codex device auth](https://docs.runaether.dev/api-reference/account/codex-auth/post-codex-device-auth-poll.md) - [Start Codex device auth](https://docs.runaether.dev/api-reference/account/codex-auth/post-codex-device-auth-start.md) - [Get Sentry install URL](https://docs.runaether.dev/api-reference/account/sentry/get-auth-sentry-url.md) - [Disconnect Sentry](https://docs.runaether.dev/api-reference/account/sentry/delete-sentry-connection.md) - [Update Sentry connection](https://docs.runaether.dev/api-reference/account/sentry/patch-sentry-connection.md) - [List Sentry project links](https://docs.runaether.dev/api-reference/account/sentry/get-sentry-links.md) - [Create Sentry project link](https://docs.runaether.dev/api-reference/account/sentry/post-sentry-links.md) - [Update Sentry project link](https://docs.runaether.dev/api-reference/account/sentry/patch-sentry-links-by-linkid.md) - [Delete Sentry project link](https://docs.runaether.dev/api-reference/account/sentry/delete-sentry-links-by-linkid.md) - [List Sentry projects](https://docs.runaether.dev/api-reference/account/sentry/get-sentry-projects.md) - [Get Sentry status](https://docs.runaether.dev/api-reference/account/sentry/get-sentry-status.md) - [Submit feedback](https://docs.runaether.dev/api-reference/account/feedback/post-feedback.md) - [Get notification preferences](https://docs.runaether.dev/api-reference/account/notifications/get-user-notification-preferences.md) - [Update notification preferences](https://docs.runaether.dev/api-reference/account/notifications/put-user-notification-preferences.md) - [List notifications](https://docs.runaether.dev/api-reference/account/notifications/get-user-notifications.md) - [Resolve task notifications](https://docs.runaether.dev/api-reference/account/notifications/post-user-notifications-tasks-by-taskid-resolve.md): Resolve every active notification for the task, regardless of kind. Clients call this when the task is viewed. - [Dismiss notification](https://docs.runaether.dev/api-reference/account/notifications/post-user-notifications-by-id-dismiss.md) - [Get opencode auth status](https://docs.runaether.dev/api-reference/account/opencode-auth/get-opencode-auth.md) - [Delete opencode auth](https://docs.runaether.dev/api-reference/account/opencode-auth/delete-opencode-auth.md) - [Store opencode auth file](https://docs.runaether.dev/api-reference/account/opencode-auth/put-opencode-auth-file.md) - [Get GitHub install URL](https://docs.runaether.dev/api-reference/account/github/get-auth-github-url.md) - [Get GitHub authorize URL](https://docs.runaether.dev/api-reference/account/github/get-auth-github-authorize-url.md) - [Claim GitHub installations from an OAuth code](https://docs.runaether.dev/api-reference/account/github/post-github-installations-claim.md) - [Disconnect GitHub](https://docs.runaether.dev/api-reference/account/github/delete-github-connection.md) - [List GitHub repos](https://docs.runaether.dev/api-reference/account/github/get-github-repos.md) - [Get GitHub status](https://docs.runaether.dev/api-reference/account/github/get-github-status.md) - [List GitHub repo branch suggestions](https://docs.runaether.dev/api-reference/account/github/get-projects-by-id-github-branch-suggestions.md) - [Export GitHub repo](https://docs.runaether.dev/api-reference/account/github/post-projects-by-id-github-export.md) - [Get GitHub git status](https://docs.runaether.dev/api-reference/account/github/get-projects-by-id-github-git-status.md) - [Import GitHub repo](https://docs.runaether.dev/api-reference/account/github/post-projects-by-id-github-import.md) - [Get GitHub project link](https://docs.runaether.dev/api-reference/account/github/get-projects-by-id-github-link.md) - [Fetch GitHub repo tree](https://docs.runaether.dev/api-reference/account/github/get-projects-by-id-github-tree.md) - [List platform API keys](https://docs.runaether.dev/api-reference/account/platform-keys/get-user-platform-keys.md) - [Create platform API key](https://docs.runaether.dev/api-reference/account/platform-keys/post-user-platform-keys.md) - [Revoke platform API key](https://docs.runaether.dev/api-reference/account/platform-keys/delete-user-platform-keys-by-id.md) - [Get user settings](https://docs.runaether.dev/api-reference/account/user-settings/get-user-settings.md) - [Update user settings](https://docs.runaether.dev/api-reference/account/user-settings/put-user-settings.md) - [Get billing balance](https://docs.runaether.dev/api-reference/account/billing/get-billing-balance.md) - [Get billing catalog](https://docs.runaether.dev/api-reference/account/billing/get-billing-catalog.md) - [Create billing checkout session](https://docs.runaether.dev/api-reference/account/billing/post-billing-checkout-sessions.md) - [Get billing checkout session](https://docs.runaether.dev/api-reference/account/billing/get-billing-checkout-sessions-by-lookup.md) - [List billing credit packs](https://docs.runaether.dev/api-reference/account/billing/get-billing-credit-packs.md) - [Create billing portal session](https://docs.runaether.dev/api-reference/account/billing/post-billing-portal-sessions.md) - [List billing warm slots](https://docs.runaether.dev/api-reference/account/billing/get-billing-slots.md) - [Assign a project to a billing warm slot](https://docs.runaether.dev/api-reference/account/billing/post-billing-slots.md) - [Release a billing warm slot](https://docs.runaether.dev/api-reference/account/billing/delete-billing-slots-by-slotid.md) - [Get billing subscription](https://docs.runaether.dev/api-reference/account/billing/get-billing-subscription.md) - [Get Linear install URL](https://docs.runaether.dev/api-reference/account/linear/get-auth-linear-url.md) - [Disconnect Linear](https://docs.runaether.dev/api-reference/account/linear/delete-linear-connection.md) - [Update Linear connection](https://docs.runaether.dev/api-reference/account/linear/patch-linear-connection.md) - [List Linear projects](https://docs.runaether.dev/api-reference/account/linear/get-linear-projects.md) - [List Linear routes](https://docs.runaether.dev/api-reference/account/linear/get-linear-routes.md) - [Create Linear route](https://docs.runaether.dev/api-reference/account/linear/post-linear-routes.md) - [Update Linear route](https://docs.runaether.dev/api-reference/account/linear/patch-linear-routes-by-routeid.md) - [Delete Linear route](https://docs.runaether.dev/api-reference/account/linear/delete-linear-routes-by-routeid.md) - [Get Linear status](https://docs.runaether.dev/api-reference/account/linear/get-linear-status.md) - [List Linear teams](https://docs.runaether.dev/api-reference/account/linear/get-linear-teams.md) - [WebSocket Overview](https://docs.runaether.dev/api-reference/websocket/overview.md): Connect to a running workspace over a single multiplexed WebSocket - [Terminal Channel](https://docs.runaether.dev/api-reference/websocket/terminal.md): Multiplexed PTY terminal sessions over the workspace WebSocket - [Files Channel](https://docs.runaether.dev/api-reference/websocket/files.md): File operations, fuzzy path search, and real-time change notifications - [Agent Channel](https://docs.runaether.dev/api-reference/websocket/agent.md): Subscribe to a task's live event stream over the workspace WebSocket - [Ports Channel](https://docs.runaether.dev/api-reference/websocket/ports.md): Open-port snapshots, change notifications, process kill, and preview URLs - [Git Channel](https://docs.runaether.dev/api-reference/websocket/git.md): Workspace diff, checkpoints, and restoring or reverting agent changes - [CLI Overview](https://docs.runaether.dev/cli/overview.md): The aether command-line interface for projects, tasks, workspaces, billing, and integrations - [Installation](https://docs.runaether.dev/cli/installation.md): Install the Aether CLI on macOS, Linux, or Windows - [aether run](https://docs.runaether.dev/cli/run.md): Create a task from a prompt and watch the agent work - [aether models](https://docs.runaether.dev/cli/models.md): List the agent types and models accepted by --agent-type and --model - [aether project](https://docs.runaether.dev/cli/project.md): Create, list, and manage Aether projects - [aether task](https://docs.runaether.dev/cli/task.md): Create, monitor, and manage agent tasks - [aether usage](https://docs.runaether.dev/cli/usage.md): Show a credits, tokens, and VM-uptime usage summary - [aether billing](https://docs.runaether.dev/cli/billing.md): Manage billing, credits, checkout, and portal sessions - [aether warm-slot](https://docs.runaether.dev/cli/warm-slot.md): List, assign, and release billing warm slots - [aether notification](https://docs.runaether.dev/cli/notification.md): List, dismiss, and configure delivery of notifications - [aether profile](https://docs.runaether.dev/cli/profile.md): Show the current authenticated user's profile - [aether settings](https://docs.runaether.dev/cli/settings.md): View and set account-level agent and hardware defaults - [aether token](https://docs.runaether.dev/cli/token.md): Create and manage platform API keys for the REST API - [aether feedback](https://docs.runaether.dev/cli/feedback.md): Submit product feedback from the CLI - [aether workspace](https://docs.runaether.dev/cli/workspace.md): Manage cloud development workspaces from the CLI - [aether file](https://docs.runaether.dev/cli/file.md): Read, write, and manage files in a running workspace - [aether env](https://docs.runaether.dev/cli/env.md): Manage project environment variables - [aether git](https://docs.runaether.dev/cli/git.md): View diffs, revert files, and manage workspace snapshots - [aether secret](https://docs.runaether.dev/cli/secret.md): Manage project secret files materialized into the workspace - [aether skill](https://docs.runaether.dev/cli/skill.md): Manage saved user skills and install the public teleport skill - [aether github](https://docs.runaether.dev/cli/github.md): Connect GitHub, import a repository into a project, and push changes back - [aether sentry](https://docs.runaether.dev/cli/sentry.md): Connect Sentry and link Sentry projects to GitHub repos for auto-fix - [aether linear](https://docs.runaether.dev/cli/linear.md): Connect Linear and route issues to Aether projects as tasks - [aether slack](https://docs.runaether.dev/cli/slack.md): Connect Slack and route channels to Aether projects as tasks - [aether codex](https://docs.runaether.dev/cli/codex.md): Connect Codex provider auth with a subscription or API key - [aether claude-code](https://docs.runaether.dev/cli/claude-code.md): Connect Claude Code provider auth with a setup token - [aether opencode](https://docs.runaether.dev/cli/opencode.md): Connect OpenCode provider auth by uploading your local auth.json - [aether cursor](https://docs.runaether.dev/cli/cursor.md): Connect Cursor provider auth by importing your local cursor-agent login - [aether auth](https://docs.runaether.dev/cli/auth.md): Log in, log out, and manage CLI authentication - [aether apikey](https://docs.runaether.dev/cli/apikey.md): Bring your own LLM provider API keys - [aether config](https://docs.runaether.dev/cli/config.md): View and manage CLI configuration - [aether completion](https://docs.runaether.dev/cli/completion.md): Generate shell completion scripts ## OpenAPI Specs - [openapi.account](https://docs.runaether.dev/api-reference/openapi.account.json) - [openapi.v1](https://docs.runaether.dev/api-reference/openapi.v1.json) - [openapi](https://docs.runaether.dev/api-reference/openapi.json)