Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

飞书更新云文档

v1.0.0

更新飞书云文档。支持 7 种更新模式:追加、覆盖、定位替换、全文替换、前/后插入、删除。

0· 64·0 current·0 all-time

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for a3152557994-ship-it/feishu-doc-update.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "飞书更新云文档" (a3152557994-ship-it/feishu-doc-update) from ClawHub.
Skill page: https://clawhub.ai/a3152557994-ship-it/feishu-doc-update
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install feishu-doc-update

ClawHub CLI

Package manager switcher

npx clawhub@latest install feishu-doc-update
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
!
Purpose & Capability
技能说明是“更新飞书云文档”,并提供多种更新模式与定位语法,这与描述一致。但要实际更新飞书云文档通常需要飞书 API 凭据(如 app_id/app_secret 或 tenant_access_token);该技能未声明任何所需环境变量或主凭证,未说明调用哪个 API/端点或依赖哪个已有工具,因而存在功能声明与所需权限/依赖不一致的担忧。
Instruction Scope
SKILL.md 提供了详细的输入格式、定位规则与返回值示例,且没有要求读取本地文件或任意系统路径,也未指示发送数据到非飞书的外部端点。这些指令在范围上较为聚焦,但它假定存在名为 create-doc / update-doc 的工具或环境上下文来执行请求——该工具/环境在哪里、如何认证均未说明,给予代理较大自由去选择如何执行(潜在的歧义/滥用点)。
Install Mechanism
无安装规范、无代码文件,指令式技能不会在本地写入或下载代码,安装风险最低。
!
Credentials
更新飞书文档通常需要飞书相关凭据或令牌,但 requires.env 与 primary credential 均为空;技能既不声明所需的 API key/secret,也不提示从何处获取凭据。这既可能表明技能预期在已有飞书集成的环境中使用,也可能是遗漏或设计不周——在缺乏凭据说明的情况下,使用者无法评估权限范围或潜在的凭据滥用风险。
Persistence & Privilege
flags 中没有 always:true、也没有写入其它技能或系统范围配置的指令;技能不会要求常驻或提升自身权限。
What to consider before installing
这个技能本身只是一份操作说明模板,描述如何构造更新飞书文档的请求和定位规则,但没有说明如何认证或调用飞书 API。安装前请确认: - 你的代理环境是否已经有合法的飞书凭证与调用实现(create-doc/update-doc);如果没有,技能本身不会帮你获取凭证; - 若你打算授予代理飞书凭证,最好先在非生产文档上用 append/replace_range 等小粒度模式测试,避免使用 overwrite 导致媒体或评论丢失; - 询问技能的来源/作者并要求一个主页或源码仓库以便审查(当前 source/homepage 未提供); - 若你不能确认凭据管理和调用端点,请将此技能视为不完整或需要额外安全审查后再启用。

Like a lobster shell, security has layers — review code before you run it.

latestvk97f5cbpxanxe382ed4mvm3hrx85ed1h
64downloads
0stars
1versions
Updated 4d ago
v1.0.0
MIT-0

feishu__update_doc

更新飞书云文档内容,支持 7 种更新模式。优先使用局部更新(replace_range/append/insert_before/insert_after),慎用 overwrite(会清空文档重写,可能丢失图片、评论等)。

定位方式

定位模式(replace_range/replace_all/insert_before/insert_after/delete_range)支持两种定位方式,二选一:

selection_with_ellipsis - 内容定位

