Skip to main content

Documentation Index

Fetch the complete documentation index at: https://oxy.tech/docs/llms.txt

Use this file to discover all available pages before exploring further.

New Features

SQL Modeling (dbt Integration via Airform)

Oxy now supports dbt-style SQL transformations natively via Airform, a dbt-compatible data transformation engine. Place dbt projects under modeling/<project-name>/ in your workspace and manage them end-to-end — from authoring to execution — without leaving Oxy.
  • Developer Portal modeling section — A dedicated Modeling area in the IDE lists all your dbt projects and nodes. Run models, view test results, inspect streaming execution output, and explore model-level and column-level lineage graphs directly in the browser.
  • Full project lifecycle — Run, test, seed, compile, analyze, and generate docs for your dbt project from both the IDE and agent chat. Supported databases include Snowflake, BigQuery, and DuckDB.
  • Builder agent tools — The AI copilot gains 15+ dbt-aware tools (run_dbt_models, test_dbt_models, compile_dbt_model, get_dbt_lineage, init_dbt_project, and more) so it can read, modify, and scaffold dbt projects during AI-assisted development sessions.
  • Workspace-native configuration — Each modeling project includes an oxy.yml file that maps dbt profile targets to Oxy database connections. Oxy validates type compatibility (e.g., snowflake profile → Snowflake database) before executing any run.
  • Real-time run streaming — Model execution emits live NodeStarted / NodeCompleted events over SSE, so the IDE updates node status in real time as your pipeline progresses.
Example project layout:
modeling/
  my_project/
    oxy.yml        # maps dbt targets → Oxy database names
    profiles.yml
    models/
      ...

Universal Slack Bot with Multi-Tenant Support

Oxy now ships a single, shared Slack app that any organization can connect to — no per-customer app installations required. The bot uses OAuth to link each Slack team to an Oxy organization, then supports per-thread workspace and agent selection through a Claude-style Block Kit interface.
  • Organization-linked workspaces — Each Slack team connects to exactly one Oxy organization. Users pick the workspace and agent they want to use directly inside the Slack thread via an interactive picker.
  • Magic-link fallback for user linking — Slack users are matched to Oxy accounts by email automatically. When an email match is not possible, the bot sends a magic-link prompt so users can securely link their account.
  • Per-thread context — Each conversation in Slack remembers which workspace and agent were selected, so follow-up questions stay in context without re-picking.
  • Encrypted token storage — Bot tokens are stored per-organization with encryption, keeping multi-tenant credentials isolated.

S3 Presigned URLs for Private Chart Uploads

Slack chart images are now uploaded to S3 and shared as presigned GET URLs by default. This makes inline chart images work correctly with private S3 buckets (including SSE-KMS encrypted buckets with all public access blocked) — no ACL configuration required.
  • Private bucket compatibility — Charts render inline in Slack even when your S3 bucket blocks all public access.
  • Configurable TTL — Set OXY_S3_PRESIGN_TTL_SECONDS to control how long chart links remain valid (default: 3600 seconds).
  • CDN support — Set OXY_S3_PUBLIC_URL_BASE to bypass presigning and serve charts directly from a CDN.

Platform Improvements

Rate Limit Handling for LLM Calls

  • Automatic retry with backoff — When an LLM provider returns a rate-limit error (HTTP 429), Oxy now retries automatically with exponential backoff instead of failing immediately. Retries are tracked separately from general transient errors to avoid depleting the wrong budget.
  • Clear user feedback — If all retry attempts are exhausted, the run is suspended and a clear message is shown so you know the failure was due to rate limiting and can retry manually.
  • All providers covered — Rate-limit detection and retry logic applies to Anthropic, OpenAI, and OpenAI-compatible providers.

Multi-Organization Reliability

  • Organization switcher now works reliably — Clicking a different organization in the sidebar user menu correctly navigates to that org’s workspace without bouncing back to the previous one. Previously, a race condition between URL and app state could cause the switch to silently fail or revert.
  • Onboarding state no longer leaks across workspaces or sessions — Workspace setup progress is now stored per-workspace instead of in a single shared browser key. Switching to another workspace mid-onboarding, or logging out and back in, no longer carries over another workspace’s setup state or pre-selected configuration.
  • Logout clears all onboarding state — Signing out now fully clears any in-progress workspace setup state from the browser, so a different user signing in on the same device starts fresh.

Security

  • Secrets scoped to their project — Secret lookups now always filter by project, ensuring secrets defined in one project cannot be accessed from another. This hardens data isolation in multi-project deployments.

Agentic Workflows

  • Azure OpenAI with agentic workflows — Fixed a compatibility issue that prevented Azure OpenAI deployments from working with the agentic workflow pipeline. Agents configured to use Azure OpenAI now execute correctly end-to-end.

Workspace Setup and Onboarding

  • Unified onboarding flow — Demo, GitHub, and blank workspace types now share a single onboarding page (AgenticSetupPage). The separate demo-only LLM key dialog has been removed, so all workspace creation types follow the same consistent setup flow.
  • Setup-status toasts instead of redirects — Users who have completed or skipped onboarding are no longer redirected back into the setup wizard. The home page now shows up to four dismissible status rows (missing LLM key / warehouse credentials / no databases / no agents), each linking directly to where you can take action.
  • Per-agent LLM key detection — The home page now resolves which LLM provider the currently selected agent actually uses and only flags a missing API key when that specific key is absent. A saved Anthropic key suppresses the warning when the active agent runs on Anthropic, even if other provider keys are not configured.
  • Workspace-secret–based readiness — Readiness checks now read from the workspace’s own secrets store rather than server-level environment variables. A workspace missing its own key_var secret correctly shows the warning even if that variable is set globally on the server.

Slack Reliability

  • Charts hosted in Slack — Chart images in Slack messages are now uploaded directly to Slack via the files.uploadV2 API. Images are permanently accessible within your Slack workspace without relying on external S3 URLs or presigned link expiry.
  • Bot no longer goes silent on chart-publisher failure — If S3 or chart renderer initialization fails (misconfigured credentials, unreachable AWS endpoint, etc.), the bot now logs a warning, falls back to text-only responses, and continues answering questions. Previously, a failed publisher would silently drop workspace-picker submissions with no reply to the user.

Product Rename

  • Oxy is now Oxygen — All user-facing references have been updated from “Oxy” to “Oxygen”, including the chat interface, magic-link and invitation emails, Slack commands, MCP server info, and loading screens. No configuration or workflow changes are required.

Build Pipeline

  • Improved CI reliability — Switched from the third-party arduino/setup-protoc action to a direct apt install for the Protobuf compiler, eliminating intermittent CI failures caused by GitHub API rate limits.