app.json
项目根目录的app.json 是平台唯一读取的配置文件:
平台只读取上面这些字段,其余内容不会被上传。
placement:投放方式
它对节点安装同样生效。 声明
single 的小程序全站只能存在于一处——一个帖子或一个节点,第二处一律拒绝。给节点主装的机器人几乎总是 many:每个节点各留自己的问候记录、自己的规则、自己的待办提醒。只有当整个小程序的意义就是「一份共享的东西」时才用 single,而且先考虑 kv.app——它跨安装共享,能让 many 变得安全。
settings:安装时要问什么
需要被告知点什么的小程序——一个接口地址、一把密钥、一个分类——把字段声明出来,安装表单据此渲染:string text markdown secret url integer boolean enum,最多 20 个字段。url 只接受 https,enum 必须给 options。markdown 用和发帖一样的编辑器填写,支持 @ 用户、表情和预览,长度上限与帖子相同——适合欢迎语、公告这类会原样发出去的内容。
填好的值作为 ctx.config 交给 handler。不声明 settings 也行,ctx.config 就是管理员手工填进去的东西。
label 和 description 可以按语言写。 读这张表的是节点主——在一个不讲英文的论坛上摆一排英文字段,等于一张没人填得下去的表。回退顺序是:精确匹配 → 同语言的其他地区写法 → 英文。readme.md
项目根目录的readme.md 随代码一起上传,渲染成 Markdown 显示在小程序详情页(/apps/<slug>)。这是别人决定要不要点开你的小程序之前唯一会读的东西——app.json 里的 name 只有一行,讲不清楚。
写法就是普通 Markdown:标题、列表、粗体、链接、代码块都支持,和发帖用的是同一套渲染器:
- readme 跟着版本走,不跟着小程序走。 上传哪一版,页面就显示哪一版的 readme;审核员看到的也是这一份。改 readme 要重新提交版本——写着「骰子工具」通过审核的小程序,不能过几天自己改成别的说明。
- 没有
readme.md也能发布,页面上不显示这一节。 - 上限 64 KB。
- 不用 CLI 也行:作者中心(
/apps/authoring/<slug>)的提交表单里有同一个字段,会自动带上你上一版写的内容。
