Skip to main content

Get started

Up and running with qURL™ in minutes.

  1. 1

    Install the CLI

    brew install layervai/tap/qurl
    qurl --version

    Did a coding agent already install it? On macOS and Linux the agent puts qurl in ~/.local/bin. If your shell says qurl: command not found, run export PATH="$HOME/.local/bin:$PATH", and add that line to ~/.zshrc or ~/.bashrc to keep it.

  2. 2

    Publish your app

    Replace 3000 with your app's port.

    qurl publish http://127.0.0.1:3000
    Published
    
      Target:  http://127.0.0.1:3000
      Access:  private — only you and the people you allow can open it
      Status:  serving
    
    CRID: ae4jqpd7eaoslq7jinmjv4yikgzmcxgpjfsuobiniqnko32lpw743ivbeyha

    No account needed. Save the CRID: every later command takes it.

    This command publishes a private resource: it opens only for you and the people you allow, and the output says so in its Access: line. This needs qurl 3.4.1 or later (check with qurl --version); an earlier release publishes a public resource unless you add --private. Add --public only for something that anyone who has the CRID may open.

  3. 3

    Share a link

    Replace <CRID>. Send the link it prints to one person.

    qurl share <CRID>

    Send it in a direct message, not a public channel: whoever opens it first uses it. Avoid email and apps that preview links, because a scanner that runs the page could use its one opening. Don’t open it yourself to check it, for the same reason.

    Legacy: let people ask for access with a code (qurl 3.4.1 or later). New shares from a coding agent use email invitations instead. Run qurl requests <CRID> --on for the resource you published, or publish a new one with --allow-requests, send them https://qurl.link/<CRID>, and approve each person with qurl approve <CRID> <code>, by the six-digit code that person gave you. Approve a code only when it came from the person you mean to let in, over a channel where you know it is them. The address and the CRID of a private resource are safe to send to anyone.

    What your recipient sees

    A one-time link (when qurl share confirms one-time use)
    They open it in a browser and land on your app, with no install and no LayerV account. It works once and expires on its own. Your app’s own sign-in still applies.
    An email invitation (what a coding agent sends)
    They open the invitation in a browser, see who published the app (marked Not verified), verify their email there, and save a passkey. The email verification code stays in that flow; they never send it to you. Where the page offers Email me an access link, they can use that instead of a passkey.
    Legacy: an access request at https://qurl.link/<CRID>
    Only for resources published with --allow-requests. They press Request access, type a name, save a passkey, and get a six-digit code to give you. Once you approve that code, they press Open anyway.
  4. 4

    Stop, start, or delete

    qurl list
    # Pause this resource without deleting its CRID:
    qurl stop <CRID>
    # Resume it when needed:
    qurl start <CRID>
    # Delete it only when you no longer need it:
    qurl delete <CRID>

Pilot LayerV

Tell us what to protect, and we’ll scope a pilot.

Enterprise starts with a scoped, paid pilot on one application, typically 60 to 90 days, credited in full toward year one if you convert within 60 days. Then an annual package sized to what you protect. Not per seat.