smoke

A set of offline, product-level checks for the strike-cli command-line and text-based interface. It tests starting the program, sending an echo request, interrupting it, and resuming a session.

In plain words
What is it for?
Use it to build the program, start its echo mode, check its version and command execution, and record whether boot, interruption, and session-resume checks pass.
Why use it?
It catches user-facing problems that unit tests may miss before a release or after changes to the command line, interface, sessions, or authentication. The default checks need no API keys.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/jonathanung/strike/smoke
Any agent
npx skills add jonathanung/strike --skill smoke
Clone the repo
git clone --depth 1 https://github.com/jonathanung/strike

Made for: Claude Code, Codex.

Per session 59 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 607 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
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 $0.00059 $0.00607
Opus 5 $0.00030 $0.00303
Sonnet 5 $0.00012 $0.00121
Haiku 4.5 $0.00006 $0.00061

Measured 2d ago against content hash cc1dd5fa8371, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

smoke 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 2d 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/smoke/SKILL.md · 60 lines

How it starts

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

Smoke (strike-cli)

Product-level checks beyond unit tests. Prefer automated commands; fall back to a short manual checklist when automation is missing.

No API keys required for the default path (echo provider).

When to run

  • Changes under cmd/strike, harness/engine, internal/frontend/tui (input/keymap/app), internal/persist/session, internal/product/auth, internal/frontend/host
  • Before cutting a release (with skill release)
  • After CI green when the PR is user-visible

Skip for pure docs/skills (tier A) unless the docs claim a runtime behavior change.

Automated baseline

make build
make run-echo   # must start; quit cleanly (q / ctrl+c per current binds)

If strike binary exists from make build:

./strike version
./strike exec --provider echo "say hi" 2>/dev/null || ./strike exec "say hi" || true

Record the exact flags that work on this revision (exec/provider flags drift — read ./strike -h / cmd/strike).

Checklist (mark each PASS/FAIL/SKIP)

# Path How
1 Boot make run-echo or ./strike --provider echo starts without panic
2 Version ./strike version prints stamped or dev version
3 Echo turn Send a short prompt; assistant text appears (manual TUI or exec)
4 Tool path If tools touched: echo run … or unit-covered tool still OK — note SKIP if not exercised
5 Interrupt If engine/TUI interrupt touched: esc (or documented bind) cancels in-flight turn
6 Resume If session touched: --continue or /session resume loads without corrupt transcript
7 Auth surface If auth touched: strike auth help/list does not crash (no live login required)

Report format

  1. Verdict — PASS only if no FAIL; list SKIP with reason.
  2. Commands — exact lines.
  3. Failures — verbatim.
  4. Not run — what a human should still click-test.

Rules

  • Do not claim product readiness from make test alone when this skill applies.
  • Do not require live provider keys for baseline smoke.
  • Do not skip FAIL by weakening the app; open a bugs-first issue instead.

Read the full file on GitHub · 60 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. 2d ago First seen · 60 lines · 59 tokens per session scan A cc1dd5fa8371

Subscribe to this mod's changes

smoke is a skill published in the GitHub repository jonathanung/strike (5 stars, last pushed 5d ago), licensed Apache-2.0. It adds 59 tokens to every session and 607 once invoked, about $0.0003 per session on Opus 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

use-agent-browser-for-airi

Test AIRI display-model imports with agent-browser across stage-tamagotchi Electron, stage-web, and stage-pocket mobile web layouts. Use when uploading and verifying contributor-supplied Live2D ZIP, VRM, or MMD ZIP/PMX/PMD files through AIRI's model selector, including onboarding bypass, format-specific import…

moeru-ai/airi · 87 tokens

test-conversion

Workflow for converting unit tests to browser tests for Project Bedrock. Invoke this when the user wants to remove complex Browser dependencies from tests.

chromium/chromium · 31 tokens

agui-dotnet-cross-language-tests

Author cross-language interop tests that verify the AG-UI .NET SDK is wire-compatible with the TypeScript SDK — a Vitest TS client driving a C# CrossLanguage.TestServer over HTTP, both directions, including protobuf byte-parity against @ag-ui/proto. USE FOR: adding or modifying cross-language interop coverage…

ag-ui-protocol/ag-ui · 146 tokens

cli-e2e-testcase-writer

Use when adding or updating Go CLI E2E coverage for one tests/clie2e/{domain} domain of the compiled lark-cli, especially when the work requires live --help or schema exploration, scenario-based clie2e.RunCmd workflows, and per-domain coverage.md maintenance.

larksuite/cli · 78 tokens

harness-test-writer

Add regression test cases to the Bifrost provider harness (the Postman collection run via make run-provider-harness-test) based on a merged PR or a GitHub issue. Fetches the PR/issue, traces the affected wire path in the codebase, checks existing harness coverage, designs cases following harness conventions, inserts…

maximhq/bifrost · 133 tokens

develop-web-game

Use when Codex is building or iterating on a web game (HTML/JS) and needs a reliable development + testing loop: implement small changes, run a Playwright-based test script with short input bursts and intentional pauses, inspect screenshots/text, and review console errors with rendergametotext.

netease-youdao/LobsterAI · 64 tokens