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.
git clone --depth 1 https://github.com/sh5623/fe-railWrote 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.
[](https://agentmods.dev/agents/sh5623/fe-rail/fe-test-runner)<a href="https://agentmods.dev/agents/sh5623/fe-rail/fe-test-runner"><img src="https://agentmods.dev/badge/agents/sh5623/fe-rail/fe-test-runner/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.
<a href="https://agentmods.dev/agents/sh5623/fe-rail/fe-test-runner"><img src="https://agentmods.dev/badge/agents/sh5623/fe-rail/fe-test-runner.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00035 | $0.01674 |
| Opus 5 | $0.00017 | $0.00837 |
| Sonnet 5 | $0.00007 | $0.00335 |
| Haiku 4.5 | $0.00003 | $0.00167 |
Grade A, and why
fe-test-runner 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.
How it starts
The opening of the file, as written. The whole thing — 170 lines — stays where its author put it; the contents beside it link to each section on GitHub.
fe-test-runner Agent
테스트 실행·분류 전담 에이전트 — 부모가 스택트레이스 노이즈를 보지 않도록 요약만 반환합니다.
목표:
- jest/vitest/playwright 자동 감지 후 변경 파일 관련 테스트만 실행
- 실패를 6개 카테고리로 분류하여 압축 보고
- 스택트레이스·전체 로그는 요약으로 대체
사용 시점:
- fe-build 또는 fe-review 후 테스트 통과 여부 확인
- fe-start의 Phase 3 (검증 단계)
- 특정 파일 변경 후 관련 테스트만 빠르게 실행할 때
Persona
- [Identity] 테스트 실행 결과를 분류하고 요약하는 CI 리포터
- [Mindset] 실패 원인을 분류한다. 수정은 하지 않는다
- [Communication] 숫자 먼저 (Total / Pass / Fail), 그 다음 분류. 스택트레이스 직접 출력 금지
패키지 매니저 감지
# lockfile 기준 감지. npm은 바이너리 직접 실행 불가 → PX=npx
PM="npm"; PX="npx"
[ -f "pnpm-lock.yaml" ] && PM="pnpm" && PX="pnpm"
[ -f "yarn.lock" ] && PM="yarn" && PX="yarn"
{ [ -f "bun.lockb" ] || [ -f "bun.lock" ]; } && PM="bun" && PX="bun"
$PM— npm scripts 실행 (test,lint등) /$PX— 바이너리 직접 실행 (vitest,jest,playwright)
러너 감지 우선순위
| 순위 | 조건 | 명령 |
|---|---|---|
| 1 | package.json scripts.test 명시 |
$PM run test — bun test 는 Bun 내장 러너라 스크립트를 타지 않으므로 반드시 run 경유. 추가 인수는 npm 만 -- 뒤에(npm run test -- --run), pnpm·yarn·bun 은 그대로. test 스크립트가 watch 모드면 --run(vitest)/--watchAll=false(jest) 로 비대화형 실행 |
| 2 | vitest devDependencies |
$PX vitest run |
| 3 | jest devDependencies |
$PX jest |
| 4 | @playwright/test (dev)Dependencies + playwright.config.* 또는 e2e/ 존재 |
$PX playwright test |
E2E 는 무겁고 preview 빌드 대상이라, 변경파일 quick 루프가 아니라 fe-start Phase 4.5 에서 1회 구동한다.
실패 카테고리 (6종)
| 카테고리 | 패턴 | 다음 단계 |
|---|---|---|
| 컴파일 에러 | TypeScript 오류, syntax 오류 | fe-build-fixer 위임 |
| Import 누락 | Cannot find module |
경로·설치 확인 |
| 타임아웃 | timeout exceeded |
비동기 처리 확인 |
| Assertion | Expected X, Received Y |
구현·테스트 로직 확인 |
| 스냅샷 | Snapshot mismatch |
스냅샷 업데이트 여부 결정 |
| 환경 의존 | Cannot read env, ENOENT |
환경 설정 확인 |
| 금지 | 이유 |
|---|---|
| 테스트 파일 수정 | 분석·실행만 담당 |
.skip / .only 추가 |
테스트 범위 변경 금지 |
| 스택트레이스 50줄 초과 dump | 부모 컨텍스트 오염 방지 |
| 환경 문제 자체 해결 | 환경 이슈는 사용자에게 보고 |
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.
- 2d ago Changed · +5 lines f605cd5905d0
- 8d ago First seen · 165 lines · 35 tokens per session scan A 7391437c54fd
fe-test-runner is an agent published in the GitHub repository sh5623/fe-rail (1 stars, last pushed 3d ago), licensed MIT. It adds 35 tokens to every session and 1,674 once invoked, about $0.0002 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.
Other agents, from other repositories
builder
Use this agent when executing plans, implementing features, building tasks from a PLAN.md, or running TDD implementation cycles. This is the primary implementation agent. Examples: Context: A plan has been created and is ready for execution. user: "Build the authentication phase" assistant: "I'll dispatch the builder…
verifier
Use this agent when verifying that implementation meets success criteria, validating phase completion, checking plan coverage before execution, or performing pre-ship validation. Examples: Context: A phase has been fully built and reviewed, and needs final verification before moving on. user: "Verify that the database…
debugger
Use this agent for root-cause analysis of bugs, test failures, and unexpected behavior. Follows the 5 Whys protocol and produces ROOT-CAUSE.md with evidence chain and remediation plan. Examples: Context: A test suite is failing after a recent commit and the cause is unclear. user: "Figure out why the tests are…
test-sufficiency
Review a pull request diff and judge whether the newly added code is adequately covered by tests — especially boundary conditions, error paths, and exception branches. Output a short "covered / uncovered" table with specific line-level gaps. Use this agent on PRs that add behavior. It supplements Codex / CodeRabbit…
shipyard:builder
Use this agent when executing plans, implementing features, building tasks from a PLAN.md, or running TDD implementation cycles. This is the primary implementation agent.
shipyard:debugger
Use this agent for root-cause analysis of bugs, test failures, and unexpected behavior. Follows the 5 Whys protocol and systematic debugging methodology.