@fungi.computer/gills

中文文档
0.3.0发布于 2026/11/09MITTypeScriptES Module近 30 天下载 1.3万

针对 App 主机的 Gill 约束声明、请求和纯文本行

中文使用文档
文档目录8 节
  1. 安装或设置
  2. 快开始
  3. 核心概念
  4. API 参考
  5. 实例
  6. 限制和错误
  7. 贡献和许可证
  8. 共享行时间复制

吉尔斯@fungi.computer/gills(中文(简体) )

Gills 定义了浏览器和终端共享的紧凑的,纯文本的 App 视图 师曰. 它拥有行线格式, Gill 声明, 限定请求和 响应, 以及认证的客户端 。 东道主也承认了, 通航与通读入取.

安装或设置

npm install @fungi.computer/gills [email protected]

吉尔斯是无害环境管理。 效果是它唯一的运行时间依赖. 所有出口都可以提供 从 @fungi.computer/gills 在节点,浏览器和工人.

快开始

解码行页和呼叫者可能发送的选定者:

import * as Schema from "effect/Schema";
import { rowPageSchemaV1, gillRequestSchema } from "@fungi.computer/gills";

const rows = Schema.decodeUnknownSync(rowPageSchemaV1)([
  { id: "session-a", title: "Review the draft", tone: "attention" },
]);
const request = Schema.decodeUnknownSync(gillRequestSchema, {
  onExcessProperty: "error",
})({ viewId: "inbox" });
console.log(rows[0]?.title, request.viewId);

核心概念

  • A 类 声明 记录Gill的App本地身份,源读法, 可选位置参数及其选项读取方法、更改种子和 桌面大小 。 Agar 从后端生成; Puffball 包含在 发布文摘.
  • A 类 请求 包含视图 ID、放置参数和可选源 光标。 主机在援引"App"之前承认了这种方法和计算机.
  • A 类 回应 是一个空页,文本行的完整一页,或是一个错误。 A 类 请求与 options: <parameter key> 返回选择页面. decodeDeclaredGillResponse 拒绝另一种观点的身份.
  • 空响应可能携带 emptyText (一条App-worded行,1至120) 字符,如"与代理人交谈:要求一个小游戏"等. )和 action: { kind: "open" }。主机以“ Open {App} ” 显示行 按钮; action 当 App 提供它自己的文本时, 它会保留按钮 . 也没有,部件说"这里还没有" 和按钮.
  • A 类 横行 带有显示文本和可选导航参数。 东道主 打开 Gill 自己的 App; 该 App 解释参数 。 无法命名行 不同的 App、 URL 或会议特定目标。 保留导航值 最多4 096个字符,包括计算机文件路径; 显示缩短 永不改变导航值.
  • 可选 row.status 带有 App 的平面标签和语义语调 紧凑状态指标。 App绘制了它的状态;主机没有推断它.
  • 错误可以提供 recovery: { kind: "configure", param: "computer" } 或者说 recovery: { kind: "open" }。配置必须指定一个已声明的参数和 打开已存在的拾取器。 打开时使用主机的发射器 相同的 App. 两个表格都没有 App ID, URL 或命令 。 应用程序名称和图标 保留主机目录演示文稿, 在此线外 .

API 参考

见 生成 API 假设类型和 createGillClient。 。 。 .

实例

createGillClient({ endpoint, fetch, declaration }) 发送已绑定的选择器 用 PUT 解码结果。 提供经认证的 fetch 被钉住 选中的 App 和 Release 。 可选 decodeRefusal(raw, declaration) 手柄 使用主机自己的解码器识别出HTTP 503个机体. 未获承认的拒绝 抛出;客户端不选择主机策略.

Agar 的 App 执行拒绝解码器仍在 @fungi.computer/agar/gills。 。 。 . App生产商和出品商直接从中导入共享合同 软件包.

限制和错误

页面最多包含200行. 行标签允许4,096个字符,身份 513 和细节 1,024. 导航意图最多有16个参数 64-字符键和4,096-字符值. 请求绑定光标至 1 024 字符和放置上下文为有256个字符值的四个键. 申报提供最多四种独特的参数:计算机、存储器或 分支,以及来自 S、 M 和 L 的独特桌面大小 已有存储标记或绑定更改种子。 资源信封和行 诉讼不属于合同范围.

解码器拒绝无效的电线值 。 Gill 输出为文本数据, 永远无法执行 乌伊 UI. 装入是主机状态 。 客户端投放 HTTP 错误, 除非注入 主机解码器确认拒绝.

贡献和许可证

运行 pnpm build, (中文(简体) ), pnpm typecheck, (中文(简体) ), pnpm lint, (中文(简体) ), pnpm test, (中文(简体) ), pnpm docs 财务报告和审定财务报表 pnpm stranger 本包中。 重新生成 API 文件 pnpm docs:write。 。 。 . 许可证根据 麻省理工学院。 。 。 .

共享行时间复制

relativeTime 从 @fungi.computer/gills/presentation 报告格式 毫秒印用Apps现有的英语相对时间复制. 这个 纯输入不装入 Gill 解码器。 源码方法保持时间戳 不变; 投影只能格式化时间标其源返回.

版本与发布记录

@fungi.computer/gills 共发布 7 个版本,首次发布于 2026/10/15;过去 12 个月发布了 7 个版本。

版本发布日期距今
0.3.0latest2026/11/097 天前
0.2.22026/11/088 天前
0.2.12026/11/0412 天前
0.2.02026/10/2323 天前
0.1.02026/10/1729 天前
0.0.12026/10/151 个月前

关于 @fungi.computer/gills 的常见问题

@fungi.computer/gills 是什么?

针对 App 主机的 Gill 约束声明、请求和纯文本行

如何安装 @fungi.computer/gills?

在项目目录运行 npm install @fungi.computer/gills,或使用 pnpm add / yarn add / bun add。

@fungi.computer/gills 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@fungi.computer/gills 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@fungi.computer/gills 可以商用吗?

@fungi.computer/gills 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@fungi.computer/gills 的下载量有多少?

根据 npm 官方下载统计,@fungi.computer/gills 在 2026/10/16 – 2026/11/14 这 30 天内被下载 13,484 次,日均约 449 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@fungi.computer/gills 还在维护吗?

最新版本 0.3.0 发布于 2026/11/09(7 天前);至今共发布 7 个版本,其中过去 12 个月发布了 7 个;首次发布于 2026/10/15。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。