Skip to content

ChrisZou/feishu-doc-creator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

飞书文档创建脚本

一个使用 Go 语言编写的命令行工具,用于快速创建飞书(Lark)文档并自动设置权限。

功能特性

  • 🚀 快速创建空白飞书文档
  • 🔐 自动获取和刷新访问令牌
  • 👥 设置文档为公开编辑权限
  • 🎯 支持添加指定用户为文档管理员
  • 🌐 创建成功后自动在默认浏览器中打开
  • ⚙️ 支持环境变量配置方式
  • 🔍 通过手机号查找并添加管理员用户

安装要求

  • Go 1.16 或更高版本
  • 有效的飞书开放平台应用凭证

快速开始

1. 获取飞书应用凭证

  1. 访问 飞书开放平台
  2. 创建或选择一个应用
  3. 获取 App IDApp Secret
  4. 确保应用具有以下权限:
    • docs:doc:write - 创建文档
    • drive:drive:write - 设置文档权限
    • contact:contact:read - 查找用户信息

2. 配置应用凭证

使用环境变量配置:

export FEISHU_APP_ID="cli_xxxxxxxxxxxxxxxxx"
export FEISHU_APP_SECRET="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

# 必需:设置管理员手机号
export FEISHU_ADMIN_MOBILE="13800138000"

你也可以创建 .env 文件:

cp .env.example .env
# 编辑 .env 文件,填入你的凭证信息

3. 运行脚本

# 直接运行
go run create_feishu_doc.go

# 或先编译再运行
go build -o create_feishu_doc create_feishu_doc.go
./create_feishu_doc

配置选项

环境变量

变量名 描述 必需
FEISHU_APP_ID 飞书应用 ID
FEISHU_APP_SECRET 飞书应用密钥
FEISHU_ADMIN_MOBILE 管理员手机号

使用说明

  1. 文档创建:脚本会创建一个空白文档,无预设标题
  2. 权限设置:自动设置文档为公开编辑权限,任何人都可以编辑
  3. 管理员添加:添加指定手机号用户为文档管理员(必需设置,否则文档无法编辑)
  4. 自动打开:创建成功后会在默认浏览器中自动打开文档

工作流程

开始
  ↓
读取环境变量配置
  ↓
获取访问令牌
  ↓
创建空白文档
  ↓
设置文档公开编辑权限
  ↓
通过手机号查找并添加管理员用户
  ↓
在浏览器中打开文档
  ↓
结束

错误处理

脚本包含完善的错误处理机制:

  • 认证失败:检查 App ID 和 App Secret 是否正确
  • 权限不足:确保应用具有所需的 API 权限
  • 用户查找失败:检查邮箱/手机号格式,确保用户在企业内
  • 网络错误:自动重试机制,处理临时网络问题

常见问题

Q: 创建的文档无法编辑?

A: 文档需要管理员才能编辑,脚本会根据配置的手机号自动添加管理员。如果仍无法编辑,请检查:

  1. 应用是否有 drive:drive:write 权限
  2. 管理员手机号是否配置正确
  3. 该用户是否已成功添加为管理员

Q: 管理员添加失败?

A: 请确保:

  1. 应用有 contact:contact:read 权限
  2. 手机号格式正确(如:13800138000)
  3. 用户在当前企业内且未离职

Q: 脚本报错 "field validation failed"?

A: 这通常是 API 格式问题,脚本已处理此类错误。如果持续出现,请检查应用权限配置。

Q: 如何在不同操作系统上使用?

A: 脚本支持 Windows、macOS 和 Linux,会自动调用系统默认浏览器。

开发者信息

  • API 版本: 飞书开放平台 API v2
  • Go 版本: 1.16+
  • 依赖: 仅使用 Go 标准库,无第三方依赖

许可证

MIT License

更新日志

  • v1.0.0: 初始版本,支持基本文档创建功能
  • v1.1.0: 添加权限设置功能
  • v1.2.0: 支持管理员用户添加
  • v1.3.0: 优化用户查找逻辑,添加环境变量支持

About

A Go command-line tool to create Feishu (Lark) documents with permissions setup and auto-open in browser

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages