Feishu Interactive Button Cards
Paste the following prompt into your AI chat to install this skill:
Please install @user_a5827f21/feishubutton according to https://skillhub.cn/install/skillhub.md.
About this skill
Problem This Solves
When a Hermes Agent sends only plain text in Feishu, approval flows, confirmations, and task feedback feel thin: users do not get clickable actions, and the backend cannot easily tell which button was pressed.
How It Works
The skill packages Feishu interactive cards into reusable Python modules:
- approval.py covers the approval workflow: send_exec_approval() sends an approval card with buttons, handle_card_action() processes button callbacks, and update_approval_card() updates the card after a click.
- builder.py handles card construction: build_streaming_pre_answer_card() creates a streaming response card, build_complete_card() creates the final card, and split_reasoning_text() extracts reasoning text from a response.
- cardkit.py handles low-level sending and updates: send_interactive_card() sends an interactive card, while patch_interactive_card() updates an existing card.
Feishu buttons usually use primary, default, and danger types for main, secondary, and destructive actions. The button's value is returned to the backend when clicked, so the handler can distinguish the selected action.
Scope And Caveats
It is built for Feishu / Lark, not as a generic messaging-button solution. Discord, Telegram, and Slack each require their own component formats. It assumes Python 3.11+ and hermes_feishu_plugin, and is loaded from the Hermes Agent skill directory.
Use Cases
- Ask a user in Feishu to confirm a risky Hermes Agent action with Approve and Reject buttons.
- Handle the button value callback and patch the same card to show Approved or Rejected.
- Show a streaming placeholder card, then replace it with the final answer card.
- Let group members choose primary, default, or danger buttons to trigger different task branches.
Best For
- Python engineers maintaining a Hermes Agent Feishu channel who need clickable approval buttons.
- Backend developers integrating an AI assistant in Feishu who must handle button callbacks and card updates.
- Application engineers building internal approval flows who want confirm, reject, or danger actions as Feishu cards.
- Product engineers shaping agent UX who need streaming answers and final results as updatable cards.
Related Skills
Convert teaching schedules from talent development plan PDFs into structured Excel files, with cross-page tables, merged cells, multi-semester course splitting, major metadata extraction, and batch output.
Turn post-meeting text into bilingual minutes, preserving structure and consistent terminology.
Interprets tender files, generates bid docs, and checks compliance via the Bailian API.
Create, repair, and recalculate xlsx, xlsm, csv, or tsv workbooks with formula-safe edits, validation, and recalculation.