{"_id":"@8xlabsai/hekaya-sdk-core","_rev":"2-82602b6cf105dd10f6b11ee5f5f5c2f6","name":"@8xlabsai/hekaya-sdk-core","dist-tags":{"latest":"0.2.1"},"versions":{"0.2.0":{"name":"@8xlabsai/hekaya-sdk-core","version":"0.2.0","license":"MIT","_id":"@8xlabsai/hekaya-sdk-core@0.2.0","maintainers":[{"name":"batout","email":"amr.z.abdo@gmail.com"}],"homepage":"https://github.com/8xlabs-ai/hekaya.ai#readme","bugs":{"url":"https://github.com/8xlabs-ai/hekaya.ai/issues"},"dist":{"shasum":"c57ec0fa0bb31820629e2e2c43bb05c64cc9c70a","tarball":"https://registry.npmjs.org/@8xlabsai/hekaya-sdk-core/-/hekaya-sdk-core-0.2.0.tgz","fileCount":14,"integrity":"sha512-YlkEYRyQ2yORDkuz6BbvNWW1/u7INR9mfkC8UpVgIO3OaUuLYF9PBOQOvn0TZJwDcLYlrUZ9uUsRTTsfx1cHDg==","signatures":[{"sig":"MEQCIFzVV4SNlTWAyxCB3JCsbaE8kiApVSii1hpDRNxWrig+AiB6IV+70ck4oLoG5akUDr0Xu/RRf9MUD6iLcFAkVQ3Aag==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":223110},"main":"./dist/index.js","type":"module","_from":"file:8xlabsai-hekaya-sdk-core-0.2.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./loader":{"types":"./dist/loader.d.ts","import":"./dist/loader.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"batout","email":"amr.z.abdo@gmail.com"},"_resolved":"/tmp/24f783cbb266a4a89c2e9c95fbeb7ffb/8xlabsai-hekaya-sdk-core-0.2.0.tgz","_integrity":"sha512-YlkEYRyQ2yORDkuz6BbvNWW1/u7INR9mfkC8UpVgIO3OaUuLYF9PBOQOvn0TZJwDcLYlrUZ9uUsRTTsfx1cHDg==","repository":{"url":"git+https://github.com/8xlabs-ai/hekaya.ai.git","type":"git","directory":"packages/sdk-core"},"_npmVersion":"10.8.2","description":"Hekaya embeddable widget runtime — vanilla JS chat panel + Guide/Drive mode for live demos.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@8xlabsai/hekaya-shared-types":"0.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","typescript":"^5.6.3","@hekaya/config-tsconfig":"0.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hekaya-sdk-core_0.2.0_1778374206238_0.02849868521115262","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@8xlabsai/hekaya-sdk-core","version":"0.2.1","description":"Hekaya embeddable widget runtime — vanilla JS chat panel + Guide/Drive mode for live demos.","license":"MIT","type":"module","main":"./dist/index.js","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./loader":{"types":"./dist/loader.d.ts","import":"./dist/loader.js"}},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/8xlabs-ai/hekaya.ai.git","directory":"packages/sdk-core"},"dependencies":{"@8xlabsai/hekaya-shared-types":"0.2.1"},"devDependencies":{"tsup":"^8.3.5","typescript":"^5.6.3","@hekaya/config-tsconfig":"0.0.0"},"scripts":{"build":"tsup","dev":"tsup --watch","typecheck":"tsc --noEmit"},"_id":"@8xlabsai/hekaya-sdk-core@0.2.1","bugs":{"url":"https://github.com/8xlabs-ai/hekaya.ai/issues"},"homepage":"https://github.com/8xlabs-ai/hekaya.ai#readme","_integrity":"sha512-WOhJEcF1g1y3cUd2JptP9KaipmSiDjKvKRzNQvj2dCfl9EJqC0+jtzXjCXbEmIwJj9lPcxvcoqSfNnX2uZcpqA==","_resolved":"/tmp/9e600716e36de4c8260928d28ea6c2dc/8xlabsai-hekaya-sdk-core-0.2.1.tgz","_from":"file:8xlabsai-hekaya-sdk-core-0.2.1.tgz","_nodeVersion":"20.20.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-WOhJEcF1g1y3cUd2JptP9KaipmSiDjKvKRzNQvj2dCfl9EJqC0+jtzXjCXbEmIwJj9lPcxvcoqSfNnX2uZcpqA==","shasum":"7c83d35152bbcda818f24d81eba7359fc67147e4","tarball":"https://registry.npmjs.org/@8xlabsai/hekaya-sdk-core/-/hekaya-sdk-core-0.2.1.tgz","fileCount":15,"unpackedSize":226073,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQC79oYgCO1NbEFrbgudqT6vAaPgOFz2y/B9jMvNslcGWQIhAKzHbXXKLuYeONoYD68Mhr7vTx2TVaqxXdGgkiDxrJEW"}]},"_npmUser":{"name":"batout","email":"amr.z.abdo@gmail.com"},"directories":{},"maintainers":[{"name":"batout","email":"amr.z.abdo@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/hekaya-sdk-core_0.2.1_1778374822094_0.6475326259130094"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-10T00:50:06.134Z","modified":"2026-05-10T01:00:22.412Z","0.2.0":"2026-05-10T00:50:06.392Z","0.2.1":"2026-05-10T01:00:22.250Z"},"bugs":{"url":"https://github.com/8xlabs-ai/hekaya.ai/issues"},"license":"MIT","homepage":"https://github.com/8xlabs-ai/hekaya.ai#readme","repository":{"type":"git","url":"git+https://github.com/8xlabs-ai/hekaya.ai.git","directory":"packages/sdk-core"},"description":"Hekaya embeddable widget runtime — vanilla JS chat panel + Guide/Drive mode for live demos.","maintainers":[{"name":"batout","email":"amr.z.abdo@gmail.com"}],"readme":"# @8xlabsai/hekaya-sdk-core\n\n[![npm version](https://img.shields.io/npm/v/@8xlabsai/hekaya-sdk-core.svg)](https://www.npmjs.com/package/@8xlabsai/hekaya-sdk-core)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)\n\nVanilla-JS embeddable widget runtime for [Hekaya](https://github.com/8xlabs-ai/hekaya.ai) — chat panel + live-demo execution on visitor sites. Ships with **Guide mode** (highlight + bilingual ar+en tooltip) and **Drive mode** (auto-execute click / fill / navigate / scroll / wait, with a hard safety floor for password inputs, payment buttons, and cross-origin iframes). Includes selector resilience: 3-tier tuple resolution, shadow-DOM piercing, MutationObserver wait-for-element (3s SPA window).\n\n## Install\n\n```bash\npnpm add @8xlabsai/hekaya-sdk-core\n```\n\nOr use the script-tag CDN drop (no bundler):\n\n```html\n<script>\n  window.HEKAYA_CONFIG = {\n    tenantPublicKey: 'pk_live_…',\n    orchestratorUrl: 'https://api.hekaya.ai',\n  };\n</script>\n<script src=\"https://cdn.hekaya.ai/loader.iife.js\" async></script>\n```\n\n## Quickstart (ESM)\n\n```ts\nimport { mount, unmount } from '@8xlabsai/hekaya-sdk-core';\n\nawait mount({\n  tenantPublicKey: 'pk_live_…',\n  orchestratorUrl: 'https://api.hekaya.ai',\n  // Optional overrides (server-side widget_config wins by default):\n  branding: {\n    color_primary: '#0F1B2D',\n    color_accent: '#5B8DEF',\n    position: 'bottom-right',\n    radius: 12,\n  },\n});\n\n// Later (e.g., on route change in a SPA):\nunmount();\n```\n\nThe widget mounts a Shadow-DOM-isolated launcher + chat panel. When the orchestrator emits `agent_response.actions[]`, the runtime resolves selectors and executes Guide highlights or Drive primitives automatically.\n\n## Direct Guide / Drive APIs (advanced)\n\nFor custom integrations that don't want the chat UI:\n\n```ts\nimport {\n  resolveSelectorAsync,\n  showHighlight,\n  executeDriveAction,\n  isInExternalFrame,\n} from '@8xlabsai/hekaya-sdk-core';\n\nconst target = await resolveSelectorAsync({\n  primary: { kind: 'aria_role_text', role: 'button', text: 'Sign up' },\n  fallback: { kind: 'css', path: 'button[type=\"submit\"]' },\n});\n\nif (target && !isInExternalFrame(target)) {\n  showHighlight(target, { ar: 'اضغط هنا', en: 'Click here' });\n}\n```\n\n## Safety policy (Drive mode, non-overridable)\n\n- Never auto-fill `<input type=\"password\">` (or `autocomplete=\"*-password\"`).\n- Never auto-click in cross-origin iframes (Stripe, Calendly, etc.).\n- Never auto-navigate to a different origin.\n- Never auto-click payment-intent buttons (regex over text: `pay`, `checkout`, `confirm payment`, `place order`, `إدفع`, `إتمام الشراء`).\n\nAny violation degrades gracefully to a Guide-mode highlight with `action_ack { ok: true, executed_kind: 'highlight', degraded: true, error: '<reason>' }`.\n\n## Source\n\nMonorepo: [github.com/8xlabs-ai/hekaya.ai](https://github.com/8xlabs-ai/hekaya.ai) → `packages/sdk-core/`.\n\n## License\n\nMIT\n","readmeFilename":"README.md"}