返回首页
最新
QuickBEAM 是一个嵌入在 Erlang/OTP 虚拟机中的 JavaScript 运行时。<p>如果你正在构建一个全栈应用,JavaScript 无论如何都会渗透进来——无论是前端、服务器端渲染(SSR)还是第三方代码。<p>QuickBEAM 在 OTP 监督树中运行这些 JavaScript。<p>每个运行时都是一个进程,具有一个 `Beam` 全局,可以:
- 调用 Elixir 代码
- 发送/接收消息
- 创建和监控进程
- 检查运行时/系统状态<p>它还提供了基于 OTP/本地原语的浏览器风格 API(如 fetch、WebSocket、Worker、BroadcastChannel、localStorage、本地 DOM 等)。<p>这使得它可以用于:
- 服务器端渲染(SSR)
- 沙盒化用户代码
- 每个连接的状态
- 后端 JavaScript 与 OTP 的直接互操作<p>值得注意的几点:<p>- JavaScript 运行时是受监督的,并且可以重启
- 具有内存/资源限制和 API 控制的沙盒化
- Erlang 可以直接读取的本地 DOM(没有字符串渲染步骤)
- JS 和 Erlang 之间没有 JSON 边界
- 内置 TypeScript、npm 支持和本地插件<p>QuickBEAM 是 Elixir Volt 的一部分——一个基于 Erlang/OTP 的全栈前端工具链,不依赖 Node.js。<p>目前仍在早期阶段,欢迎反馈。
大家好,
我创建了 Sandclaw(https://github.com/qix/sandclaw),旨在测试在代理执行任何写入操作时引入人工干预的想法。核心代理可以读取任何信息,但除了与大型语言模型(LLM)提供者的连接外,这些信息都被安全地隔离开来。
随着时间的推移,我可以逐步放宽防火墙,允许更安全的操作(例如,将任务添加到我的待办事项列表始终是安全的),并可能构建更智能的检查机制以允许更多的自主性。但对于发送/删除电子邮件、浏览不可信网站或运行命令行指令,我的默认策略是“拒绝”。
有没有哪个项目实际上在做这个?我一直在搜索,但似乎所有选项都专注于让代理决定何时请求,这让我觉得……有些问题。