Search

PythonReactSEOPDF
OpenClaw

feishu-messaging

Best practices for Feishu (Lark) message configuration and formatting. Use when: (1) Configuring Feishu channel settings, (2) Experiencing message formatting issues (raw vs card), (3) Setting up renderMode for stable message display, (4) Understanding differences between auto-replies and proactive messages. Essential for ensuring consistent message formatting in Feishu chats.

heimo-he0 source installs☆ 0 Repository stars

Installation

Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.

SkillHub CLI

skillhub install heimo-he/feishu-messaging-en

Inspect the source and compatibility requirements, then follow its installation steps.

Give your agent the source link and ask it to inspect instructions and dependencies before explaining the installation steps.

View source ↗Guides

Skill instructions

Feishu Messaging Configuration

Quick Start

For stable, consistent message formatting in Feishu, configure:

channels:
  feishu:
    renderMode: "card"  # Recommended for most use cases

This ensures all auto-replies use interactive cards with proper markdown rendering.

Message Format Stability

The Problem: Raw vs Card Mixing

Without proper configuration, Feishu messages can inconsistently appear as:

  • Raw text: Plain markdown source, no formatting
  • Card format: Rendered markdown with syntax highlighting, tables, links

This creates a poor user experience with unpredictable message appearance.

The Solution: Explicit renderMode

Set renderMode explicitly instead of relying on "auto":

Mode Behavior Use Case
auto Detects content, uses card for code/tables Default, but can be inconsistent
raw Always plain text Simple text-only responses
card Always interactive card Recommended - consistent formatting

Recommended configuration:

channels:
  feishu:
    renderMode: "card"

This guarantees:

  • ✅ Consistent message appearance
  • ✅ Proper markdown rendering (syntax highlighting, tables, links)
  • ✅ No unexpected format switching
  • ✅ Professional, polished look

Auto-Reply vs Proactive Messages

Auto-Replies (Bot responds to user messages)

Controlled by renderMode:

  • renderMode: "card" → All auto-replies use card format
  • renderMode: "raw" → All auto-replies use plain text

Example flow:

  1. User: "Show me the code"
  2. Bot auto-reply uses card format (if renderMode: "card")
Proactive Messages (Bot sends via message tool)

Always use plain text format via outbound.sendText.

To send card format proactively:

  1. Ask user to send a message first
  2. Bot replies to that message (uses renderMode)

Example:

User: "Remind me about the meeting"
Bot (proactive): "OK, reminder set"  # Plain text via message tool...

Source information

Source
github
Repository
openclaw/skills
Path
skills/heimo-he/feishu-messaging-en
Version
—
Commit
5604bead633fbb8fc5e06cd560c6cbf8aa2660fd
Classification source
rules
Status
active
Visibility
public

These signals come from indexed source analysis and may lag behind changes. Check the current source files.

Extracted content

SKILL.md
# Feishu Messaging Configuration

## Quick Start

For stable, consistent message formatting in Feishu, configure:

```yaml
channels:
  feishu:
    renderMode: "card"  # Recommended for most use cases
```

This ensures all auto-replies use interactive cards with proper markdown rendering.

## Message Format Stability

### The Problem: Raw vs Card Mixing

Without proper configuration, Feishu messages can inconsistently appear as:
- **Raw text**: Plain markdown source, no formatting
- **Card format**: Rendered markdown with syntax highlighting, tables, links

This creates a poor user experience with unpredictable message appearance.

### The Solution: Explicit renderMode

Set `renderMode` explicitly instead of relying on "auto":

| Mode | Behavior | Use Case |
|------|----------|----------|
| `auto` | Detects content, uses card for code/tables | Default, but can be inconsistent |
| `raw` | Always plain text | Simple text-only responses |
| `card` | Always interactive card | **Recommended** - consistent formatting |

**Recommended configuration:**

```yaml
channels:
  feishu:
    renderMode: "card"
```

This guarantees:
- ✅ Consistent message appearance
- ✅ Proper markdown rendering (syntax highlighting, tables, links)
- ✅ No unexpected format switching
- ✅ Professional, polished look

## Auto-Reply vs Proactive Messages

### Auto-Replies (Bot responds to user messages)

Controlled by `renderMode`:
- `renderMode: "card"` → All auto-replies use card format
- `renderMode: "raw"` → All auto-replies use plain text

**Example flow:**
1. User: "Show me the code"
2. Bot auto-reply uses card format (if `renderMode: "card"`)

### Proactive Messages (Bot sends via `message` tool)

Always use plain text format via `outbound.sendText`.

**To send card format proactively:**
1. Ask user to send a message first
2. Bot replies to that message (uses `renderMode`)

**Example:**
```
User: "Remind me about the meeting"
Bot (proactive): "OK, reminder set"  # Plain text via message tool...

Related skills

OpenClaw

x402hub

capncoconut

Register, communicate, and earn on the x402hub AI agent marketplace. Use when an agent needs to register on x402hub, browse or claim bounties, submit deliverables, send messages to other agents via x402 Relay,...

OpenClaw

claw

capevace

Real-time event bus for AI agents. Publish, subscribe, and share live signals across a network of agents with Unix-style simplicity.

OpenClaw

captchas-openclaw

captchasco

OpenClaw integration guidance for CAPTCHAS Agent API, including OpenResponses tool schemas and plugin tool registration.