Back to Directory/Developer Tools

io.github.bea-technology/roxyon

Build LumenJS apps, use the Roxyon BaaS, and deploy apps and web projects to Roxyon infrastructure.

Developer ToolsTypeScriptv0.4.0

roxyon-devtools

Tooling that lets a developer — or an AI assistant acting for one — build with LumenJS, use the Roxyon BaaS, and deploy to Roxyon infrastructure from anywhere.

PackageWhat it isStatus
@roxyon/api-clientTyped client for the Roxyon BaaS (RX engine) + the Applications/Sites deploy endpointsM1
@roxyon/deploy-coreShared deploy pipeline — project detection, archiving, build/upload/poll orchestrationM1
@roxyon/cliroxyon — login, init, deploy, logs, env, restart, open, linkM1
@roxyon/mcpMCP server — stdio (roxyon-mcp) for local clients, remote Streamable HTTP + OAuth (roxyon-mcp-http) for hosted connectorsM2
backend/The two new console endpoints + node script (/applications/deploy, /sites/deploy, app-source-apply.sh)written & wired in _configs, not synced
docs/llms.txt, BaaS OpenAPI 3.1, AGENTS.md template, distribution checklistM3 — drafted
create-roxyon-appnpm create roxyon-app — LumenJS / Node templates, emits AGENTS.md + roxyon.json + llms.txt + editor rulesM4
integrations/Per-assistant wrappers — Claude Code plugin, ChatGPT GPT, Cursor/etc. install snippetsM5

See docs/roadmap.md for the full plan.

Quick start

npm create roxyon-app@latest my-app     # LumenJS or Node, wired for deploy
cd my-app
npm i -g @roxyon/cli && roxyon login
roxyon deploy                            # builds + uploads + waits for it to go live

Existing project instead of a new one: roxyon init writes roxyon.json, then roxyon deploy.

CI (no interactive login) — create a token once, then use it as ROXYON_TOKEN:

roxyon token create ci --scopes deploy,logs      # prints roxp_… once
ROXYON_TOKEN=roxp_xxx roxyon deploy --no-follow   # first run also creates the app

From an AI assistant

Local clients (Claude Code, Cursor, Windsurf, Cline, Gemini CLI) — add the stdio server:

{ "mcpServers": { "roxyon": { "command": "npx", "args": ["-y", "@roxyon/mcp"] } } }

then the assistant calls roxyon_init and roxyon_deploy.

Claude Code plugin — bundles the server + /roxyon-deploy and /roxyon-new slash commands + a skill:

/plugin marketplace add bea-technology/roxyon-devtools
/plugin install roxyon

Remote connectors (claude.ai, ChatGPT, Cursor URL) — connect to https://mcp.roxyon.com/mcp and sign in with your Roxyon account (OAuth, no token to paste). roxyon_init / roxyon_deploy are local-only there; use roxyon_link_github for push-to-deploy.

Add to Cursor:

Add to Cursor

See packages/mcp-server and integrations/mcp-clients.md.

Develop

corepack enable pnpm
pnpm install
pnpm build        # all packages
pnpm test
pnpm typecheck
pnpm lint

Node ≥ 20. The repo is a pnpm workspace; tsup builds each package, vitest tests, biome lints + formats, changesets versions releases.

How deploy works

  • LumenJS / static (runtime: "lumen", kind: "static"): roxyon deploy runs lm build --serverless, tars dist/, and POSTs it to /sites/deploy, which extracts it into the host's document root. Served directly by nginx.
  • Node / Python / PHP (kind: "app"): the tarball goes to /applications/deploy, which lands it in the application's SourcePath and bumps ConfigRevision. The existing reconciler builds it in an isolated release dir and runs it under a systemd unit. Git remotes connected with roxyon link auto-deploy on push via the existing webhook.

Authentication is a Roxyon session token today (stored 0600 in ~/.roxyon/config.json); scoped Personal Access Tokens land in M1.5.

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
npx -y @roxyon/mcp

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-bea-technology-roxyon": {
      "command": "npx",
      "args": [
        "-y",
        "@roxyon/mcp"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

@roxyon/mcpnpm

Compatible MCP Clients

io.github.bea-technology/roxyon works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More