惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
Netflix TechBlog - Medium
I
InfoQ
Engineering at Meta
Engineering at Meta
Jina AI
Jina AI
Recent Announcements
Recent Announcements
T
The Blog of Author Tim Ferriss
P
Proofpoint News Feed
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
D
Docker
Microsoft Security Blog
Microsoft Security Blog
宝玉的分享
宝玉的分享
Last Week in AI
Last Week in AI
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
GbyAI
GbyAI
博客园 - Franky
博客园 - 聂微东
Microsoft Azure Blog
Microsoft Azure Blog
博客园 - 叶小钗
酷 壳 – CoolShell
酷 壳 – CoolShell
B
Blog RSS Feed
WordPress大学
WordPress大学
MyScale Blog
MyScale Blog
月光博客
月光博客
罗磊的独立博客

Hacker News: Show HN

PurrrrrFocus: Pomodoro Timer App - App Store Workflow Engine — Multi-Step Orchestration for Bun RapidPhoto: Pro Photo Editor App - App Store GitHub - DheerG/swarms: Achieve extraordinary results with claude code across a variety of tasks SPICE simulation → oscilloscope → verification with Claude Code — Lucas Gerads Show HN: VCoding – A 5 MB native Windows IDE with no dynamic dependencies Show HN: LLMs don't hallucinate because they're bad at math, it's the format GitHub - Agent-FM/agentfm-core: AgentFM is a peer-to-peer network that turns everyday computers into a decentralized AI supercomputer. AgentFM lets you run massive AI workloads directly across a global mesh of idle CPUs and GPUs. Show HN: Tracking Top US Science Olympiad Alumni over Last 25 Years GitHub - Potarix/agent-hub: One place to talk to all your agents Show HN: Runtime security for AI agents(injection,tool abuse, data exfiltration) GitHub - dubeyKartikay/lazyspotify: Terminal Spotify client for macOS and Linux GitHub - the-banana-tool/king-louie: Easy to use GUI Personal AI Assistant. Win/Linux/Mac. Show HN I made my vacation rental bookable by AI agents–no Airbnb, 0% commission GitHub - basteez/jsf-autoreload: maven plugin to enable hot reload on jsf projects uvm32/hosts/host-gdbstub at main · ringtailsoftware/uvm32 GitHub - labsai/EDDI: Config-driven engine that turns JSON into production-grade AI agents. Multi-agent orchestration, 12+ LLM providers, MCP/A2A protocols, RAG, persistent memory, and enterprise compliance (EU AI Act, GDPR, HIPAA). Built on Quarkus. GitHub - glitchnsec/fortyone-oss: AI Executive Assistant Platform Quickstart | Alien GitHub - muxshed/shed: One stream in, or many. Every destination, simultaneously. No cloud middleman, no per-channel fees, no limits. GitHub - ocrbase-hq/ocrbase: 📄 PDF/IMG ->.MD/JSON Document OCR API for PaddleOCR and GLMOCR. Self-hostable. GitHub - impactjo/home-memory: MCP server that lets your AI assistant remember everything about your home. GitHub - Sets88/dbcls: DbCls is a powerful terminal database client that supports various databases GitHub - neptun2000/heor-agent-mcp GitHub - SeanFDZ/macmind: Single-layer transformer in HyperTalk for the classic Macintosh RollQuation: Math Puzzles - Apps on Google Play GitHub - dropbox/witchcraft Show HN: Agent-cache – Multi-tier LLM/tool/session caching for Valkey and Redis GitHub - opentalon/opentalon: OpenTalon is an open-source platform built from the ground up in Go as a robust alternative to OpenClaw LinkedIn™ 职位抓取工具 - Chrome 应用商店
GitHub - yashau/dexgram: Telegram bridge for Codex Desktop
yashau · 2026-05-13 · via Hacker News: Show HN

Dexgram is a Windows Telegram bridge for Codex Desktop. It runs as a single Windows binary, listens to a private Telegram bot chat with threaded topics enabled, and maps each Telegram topic to a Codex thread.

Unlike most other Codex-to-Telegram bridges, Dexgram is specifically built around Codex Desktop and Codex app-server threads. Telegram chats created through Dexgram are registered in Codex Desktop's chat history, so you can start or continue a conversation from Telegram and then pick it up again in Codex Desktop.

Features

  • Creates Codex chats from Telegram topics, with each topic mapped to a resumable Codex app-server thread.
  • Keeps Dexgram-created chats visible in Codex Desktop history so conversations can move between Telegram and the desktop app.
  • Supports project-bound chats with fuzzy Codex Desktop project matching and inline selection buttons for ambiguous matches.
  • Creates dated one-off workspaces for projectless chats, matching Codex Desktop's "Don't work in a project" flow.
  • Mirrors Codex progress back to Telegram with initial replies, live run-log updates, final answers, and a Stop button for active turns.
  • Queues new Telegram messages while Codex is busy, with inline controls to steer queued items into the active turn or delete them before they run.
  • Supports native Codex goals from Telegram with /goal <objective>.
  • Downloads Telegram photos and documents for Codex prompts, stages attachment-only messages, and uploads final-answer local file links back to Telegram.
  • Installs as a current-user Windows login task, with a Startup-folder fallback when Task Scheduler is unavailable.

