CtrlK
BlogDocsLog inGet started
Tessl Logo

gateway

Operate the joelclaw gateway daemon — the always-on pi session that receives events, notifications, and messages. Use the joelclaw CLI for ALL gateway operations. Use when: 'restart gateway', 'gateway status', 'is gateway healthy', 'push to gateway', 'gateway not responding', 'telegram not working', 'messages not going through', 'gateway stuck', 'gateway debug', 'check gateway', 'drain queue', 'test gateway', 'stream events', or any task involving the gateway daemon.

64

Quality

76%

Does it follow best practices?

Impact

No eval scenarios have been run

SecuritybySnyk

Advisory

Suggest reviewing before use

Optimize this skill with Tessl

npx tessl skill review --optimize ./skills/gateway/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Discovery

89%

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

This is a strong skill description with excellent trigger term coverage and completeness. The explicit 'Use when:' clause with numerous natural phrases makes it highly selectable. The main weakness is that the 'what it does' portion could be more specific about the concrete actions/operations the skill enables beyond just 'operate' and 'receives events'.

Suggestions

Expand the capability description to list specific concrete actions like 'restart the daemon, check health status, drain message queues, stream events, debug connectivity issues' rather than relying on trigger terms to imply these capabilities.

DimensionReasoningScore

Specificity

The description names the domain (gateway daemon) and some actions like 'receives events, notifications, and messages' and mentions using the joelclaw CLI, but it doesn't list multiple specific concrete actions the skill performs (e.g., restart, drain queue, stream events are only in trigger terms, not described as capabilities).

2 / 3

Completeness

Clearly answers both 'what does this do' (operate the joelclaw gateway daemon, the always-on pi session that receives events/notifications/messages) AND 'when should Claude use it' with an explicit 'Use when:' clause containing extensive trigger phrases.

3 / 3

Trigger Term Quality

Excellent coverage of natural trigger terms users would say, including 'restart gateway', 'gateway status', 'is gateway healthy', 'telegram not working', 'messages not going through', 'gateway stuck', 'drain queue', 'test gateway', 'stream events' — these are highly natural phrases a user would actually type.

3 / 3

Distinctiveness Conflict Risk

Highly distinctive — 'joelclaw gateway daemon', 'pi session', and the specific trigger terms like 'drain queue', 'telegram not working', 'gateway stuck' create a very clear niche that is unlikely to conflict with other skills.

3 / 3

Total

11

/

12

Passed

Implementation

62%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The skill excels at actionability and workflow clarity with concrete CLI commands, a well-structured triage sequence, and comprehensive failure mode tables. However, it is severely bloated with ADR implementation details—supersession batching windows, OTEL span names, fallback timeout floor values, compaction hysteresis cooldowns, and relay suppression heuristics—that are system design documentation rather than operational guidance. The skill would be dramatically more effective at roughly one-third its current length.

Suggestions

Extract ADR implementation details (sections on interruptibility/supersession, operator ack/timeout tracing, channel runtime contracts, session pressure internals) into separate reference files and link to them, keeping only the operator-relevant summary in SKILL.md.

Remove internal implementation specifics like exact timeout values (1.5s batching, 240000ms fallback floor, 30m compaction cooldown), OTEL span names, and relay heuristic details that Claude doesn't need for gateway operations.

Consolidate the 'Channel runtime contracts' section to just the CLI commands for inspecting channel health and the key operator actions, rather than documenting the full evolution of the feature.

Move the 'Low-signal operator-spam guardrails' bullet list into a separate RELAY-POLICY.md or similar, as it documents internal relay logic rather than operational procedures.

DimensionReasoningScore

Conciseness

The skill is extremely verbose at ~300+ lines with extensive detail on ADR-specific implementation internals (supersession batching windows, operator-relay heuristics, fallback timeout values, OTEL span names, proactive-compaction hysteresis cooldowns) that are implementation documentation, not operational guidance Claude needs. Sections like 'Channel runtime contracts' and 'Interruptibility and supersession' contain deep system design notes that belong in ADR documents, not an operational skill.

1 / 3

Actionability

The skill provides concrete, executable CLI commands throughout (joelclaw gateway status/restart/test/drain/stream), a clear triage sequence, executable TypeScript code for sending events, and a detailed failure mode table with specific fixes. Commands are copy-paste ready.

3 / 3

Workflow Clarity

The Quick Triage section provides a clear ordered sequence with explicit stop-at-first-failure logic, substrate precheck before gateway operations, and validation checkpoints (status → test → events → restart). The failure modes table provides clear symptom → cause → fix workflows. Redis-degraded mode has explicit guidance on what to trust and what not to report.

3 / 3

Progressive Disclosure

The skill references ADRs and related skills appropriately, and the Key Files table provides good navigation. However, massive amounts of implementation detail (channel runtime contracts, operator ack/timeout tracing, session pressure internals, relay suppression heuristics) are inlined rather than being split into separate reference files. The content that should live in ADR docs or a REFERENCE.md is dumped directly into the skill body.

2 / 3

Total

9

/

12

Passed

Validation

90%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

10

/

11

Passed

Repository
joelhooks/joelclaw
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.