Package Exports
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@evorlive/evor) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
@evorlive/evor
The Evor host agent — runs on your laptop, connects to Evor, and executes the work that your AI sessions request: reading your repo, applying proposed diffs, committing under your git identity, pushing to GitHub.
Evor is conversation-first pair programming. You chat, AI plans + proposes changes, you approve, and the changes land as real commits on a branch on your machine. The agent is what makes the local half of that flow work.
Quick start
npm install -g @evorlive/evor
evor loginThat's it. Your browser opens, you click Approve, the agent starts in the background and connects to evor.live.
Requires Node.js 20+.
Day-to-day
evor status # pid, uptime, backend, token, paths
evor logs -f # tail the daemon log
evor restart # bounce the daemon
evor stop # stop it
evor logout # revoke the token on the server and stopAll state lives under ~/.config/evor/:
~/.config/evor/
├── token pairing token (written by `evor login`)
├── config.json optional overrides
├── agent.pid daemon process id
├── agent.json { startedAt, backendUrl, agentName }
└── agent.log daemon stdout + stderrCloned repositories land under ~/evor-workspaces/<owner>/<repo>.
How it works
The agent opens a persistent WebSocket to evor.live. When an AI session produces work, the backend routes it to your agent (matched by pairing token). The agent can:
- Run a CLI AI provider —
claude -p …orcodex exec …on your host, under your subscription / keychain auth - Clone & fetch repos —
git cloneover HTTPS using your GitHub token - Apply diffs to the working tree — files land on disk as the AI proposes them, before you approve
- Run git operations —
git add / commit / push / checkout-fileagainst the task's branch, under your local~/.gitconfigidentity - Execute shell commands — only after you approve, and only from an allowlist
Every destructive action requires explicit approval on the web UI. Chat history is private to the user that owns the session.
Security
- Each user has their own pairing token. Work from user A never runs on user B's agent.
- Commands go through an allowlist (
node,pnpm,npm,yarn,bun,go,python,git,ls,cat,grep,rg,make,bash,shby default). - File writes are path-escape checked — nothing outside
~/evor-workspaces/is touched. - Git commits use your local
~/.gitconfigidentity, not an Evor service account. evor logoutrotates your token server-side — your other machines using the old one are kicked immediately.
Self-hosted or local dev
Pointing at a different Evor server? One command:
evor config set backend your-evor-host.example
evor loginFor CI / image-build / unattended setups where a browser isn't available, use a token directly from Settings → Agent in the web UI:
evor link evor_pat_<your-token>
evor startLicense
MIT