用途:把静态目录发布到已配置的 Paperclip 页面主机,例如 https://pages.paperclip.ing/<slug>/,用于部署、托管或分享持久化页面。
主要能力:发布静态 HTML 页面与资源文件夹;支持 --dry-run 校验本地结构并查看解析后的 URL/前缀;可用 --slug 指定稳定路径,省略则从源目录名派生;--update 以增量覆盖方式更新已有前缀。
使用方式:源目录根需含 index.html;实时发布需 PATH 中有 aws CLI v2、curl、jq,并配置 PAPERCLIP_PAGE_BUCKET、PAPERCLIP_PAGE_BASE_URL、AWS_REGION、PAPERCLIP_PAGE_AWS_ACCESS_KEY_ID、PAPERCLIP_PAGE_AWS_SECRET_ACCESS_KEY 等环境变量。可选 PAPERCLIP_PAGE_DEFAULT_PREFIX、PAPERCLIP_PAGE_AWS_PROFILE、PAPERCLIP_PAGE_AWS_SESSION_TOKEN。先运行 scripts/publish.sh <dir> --dry-run,再执行 .agents/skills/paperclip-page/scripts/publish.sh ./site --slug my-page,更新加 --update。
限制:仅发布公开静态内容,禁止发布密钥、客户数据、私有材料、凭据或内部日志;不得打印 AWS 密钥;不得修改 bucket 策略、IAM、DNS、CloudFront 或 ACM;不得上传到配置的 bucket 与前缀之外;不使用 aws s3 sync --delete 或要求 s3:DeleteObject;强制 --no-follow-symlinks,存在符号链接即失败;拒绝隐藏文件与点段路径(自身 .paperclip-page/state.json 除外);slug 与前缀段仅限小写 ASCII 字母、数字和连字符;404.html 等站点根对象由运维管理。更新为增量覆盖,不删除远端对象,且 --update 需同一源目录先前发布生成的 .paperclip-page/state.json 作为归属证明,否则应新建 slug。不要将上传凭据绑定为全局 AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY。