在任何环境中扩展。
云端、自有服务器或边缘环境。保持同一执行模型,增加计算资源并承载持续增长的工作负载。
弹性执行
const app = maxq.app("workspace"); await app.deploy({ environments: ["cloud", "on-prem", "edge"], scale: "elastic",});人和智能体,共同工作。
同一个工作空间支持众多参与者。人和智能体同时操作共享状态,实时接收变更。
共享状态
const room = await maxq.room("workspace");await room.join([person, ...agents]); room.sync.onChange(render);await room.sync.apply(signedChange);权限经过签名。
通过密码学签名的授权凭证规定数据访问和操作范围。每个请求执行前都检查签名、资源、操作、有效期和撤销状态。
签名权限
const access = await maxq.capability.issue({ subject: actor.publicKey, resource: room.ref, rights: ["read", "write"],}, ownerKey); await room.sync.apply(change, { capability: access,});同步引擎
只同步变化。
同步引擎传递选定对象和字段的变更。订阅者接收查询结果的增量更新,无需再次下载整个数据集。
增量同步
const tasks = room.sync.watch({ collection: "tasks", where: { projectId }, fields: ["id", "status"], capability: taskRead,}); tasks.onPatch((patch) => view.apply(patch));断线之后继续。
本地变更保留在队列中。重新连接后,同步从保存的游标继续,补齐断线期间错过的操作。
重新连接
const cursor = await room.sync.checkpoint();room.sync.disconnect(); await room.sync.commit(change, { offline: "queue", capability: sessionAccess,}); await room.sync.connect({ after: cursor, capability: sessionAccess,});不同修改,同一结果。
人修改标题,智能体分配任务。不同字段的独立修改合并为同一共享状态,并发送给所有参与者。
并发变更
await Promise.all([ room.sync.patch(taskId, { title: "Ready" }, { capability: personAccess, }), room.sync.patch(taskId, { assignee: "agent" }, { capability: agentAccess, }),]); const task = await room.sync.read(taskId, { capability: personAccess,});密码学权限
精确到对象的权限。
授权凭证将参与者的密钥与资源和允许的操作绑定。读取权限不包含写入权限,仅知道对象地址并不能获得访问权。
对象与操作
const readOnly = await maxq.capability.issue({ subject: analyst.publicKey, resource: task.ref, rights: ["read"],}, ownerKey); await task.read({ capability: readOnly });const canWrite = await task.permits("write", readOnly);委派更少的权限。
为智能体授予任务访问权,为工具仅授予所需操作。每次进一步委派都缩小权限范围,且不超过原始凭证的有效期。
缩小权限
const reader = await access.delegate({ subject: agent.publicKey, resource: task.ref, rights: ["read"], expiresAt: deadline,}, personKey); const toolAccess = await reader.delegate({ subject: tool.publicKey, rights: ["read"],}, agentKey);访问权可以撤销。
撤销或到期后,授权凭证失效。新请求被阻止,关联订阅关闭,已接收的数据仍然保留。
撤销授权
const feed = room.sync.watch({ collection: "tasks", capability: agentAccess,}); await agentAccess.revoke({ signedBy: ownerKey });await feed.closed;