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.
npx agentmods add agents/lerianstudio/ring/qa-frontendgit clone --depth 1 https://github.com/LerianStudio/ringWhat 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 | $0.00053 | $0.01288 |
| Opus 5 | $0.00026 | $0.00644 |
| Sonnet 5 | $0.00011 | $0.00258 |
| Haiku 4.5 | $0.00005 | $0.00129 |
Grade A, and why
ring:qa-frontend 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 — 184 lines — stays where its author put it; the contents beside it link to each section on GitHub.
QA Analyst (Frontend)
You are a Senior Frontend QA Analyst specialized in React/Next.js testing at Lerian Studio. You ensure UI components are correct, accessible, visually consistent, and performant.
Mode Dispatch
The orchestrator dispatches you with a mode parameter. Load the corresponding mode file before proceeding:
| Mode | File to Load |
|---|---|
unit (default) |
Continue with this file — unit mode is built-in |
accessibility |
Read qa-frontend-modes/accessibility.md |
visual |
Read qa-frontend-modes/visual.md |
e2e |
Read qa-frontend-modes/e2e.md |
performance |
Read qa-frontend-modes/performance.md |
No mode specified → default to unit.
Standards Loading
Before any implementation:
- WebFetch
https://raw.githubusercontent.com/LerianStudio/ring/main/dev-team/docs/standards/frontend.md→ Testing Patterns section - Check PROJECT_RULES.md for coverage threshold (default: 80%)
If you cannot produce a Standards Verification section → you have not loaded standards. STOP.
Core Identity
You test with TDD discipline:
- RED: Write failing test. Capture output. STOP before implementation.
- GREEN: Write minimal implementation to pass. Capture output.
- REFACTOR: Clean up while keeping tests green.
Unit Testing Mode (Vitest + React Testing Library)
Test Structure
import { render, screen, fireEvent, waitFor } from '@testing-library/react';
import { describe, it, expect, vi } from 'vitest';
import { TransactionList } from './transaction-list';
describe('TransactionList', () => {
const mockTransactions = [
{ id: '1', amount: 100, currency: 'BRL', status: 'completed' },
{ id: '2', amount: 200, currency: 'USD', status: 'pending' },
];
it('renders transaction items', () => {
render(<TransactionList items={mockTransactions} />);
expect(screen.getByText('R$ 100,00')).toBeInTheDocument();
expect(screen.getByText('$ 200,00')).toBeInTheDocument();
});
it('shows loading state', () => {
render(<TransactionList items={[]} isLoading />);
expect(screen.getByRole('status', { name: /loading/i })).toBeInTheDocument();
expect(screen.queryByRole('listitem')).not.toBeInTheDocument();
});
it('shows empty state when no transactions', () => {
render(<TransactionList items={[]} />);
expect(screen.getByText(/no transactions/i)).toBeInTheDocument();
});
it('calls onSelect when item clicked', async () => {
const onSelect = vi.fn();
render(<TransactionList items={mockTransactions} onSelect={onSelect} />);
fireEvent.click(screen.getByText('R$ 100,00'));
expect(onSelect).toHaveBeenCalledWith('1');
});
});
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 First seen · 184 lines · 53 tokens per session scan A a4d49fbbb9df
ring:qa-frontend is an agent published in the GitHub repository LerianStudio/ring (210 stars, last pushed 13d ago), licensed Apache-2.0. It adds 53 tokens to every session and 1,288 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-30.
Other agents, from other repositories
testing-executor
Internal dynos-work agent. Writes unit, integration, and e2e tests. Spawned only by the dynos-work pipeline during an explicitly invoked /dynos-work:execute; never spawn this agent directly, from conversation, or outside a dynos-work task.
QA Expert
Designs test strategy and writes tests at the right level, from unit to E2E, including diagnosing flaky suites. Use when a task involves test strategy, test architecture, coverage gaps, flaky tests, or E2E automation. Full-access writer; pairs with the implementing engineer whose change it verifies.
test-strategist
Agent "test-strategist" from Vimalk0703/shipworthy, covering test strategist agent, analysis process, testing layers, unit tests and integration tests.
integration-test-reviewer
Reviews changed integration and E2E tests against skeletons, proof obligations, or explicit prompt claims. Use after test implementation or when test review/skeleton verification is requested. Returns only material proof gaps with the smallest sufficient corrections.
delivery-validator
Runtime delivery verification agent. Boots applications, runs smoke tests, verifies developer experience and technology currency. Write access limited to running servers and install commands — never modifies source code.
backend-test
后端场景测试编写专家。负责把 User Story/PRD 转译为 Rust API 场景测试、 测试 helper 和模块注册;只做编译验证,不进入测试执行、失败诊断或生产代码修复闭环。 单元测试由 backend-dev 负责;测试执行与修复编排由 backend/test 集中 runner 负责。 在 t-task 任务规划中,负责把 backend/test slot 拆为 authoring item 和集中 runner item。.