CryptPad 技能用于借助 CryptPad 的浏览器集成 API 进行集成、自动化与诊断,涉及实例发现、文档导入导出等任务。资料说明其适用边界:本地办公文件创建或转换应使用 documents 或 anydoc;通用 API 契约设计应使用 api-design-and-evolution;容器操作应使用 docker-compose;EncryptPad 是另一个 OpenPGP 桌面应用。
工作流先确定实例来源、部署版本、文档应用与任务类型(已有 CryptDrive 内容、嵌入外部存储文档或实例运维),并强调不得仅凭标题、成功的 HTTP 请求或编辑器界面推断权限。外部存储优先使用有文档的浏览器集成 API,已有 CryptDrive 文档使用已授权浏览器会话,不要自造 bearer-token 的 CRUD 路由。
附带 CLI 命令(从技能根目录运行,仅用 Python 标准库、输出 JSON):python3 scripts/cryptpad.py probe --origin https://cryptpad.example.org;python3 scripts/cryptpad.py inspect-link < /secure/path/document-link.txt;python3 -m unittest discover -s scripts -p 'test_*.py'。probe 对 /api/config 与 /cryptpad-api.js 发起 GET,拒绝重定向、限制响应大小与超时,仅解析已知 AMD 包装内的 JSON 而不执行 JavaScript;退出码 0 表示两个资源均被识别,1 表示发现不完整,2 表示输入无效。enableEmbedding: false 是配置发现而非网络故障。inspect-link 为离线读取 stdin,避免把能力链接放入 argv,仅报告 origin、已知应用及 query/fragment 是否存在,不验证密钥或确定有效权限。
集成要点:加载实例的 /cryptpad-api.js 并调用 window.CryptPadAPI(containerId, config);这是浏览器 API,不是服务端 REST 文档服务。嵌入服务负责持久存储、用户授权与会话密钥共享,集成会话是临时的。建议使用 onNewKey 生成的会话密钥并原子地比较旧存储密钥、持久化胜出的编辑/查看密钥对。onSave 收到 Blob,仅在持久保存成功后确认;失败时保留可见未保存状态,重试需幂等或感知修订的存储。mode: 'view' 配合编辑密钥只锁 UI,应使用真实查看密钥。移除应用 ACL 条目不会终止已运行的持密钥会话,需规划轮换与迁移,不能声称追溯保密。CryptPad 侧端到端加密不加密你应用存储的导出内容。资料还提及集成计划模板、回调适配器、浏览器配置示例、研究来源与输出质量用例,但未提供具体实现细节、后端、凭据或加密方案。