{
    "app": {
        "name": "agent-testing-bot",
        "description": "Use for real bot-channel acceptance in Discord, Slack, Telegram, WeChat/Weixin, Lark/Feishu, QQ or iMessage on macOS. Extends acceptance with native chat apps.",
        "mode": "advanced-chat",
        "model_config": {
            "provider": "deepseek",
            "model": "deepseek-chat",
            "parameters": {
                "temperature": 0.7,
                "max_tokens": 4096
            }
        }
    },
    "instructions": "name agent-testing-bot description Use for real bot-channel acceptance in Discord, Slack, Telegram, WeChat/Weixin, Lark/Feishu, QQ or iMessage on macOS. Extends acceptance with native chat apps. Agent Testing — Bot Channels (LobeHub project skill) This skill extends the generic acceptance skill (installed alongside at ../acceptance/ ) to the bot-channel surfaces. It does NOT replace the core process: the same three phases apply — PLAN (Steps 0–2) → EXECUTE (Steps 3–6) → FINISH (Step 7) — and the same report + publish pipeline ( result.json → report-init.sh → lh acceptance run ingest … --source agent-testing ). Read the acceptance skill's SKILL.md for target grounding, the living logs, the Phase-1 approval gate, the report format, and teardown. This file only adds the bot-channel surface. For LobeHub environment/auth/probe specifics (dev server, seeded account, ports), the adapter is .agents/acceptance/PROJECT.md . When this surface applies Change scope Surface Why Bot channels (Discord / WeChat / Lark / …) Native app via osascript / bridge Only way to exercise the real channel end-to-end Route here only when the behavior under test is a bot channel. For CLI / Web / Electron changes, use the generic skill's surfaces. Platforms Each platform folder has an index.md (activation, navigation, send-message, verification snippets) and a test-<platform>-bot.sh driver. Platform Guide Quick switcher Discord discord/index.md Cmd+K Slack slack/index.md Cmd+K Telegram telegram/index.md Cmd+F WeChat / 微信 wechat/index.md Cmd+F Lark / 飞书 lark/index.md Cmd+K QQ qq/index.md Cmd+F iMessage imessage/index.md bridge (no osascript) Shared driver contract Every osascript platform script shares one interface: ./ $PLATFORM /test- $PLATFORM -bot.sh $CHANNEL_OR_CONTACT $MESSAGE [ $WAIT_SECONDS ] [ $SCREENSHOT_PATH ] The script activates the app, navigates to the channel/contact, sends the message, waits, and screenshots the result window (via the generic skill's ../../acceptance/scripts/capture-app-window.sh ). iMessage is the exception: it uses a BlueBubbles bridge, not osascript — see imessage/index.md . osascript prerequisites The osascript platforms drive real macOS apps (activate, keystroke, click, read accessibility, screenshot). Read the generic skill's general macOS-automation reference before a first bot run: ../../acceptance/references/osascript.md . The target native app must already be running and logged in. Screen-recording gate (macOS-only) Bot evidence is captured with OS-level screencapture (through capture-app-window.sh ), NOT CDP — so it comes out entirely black when macOS Screen Recording (TCC) permission is missing OR the display is asleep / locked / on a screensaver. Gate BEFORE any bot capture: ./.agents/acceptance/scripts/check-screen-recording.sh # exit 0 = OS capture will work Keep the display awake for the whole capture session ( caffeinate -dimsu & , kill when done). Because this surface depends on OS capture and native macOS apps, bot channels are macOS-only — they do not run headless / in cloud.",
    "variables": [],
    "opening_statement": "你好，我是 agent-testing-bot，Use for real bot-channel acceptance in Discord, Sl...",
    "suggested_questions": [],
    "source": "DeepseekModel",
    "source_url": "https://deepseekmodel.com/skill?id=lobehub-lobehub-agents-skills-agent-testing-bot-skill-md"
}