Windows Only

Dexgram is designed for Windows. Its service mode uses a current-user Windows Task Scheduler login task, with a Startup-folder fallback if Task Scheduler denies access.

Because, apparently, macOS is not the only desktop allowed to receive nice things.

Requirements

  • Windows
  • Codex Desktop installed and signed in
  • A Telegram bot token from @BotFather
  • Telegram threaded topics enabled for the bot

In @BotFather, enable:

Bot Settings -> Threads Settings -> Threaded Mode

Setup

Option 1: Install The Latest Release

Run the one-line installer:

irm https://raw.githubusercontent.com/yashau/dexgram/main/install.ps1 | iex

The installer downloads the latest GitHub release, puts dexgram.exe under %LOCALAPPDATA%\Dexgram, adds that folder to your user PATH, creates the Dexgram config/log/state directories, and starts onboarding from the installed dexgram.exe path.

After onboarding, validate the setup with the command printed by the installer.

Update later with:

dexgram update

After a successful update, the installer starts the Dexgram service again from the newly installed binary.

Option 2: Manual Setup

If you already have dexgram.exe, run onboarding yourself:

.\dexgram.exe onboard

You can also copy the example config and edit it manually:

Copy-Item .\dexgram.example.toml .\dexgram.toml
notepad .\dexgram.toml

At minimum, set:

[telegram]
bot_token = "123456789:replace-me"
chat_id = 0

Use chat_id = 0 temporarily to discover your private chat id. Start Dexgram, send the bot a DM, then copy the logged chat_id into the config.

Validate the setup:

.\dexgram.exe -check

Start Dexgram:

.\dexgram.exe

Service Mode

Dexgram can install itself as a user-login background process:

.\dexgram.exe service install
.\dexgram.exe service start

This is not a Windows Service. It runs in the signed-in user's context so it can talk to the same Codex Desktop environment. Dexgram tries a current-user scheduled task first; if Windows denies that, it installs a per-user Startup folder fallback.

Service paths:

Binary: %LOCALAPPDATA%\Dexgram\dexgram.exe
Config: %APPDATA%\Dexgram\dexgram.toml
Logs:   %APPDATA%\Dexgram\dexgram.log
State:  %APPDATA%\Dexgram\dexgram.db

Telegram Commands

  • /new [title] creates a new Telegram topic for a Codex chat.
  • /project <project name> binds a new topic to a Codex Desktop project before the first prompt. Project matching is fuzzy, so partial names usually work; if multiple projects match, Dexgram shows inline selection buttons.
  • /status shows the topic's Dexgram mapping and active turn state.
  • /sync mirrors new completed Codex turns for chats Dexgram already created.
  • /steer <message> steers the currently active Codex turn.
  • /goal <objective> sets the native Codex goal for the topic. As of writing, goals must be enabled in your Codex config first: %USERPROFILE%\.codex\config.toml with [features] and goals = true.
  • /stop or /cancel interrupts the active Codex turn.

How Chats Run

On the first prompt in a Telegram topic, Dexgram starts a Codex thread and saves the mapping by Telegram chat_id and message_thread_id. Later messages in that topic use the stored Codex thread id. If no project is selected, Dexgram creates a one-off workspace similar to Codex Desktop's "Don't work in a project" flow under:

%USERPROFILE%\Documents\Codex\YYYY-MM-DD\chat-title

Each Codex turn is mirrored back into Telegram as a small set of messages:

  • An initial assistant or plan message, when Codex sends one.
  • One live run-log message for commands, tools, file edits, searches, and media.
  • The final assistant answer.

The active turn status message includes a Stop button. It does the same job as /stop or /cancel: Dexgram interrupts the current Codex turn for that topic.

Limitations

  • Dexgram does not import arbitrary Codex Desktop chats into Telegram.
  • /sync only works for chats Dexgram already created and mapped.
  • Desktop work in a mapped chat can be mirrored back with /sync; unrelated Desktop chats will not appear in Telegram.

Queued Messages

If you send another Telegram message while Codex is already working in that topic, Dexgram still submits it to Codex. Codex queues it natively, and Dexgram replies to the queued Telegram message with two buttons:

  • Steer merges that queued input into the currently active Codex turn, then deletes the queued turn.
  • Delete queued cancels the queued Codex turn without steering it.

The /steer <message> command is the text-command version of steering: it sends that message directly into the active Codex turn.

Files And Attachments

Dexgram downloads Telegram photos, image documents, and regular documents to local files before sending them to Codex. Images are passed as local image inputs; other documents are included by absolute path.

Messages that include both text and files are sent to Codex as one prompt. If you send files without text, Dexgram stages them and attaches them to the next message in that chat. The same attachment handling applies when a prompt is queued behind an active Codex turn.

Dexgram does not upload files reported by intermediate tool calls, file edits, or image-generation events while Codex is working. If the final assistant answer explicitly links to a local file, Dexgram uploads that file after the final text answer. Images are sent as photos; everything else is sent as a document.

License

MIT. See LICENSE.