SemiLayerDocs

Console

The SemiLayer Console (console.semilayer.com) is the web UI for managing your organization, configuring lenses, exploring data, and monitoring ingest. Everything in the Console has a CLI or API equivalent — use whichever fits your workflow.


Signing In

Navigate to console.semilayer.com. Sign in with your SemiLayer account. After signing in, you're placed in your default organization.

If you have multiple organizations, use the org switcher in the top-left of the sidebar to move between them.


Organization & Project Structure

SemiLayer is organized hierarchically:

Organization
  └── Project
        └── Environment
              ├── Sources
              ├── Lenses
              └── API Keys

The sidebar shows the current org → project → environment context. Use the breadcrumbs at the top to navigate up or switch levels.


Sources

Settings → Sources

Sources are connections to your data. Add a source by clicking Connect source and providing:

  • Name — an identifier for use in sl.config.ts (e.g. main-db)
  • Bridge — the adapter package (e.g. @semilayer/bridge-postgres)
  • Connection string / credentials — stored encrypted per-organization

After connecting, the Console introspects available tables and columns. You can reference this information when building your lens schema.

ℹ️

Connection strings are encrypted with an org-scoped key. SemiLayer never stores them in plaintext and never uses them outside of ingest operations.


Lenses

Lenses

Lenses are the core of SemiLayer — each one declares intelligence over a source target (a table, collection, endpoint, etc.).

Lens List

The Lenses page shows all lenses in the current environment with their status:

StatusMeaning
pausedSchema registered, no ingest running (default after push)
indexingIngest is actively reading and indexing
readyFully indexed and queryable
errorIngest failed — click to see details

Lens Editor

Click any lens to open the editor. The editor has five tabs:

Fields — View and edit the field schema. Mark fields searchable: true to include them in vector embeddings.

Mapping — Configure transform chains. Map source column names to output field names, apply type coercions, and chain transforms (round, truncate, trim, slugify, etc.).

Facets — Enable semantic operations: search, similar, feed, dedup, classify. Configure per-facet field lists and options.

Rules / RBAC — Set access rules. Control which API key types can search, query, or subscribe. Restrict public key access with allowOrigins.

JSON — Edit the raw lens config as JSON. Changes here are reflected in the other tabs.

💡

The lens editor includes a Save button (or press Cmd/Ctrl+S). Saving via the Console marks the lens as modified by console, which triggers a drift warning the next time you run semilayer push.


Data Explorer

Lenses → [Lens name] → Explore

The Data Explorer lets you run live queries against any lens directly from the browser, without writing code.

Search Mode

Enter a search query and get ranked results with scores. Switch between semantic, keyword (fulltext), and hybrid modes using the mode selector.

Query Mode

Build filters using the visual filter builder — select a field, an operator, and a value. Results display in a table with sortable columns. Click any row to open a detail panel.


Jobs

Jobs

The Jobs page shows ingest history for the current environment:

  • Active — currently running ingest jobs
  • Pending — queued jobs waiting to start
  • Completed — recent successful jobs with record counts and duration
  • Failed — failed jobs with error details

Use this page to verify that ingest is running correctly and to diagnose errors.


Dev Console

A terminal drawer is available at the bottom of the screen. Press **Ctrl+** or click the terminal icon to open it. Type help` to see available commands:

help          — list all commands
status        — lens statuses in this environment
search <lens> — run a search query
query <lens>  — run a filtered query
similar <lens> — find similar records
stream <lens> — start a live tail (Ctrl+C to stop)
observe <lens> <id> — watch a record for changes
keys          — list API keys
jobs          — show recent ingest jobs
clear         — clear the terminal

API Keys

Settings → API Keys

Manage API keys for the current environment. Each environment has its own set.

PrefixUse
sk_dev_ / sk_live_Backend use — full access
pk_dev_ / pk_live_Frontend use — read-only queries
ik_dev_ / ik_live_Webhook ingest — cannot query

Click Create key to generate a new key. The full key value is shown once — copy it immediately. After closing the dialog, only the last 4 characters are shown.


Team Management

Settings → Team

Invite and manage members. Roles determine what each member can do:

RolePermissions
ownerFull access including org delete
adminAll operations except org delete
developerCreate projects/envs, push schemas
viewerRead-only access

Only admin and owner can invite members, change roles, and remove members.


Environments

Settings → Environments

Each project can have multiple environments (e.g. development, staging, production). Environments are isolated — sources, lenses, and API keys are environment-scoped.

The Multi-environment comparison view (available from the environment selector) shows lens config diffs across environments and lets you promote a config from one environment to another.


Organization Settings

Settings → Organization

  • General — org name and slug
  • Enterprise — license info and deployment details (enterprise deployments)
  • Billing — current plan, usage, and upgrade options (SaaS)
  • Danger zone — org deletion (owner only)

Keyboard Shortcuts

ShortcutAction
Ctrl+`` Open/close the dev console
Cmd/Ctrl+SSave lens editor changes
Cmd/Ctrl+KSearch / command palette (coming soon)