/** * chatNotifySkill — OR-group meta-skill over slack + lark. * * Mirrors the `git` meta-skill pattern: lets a workflow declare * `skills: [SKILLS.CHAT_NOTIFY]` and have the marketplace card * render "Slack OR Lark" instead of demanding both. Backend's * REQUIRED_INTEGRATION_MAP entry (`chat_notify: { any: [...] }`) * does the OR-group routing for the integration gate. * * Runtime — single funnel, no parallel paths: * * - For in-process callers (custom-execute nodes): use * handleToolCall(toolName, args). It routes to slack or lark * by tool-name prefix. * * - For MCP-backed agents (Claude Code SDK / Cursor): resolve() * returns ONE MCP server config — slack's when SLACK_CHANNEL is * set, lark's when LARK_RECEIVE_ID is set. The OR-group at * marketplace integration-gate time is satisfied by EITHER * connection; at runtime we commit to one. The LLM only sees * the matching provider's tools, so there's no chance of it * calling the wrong skill. * * Skill declaration on a workflow node: * * skills: [SKILLS.CHAT_NOTIFY] * * No need to also declare slack/lark — chat_notify subsumes them. */ export declare const chatNotifySkill: any;