/foːɾʲ/Irish, verbto help
你的智能体所依托的后端。
结构化内容和应用数据,统一管理。定义你的模型,Fóir 提供 API、编辑工具、客户登录和租户隔离。
构建
你的后端从一个配置文件开始。
自己编写,或让编码智能体来写。它列出你的模型、它们的字段,以及客户如何登录。
Fóir 据此生成 API。
模型、字段、查找和客户登录都是配置中的几行。一次推送就把它们变成 GraphQL API。
控制台
你的团队在根据你的模型构建的控制台中共同编辑。
每个模型都有一个编辑器,带有类型化字段、版本和预览。多人可以同时在同一条记录中工作,并看到彼此的光标。
Ask Fóir
向 Fóir 询问你的数据。
控制台中的助手会对你的记录进行计数,比较各个步骤,并告诉你它的发现,以及它所用的数字。
然后让它去做这项工作。
它通过与你相同的工具搜索、撰写和更改记录,凡是你自己的角色做不到的,它都做不到。它写的内容会作为草稿等待。
登录与角色
登录是内置的。
为你的团队和用户提供一个统一的托管登录:通行密钥、两步验证,以及使用 Google、Apple、Shopify 或任何 OIDC 提供方登录。
一套用户,分成用户池,并带有角色。
用户池包含可以登录某个项目或某个组织的人。成员关系赋予用户一个角色,每个角色都由同一份权限列表构成。
记录
应用使用可公开的密钥读取。
它运行在你自己的托管环境上,向 API 请求任何人都可以看到的产品。
客户登录,记录可以归某位客户所有。
登录由 Fóir 托管。模型可以让每条记录仅对拥有它的客户私有。
写入重复发送也是安全的。
网络不稳定导致应用再次发送订单。它携带相同的幂等键,所以 Fóir 返回第一次的结果,不做任何更改。
其他人无法读取。
第二位客户发送相同的查询,什么也得不到。规则在数据库中强制执行,所以你遗漏的检查不会泄露任何一行。
发布
内容可以在任何地方编辑。
编辑用手机添加了一张图像。它保存为草稿,所以应用仍显示已发布的页面。
发布之后,应用就有了。
内容在每次请求时解析,所以下一次读取就会返回新版本。无需重新构建或重新部署。
个性化
由 Fóir 决定每位访客看到哪个版本。
网站、应用和智能体发送相同的读取请求。没有任何规则匹配的访客得到默认内容。
它会判断是谁在请求。
位置来自请求,分群来自客户的资料,均在服务器上完成。这位客户消费超过 £1,000,所以提供的是 VIP 条目。
规则可以组合,由优先级决定。
这位访客在巴黎,并且以前买过跑鞋。有三个条目匹配,其中第一个被提供。
变体可以只改一个字段,其余保持不变。
它可以替换整条记录,或覆盖单个字段或某一段落。编辑在同一个编辑器中撰写每个版本,并以其面向的受众身份预览。
访客无法冒充他人。
位置和分群绝不取自调用方。修改请求不会有任何改变,返回的仍是默认内容。
上线
安排一次营销活动,并作为一个整体发布。
一次上线会在你选择的时间一起发布一组记录。可以暂停、重试失败的部分,或全部回滚。
密钥
每个密钥只能看到授予它的那部分 API。
密钥无法运行的 mutation 不会出现在提供给它的 schema 中,所以对于泄露的密钥来说,没有什么可供发现。
组织
把你构建的应用变成 SaaS。
第二位客户想要你为第一位客户构建的东西。把他们添加为一个组织:同样的模型、同样的代码,但有他们自己的数据、自己的成员和自己的登录。
没有哪位客户能读取另一位的数据。
凭据在查询触及任何一行之前就确定了边界,规则以数据库中的行级安全方式运行。你遗漏的检查不会造成泄露。
付费墙
为你的应用添加付费墙。
为某个操作设置按用户或按组织的配额。有人达到上限时,可以付费,在网页上通过 Stripe,在手机上通过应用商店,他们的订阅会提高限额。款项直接进入你自己的账户。
操作
你的逻辑运行在你自己拥有的代码中。
描述你的需求,Fóir 起草契约,然后把提示交给你的编码智能体。智能体编写并部署到你的托管环境。Fóir 从不持有你的代码。
每次调用都带着签名和作用域到达。
Fóir 判断谁在调用,以及该操作可以触及什么,并随调用一起发送。它的类型化客户端会把授权范围之外的任何内容变成编译错误。每次运行都有记录,重试携带相同的幂等键,所以不会发生两次。
机密
机密留在保险库中。
你的代码只持有引用,从不持有密钥。Fóir 在调用你的函数时填入密钥,且只针对该调用所属的项目,并记录每次读取。
智能体需要密钥时,会向人求助。
智能体在 Work 中提交一个任务并等待。有人用手机添加密钥,它直接进入保险库,智能体带着一个可用的引用继续工作,而永远看不到实际的值。
钩子
有事发生时作出反应。
当记录被创建、更改或发布,或另一个操作完成时,钩子会运行一个操作。投递至少一次,任何一次投递都可以重新发送。
通知
一有变化就告知客户。
通知会以推送的形式发出,并进入应用自己的收件箱。每位客户选择想了解的类别,Fóir 会遵从这一选择。
电子邮件
读取你数据的邮件。
模板在发送的那一刻根据你的记录填充内容。可以围绕一条记录发送,也可以发给整个分群,可按定时计划发送,会应用同意设置并跟踪打开情况。
媒体
图像上传一次,每块屏幕各得其所。
图像字段按屏幕请求的尺寸返回 WebP 和 AVIF,并附带 blurhash,在图片加载时显示。
搜索
按含义搜索,范围限定在调用方可读取的内容之内。
记录在写入时即生成嵌入向量。一个问题会找到最接近的匹配,私有记录绝不会出现在其他人面前。
附近
找到附近的内容。
地理点字段让记录可以按距离搜索,所以应用可以询问某人所在位置两公里范围内有什么。
工作
你线上站点上的一条备注变成任务。
你允许的任何人都可以在页面上留下备注。它锚定在页面背后的记录上,所以抵达 Work 时已附带正确的对象。
由人和智能体在同一个地方决定发布什么。
把任务指派给队友,或交给 Fóir。智能体可以自由撰写草稿,在有人批准发布之前,什么都不会上线。
智能体
给智能体一项长期任务。
一个长期运行的智能体关注正在发生的事情,并通过 MCP 让你的内容保持最新。它的密钥限定了它可以更改的范围,所以它在这些限制内自主行动。
你在控制台中的应用
你的应用自己的管理后台,就在控制台里。
应用声明一个页面以及它所用的确切权限。控制台在导航中显示它并交给它一个令牌,因此不会传递密码或 cookie。
集成
连接你已在运行的系统。
集成应用把另一个系统的字段映射到你的模型上,并让记录保持同步。那边的变更会更新这里的同一条记录。
导出
你的数据由你带走。
一条命令即可把每条记录导出到你自己的 Postgres 数据库。
开始
创建项目并定义你的模型。
其余的都已就绪。