leashd: Skill for Claude Code

.claude/skills/telegram-harness/SKILL.md

telegram-harness is a skill for Claude Code from vmehera123/leashd. It costs 90 tokens per session (3,066 once invoked), scanned A, original, Apache-2.0.

A live test harness for leashd that uses a fake Telegram service and a real engine to observe message and approval flows. A harness is a controlled setup for testing software behavior.

In plain words
What is it for?
Reproducing or checking Telegram commands, inline-button actions, streaming responses, approvals, and task behavior through the included server and driver.
Why use it?
It lets developers verify Telegram interactions without using a real bot, while showing the exact outgoing timeline for streaming, approvals, plans, tasks, and follow-ups.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter. Also seen: reads .claude/ paths; mentions subagents; names the AskUserQuestion tool.

This is vmehera123/leashd's own configuration. It tells Claude Code how to work on leashd itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything leashd configures →

Needs its repository: it runs a file that does not travel with it, so clone the repository first. The line is uv run python scripts/_harness/tmux_harness.py.

Reuse

Borrowing it

Nothing to install: this file belongs to vmehera123/leashd. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/vmehera123/leashd/main/.claude/skills/telegram-harness/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/vmehera123/leashd

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for telegram-harness

README.md
[![agentmods](https://agentmods.dev/badge/skills/vmehera123/leashd/telegram-harness/github.svg)](https://agentmods.dev/skills/vmehera123/leashd/telegram-harness)
Your own site
<a href="https://agentmods.dev/skills/vmehera123/leashd/telegram-harness"><img src="https://agentmods.dev/badge/skills/vmehera123/leashd/telegram-harness/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for telegram-harness

Your own site · 80×15
<a href="https://agentmods.dev/skills/vmehera123/leashd/telegram-harness"><img src="https://agentmods.dev/badge/skills/vmehera123/leashd/telegram-harness.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 90 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,066 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00090 $0.03066
Opus 5.5 $0.00036 $0.01226
Sonnet 5.5 $0.00018 $0.00613
Haiku 4.5 $0.00009 $0.00307

Measured 19d ago against content hash 2020479d38e8, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

telegram-harness scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 19d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/skills/telegram-harness/SKILL.md · 168 lines

How it starts

The opening of the file, as written. The whole thing — 168 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Telegram + tmux live harness

scripts/_harness/ runs one process that hosts a fake Telegram Bot API (FastAPI) and a real leashd Engine + TmuxAgent + WebConnector + MultiConnector, wired exactly like main._run_multi. You drive it over an HTTP /control/* plane and watch every outbound Bot API call with timestamps — so you can prove streaming, approvals, and plan/auto/task/goal/follow-up behavior against the real pipeline, no real bot needed.

  • tmux_harness.py — the server (fake Bot API + control plane + real engine).
  • drive.py — the driver/observer CLI.

Throwaway dev tooling (its docstring says "gitignored" but it is committed). It is not part of pytest / make check.

⚠️ Read before running

  • The task store reads your REAL ~/.leashd/sessions.db — the v4 orchestrator's task DB is hardcoded to ~/.leashd/ and is not isolated by storage_backend=memory. With the orchestrator on (TASK_ORCH=1, default) it recovers and re-runs your real stale /tasks on startup. Safest: run TASK_ORCH=0. If you must exercise the orchestrator, first confirm there's nothing to recover:
    sqlite3 ~/.leashd/sessions.db \
      "SELECT count(*) FROM task_runs WHERE phase NOT IN ('completed','failed','escalated','cancelled')"
    # must print 0 (and check the log shows task recovery count 0 after HARNESS_READY)
    
    A fake HOME does not reliably help — claude 2.1.x auth is macOS-keychain-based, so the pane ends up logged out (Please run /login). Real HOME is still tmux-isolated via tmux_socket_dir.
  • An untrusted APPROVED_DIR is now handled, and is worth testing with. await_ready drives claude's folder-trust dialog (both the legacy prompt and the 2.1.2xx "Accessing workspace" one) by selecting the affirmative row. Before that it hung, then Escaped, and the pane exited — so a dir claude has never opened is the reproduction for that class of bug, not something to avoid. Reset one with hasTrustDialogAccepted: false for that path in ~/.claude.json.
  • drive.py reads APPROVED_DIR / APP_LOG / AUDIT / TG_PORT from the env — export the same APPROVED_DIR you launched the harness with (default /tmp/leashd_tmux_harness/repo), or its log/watch commands read the wrong files.
  • Storage is in-memory; runtime is tmux; you need claude + tmux installed and claude authenticated (see the tmux-runtime skill). Restart the harness to pick up code edits (the engine loads modules at startup).

Read the full file on GitHub · 168 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 19d ago Changed · +6 lines 2020479d38e8
  2. 26d ago Changed · +8 lines a99980c98ee8
  3. 1mo ago Changed · +70 lines adfd0c8861c7
  4. 2mo ago First seen · 84 lines · 90 tokens per session scan A 8daced53aa84

Subscribe to this mod's changes

telegram-harness is a skill published in the GitHub repository vmehera123/leashd (5 stars, last pushed 7d ago), licensed Apache-2.0. It adds 90 tokens to every session and 3,066 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

webapp-testing

Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.

HKUDS/DeepCode · 35 tokens

moai-ref-testing-pyramid

Test pyramid strategy, coverage targets, test patterns, and quality metrics reference. Agent-extending skill that amplifies manager-develop test-creation and quality-validation work with production-grade testing patterns. NOT for: production code implementation, architecture design, DevOps, security audits.

modu-ai/moai-adk · 61 tokens

reality-verification

This skill should be used when the user asks to "verify a fix", "reproduce failure", "diagnose issue", "check BEFORE/AFTER state", "VF task", "reality check", "check test quality", "mock-only tests", or needs guidance on verifying fixes by reproducing failures before and after implementation, or detecting mock-heavy…

tzachbon/smart-ralph · 81 tokens

moai-e2e

Create and run E2E tests across web, mobile, and desktop with auto-detection and CLI-first toolchains.

modu-ai/moai-adk · 29 tokens

browser-qa

A live browser quality-checking workflow that replays user journeys with Playwright-compatible scripts, screenshots, and reports. It stores test cases and run evidence under `.agents/qa/`.

VKirill/claude-lane-stack · 92 tokens

blueprint-from-collection-acceptance

Prove each must-have from the spec works end to end against the local Supabase stack as the user the spec names, and is refused for everyone else.

receptron/mulmoterminal · 41 tokens