Repository navigation
feat: Deacon - #967
feat: Deacon#967AndrewCathcart wants to merge 2 commits into
Conversation
|
@AndrewCathcart is attempting to deploy a commit to the Nuxt Team on Vercel. A member of the Team first needs to authorize it. |
🤖 REVIEW PAUSED
This pull request is from an outside contributor. Add the |
commit: |
📦 Package Size📚 22 runtime dependencies (no change)
All tracked output (25)
Runtime dependencies (22)
Baseline: main_@_321e7574___2026-10-13 · gzip is the comparison metric · changes below 16 B gzip are ignored |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info
📝 Walkthrough
Merge Risk: ⚪ Minimal · up to
|
|
Hi @harlan-zw - I've pre-emptively opened this after posting in here #177 (comment) - let me know if you'd rather discuss first! Appreciate it. |
🔗 Linked issue
None.
📚 Description
I'm one of the founders of Deacon, an AI support agent for websites and apps. This adds it to the registry as
useScriptDeacon(), in the support category, following the DeskCrew entry.Options are
key,context(rendered asdata-context) andpageViews(falserendersdata-no-page-views).use()returnswindow.Deacon, which the loader sets as it runs, andDeaconApitypes its methods.Two things that differ from most entries:
crossoriginis off. Ourloader.jsis served without anAccess-Control-Allow-Originheader, so with unhead's defaultcrossorigin="anonymous"Chrome blocks it. I checked both ways in headless Chrome and added Deacon to the CORS guide's list.srcfor the chat frame and API, so a copy served from/_scripts/assetswould point everything at the consuming site.Tests are in
test/unit/deacon.test.ts,proxy-configs.test.tsandtypes.test-d.ts.pnpm lintreports nothing new,pnpm typecheckpasses, and the unit and type tests pass. The playground page uses a placeholder key, so the widget loads but can't chat. Happy to add a facade component like Crisp's if you'd like one.