Skip to content

feat(optional-skills): add Feishu Card Builder skill - #29193

Open
Minksgo wants to merge 1 commit into
NousResearch:mainfrom
Minksgo:feat/feishu-card-builder
Open

feat(optional-skills): add Feishu Card Builder skill#29193
Minksgo wants to merge 1 commit into
NousResearch:mainfrom
Minksgo:feat/feishu-card-builder

Conversation

@Minksgo

@Minksgo Minksgo commented May 20, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds a new optional skill Feishu Card Builder for composing Feishu/Lark interactive card messages without manual JSON construction.

Problem

Hermes Agent already supports Feishu messaging via the built-in feishu.py gateway platform, but there is no skill-level utility for the agent to easily compose and send formatted interactive card messages (metrics, tables, lists) during conversation.

Solution

A new optional skill under optional-skills/communication/feishu-card-builder/:

  • MetricCard — key-value KPI display with color-coded headers (blue, green, red, etc.)
  • TableCard — structured data rendered as Feishu-native markdown grids (rendered as bordered tables by Feishu post API)
  • ListCard — itemized content with icons and descriptions
  • CLI interface — can be called via terminal for agent usage:
python3 ~/.hermes/skills/communication/feishu-card-builder/scripts/feishu_card_builder.py metric \
  --header "📊 Status" --items "Uptime:99.9%" "Users:1,247" --color green

Design decisions

  • Pure Python stdlib only — no additional dependencies required
  • wide_screen_mode: false by default for mobile-friendly display
  • CLI uses subcommands (metric/table/list) for clear agent intent
  • Compatible with existing feishu.py gateway — outputs standard interactive card JSON

Testing

# Metric card
python3 feishu_card_builder.py metric --header "📊 Test" --items "A:1" "B:2" --color green

# Table card
python3 feishu_card_builder.py table --header "📋 Table" --columns "X,Y" --rows "1,2" "3,4"

# List card
python3 feishu_card_builder.py list --header "📌 List" --items "✅ Done:Ready" "⏳ Wait:Pending"

Related

A new optional skill that provides builder classes and a CLI for composing
Feishu/Lark interactive card messages (metric cards, table cards, list cards)
without manual JSON construction.

Key features:
- MetricCard: key-value KPI display with color-coded headers
- TableCard: structured data rendered as Feishu native tables
- ListCard: itemized content with icons and descriptions
- CLI interface for agent usage via terminal
- Pure Python, no additional dependencies

Author: Minksgo
@alt-glitch alt-glitch added type/feature New feature or request tool/skills Skills system (list, view, manage) platform/feishu Feishu / Lark adapter P3 Low — cosmetic, nice to have labels May 20, 2026
@teknium1 teknium1 added the sweeper:blast-contained Sweeper blast radius: contained — one narrow path / opt-in / few users label Jul 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

P3 Low — cosmetic, nice to have platform/feishu Feishu / Lark adapter sweeper:blast-contained Sweeper blast radius: contained — one narrow path / opt-in / few users tool/skills Skills system (list, view, manage) type/feature New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants