Lettabot
letta-ai/lettabot
Set up and run LettaBot - a multi-channel AI assistant for Telegram, Slack, Discord, WhatsApp, and Signal.
Builds and debugs Letta Code channels, including first-party channel adapters and dynamic user channel plugins under ~/.letta/channels.
$ npx skills add letta-ai/skills --skill creating-letta-code-channels -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install letta-ai/skills creating-letta-code-channels --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/letta-ai/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/letta/creating-letta-code-channels .claude/skills/creating-letta-code-channels && 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 "creating-letta-code-channels" agent skill from https://github.com/letta-ai/skills/tree/main/letta/creating-letta-code-channels into .claude/skills/creating-letta-code-channels/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "creating-letta-code-channels", 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/letta-ai/skills/tree/main/letta/creating-letta-code-channelsType 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 letta-ai/skills --skill creating-letta-code-channels -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install letta-ai/skills creating-letta-code-channels --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/letta-ai/skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/letta/creating-letta-code-channels .agents/skills/creating-letta-code-channels && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "creating-letta-code-channels" agent skill from https://github.com/letta-ai/skills/tree/main/letta/creating-letta-code-channels into .agents/skills/creating-letta-code-channels/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "creating-letta-code-channels", 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 letta-ai/skills --skill creating-letta-code-channels -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install letta-ai/skills creating-letta-code-channels --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/letta-ai/skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/letta/creating-letta-code-channels .cursor/skills/creating-letta-code-channels && 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 "creating-letta-code-channels" agent skill from https://github.com/letta-ai/skills/tree/main/letta/creating-letta-code-channels into .cursor/skills/creating-letta-code-channels/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "creating-letta-code-channels", 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/letta-ai/skills.git --path letta/creating-letta-code-channels--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 letta-ai/skills --skill creating-letta-code-channels -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install letta-ai/skills creating-letta-code-channels --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/letta-ai/skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/letta/creating-letta-code-channels .gemini/skills/creating-letta-code-channels && 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 "creating-letta-code-channels" agent skill from https://github.com/letta-ai/skills/tree/main/letta/creating-letta-code-channels into .gemini/skills/creating-letta-code-channels/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "creating-letta-code-channels", 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 letta-ai/skills creating-letta-code-channelsInstalls 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 letta-ai/skills --skill creating-letta-code-channels -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/letta-ai/skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/letta/creating-letta-code-channels .github/skills/creating-letta-code-channels && 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 "creating-letta-code-channels" agent skill from https://github.com/letta-ai/skills/tree/main/letta/creating-letta-code-channels into .github/skills/creating-letta-code-channels/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "creating-letta-code-channels", 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 letta-ai/skills --skill creating-letta-code-channels -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install letta-ai/skills creating-letta-code-channels --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/letta-ai/skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/letta/creating-letta-code-channels .opencode/skills/creating-letta-code-channels && 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 "creating-letta-code-channels" agent skill from https://github.com/letta-ai/skills/tree/main/letta/creating-letta-code-channels into .opencode/skills/creating-letta-code-channels/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "creating-letta-code-channels", 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.
creating-letta-code-channelsBuilds and debugs Letta Code channels, including first-party channel adapters and dynamic user channel plugins under ~/.letta/channels.
Creating Letta Code Channels is an agent skill from letta-ai/skills. Builds and debugs Letta Code channels, including first-party channel adapters and dynamic user channel plugins under ~/.letta/channels. Use when adding Telegram, WhatsApp, Bluesky, Slack, Discord, or custom channel support; testing channel routing, pairing, MessageChannel, runtime dependencies, or channel plugin manifests.
Its SKILL.md is about 1.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including scripts and reference files (for example `references/first-party-channels.md`, `references/testing.md` and `references/user-plugins.md`).
It sits in Writing & Content. It works with Letta, Discord, Slack and Telegram. The repository describes itself as: A shared repository for skills. Intended to be used with Letta Code, Claude Code, Codex CLI, and other agents that support skills. The licence is MIT.
7 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 6785511. 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.
Ships 1 file in scripts/ (TypeScript), which the agent can run.
Shell commands in SKILL.md call:
bunnpxFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
github.comFrom 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.
Creating Letta Code Channels loads about 1.1k tokens when it runs, and up to ~3.5k if it reads all its reference files. Until then it costs about 88 tokens; SKILL.md has 428 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); the scripts in this folder are not scanned.
The full file from letta-ai/skills at commit 6785511, republished under its MIT licence (© letta-ai). 428 words, ~1,050 tokens.
.claude/skills/creating-letta-code-channels/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.Use this when adding or debugging Letta Code channel support.
~/.letta/channels/<id>/) for headless experiments, community plugins, and fast workflow tests.src/channels/<id>/) when the channel needs bespoke Desktop UI, custom account snapshots, Slack/Discord-style auto-routing, rich protocol fields, or migration/compatibility shims.User plugins cannot shadow first-party ids: telegram, slack, and discord are ignored under ~/.letta/channels/. Use ids like telegram-test, whatsapp-community, or custom-chat.
~/letta/letta-code or a worktree.src/channels/README.md on branches with dynamic plugins.~/.letta/channels/<id>/channel.json~/.letta/channels/<id>/plugin.mjs~/.letta/channels/<id>/accounts.jsonmessageActions for both reply modes: explicit tool replies and automatic relay text use the common outbound adapter path.dmPolicy: "pairing" for testing, or allowlist/open for known headless deployments.adapter.onMessage(msg) to route/pairingMessageChannel delivery in tool mode, or automatic finalized-text delivery in relay modebun run typecheck, bun run lint, bun run build.Read only what is needed:
references/user-plugins.md — dynamic plugin manifest/account/runtime/headless flow and gotchas.references/first-party-channels.md — first-party channel file cascade and safety checks.references/testing.md — smoke-test checklist and commands.Use the bundled scaffold for a minimal user plugin skeleton. Replace <path-to-this-skill> with this skill directory path:
npx tsx <path-to-this-skill>/scripts/scaffold-user-channel-plugin.ts \
my-channel "My Channel" \
--runtime-package some-sdk@1.0.0 \
--runtime-module some-sdkIt creates channel.json, plugin.mjs, and accounts.example.json. Replace the TODO inbound/outbound implementation with the real SDK calls.
reply_mode is unset or invalid. Add "reply_mode": "relay" to an existing saved account, preserving its actual ID, root fields, and credentials.MessageChannel; unfinished error/cancel text, reasoning, and subagent output are excluded. Multi-destination inputs require explicit replies, never broadcasts. Queued inputs stay separate. Use tool mode for reactions, files, and proactive sends.approve replies.node_modules. Runtime modules should resolve from explicit runtime dirs only.letta channels pair --channel <id> --code <code> --agent <agent-id> --conversation <conversation-id>.pairing.yaml and routing.yaml on the next inbound miss; restart only when adapter/account config itself changed.© letta-ai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 4 other files (scripts, references) in letta/creating-letta-code-channels of letta-ai/skills.
Open the folder on GitHubat commit 6785511
Creating Letta Code Channels 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 |
|---|---|---|---|---|---|---|
| Creating Letta Code Channels this skillletta-ai/skills | 149 | — | ~1.1k | Automated safety check: Pass | MIT | |
| Lettabotletta-ai/lettabot | 327 | — | ~3.4k | Automated safety check: Pass | Apache-2.0 | |
| Traul Message Searchdandaka/traul | 112 | — | ~3.9k | Automated safety check: Notes | AGPL-3.0 | |
| Add Channel Connect Buttonnovuhq/novu | 40k | — | ~1.6k | Automated safety check: Pass | Custom licence | |
| RepurposeAgriciDaniel/claude-repurpose | 157 | — | ~5.1k | Automated safety check: Pass | MIT | |
| Channel Debug Corevercel-labs/vercel-openclaw-archived | 117 | — | ~2k | Automated safety check: Notes | MIT |
letta-ai/lettabot
Set up and run LettaBot - a multi-channel AI assistant for Telegram, Slack, Discord, WhatsApp, and Signal.
dandaka/traul
Drives the traul CLI to sync, search and monitor messages from Slack, Telegram, Discord, Linear, Gmail, WhatsApp, Claude Code sessions and Markdown files.
novuhq/novu
Build a new channel Connect button (e.g. An agent skill from novuhq/novu.
AgriciDaniel/claude-repurpose
Content Repurposing Engine. An agent skill from AgriciDaniel/claude-repurpose.
vercel-labs/vercel-openclaw-archived
Channel webhook triage for vercel-openclaw Slack/Telegram/Discord/WhatsApp issues: prove deployment state, collect admin readiness endpoints, build evidence-first handoff before fixes.
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.
letta-ai/skills
Build and maintain a persistent visual identity for your agent using Flux Kontext Pro.
letta-ai/skills
Fetch and summarize recent AI news from curated RSS feeds (Hugging Face, VentureBeat, The Verge, OpenAI, Anthropic, DeepMind, etc.) and YouTube channels (Yannic Kilcher, Two Minute Papers, AI…
letta-ai/skills
Configure LLM models and providers for Letta agents and servers.
letta-ai/skills
Migrates deprecated Letta Filesystem folders/files to MemFS using markdown document corpora, chunking, local lexical search, and QMD semantic search via the memfs-search skill.
letta-ai/skills
Semantic search over agent memory files. An agent skill from letta-ai/skills.
letta-ai/skills
Navigates archived ChatGPT or Claude-style conversation exports and a MemFS reference archive on demand.
Categories
Builds and debugs Letta Code channels, including first-party channel adapters and dynamic user channel plugins under ~/.letta/channels. Creating Letta Code Channels is an agent skill from letta-ai/skills.letta/channels.
Creating Letta Code Channels fits situations like: adding Telegram; custom channel support; testing channel routing; runtime dependencies.
Run `npx skills add letta-ai/skills --skill creating-letta-code-channels -a claude-code`. Or copy the skill folder (letta/creating-letta-code-channels in letta-ai/skills) into .claude/skills/creating-letta-code-channels in your project. Claude Code loads it when a task matches its description.
Run `npx skills add letta-ai/skills --skill creating-letta-code-channels -a codex`. Or copy the skill folder (letta/creating-letta-code-channels in letta-ai/skills) into .agents/skills/creating-letta-code-channels 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 letta-ai/skills --skill creating-letta-code-channels -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/creating-letta-code-channels, .gemini/skills/creating-letta-code-channels, .github/skills/creating-letta-code-channels and .opencode/skills/creating-letta-code-channels in your project.
Going by SKILL.md and its folder, Creating Letta Code Channels needs TypeScript for the scripts in its folder and the command-line tools its instructions call (bun and npx). Our summary lists: Node.js.
SKILL.md names 1 domain. As links in the text: github.com. 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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Creating Letta Code Channels is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.1k tokens (SKILL.md is roughly 4.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.5k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Creating Letta Code Channels: Lettabot (letta-ai/lettabot, 327 stars), Traul Message Search (dandaka/traul, 112 stars), Add Channel Connect Button (novuhq/novu, 40k stars) and Repurpose (AgriciDaniel/claude-repurpose, 157 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
letta-ai (a GitHub organization) maintains it in letta-ai/skills, which has 149 GitHub stars. The repository holds 22 skills in this directory. The repository was last updated on October 1, 2026.
Source: letta-ai/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.