EP

Source control

Two layers. Do not merge them yet.

Layer 1 — Git (this repository)

Git ships the Next.js host. TypeScript, API routes, UI, ep binary.

Question Answer
Remote today Cursor Origin (origin/main)
Public elasticprojects deploy No
Vercel production No from this agent. You run vercel login + vercel --prod
Latest push main at 6064da5 (security docs, ep CLI, docs)

Keep .git. Remove it only if you stop shipping a web app. That is not the plan.

git remote -v          # see origin
git pull origin main   # update host code

This repo is not on GitHub yet. Mirror there if you want Vercel git deploys.

Layer 2 — Elastic Projects (ep)

ep syncs organization project trees. The labs/elastic workspace holds the host app source (TypeScript, docs, config) plus product notes.

Question Answer
Storage today Local SQLite (elasticprojects.db)
Remote today None for CLI. Demo seed only
Git remote? No. Not a git protocol server
npm run ep demo seed
npm run ep -- pull labs/elastic --dir ./product-tree
npm run ep -- push labs/elastic --dir ./product-tree -m "Notes"

ep does not replace git. It replaces dumping org files on a personal PDS.

Do not use one as the other

Mistake Result
ep pull into repo root Overwrites README.md with product tree README
Expect git push to update Spaces Git never talks to AT Protocol
Expect ep push to deploy Vercel Vercel builds from git, not from labs/elastic

Host code → git.

Org filesep / web UI pull and push.

Ideal future — service as origin

Target shape (not built yet):

export ELASTICPROJECTS_URL=https://elasticprojects.example
ep login @you.bsky.social
ep remote add product labs/elastic   # stores project ref + credentials
ep pull product --dir ./product-tree
ep push product -m "Charter update"

That is not git remote add elasticprojects …. Git and Elastic Projects use different protocols.

What we need before remote ep works like an origin:

  1. Public host with durable Postgres (not ephemeral SQLite)
  2. OAuth or API tokens for CLI
  3. ep login and ep remote commands
  4. Live pull/push over HTTPS to your replica API (or direct Spaces XRPC from CLI)

Vercel build might later run:

ep pull product --dir ./_product && npm run build

Only after tokens and a durable store exist on the host.

Dogfood loop today

  1. Git — branch, commit, push host changes to Origin
  2. ep — pull labs/elastic to ./product-tree, edit, push
  3. Web UI — open local preview, pull same project, verify heads match
  4. Deployvercel --prod from git when you are ready (see security.md)

Summary

Tool Owns Remote today
Git Application source Cursor Origin
ep Org project files Local SQLite only
Elastic Projects host UI + API + replica Not deployed publicly

Do not remove git in favor of ep. Add remote ep when the hosted service and auth are ready.