DisCatSharp Discord Development
Aiko-IT-Systems/DisCatSharp
Helps build, explain and troubleshoot C# Discord apps on DisCatSharp, answering from the project's installed version and the library's documentation rather than guesses.
Guides building, migrating and testing LangBot messaging-platform adapters for the Event-Based Agents layout, with unified event and message conversion.
$ npx skills add langbot-app/LangBot --skill langbot-eba-adapter-dev -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install langbot-app/LangBot langbot-eba-adapter-dev --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/langbot-app/LangBot.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/skills/langbot-eba-adapter-dev .claude/skills/langbot-eba-adapter-dev && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "langbot-eba-adapter-dev" agent skill from https://github.com/langbot-app/LangBot/tree/master/skills/skills/langbot-eba-adapter-dev into .claude/skills/langbot-eba-adapter-dev/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "langbot-eba-adapter-dev", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/langbot-app/LangBot/tree/master/skills/skills/langbot-eba-adapter-devType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add langbot-app/LangBot --skill langbot-eba-adapter-dev -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install langbot-app/LangBot langbot-eba-adapter-dev --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/langbot-app/LangBot.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/skills/langbot-eba-adapter-dev .agents/skills/langbot-eba-adapter-dev && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "langbot-eba-adapter-dev" agent skill from https://github.com/langbot-app/LangBot/tree/master/skills/skills/langbot-eba-adapter-dev into .agents/skills/langbot-eba-adapter-dev/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "langbot-eba-adapter-dev", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add langbot-app/LangBot --skill langbot-eba-adapter-dev -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install langbot-app/LangBot langbot-eba-adapter-dev --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/langbot-app/LangBot.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/skills/langbot-eba-adapter-dev .cursor/skills/langbot-eba-adapter-dev && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "langbot-eba-adapter-dev" agent skill from https://github.com/langbot-app/LangBot/tree/master/skills/skills/langbot-eba-adapter-dev into .cursor/skills/langbot-eba-adapter-dev/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "langbot-eba-adapter-dev", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/langbot-app/LangBot.git --path skills/skills/langbot-eba-adapter-dev--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add langbot-app/LangBot --skill langbot-eba-adapter-dev -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install langbot-app/LangBot langbot-eba-adapter-dev --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/langbot-app/LangBot.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/skills/langbot-eba-adapter-dev .gemini/skills/langbot-eba-adapter-dev && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "langbot-eba-adapter-dev" agent skill from https://github.com/langbot-app/LangBot/tree/master/skills/skills/langbot-eba-adapter-dev into .gemini/skills/langbot-eba-adapter-dev/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "langbot-eba-adapter-dev", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install langbot-app/LangBot langbot-eba-adapter-devInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add langbot-app/LangBot --skill langbot-eba-adapter-dev -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/langbot-app/LangBot.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/skills/langbot-eba-adapter-dev .github/skills/langbot-eba-adapter-dev && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "langbot-eba-adapter-dev" agent skill from https://github.com/langbot-app/LangBot/tree/master/skills/skills/langbot-eba-adapter-dev into .github/skills/langbot-eba-adapter-dev/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "langbot-eba-adapter-dev", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add langbot-app/LangBot --skill langbot-eba-adapter-dev -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install langbot-app/LangBot langbot-eba-adapter-dev --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/langbot-app/LangBot.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/skills/langbot-eba-adapter-dev .opencode/skills/langbot-eba-adapter-dev && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "langbot-eba-adapter-dev" agent skill from https://github.com/langbot-app/LangBot/tree/master/skills/skills/langbot-eba-adapter-dev into .opencode/skills/langbot-eba-adapter-dev/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "langbot-eba-adapter-dev", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
langbot-eba-adapter-devGuides building, migrating and testing LangBot messaging-platform adapters for the Event-Based Agents layout, with unified event and message conversion.
Platform-specific event and message shapes must not leak into LangBot's common path. Each adapter converts incoming SDK objects into unified EBA entities (events, message chains, users, groups and members) before dispatch, keeping the raw platform object only in `source_platform_object` for debugging. A reading order is set: the EBA design docs, the acceptance checklist, the Telegram reference adapter, the legacy source adapter for the target platform and the SDK entity definitions.
Each adapter gets its own directory under the platform adapters package, with optional helpers such as `voice.py` only where the platform has a real need. The skill also explains how to drive a running LangBot instance and the LangBot Space marketplace over MCP using existing API keys, and mentions live adapter probes and end-to-end testing with a standalone plugin runtime and Computer Use.
6 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit de886ed. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
uvgitFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
space.langbot.appFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
LangBot EBA Adapter Development loads about 4k tokens when it runs. Until then it costs about 97 tokens; SKILL.md has 1,669 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from langbot-app/LangBot at commit de886ed, republished under its Apache-2.0 licence (© langbot-app). 1,669 words, ~3,971 tokens.
.claude/skills/langbot-eba-adapter-dev/SKILL.md (or your agent's skills folder).Use this skill when implementing or reviewing a LangBot platform adapter under the Event-Based Agents architecture.
Beyond writing code, you can drive a live LangBot instance over MCP — no raw
HTTP needed. Two MCP servers exist (both reuse existing API keys; see AGENTS.md):
http://<host>:5300/mcp (auth: web-UI lbk_ key or the
api.global_api_key from config.yaml). Manage bots, pipelines, models,
knowledge bases, and skills. See the langbot-mcp-ops skill.https://space.langbot.app/mcp (auth: Personal
Access Token). Search plugins / MCP servers / skills. See the
langbot-space-ops skill.Any change to an agent-accessible HTTP API endpoint must keep the matching MCP tool and these skills in sync.
Do not let platform-native event or message shapes leak into LangBot's common path. Each adapter must convert incoming SDK objects into unified EBA entities before dispatch:
langbot_plugin.api.entities.builtin.platform.eventslangbot_plugin.api.entities.builtin.platform.message.MessageChainlangbot_plugin.api.entities.builtin.platform.entitiessource_platform_object for debugging or platform-specific escape hatches.LangBot/docs/event-based-agents/.LangBot/docs/event-based-agents/adapters/acceptance-checklist.mdLangBot/src/langbot/pkg/platform/adapters/telegram/LangBot/docs/event-based-agents/adapters/telegram.mdLangBot/src/langbot/pkg/platform/sources/<platform>.pyLangBot/src/langbot/pkg/platform/sources/<platform>.yamllangbot-plugin-sdk/src/langbot_plugin/api/entities/builtin/platform/.Create one directory per adapter:
LangBot/src/langbot/pkg/platform/adapters/<platform>/
├── __init__.py
├── adapter.py
├── api_impl.py
├── event_converter.py
├── manifest.yaml
├── message_converter.py
├── platform_api.py
├── types.py
└── <platform>.svgAdd optional helpers such as voice.py only when the platform has a real domain-specific surface.
Ensure pyproject.toml package data includes adapter assets:
package-data = { "langbot" = ["templates/**", "pkg/platform/sources/*", "pkg/platform/adapters/**", ...] }manifest.yaml declares metadata.name, config schema, supported events, common APIs, and platform-specific APIs.adapter.py creates the platform client, subscribes to native events, filters self/bot loops where appropriate, calls event_converter.target2yiri(...), then dispatches the EBA event.event_converter.py maps native events to EBA event classes such as MessageReceivedEvent, MessageEditedEvent, MessageDeletedEvent, MessageReactionEvent, MemberJoinedEvent, BotInvitedToGroupEvent, and PlatformSpecificEvent.message_converter.py maps native messages to MessageChain, and maps MessageChain back to the platform send format.api_impl.py implements common EBA APIs: send, reply, edit, delete, forward, user/group/member lookup, moderation, upload/file URL, leave group.platform_api.py keeps platform-specific calls behind call_platform_api(action, params).NotSupportedError; do not silently no-op.For message events, the common shape should look like this regardless of platform:
platform_events.MessageReceivedEvent(
type="message.received",
adapter_name="<platform>",
message_id=<platform_message_id>,
message_chain=platform_message.MessageChain([...]),
sender=platform_entities.User(...),
chat_type=platform_entities.ChatType.PRIVATE or ChatType.GROUP,
chat_id=<conversation_or_channel_id>,
group=platform_entities.UserGroup(...) or None,
source_platform_object=<raw_object>,
)Message content should use common components:
Source for original message id/time when available.Plain for text.At / AtAll for mentions.Image, Voice, File for media.Forward only when the platform can represent or emulate it safely.If a platform event cannot cleanly map to a common event, emit PlatformSpecificEvent with a compact action and structured data.
Add focused tests under LangBot/tests/unit_tests/platform/test_<platform>_eba_adapter.py.
Cover at least:
supported_events().supported_apis().SourcePlainAtAtAllImageVoiceFileQuoteFaceForwardUnknownMessageResult.Run the existing reference adapter tests too:
cd LangBot
uv run pytest tests/unit_tests/platform/test_<platform>_eba_adapter.py tests/unit_tests/platform/test_telegram_eba_adapter.py
uv run python -m py_compile tests/e2e/live_<platform>_eba_probe.py
git diff --checkDirect adapter live probes are useful diagnostics, but they are not sufficient acceptance evidence for EBA. Treat tests/e2e/live_<platform>_eba_probe.py as an auxiliary tool only. The final adapter record must distinguish:
plugin-e2e-ui: real SDK plugin through standalone runtime, LangBot core, adapter, and a real/simulator UI action. This can mark an inbound UI item complete.plugin-e2e-protocol: real SDK plugin through standalone runtime, LangBot core, adapter, and a protocol-boundary injected event. This is useful evidence but must not be claimed as UI coverage.plugin-e2e-outbound: real SDK plugin calls an API and the bot output is visible in the real/simulator UI. This can mark send/API coverage complete.adapter-live: direct adapter probe connected to a real/simulator endpoint. This is auxiliary only.unit: mocked conversion/API-shape coverage. This is auxiliary only.not-supported: platform protocol or SDK has no equivalent. Must include the reason.blocked: intended capability could not be verified. This is not complete.Write a live probe in LangBot/tests/e2e/live_<platform>_eba_probe.py. It should:
LangBot/data/temp/.call_platform_api actions.Use Computer Use when the user asks for real platform end-to-end coverage. Actually send messages/click reactions in the platform UI or otherwise trigger real user-side events; do not replace that with unit tests.
For media/component acceptance, keep the direction and trigger source explicit:
send_message/adapter send conversion. It does not prove inbound conversion.plugin-e2e-protocol, but it must not be reported as UI-level end-to-end media upload.blocked with the exact client/simulator limitation.When validating the whole LangBot EBA path, test with the SDK standalone runtime and a real test plugin. This is the required acceptance path; direct adapter calls do not prove the EBA architecture path.
The required path is:
Real platform / simulator UI
-> platform SDK native event
-> adapter event converter
-> unified EBA event/entity/message types
-> LangBot core event dispatch
-> standalone SDK runtime
-> real test plugin listener
-> plugin calls platform APIs through SDK
-> LangBot core API dispatch
-> adapter API implementation
-> real platform / simulator UITypical shape:
# Terminal 1, SDK repo
cd langbot-plugin-sdk
uv run python -m langbot_plugin.cli.__init__ rt \
--debug-only \
--ws-control-port 5400 \
--ws-debug-port 5401 \
--skip-deps-check
# Terminal 2, LangBot repo
cd LangBot
export PYTHONPATH=/absolute/path/to/langbot-plugin-sdk/src:${PYTHONPATH:-}
uv run main.py --standalone-runtime
# Terminal 3, plugin directory
export DEBUG_RUNTIME_WS_URL=ws://127.0.0.1:5401/plugin/ws
export EBA_PROBE_LOG=/absolute/path/to/LangBot/data/temp/<platform>_eba_plugin_probe.jsonl
export EBA_PROBE_API=1
export EBA_PROBE_COMPONENT_SWEEP=1
export EBA_PROBE_PLATFORM_API=1
uv --project /absolute/path/to/langbot-plugin-sdk run python -m langbot_plugin.cli.__init__ runUse an EBA probe plugin that subscribes to all relevant EBA event classes and runs SDK API calls after the first MessageReceived.
The plugin evidence should be JSONL and include:
event.typebot_uuid and adapter_name, proving LangBot filled common routing fields before plugin dispatchmessage_chain component listFor full adapter acceptance, enable both probe sweeps:
EBA_PROBE_COMPONENT_SWEEP=1 sends the required outbound message components through send_message.EBA_PROBE_PLATFORM_API=1 calls common safe APIs plus selected call_platform_api actions for the adapter.The SDK must support plugin.call_platform_api(bot_uuid, action, params) for platform-specific acceptance. If the SDK cannot call a platform-specific action from the plugin, the adapter cannot be fully accepted even if direct adapter probes pass.
Before marking an adapter migrated, fill out an adapter record against LangBot/docs/event-based-agents/adapters/acceptance-checklist.md.
At minimum, the record must cover these categories:
plugin-e2e-ui: Source, Plain, At, AtAll, Image, Voice, File, Quote, Face, Forward, Unknown, and mixed chains where the platform supports them. Protocol-only receive evidence must be labelled plugin-e2e-protocol.plugin-e2e-outbound: Plain, At, AtAll, Image, Voice, File, Quote, Face, Forward, and mixed chains where the platform supports them.manifest.yaml -> spec.supported_events.manifest.yaml -> spec.supported_apis.required and optional.manifest.yaml -> spec.platform_specific_apis.source_platform_object reply/debug behavior.Do not declare an event or API in the manifest unless it has an implementation path and an acceptance entry. If a platform or simulator lacks a capability, document it as not-supported or blocked rather than silently omitting the test.
get_bots() may return bot dictionaries, not UUID strings. Probe plugins should select an enabled dict and pass bot["uuid"] to get_bot_info() and send_message().MessageDeleted subscription can make a working adapter look untested.message.received loops, but do not accidentally filter edit/delete events needed for bot-owned API probes.upload_file API may need to be NotSupportedError.leave_group is tested, run it last because the test bot will be removed from the server/group.Add or update LangBot/docs/event-based-agents/adapters/<platform>.md in the same style as Telegram:
call_platform_api action list.Be honest. Put untested or skipped APIs in the document with the reason. Do not imply full parity when a platform cannot provide the same information density.
git diff --check.© langbot-app, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/skills/langbot-eba-adapter-dev of langbot-app/LangBot.
Open the folder on GitHubat commit de886ed
LangBot EBA Adapter Development next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| LangBot EBA Adapter Development this skilllangbot-app/LangBot | 18k | — | ~4k | Automated safety check: Pass | Apache-2.0 | |
| DisCatSharp Discord DevelopmentAiko-IT-Systems/DisCatSharp | 140 | — | ~1.2k | Automated safety check: Pass | MIT | |
| Chat SDKdatabuddy-analytics/Databuddy | 1.2k | — | ~2.6k | Automated safety check: Pass | AGPL-3.0 | |
| Better Notifybetter-notify/better-notify | 313 | — | ~783 | Automated safety check: Pass | MIT | |
| Frontmcp Channelsagentfront/frontmcp | 146 | — | ~3.7k | Automated safety check: Pass | Apache-2.0 | |
| Caspian Connect DiscordTryCaspian/caspian-sdk | 971 | — | ~376 | Automated safety check: Notes | Apache-2.0 |
Aiko-IT-Systems/DisCatSharp
Helps build, explain and troubleshoot C# Discord apps on DisCatSharp, answering from the project's installed version and the library's documentation rather than guesses.
databuddy-analytics/Databuddy
Build multi-platform chat bots with Chat SDK (chat npm package).
better-notify/better-notify
End-to-end typed notification infrastructure for Node.js — typed catalog of email, SMS, push, web push, WhatsApp, Slack, Discord, Telegram, and GitHub notifications with provider-agnostic transports.
agentfront/frontmcp
A skill your agent uses when pushing real-time notifications or events into Claude Code (or another MCP client) sessions, or building two-way chat bridges.
TryCaspian/caspian-sdk
Connect Caspian Discord for OpenCode (install OAuth or BYO bot token), enable discord in caspian.json channels, and tell the user to restart.
op7418/Claude-to-IM-skill
Bridge THIS Claude Code or Codex session to Telegram, Discord, Feishu/Lark, QQ, or WeChat so the user can chat with Claude from their phone.
langbot-app/LangBot
Guides building, debugging and testing LangBot plugins: components, SDK calls, README and locale rules, SDK pitfalls and WebSocket-based testing.
langbot-app/LangBot
Deploys and configures a LangBot instance with Docker Compose or Kubernetes, covering config.yaml, the Box sandbox runtime, the plugin runtime and the global API key.
langbot-app/LangBot
Covers developing the LangBot core backend and web UI: dev setup, repo layout, API auth types, adding endpoints, migrations and keeping the MCP server in step.
langbot-app/LangBot
Manages a LangBot instance over its built-in MCP server: endpoint, API-key authentication, client config and the tool set for bots, processors and more.
langbot-app/LangBot
Browses and searches the LangBot Space marketplaces for plugins, MCP servers and skills through its read-only MCP server, authenticated with a personal access token.
langbot-app/LangBot
Prepares a LangBot development and testing environment for an agent, covering service startup, proxy settings and browser access through Computer Use or Playwright MCP.
Works with
Categories
Guides building, migrating and testing LangBot messaging-platform adapters for the Event-Based Agents layout, with unified event and message conversion. Platform-specific event and message shapes must not leak into LangBot's common path. Each adapter converts incoming SDK objects into unified EBA entities (events, message chains, users, groups and members) before dispatch, keeping the raw platform object only in `source_platform_object` for debugging.
LangBot EBA Adapter Development fits situations like: adding a new messaging platform adapter to LangBot; migrating an existing Telegram or Discord adapter to the EBA layout; validating that an adapter converts events and messages into the unified entities; testing an adapter end to end against the real platform.
Run `npx skills add langbot-app/LangBot --skill langbot-eba-adapter-dev -a claude-code`. Or copy the skill folder (skills/skills/langbot-eba-adapter-dev in langbot-app/LangBot) into .claude/skills/langbot-eba-adapter-dev in your project. Claude Code loads it when a task matches its description.
Run `npx skills add langbot-app/LangBot --skill langbot-eba-adapter-dev -a codex`. Or copy the skill folder (skills/skills/langbot-eba-adapter-dev in langbot-app/LangBot) into .agents/skills/langbot-eba-adapter-dev in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add langbot-app/LangBot --skill langbot-eba-adapter-dev -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/langbot-eba-adapter-dev, .gemini/skills/langbot-eba-adapter-dev, .github/skills/langbot-eba-adapter-dev and .opencode/skills/langbot-eba-adapter-dev in your project.
Going by SKILL.md and its folder, LangBot EBA Adapter Development needs the command-line tools its instructions call (uv and git). Our summary lists: A LangBot checkout with its EBA docs and plugin SDK; A LangBot API key, to control a running instance over MCP.
SKILL.md names 1 domain. In commands or code: space.langbot.app; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
LangBot EBA Adapter Development is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4k tokens (SKILL.md is roughly 16k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with LangBot EBA Adapter Development: DisCatSharp Discord Development (Aiko-IT-Systems/DisCatSharp, 140 stars), Chat SDK (databuddy-analytics/Databuddy, 1.2k stars), Better Notify (better-notify/better-notify, 313 stars) and Frontmcp Channels (agentfront/frontmcp, 146 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
langbot-app (a GitHub organization) maintains it in langbot-app/LangBot, which has 18,033 GitHub stars. The repository holds 9 skills in this directory. The repository was last updated on October 7, 2026.
Source: langbot-app/LangBot on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.