Tg Responder
glebis/claude-skills
Review and send Telegram response drafts, manage follow-ups for unanswered outbound messages.
Process the local ignored ai-tdesktop inbox into durable, independently testable Telegram Desktop task records while task execution worktrees remain active.
$ npx skills add telegramdesktop/tdesktop --skill process-inbox -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install telegramdesktop/tdesktop process-inbox --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/telegramdesktop/tdesktop.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/process-inbox .claude/skills/process-inbox && 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 "process-inbox" agent skill from https://github.com/telegramdesktop/tdesktop/tree/dev/.agents/skills/process-inbox into .claude/skills/process-inbox/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "process-inbox", 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/telegramdesktop/tdesktop/tree/dev/.agents/skills/process-inboxType 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 telegramdesktop/tdesktop --skill process-inbox -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install telegramdesktop/tdesktop process-inbox --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/telegramdesktop/tdesktop.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/process-inbox .agents/skills/process-inbox && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "process-inbox" agent skill from https://github.com/telegramdesktop/tdesktop/tree/dev/.agents/skills/process-inbox into .agents/skills/process-inbox/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "process-inbox", 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 telegramdesktop/tdesktop --skill process-inbox -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install telegramdesktop/tdesktop process-inbox --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/telegramdesktop/tdesktop.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/process-inbox .cursor/skills/process-inbox && 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 "process-inbox" agent skill from https://github.com/telegramdesktop/tdesktop/tree/dev/.agents/skills/process-inbox into .cursor/skills/process-inbox/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "process-inbox", 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/telegramdesktop/tdesktop.git --path .agents/skills/process-inbox--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 telegramdesktop/tdesktop --skill process-inbox -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install telegramdesktop/tdesktop process-inbox --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/telegramdesktop/tdesktop.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/process-inbox .gemini/skills/process-inbox && 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 "process-inbox" agent skill from https://github.com/telegramdesktop/tdesktop/tree/dev/.agents/skills/process-inbox into .gemini/skills/process-inbox/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "process-inbox", 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 telegramdesktop/tdesktop process-inboxInstalls 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 telegramdesktop/tdesktop --skill process-inbox -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/telegramdesktop/tdesktop.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/process-inbox .github/skills/process-inbox && 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 "process-inbox" agent skill from https://github.com/telegramdesktop/tdesktop/tree/dev/.agents/skills/process-inbox into .github/skills/process-inbox/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "process-inbox", 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 telegramdesktop/tdesktop --skill process-inbox -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install telegramdesktop/tdesktop process-inbox --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/telegramdesktop/tdesktop.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/process-inbox .opencode/skills/process-inbox && 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 "process-inbox" agent skill from https://github.com/telegramdesktop/tdesktop/tree/dev/.agents/skills/process-inbox into .opencode/skills/process-inbox/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "process-inbox", 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.
process-inboxProcess the local ignored ai-tdesktop inbox into durable, independently testable Telegram Desktop task records while task execution worktrees remain active.
Process Inbox is an agent skill from telegramdesktop/tdesktop. Process the local ignored ai-tdesktop inbox into durable, independently testable Telegram Desktop task records while task execution worktrees remain active. Use when the user invokes $process-inbox or /process-inbox, asks to triage or process ai-tdesktop/inbox/inbox.md, or wants inbox notes and pasted images routed into new or existing AI projects and dated tasks without implementing them.
Its SKILL.md is about 4.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including scripts (for example `agents/openai.yaml`, `scripts/workspace.py` and `scripts/workspace_test.py`).
It sits in Productivity & Automation, covering Email management and Git worktrees. It works with Telegram and Python. The repository describes itself as: Telegram Desktop messaging app. The licence is GPL-3.0.
Read from SKILL.md and the folder at commit f23c378. 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 2 files in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
python3From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From 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.
Process Inbox loads about 4.5k tokens when it runs. Until then it costs about 102 tokens; SKILL.md has 2,350 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 telegramdesktop/tdesktop at commit f23c378, republished under its GPL-3.0 licence (© telegramdesktop). 2,350 words, ~4,488 tokens.
.claude/skills/process-inbox/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.When running in Grok Build, read .grok/ai-workflow-adapter.md completely
before any other host-specific delegation rule and apply its substitutions.
Before assigning workers, read phase effort and apply its scope-based effort selection and host mappings.
Turn the human-written ignored inbox into tracked planning artifacts. Route and plan only: do not edit Telegram source, build, test, claim, or implement tasks.
Run from a Telegram Desktop checkout. Use the bundled helper with an available Python 3 interpreter:
python3 .agents/skills/process-inbox/scripts/workspace.py inbox-ensure
python3 .agents/skills/process-inbox/scripts/workspace.py prepareUse python or py -3 when that is the host's Python 3 command. The helper:
Telegram/build/ai-machine-tag;macbook-twork;ai-tdesktop and ai-tdesktop-worktrees directories,
with AI_TDESKTOP_ROOT and AI_TDESKTOP_WORKTREES_ROOT as overrides;inbox/<checkout-tag> linked worktree exists without
creating or inspecting the task execution worktree;prepare resumes the one active .processing-* snapshot when present. Save its
transaction, digest, ai_main, inbox_worktree, inbox_branch, and
checkout_tag values. Read raw input only from the transaction snapshot, not
from the live inbox.
The task execution slot_worktree may be dirty or have unpublished task work.
Ignore it completely while processing the inbox: do not read planning state
from it, write to it, stage it, commit it, rebase it, or publish it.
For a new transaction, prepare requires clean ai_main and inbox_worktree
state with no unpublished inbox commits. It fetches origin when configured,
fast-forwards local master, and fast-forwards the inbox branch before taking
the snapshot. If the inbox is empty, the machine tag is invalid, or either
inbox publication worktree is unsafe, stop without changing or clearing the
inbox. Never force-push shared AI history.
Follow the shared project-context policy for discovery, selective expansion, and compact project/index artifacts.
Read these before planning:
AGENTS.md;ai_main/AGENTS.md;inbox.md and every file it references.For each request, start with explicit task/project lineage and relevant task
metadata from <inbox_worktree>. Use project names/titles and targeted search
matches across live and archived projects to identify candidates, then read
their small overviews. Inspect relevant task specifications, input sections,
index entries, or detailed references when needed to resolve a dependency or
routing ambiguity. Do not load every project's overview or task history.
Some retained task directories have superseded.yaml instead of state.yaml.
They are durable aliases created by queue consolidation, not missing or reusable
paths. Follow superseded_by chains to their live task when deduplicating,
resolving prior receipt references, or checking whether a same-digest result
still exists. New dependencies and project links must name the final live task,
never an alias. A dated slug occupied by an alias still counts as a collision.
Some retired oversized tasks instead have split.yaml, whose split_into
list resolves to several live successors. Treat the retained directory as
history, deduplicate against all live successors, and never put the split id in
a new dependency or project link. A split path is also permanently occupied.
Use one disposable leaf planner when the harness supports delegation; instruct it not to delegate. Otherwise perform the same work locally. The planner may write a proposed routing file inside the ignored transaction, but only the orchestrator writes tracked AI state.
Treat natural-language hints as evidence, not required syntax. Segment the inbox into requests, then decide for each request whether to:
Never create a task whose work is to move an existing source commit between branches: no backport, forward-port, cherry-pick, rebase, merge, branch sync, or equivalent integration task. Branch placement is human release/history coordination, not product work for the autonomous queue. When a request only asks for that operation, record a receipt-only disposition naming the existing source task or commit description and the requested target branch, then leave the operation to the human. When new product work requires code shipped by an earlier task, route only the product work and express the source task as a dependency; do not create a companion task to bring that dependency onto a branch.
Bias project assignment toward continuity. When a request follows from an existing task, begin with that task's project and keep it unless independence is affirmatively established. A task belongs to the existing project when it builds on project code or behavior, requires source changes shipped by project tasks, assumes the project's branch or accumulated context, or must be ordered after project work. Touching shared infrastructure or an additional non-project consumer does not by itself make the task standalone: projects record feature and code lineage, not exclusive ownership of every touched file.
Route a derived request to another project or to project: null only when it
remains coherent, implementable, and independently testable in a checkout
where the originating project's changes are absent or reverted. Record that
concrete independence evidence in the receipt; "cross-cutting", "cleanup", or
"broader than the source task" is not enough. For a request without a source
task, prefer an existing project whenever its code, plan, or prior tasks supply
essential context, and use a standalone task only when no project does.
Do not create generic holding projects such as fixes. A release batch of
unrelated regressions normally becomes standalone tasks or tasks in existing
domain projects. Group requests into one task only when they form one cohesive,
independently testable behavior that can be implemented, reviewed, and tested
as one normal pass.
Split at product boundaries, not arbitrary file or line-count boundaries. A request needs multiple tasks when two or more parts have their own useful outcome and acceptance oracle, when a later part can consume an earlier part as a stable dependency, or when the parts require materially different context, failure analysis, or evidence setup. New network, persistence, concurrency or ownership machinery plus application lifecycle/UI integration are especially strong split signals when each can be exercised independently. Shared project context, overlapping files, or one eventual feature does not by itself justify paying one review and test loop over their combined implementation.
Do not over-split inseparable changes: keep a small API and its only caller together when neither has a meaningful standalone result, and keep one atomic behavior together when separating it would leave an unbuildable or untestable intermediate state. For every proposed task, state the one shipped boundary it owns and the direct evidence that can approve it without first implementing a sibling. If that sentence needs several independent outcomes or several unrelated instruments, split again.
This is the first scope gate, not an irrevocable ruling. Inbox planning uses the
request plus light source inspection and deliberately does not construct the
implementation plan. The later independent perform-task assessment sees exact
files, APIs, phases, ownership boundaries, and evidence design; it may veto the
single-task shape when that richer proof exposes independently shippable and
testable boundaries. That veto does not mean task sizing is based on elapsed
time or diff length, and it does not authorize the performer to mutate the
queue itself. The performer publishes split-required; the checkout scheduler
then launches a dedicated deep split transaction that creates replacements,
rewrites dependencies and project links, and retires the source with a durable
multi-target split record.
Project slugs are unique across projects/ and projects/archive/. When a
request belongs to an archived project, restore it before routing to it:
python3 .agents/skills/process-inbox/scripts/workspace.py inbox-unarchive \
--project <slug>The helper moves the project back to projects/<slug>, rewrites its relative
links, and leaves the restored files staged for this transaction's commit.
Never point a task at a path under projects/archive/.
Briefly inspect Telegram source when needed to understand scope and testable seams. Do not plan implementation internals and do not modify the source tree.
Use the processing date and a concise imperative kebab-case slug:
tasks/YYYY/MM/DD/<task-slug>/The task identifier is the path below tasks/, for example:
2026/07/18/fix-community-forwardNever ask the human to choose or remember it. Consult existing directories and
append -2, -3, and so on to resolve a same-day collision. Dependencies may
name only task identifiers created earlier in the same routing result or
existing tasks.
Write tracked planning artifacts only inside the checkout-specific
inbox_worktree.
For every task, create task.md:
# <imperative title>
<self-contained request and relevant constraints>
## Acceptance
- <specific observable result proving the behavior>
## Inputs
- [<descriptive label>](input/<file>)Omit Inputs when none are used. For visual work, include the design basis and
the exact visual/layout evidence expected. Copy every pertinent supplied file
into input/; never reference the ignored inbox or its backup from a task.
Keep acceptance criteria to what actually proves the requested behavior. Never
write a test-data integrity criterion: the live TelegramForcePortable folder
is a disposable copy, so a task must not ask a performer to hash, back up,
compare, or restore the account, to verify any setting or folder is unchanged,
or to leave the account as it was found. A run may leave templates, theme,
wallpaper, window geometry and interface scale mutated. State needs restoring
only where a later measurement in the same run depends on it, never as an
end-of-run obligation. The test-loop's SETUP owns the folder — it requires the
golden test_TelegramForcePortable, reuses a live folder carrying the testing
marker, and otherwise prepares a fresh copy — and its test-run command already
launches with -testagent -noupdate, so no task needs to require either flag.
Every such criterion costs a performer real time and proves nothing about the
product.
Never write an acceptance criterion that can only be satisfied by adding
debug machinery to production code — #ifdef _DEBUG blocks, debug-only
types, observation structs, counters, or hooks in product translation units.
Observability belongs to the disposable overlay and the permanent
Telegram/SourceFiles/test/ helpers (see "Debug-Only Code" in the source
checkout's AGENTS.md). A request whose proof seems to demand production
instrumentation is misdesigned: route the product behavior, and let the
performer's harness own how it is observed.
Create state.yaml in this exact field order:
status: todo
type: implement
created: YYYY-MM-DD
project: null
depends_on: []
claimed_by: null
claimed_at: null
claim_order: null
lease_until: null
phase: null
carried_from: null
inbox_receipt: receipts/YYYY/MM/DD/<receipt>.mdDo not write a model field. It records which model finished the task, so only
finish writes it, at the canonical Approve, Block, or Split-required
boundary; a task
carrying one before it is claimed is malformed.
Use a project slug instead of null when routed to a project. Use a YAML list
of task identifiers for dependencies. Dependencies record code lineage as well
as readiness: keep an approved source task in depends_on when the new task's
implementation assumes its shipped changes. State that prerequisite in
task.md. This dependency is sufficient; never add a separate backport,
cherry-pick, rebase, merge, or branch-sync task to make it reachable. Inbox
processing never reserves work: new tasks always remain
status: todo with claimed_by, claimed_at, and claim_order set to null.
The checkout tag belongs in the receipt only.
Every new task uses type: implement. Do not predict a cheap or expensive
execution profile while routing: the performer selects review specialists and
evidence instruments after inspecting the real code and risks. Keep acceptance
criteria outcome-focused. Name a required build, probe, app run, interaction,
or screenshot only when that instrument is itself part of the requested result
or no other instrument could decide the claim from the facts already known to
the planner.
For a new project, create projects/<slug>/project.md with a concise durable
scope and projects/<slug>/tasks.md with task links. For an existing project,
append every newly assigned task link, including inherited follow-ups, with
only concise optional grouping. Put routing and decision prose in task
specifications or the receipt, following the shared policy.
Create one tracked Markdown receipt under receipts/YYYY/MM/DD/. Include:
Before writing, search receipts for the same digest. If it was already fully processed and every referenced task either has live state, has a durable alias chain reaching live state, or has a durable split record whose successors all resolve to live state, create nothing and reuse that receipt for finalization.
Before committing, verify:
task.md, valid state.yaml, and a falsifiable
acceptance result;projects/archive/;.local/, browser profile, portable account, credential,
complete run directory, or complete build log is tracked;tasks/, projects/, and receipts/ paths changed;Publish through the helper, passing every generated or restored task, project, and receipt path explicitly:
python3 .agents/skills/process-inbox/scripts/workspace.py inbox-publish \
--transaction <transaction-path> \
--receipt <receipts/YYYY/MM/DD/name.md> \
--path <tasks/YYYY/MM/DD/task-slug> \
--path <projects/project-slug> \
--path <receipts/YYYY/MM/DD/name.md>Do not run broad staging commands yourself. The helper rejects changes outside
the explicit paths, stages those paths, commits them on the inbox branch with
Process inbox for <checkout-tag>, fetches and rebases onto current master,
pushes HEAD:master when an origin exists, and fast-forwards local master.
It can resume publication when the inbox commit already exists. Ordinary
non-fast-forward races are retried. If a semantic rebase conflict, unsafe
inbox worktree, or remote outage occurs, do not clear the inbox; leave the
active transaction and inbox commit recoverable and report the exact state.
Never cherry-pick or force-push, and never involve the dirty task slot.
When a project was restored, pass both projects/<slug> and its removed
projects/archive/<slug> path.
After master contains the generated commit and any configured push succeeded,
finalize using the receipt path relative to ai_main:
python3 .agents/skills/process-inbox/scripts/workspace.py finalize \
--transaction <transaction-path> \
--receipt <receipts/YYYY/MM/DD/name.md>The helper accepts only a receipt below receipts/, verifies that exact receipt
and digest are present in local master HEAD, checks the live inbox digest,
preserves the raw snapshot under ignored inbox/backup/, and empties
inbox.md only when the input remained unchanged. If the human edited the
inbox during planning, it preserves those edits and reports cleared: false.
If planning fails before any tracked changes or commits exist, preserve the live inbox and close the snapshot with:
python3 .agents/skills/process-inbox/scripts/workspace.py abort \
--transaction <transaction-path>Do not abort after a generated inbox commit exists; retain the transaction so publication can be resumed.
Return a compact summary with friendly task and project titles, the AI master publication status, the local backup path, whether the inbox was cleared, and any unused input. Do not report a commit hash or start implementation automatically.
© telegramdesktop, GPL-3.0. 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 3 other files (scripts) in .agents/skills/process-inbox of telegramdesktop/tdesktop.
Open the folder on GitHubat commit f23c378
We found 2 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 2 other GitHub owners. This page covers the copy in telegramdesktop/tdesktop, which our catalogue first saw on October 7, 2026.
Process Inbox 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 |
|---|---|---|---|---|---|---|
| Process Inbox this skilltelegramdesktop/tdesktop | 33k | 2 repos | ~4.5k | Automated safety check: Pass | GPL-3.0 | |
| Tg Responderglebis/claude-skills | 388 | — | ~1k | Automated safety check: Pass | MIT | |
| Pytdbotpytdbot/client | 137 | — | ~4.3k | Automated safety check: Pass | MIT | |
| Setupterranc/claude-telegram-bot-bridge | 134 | — | ~1.5k | Automated safety check: Notes | None | |
| Smart Email AgentLeoYeAI/openclaw-master-skills | 2.2k | — | ~4.7k | Automated safety check: Pass | MIT | |
| Cross Channel MessagingPeiiii/nextclaw | 260 | — | ~3.2k | Automated safety check: Pass | MIT |
glebis/claude-skills
Review and send Telegram response drafts, manage follow-ups for unanswered outbound messages.
pytdbot/client
Write Telegram bots and userbots with Pytdbot (async TDLib wrapper with high-level helpers; not the Telegram Bot API).
terranc/claude-telegram-bot-bridge
Install and configure the Telegram Skill Bot. An agent skill from terranc/claude-telegram-bot-bridge.
LeoYeAI/openclaw-master-skills
All-in-one Gmail agent for OpenClaw. An agent skill from LeoYeAI/openclaw-master-skills.
Peiiii/nextclaw
A skill your agent uses when deciding how to deliver an AI result: reply now, put durable news, reports, recommendations, or articles in the NextClaw inbox, or send to an explicitly requested chat…
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.
telegramdesktop/tdesktop
Resolve, start or resume, implement, review, test, and publish exactly one existing ai-tdesktop task by short slug or full dated id, including rare blocked retries and split-required results.
telegramdesktop/tdesktop
Continue autonomous Telegram Desktop development from the shared ai-tdesktop repository.
telegramdesktop/tdesktop
Drive an intent-aware rebase of the current checkout, resolving every conflict by reading the history behind both sides instead of by making the markers disappear.
Categories
Process the local ignored ai-tdesktop inbox into durable, independently testable Telegram Desktop task records while task execution worktrees remain active. Process Inbox is an agent skill from telegramdesktop/tdesktop. Process the local ignored ai-tdesktop inbox into durable, independently testable Telegram Desktop task records while task execution worktrees remain active.
Process Inbox fits situations like: the user invokes $process-inbox; process ai-tdesktop/inbox/inbox.md; wants inbox notes and pasted images routed into new; existing AI projects and dated tasks without implementing them.
Run `npx skills add telegramdesktop/tdesktop --skill process-inbox -a claude-code`. Or copy the skill folder (.agents/skills/process-inbox in telegramdesktop/tdesktop) into .claude/skills/process-inbox in your project. Claude Code loads it when a task matches its description.
Run `npx skills add telegramdesktop/tdesktop --skill process-inbox -a codex`. Or copy the skill folder (.agents/skills/process-inbox in telegramdesktop/tdesktop) into .agents/skills/process-inbox 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 telegramdesktop/tdesktop --skill process-inbox -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/process-inbox, .gemini/skills/process-inbox, .github/skills/process-inbox and .opencode/skills/process-inbox in your project.
Going by SKILL.md and its folder, Process Inbox needs Python for the scripts in its folder and the command-line tools its instructions call (python3). Our summary lists: Python 3.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. 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.
Process Inbox is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.5k tokens (SKILL.md is roughly 18k 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 Process Inbox: Tg Responder (glebis/claude-skills, 388 stars), Pytdbot (pytdbot/client, 137 stars), Setup (terranc/claude-telegram-bot-bridge, 134 stars) and Smart Email Agent (LeoYeAI/openclaw-master-skills, 2.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
telegramdesktop (a GitHub organization) maintains it in telegramdesktop/tdesktop, which has 33,126 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on October 6, 2026.
Source: telegramdesktop/tdesktop on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.