支持两种格式:

  1. 范围匹配开头内容...结尾内容

    • 匹配从开头到结尾的所有内容(包含中间内容)
    • 建议 10-20 字符确保唯一性
  2. 精确匹配完整内容(不含 ...

    • 匹配完整的文本内容
    • 适合替换短文本、关键词等

转义说明:如果要匹配的内容本身包含 ...,使用 \.\.\. 表示字面量的三个点。

示例:

  • 你好...世界 → 匹配从"你好"到"世界"之间的任意内容
  • 你好\.\.\.世界 → 匹配字面量 "你好...世界"

建议:如果文档中有多个 ...,建议使用更长的上下文来精确定位,避免歧义。

selection_by_title - 标题定位

格式:## 章节标题(可带或不带 # 前缀)

自动定位整个章节(从该标题到下一个同级或更高级标题之前)。

示例

  • ## 功能说明 → 定位二级标题"功能说明"及其下所有内容
  • 功能说明 → 定位任意级别的"功能说明"标题及其内容

可选参数

new_title

更新文档标题。如果提供此参数,将在更新文档内容后同步更新文档标题。

特性

  • 仅支持纯文本,不支持富文本格式
  • 长度限制:1-800 字符
  • 可以与任何 mode 配合使用
  • 标题更新在内容更新之后执行

返回值

成功

{
  "success": true,
  "doc_id": "文档ID",
  "mode": "使用的模式",
  "message": "文档更新成功(xxx模式)",
  "warnings": ["可选警告列表"],
  "log_id": "请求日志ID"
}

异步模式(大文档超时)

{
  "task_id": "async_task_xxxx",
  "message": "文档更新已提交异步处理,请使用 task_id 查询状态",
  "log_id": "请求日志ID"
}

使用返回的 task_id 再次调用 update-doc(仅传 task_id 参数)查询状态。

错误

{
  "error": "[错误码] 错误消息\n💡 Suggestion: 修复建议\n📍 Context: 上下文信息",
  "log_id": "请求日志ID"
}

使用示例

append - 追加到末尾

{
  "doc_id": "文档ID或URL",
  "mode": "append",
  "markdown": "## 新章节\n\n追加的内容..."
}

replace_range - 定位替换

使用 selection_with_ellipsis

{
  "doc_id": "文档ID或URL",
  "mode": "replace_range",
  "selection_with_ellipsis": "## 旧章节标题...旧章节结尾。",
  "markdown": "## 新章节标题\n\n新的内容..."
}

使用 selection_by_title(替换整个章节):

{
  "doc_id": "文档ID或URL",
  "mode": "replace_range",
  "selection_by_title": "## 功能说明",
  "markdown": "## 功能说明\n\n更新后的功能说明内容..."
}

replace_all - 全文替换

与 replace_range 类似,但支持多处同时替换(replace_range 要求匹配唯一):

{
  "doc_id": "文档ID或URL",
  "mode": "replace_all",
  "selection_with_ellipsis": "张三",
  "markdown": "李四"
}

返回值包含 replace_count 字段,表示替换的次数:

{
  "success": true,
  "replace_count": 4,
  "message": "文档更新成功(replace_all模式,替换4处)"
}

注意

  • replace_range 不同,replace_all 允许多个匹配
  • 如果没有找到匹配内容,会返回错误
  • markdown 可以为空字符串,表示删除所有匹配内容

insert_before - 前插入

{
  "doc_id": "文档ID或URL",
  "mode": "insert_before",
  "selection_with_ellipsis": "## 危险操作...数据丢失风险。",
  "markdown": "> **警告**:以下操作需谨慎!"
}

insert_after - 后插入

{
  "doc_id": "文档ID或URL",
  "mode": "insert_after",
  "selection_with_ellipsis": "```python...```",
  "markdown": "**输出示例**:\n```\nresult = 42\n```"
}

delete_range - 删除内容

使用 selection_with_ellipsis

{
  "doc_id": "文档ID或URL",
  "mode": "delete_range",
  "selection_with_ellipsis": "## 废弃章节...不再需要的内容。"
}

使用 selection_by_title(删除整个章节):

{
  "doc_id": "文档ID或URL",
  "mode": "delete_range",
  "selection_by_title": "## 废弃章节"
}

注意:delete_range 模式不需要 markdown 参数。

同时更新标题和内容

可以在任何更新模式中添加 new_title 参数来同时更新文档标题:

{
  "doc_id": "文档ID或URL",
  "mode": "overwrite",
  "markdown": "# 项目文档 v2.0\n\n全新的内容...",
  "new_title": "项目文档 v2.0"
}
{
  "doc_id": "文档ID或URL",
  "mode": "append",
  "markdown": "## 更新日志\n\n2025-12-18: 新增功能...",
  "new_title": "项目文档(已更新)"
}

overwrite - 完全覆盖

⚠️ 会清空文档后重写,可能丢失图片、评论等,仅在需要完全重建文档时使用。

{
  "doc_id": "文档ID或URL",
  "mode": "overwrite",
  "markdown": "# 新文档\n\n全新的内容..."
}

最佳实践

小粒度精确替换

修改文档内容时,定位范围越小越安全。尤其是表格、分栏等嵌套块,应精确定位到需要修改的文本,避免影响其他内容。

示例:表格单元格中有图片和文字,只需修改文字

  • ❌ 替换整个表格或整行 → 可能破坏图片引用
  • ✅ 只定位需要修改的文本 → 图片等其他内容不受影响

保护不可重建的内容

图片、画板、电子表格、多维表格、任务等内容以 token 形式存储,无法读出后原样写入

保护策略

  • 替换时避开包含这些内容的区域
  • 精确定位到纯文本部分进行修改

分步更新优于整体覆盖

修改多处内容时:

  • ✅ 多次小范围替换,逐步修改
  • ⚠️ 谨慎使用 overwrite 重写整个文档, 除非你认为风险完全可控

原因:局部更新保留原有媒体、评论、协作历史,更安全可靠。

insert 模式扩大定位范围时注意插入位置

使用 insert_beforeinsert_after 时,如果目标内容重复出现,需要扩大 selection_with_ellipsis 范围来唯一定位。

关键:插入位置基于匹配范围的边界

  • insert_after → 插入在匹配范围的结尾之后
  • insert_before → 插入在匹配范围的开头之前

扩大范围时,确保边界仍然是期望的插入点。

修复画板语法错误

当 create-doc 或 update-doc 返回画板写入失败的 warning 时:

  1. warning 中包含 whiteboard 标签(如 <whiteboard token="xxx"/>
  2. 分析错误信息,修正 Mermaid/PlantUML 语法
  3. replace_range 替换:selection_with_ellipsis 使用 warning 中的 whiteboard 标签,markdown 提供修正后的代码块
  4. 重新提交验证

注意事项

  • Markdown 语法:支持飞书扩展语法,详见 create-doc 工具文档

Comments

Loading comments...