mcpField
G
glmv-doc-based-writing

glmv-doc-based-writing

github.com/zai-orgDocuments47540 installsUpdated 28w ago
Repository

About glmv-doc-based-writing

glmv-doc-based-writing is a skill for creating text from supplied documents, including articles, reports, reviews, and proposals. It uses the ZhiPu GLM-V multimodal model to process documents and can save the complete result as Markdown or JSON.

Key features

  1. 01Write from one or more documents
  2. 02Create articles, reports, reviews, or proposals
  3. 03Accept document URLs for PDF, DOCX, and TXT
  4. 04Set requirements and a custom system prompt
  5. 05Save results as Markdown or JSON

Use cases

  1. 01Draft an article or brief from a paper
  2. 02Summarize documents and extract key points
  3. 03Write a review using book or film materials

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/zai-org/glm-skills --skill glmv-doc-based-writing

After installing, type/glmv-doc-based-writingin Claude Code to confirm it loaded.

Bundled files.DS_Storescripts/doc_based_writing.py

Details

From the project README

GLM-V Document-Based Writing Skill

Comprehend the given document(s) and write a textual content (paper/article/essay/report/review/post/brief/proposal/plan) according to your requirements using the ZhiPu GLM-V multimodal model.

When to Use

  • Write a textual content according to specified requirements, AFTER reading provided document(s)
  • User mentions "基于文档的写作", "文章撰写", "文档解读", "新闻稿撰写", "简报撰写", "影评/书评撰写", "内容总结", "内容创作", "评论写作", "文档续写", "文档翻译", "方案策划", "发言稿撰写", "document-based writing", "article writing", "document reading", "press release writing", "brief writing", "film/book review writing", "content summarization", "content creation", "commentary writing", "document continuation", "document translation", "proposal planning ", "speech writing"

Supported Input Types

TypeFormatsMax CountSource
Document (URL)pdf, docx50URL
Document (Local)pdf onlypages ≤ 50 totalLocal path

Local PDF / 本地 PDF: Local PDF files are converted page-by-page into images (base64) before sending to the model. PyMuPDF is required (pip install PyMuPDF). URL files support full formats including pdf/docx/txt. 本地 PDF 会自动逐页转为图片(base64)传给模型,需要安装 PyMuPDF(pip install PyMuPDF)。URL 文件支持 pdf/docx/txt 等全格式。

📋 Output Display Rules (MANDATORY)

After running the script, you must display the complete content (Markdown format) exactly as returned. Do not summarize, truncate, translate, comment, or only say "Writing Completed!".

Resource Links

ResourceLink
Get API Keyhttps://bigmodel.cn/usercenter/proj-mgmt/apikeys
API DocsChat Completions / 对话补全

Prerequisites

API Key Setup / API Key 配置(Required / 必需)

This script reads the key from the ZHIPU_API_KEY environment variable and shares it with other Zhipu skills. 脚本通过 ZHIPU_API_KEY 环境变量获取密钥,与其他智谱技能共用同一个 key。

Get Key / 获取 Key: Visit Zhipu Open Platform API Keys / 智谱开放平台 API Keys to create or copy your key.

Setup options / 配置方式(任选一种):

  1. OpenClaw config (recommended) / OpenClaw 配置(推荐): Set in openclaw.json under skills.entries.glmv-doc-based-writing.env:

    "glmv-doc-based-writing": { "enabled": true, "env": { "ZHIPU_API_KEY": "你的密钥" } }
    
  2. Shell environment variable / Shell 环境变量: Add to ~/.zshrc:

    export ZHIPU_API_KEY="你的密钥"
    

💡 If you already configured another Zhipu skill (for example zhipu-tools or glmv-caption), they share the same ZHIPU_API_KEY, so no extra setup is needed. 💡 如果你已为其他智谱 skill(如 zhipu-tools、glmv-caption)配置过 key,它们共享同一个 ZHIPU_API_KEY,无需重复配置。

How to Use

Basic Screening
python scripts/doc_based_writing.py \
  --files "https://example.com/doucment1.pdf" "https://example.com/doucment2.docx" \
  --requirements "基于这篇论文撰写公众号文章,要求偏技术风格"
Save as Markdown
python scripts/doc_based_writing.py \
  --files "https://example.com/doucment1.pdf" "https://example.com/doucment2.docx" \
  --requirements "总结文档主要内容和核心观点" \
  --output result.md
Save as JSON
python scripts/doc_based_writing.py \
  --files "https://example.com/doucment1.pdf" "https://example.com/doucment2.docx" \
  --criteria "撰写新闻稿" \
  --output result.json --pretty
Custom System Prompt
python scripts/doc_based_writing.py \
  --files "https://example.com/doucment1.pdf" \
  --criteria "为这本书撰写书评" \
  --system-prompt "你是一位拥有20年跨领域写作经验的资深写作专家,擅长撰写书评"

Output Example

The model outputs a Markdown content like this:

XXX

CLI Reference

python scripts/doc_based_writing.py --files FILE [FILE...] --requirements REQUIREMENTS [OPTIONS]
ParameterRequiredDescription
--files, -f✅Document file URLs (pdf/docx, URL only, max 50)
--requirements, -c✅Writing requirements text
--model, -mNoModel name (default: glm-4.6v)
--system-prompt, -sNoCustom system prompt (default: professional HR assistant)
--temperature, -tNoSampling temperature 0-1 (default: 0.6)
--max-tokensNoMax output tokens (default: 10000)
--output, -oNoSave result to file (.md for markdown, .json for JSON)
--prettyNoPretty-print JSON output

Error Handling

API key not configured: → Guide user to configure ZHIPU_API_KEY

Authentication failed (401/403): → API key invalid/expired → reconfigure

Rate limit (429): → Quota exhausted → wait and retry

Local path provided: → Error: only URLs supported

Content filtered: → warning field present → content blocked by safety review

Timeout: → Documents too large or too many → reduce file count

Comments

Markdown supported