← nitronium.dev

Claude Code'u Telegram'a Taşıma: claude -p + stream-json Pattern'i

2026-06-11
Claude Code için resmi bir Telegram entegrasyonu yok. Ama claude -p CLI'ı subprocess olarak çağırarak tam Claude Code yeteneklerini Telegram'a taşımak mümkün.

Temel pattern:

`python
cmd = [
"claude", "-p", message,
"--output-format", "stream-json",
"--dangerously-skip-permissions",
"--model", model,
"--resume", session_id, # konuşma geçmişi için
]

proc = await asyncio.create_subprocess_exec(
*cmd,
stdout=asyncio.subprocess.PIPE,
stderr=asyncio.subprocess.DEVNULL,
limit=10 1024 1024,
)

async for raw in proc.stdout:
obj = json.loads(raw.decode())
if obj["type"] == "assistant":
# streaming chunk → Telegram mesajını güncelle
elif obj["type"] == "result":
final_text = obj["result"]
`

--output-format stream-json her assistant bloğunu ayrı JSON satırı olarak yazıyor. --resume <session_id> ile session sürdürülüyor; system.init event'inden gelen session_id bir sonraki mesaj için saklanıyor.

Bu yapı ile MCP tool'ları, skill'ler, --dangerously-skip-permissions ve diğer tüm Claude Code özellikleri Telegram üzerinden kullanılabiliyor. OwnPilot gibi büyük platformlara gerek yok; ~400 satır Python yeterli.