v2.1.2
Rare default ports, stronger self-host lifecycle tooling, Headfox JS runtime hardening, and Google cookie bootstrap.
by @saifyxpro
Released on March 25, 2026
Self-hosting and production deployment
- added a production-ready
infra/domain-setuplayer with Caddy so VPS installs can proxy the existing API and dashboard behind dedicated domains - moved the default local and Docker host ports away from the usual
3000and8000stack to reduce collisions on shared machines and hosted dev environments - restored the
yt-engineDocker image build path and kept the full self-host profile usable from the CLI-managed workspace - made the dashboard wait for a healthy API before booting so fresh restarts no longer race into empty operator states
CLI lifecycle and operator workflows
- added the published bootstrap lifecycle commands around
headlessx init,headlessx init update,headlessx restart, andheadlessx logs - replaced the older readline prompts with modern
@clack/promptsflows for setup and login - improved
statusanddoctorso they report auth, local reachability, and skipped checks more honestly on VPS shells - made workspace updates resync missing environment keys instead of only pulling the repo, which fixed older installs that were missing internal dashboard settings
Browser runtime and Docker hardening
- switched the API browser layer to
headfox-jswhile keeping the current Camoufox-compatible runtime underneath - stabilized browser fetching around a safer pinned Camoufox release path for Linux Docker builds
- rebuilt
better-sqlite3inside the API image and lazy-loaded optional solver pieces so self-host startup no longer crashes on native module edge cases - corrected the published
headfox-jsintegrity path in the lockfile so frozen Docker installs can complete cleanly
Dashboard UX and operator setup
- recovered the operators catalog after restart races and improved crawl results with a proper page overlay plus stronger SSE reconnect handling
- added the shared-profile Google cookie bootstrap flow with
Build CookiesandStop Browser, structured setup errors, and first-run gating for Google AI Search - clarified operator availability messaging so the YouTube workspace shows the real backend or config reason instead of always blaming
YT_ENGINE_URL - bumped the visible platform version surfaces to
2.1.2so the app, docs, and sidebar stay in sync with the current release
Related GitHub Commits
e195ceefix(docker): restore yt-engine image buildby @saifyxprocd5f532feat(infra): add domain setup scaffold and rare default portsby @saifyxpro659eb2ffeat(cli): add bootstrap lifecycle commandsby @saifyxpro8d22762feat(cli): modernize prompts and align release docsby @saifyxpro3b4aed5fix(api): lazy-load captcha solver during startupby @saifyxproc0d2a1bfeat(cli): add workspace update flow and refresh project templatesby @saifyxpro8c31c71fix(docker): rebuild better-sqlite3 in api imageby @saifyxproc900e8dfeat(browser): switch api runtime to headfox-jsby @saifyxproe34dd87fix(browser): stabilize headfox-js release fetchingby @saifyxpro35a6f6bfix(lockfile): correct headfox-js 0.1.12 integrityby @saifyxproae196c2feat(cli): add runtime logs and smarter health reportingby @saifyxpro1b24e34fix(cli): harden local health probes and log tailingby @saifyxproc729472fix(cli): resync env files during workspace updatesby @saifyxpro1f304ecfix(docker): wait for api before starting webby @saifyxpro8a1f3e6fix(web): recover operators catalog after startupby @saifyxpro84d1231feat(web): add crawl page overlay and reconnect SSEby @saifyxpro3fef057feat(google): add shared cookie bootstrap flowby @saifyxprod534bb8fix(web): clarify operator availability and bump app versionby @saifyxpro