lark-slides

Create and modify Feishu presentation slides via the lark-cli XML protocol.

26|Updated Apr 23, 2026
One-click install
npx skills add https://github.com/yjzhang2003/oh-my-feishu --skill lark-slides-yjzhang2003
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: lark-slides
Source: https://github.com/yjzhang2003/oh-my-feishu/tree/main/oh-my-feishu-plugin/skills/lark-slides
Command: npx skills add https://github.com/yjzhang2003/oh-my-feishu --skill lark-slides-yjzhang2003

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires lark-cli, jq, and includes references (resource) components.

What problem does it solve?

This Skill solves the challenge of programmatically creating and editing Feishu (Lark) presentations, allowing users to generate complex slide decks, insert media, and update content without manual GUI interaction.

Core Features & Use Cases

  • Automated Presentation Generation: Create full slide decks from structured data or templates.
  • Dynamic Content Updates: Perform block-level replacements or insertions to update specific slides, text, or images.
  • Media Integration: Automatically upload local images and embed them into slides using secure file tokens.
  • Use Case: A product manager can use this to automatically generate a weekly status report presentation by pulling data from a database and populating pre-defined slide templates.

Quick Start

Use the lark-slides skill to create a new presentation titled 'Q3 Product Review' and add a slide with the title 'Key Metrics'.

Frequently Asked Questions about lark-slides

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I automate Feishu presentation creation from structured data?

Automating Feishu presentation creation involves using the lark-cli XML protocol to programmatically generate slide decks. This Skill populates pre-defined templates with structured data, enabling block-level content updates and automated media embedding without manual GUI interaction.

Can I update specific Feishu slides dynamically without recreating the entire deck?

Yes, updating specific Feishu slides dynamically is possible through block-level replacements and insertions. This allows targeted modifications to text, images, or specific slide blocks using the SML 2.0 schema definitions, leaving the rest of the presentation untouched.

What is the best way to embed local images into Feishu slides programmatically?

The best way to embed local images into Feishu slides is by uploading them automatically to generate secure file tokens. These tokens are then used within the XML protocol to embed the media directly into the presentation blocks during automated generation.

Do I need lark-cli and jq to generate Feishu slides via XML?

Yes, you need both lark-cli and jq to generate Feishu slides via XML. lark-cli handles the authentication and communication with Feishu APIs using the SML 2.0 schema, while jq processes the structured data needed for populating the presentation content.

Are there limitations when modifying Feishu presentations via the XML protocol?

Modifications via the XML protocol require strict adherence to SML 2.0 schema definitions and proper authentication through lark-cli. Complex GUI-dependent formatting may be constrained by the block-level update boundaries defined by the protocol's schema.