18acb4f71b
mcp: accept ?api_key= query param (for MCP hosts without custom-header support, e.g. claude.ai custom connectors)
2026-07-18 07:21:01 +00:00
475bcf9448
Rename docker-compose.yml -> .yaml (Coolify default compose location)
2026-07-18 06:52:32 +00:00
3806fa917b
v0.4.0-alpha: duplicate_demo, editor UI for branches/chapters, delete, personalized links
...
- duplicate: REST + MCP tool + editor button. Deep copy with branch targets
and chapter targets remapped into the copy; lead gates + raster cache
carried; copy is always a private draft (no inherited share token).
Verified: 3 steps / 2 chapters / 1 branch all internally consistent.
- delete demo: REST + editor button; FK cascade verified (0 orphans)
- Editor: draw-mode toggle (hotspot vs branch) with target-step picker and
branch list; chapters manager panel; personalized-link generator;
duplicate/delete on demo list
- MCP surface: 16 tools
- USER-GUIDE updated: new editor features + personalization prompt now uses
duplicate_demo
2026-07-18 06:35:48 +00:00
4333cd23ef
docs: end-user guide — setup, capture modes, MCP agent connection, prompt cookbook
2026-07-18 05:43:40 +00:00
928628f49a
v0.3.0-alpha: Chromium rasterizer (R4), branching, chapters
...
- Rasterizer: playwright-core + system Chromium renders dom steps to PNG
(1280x800, JavaScript disabled — snapshots stay inert). Cached permanently
on the step (dom_html immutable). CHROMIUM_PATH configurable.
- Video render now includes DOM steps as real frames (verified h264 1280x800,
0 skipped); guides now show rasterized screenshots for DOM steps
- Branching: per-step branch hotspots (dashed, labeled) jumping to any target
step; lead gates respected on branch jumps
- Chapters: demo-level chapter menu in player bar
- API: PATCH /api/demos/:id (name, chapters), branches on step patch, both in
public JSON
- MCP surface: 15 tools (+set_step_branches, +set_chapters)
- Docker: chromium + fonts in runtime image, CHROMIUM_PATH preset
2026-07-18 05:36:27 +00:00
a535e15253
v0.2.0-alpha: DOM capture, all three output slices, lead gates
...
- Extension DOM mode: auth-context serializer — inlines CSS + images as data
URLs, freezes form state, masks [data-dp-mask], strips scripts (R3 client)
- API: extractDataUrls rewrites large inline resources into content-addressed
assets (R3 server; verified 939KB inline -> 82-byte row + served asset)
- Lead-gate steps: config on step, player overlay form blocks advance,
submits to leads endpoint (editor toggle + MCP set_lead_gate)
- Step-guide export (v2 slice): authed markdown + public HTML at /p/:token/guide
- Video export (v3 slice, v0): ffmpeg slideshow of image steps + optional
narration mux; DOM rasterization deferred to Chromium service (R4)
- Editor: reorder arrows, embed-code copy, guide link, video export
- REST reorder endpoint; MCP surface now 13 tools (export_guide,
set_lead_gate, render_video)
- ffmpeg added to runtime image
E2E verified incl. R3 extraction round-trip, lead_gate in public JSON,
guide renders, MCP agent exported guide + rendered video.
2026-07-18 05:27:58 +00:00
9b09f14916
v0.1.0-alpha: interactive demo platform core
...
- Fastify API: demos/steps CRUD, content-addressed assets, scoped API keys
(read/author/publish/admin, draft-only default per D4)
- Player: image + sandboxed DOM steps, hotspots, tooltips, keyboard nav,
privacy-first beacons (no IP storage, viewer tokens only — R7)
- Editor: React SPA — demo list, drag-to-draw hotspots, annotations, publish
- MCP server: Streamable HTTP, scope-filtered tools, untrusted-data wrapping
on viewer-supplied content (R8); platform never calls a model
- Capture extension (MV3): screenshot-flow recording, hotspots pre-placed
from real clicks
- Docker: single app image + postgres, Traefik-ready (expose only)
E2E verified: capture->author->publish->play->beacon->lead->analytics + full
MCP tool surface with scope filtering.
2026-07-18 05:17:45 +00:00