Ghostly ships as a single npm package that brings everything it needs with it: a bundled API server, a React dashboard, a Playwright runner, and an MCP server for IDE integration. The steps below take you from zero to a running test on your local machine. All commands use theDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/Meza-dev/Ghostly/llms.txt
Use this file to discover all available pages before exploring further.
ghostly CLI (the legacy alias ghost also works for every command).
Install the Ghostly CLI
Install Verify the installation:You should see
@ghostly-io/cli globally from npm. This is the only package you need — it bundles the API server, dashboard, runner, and MCP server.0.1.0 (or the latest published version). The command is ghostly; the alias ghost is kept for backwards compatibility.Generate credentials
Run Expected output:The generated
keygen to create a UUID API key and save it to ~/.ghostly/auth.json. This key is used to authenticate requests between the CLI, the local API server, and the MCP server.~/.ghostly/auth.json stores your apiKey and the local API URL (http://localhost:4000 by default). Do not commit this file to version control.Install IDE integration and Chromium
ghostly install does several things in one go: it saves credentials to ~/.ghostly/auth.json, injects the Ghostly MCP server into ~/.cursor/mcp.json, installs Chromium via Playwright (if not already present), and copies Cursor rules and skills to ~/.cursor/.install completes, restart Cursor to pick up the new MCP server entry in ~/.cursor/mcp.json.Configure your LLM provider
Ghostly’s assisted mode (natural-language goals → Playwright steps) requires access to an LLM. Run The prompt lets you choose between:
Your choice is saved back to
ghostly config to choose your provider interactively.| Provider | When to use |
|---|---|
cursor-cli | You already have Cursor installed and want to reuse its local auth — no separate API key needed. |
| HTTP (OpenAI-compatible) | Any cloud or self-hosted endpoint: OpenAI, Azure OpenAI, Ollama, LM Studio, etc. You supply the base URL, model name, and API key. |
~/.ghostly/auth.json under the llm key. You can also set ASSIST_LLM_API_KEY as an environment variable to skip this step in CI environments.Start the Ghostly engine
ghostly up migrates the local SQLite database (via Prisma db push), generates the Prisma client, seeds the initial admin user on a fresh install, and then starts the bundled API server plus React dashboard.Create a project and run your first test
With the engine running, open the dashboard at http://localhost:4000 and sign in with the admin credentials.
- Create a project — click New Project, give it a name and colour, and save. Projects group your runs together for easier tracking.
- Submit a goal — from the project view, click New Run, enter your target URL (e.g.
https://example.com) and a plain-English goal (e.g. “Navigate to the homepage, click the Learn More button, and confirm the About section is visible”). - Watch it run — Ghostly streams live step events via SSE to the dashboard. You can see each Playwright action as it executes, inspect screenshots, and review the final verdict.
ghostly_run_flow MCP tool once ghostly up is running.Next steps
CLI Reference
Explore every flag and option for
keygen, install, config, up, and update.Assisted Mode
Learn how the strategist–observer–healer pipeline converts natural-language goals into Playwright steps.
MCP Server
Trigger Ghostly runs and inspect project maps directly from your Cursor editor via MCP.