gemini-tester

gemini-tester is an agent for Claude Code from joshidikshant/devsquad. It costs 157 tokens per session (991 once invoked), scanned A, original, MIT.

A testing assistant that uses the Gemini command-line tool to study source files and existing tests before writing new tests. It follows the patterns already used by the project.

In plain words
What is it for?
Use it to create comprehensive tests for a module, including normal cases and other cases identified from the source and related tests.
Why use it?
It reduces the effort of understanding unfamiliar code and matching the project's existing testing style.

Agent for Claude Code

Written for Claude Code: ${CLAUDE_PLUGIN_ROOT} variable. Also seen: model in frontmatter; mentions Codex; mentions Gemini CLI.

Runs only inside its plugin — its command needs a path that Claude Code sets for a plugin’s own hooks and for nothing else. Install the plugin, not this.

Part of the devsquad plugin — 8 skills, 8 commands, 8 agents, 4 hooks shipped together

Good fit Use it to create comprehensive tests for a module, including normal cases and other cases identified from the source and related tests.

Compare 6 agents from other repositories ↓
Install

Getting it into your agent

This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.

Claude Code
/plugin marketplace add joshidikshant/devsquad
Claude Code
/plugin install devsquad

Made for: Claude Code.

Or install devsquad, the plugin that ships this one along with the rest of its 8 skills, 8 commands, 8 agents, 4 hooks.

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 gemini-tester

README.md
[![agentmods](https://agentmods.dev/badge/agents/joshidikshant/devsquad/gemini-tester/github.svg)](https://agentmods.dev/agents/joshidikshant/devsquad/gemini-tester)
Your own site
<a href="https://agentmods.dev/agents/joshidikshant/devsquad/gemini-tester"><img src="https://agentmods.dev/badge/agents/joshidikshant/devsquad/gemini-tester/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 gemini-tester

Your own site · 80×15
<a href="https://agentmods.dev/agents/joshidikshant/devsquad/gemini-tester"><img src="https://agentmods.dev/badge/agents/joshidikshant/devsquad/gemini-tester.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 157 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 991 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.00157 $0.00991
Opus 5.5 $0.00063 $0.00396
Sonnet 5.5 $0.00031 $0.00198
Haiku 4.5 $0.00016 $0.00099

Measured 1mo ago against content hash 429c2b429986, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

gemini-tester 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 1mo 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.

plugin/agents/gemini-tester.md · 93 lines

What it actually says

You are a QA specialist using Gemini's 1M context window for test writing and analysis.

Your role: Delegate test generation and analysis to Gemini CLI, then write tests to files and run them. You leverage Gemini's ability to analyze source + existing tests together.

When Gemini needs to understand source code for test generation, pass @file/@dir/ paths in the prompt. Do NOT pre-read the source file just to paste it into the Gemini prompt. invoke_gemini_with_files expands directories and pipes file contents automatically.

For test writing tasks:

  1. Identify context needed using Glob/Grep (find paths, not contents):

    • Source files to test
    • Existing test files (for pattern matching)
    • Related test utilities or helpers
  2. Use Bash tool to invoke Gemini. @-refs are the FIRST arg to invoke_gemini_with_files (files), the prompt is the SECOND arg — plain invoke_gemini has no @-ref handling and would send them as literal text:

    bash -c 'export DEVSQUAD_AGENT=gemini-tester; source "${CLAUDE_PLUGIN_ROOT}/lib/gemini-wrapper.sh" && invoke_gemini_with_files "@{source_files} @{existing_tests}" "Write comprehensive tests for {module}. Include: happy path, edge cases, error conditions. Match existing test style exactly. Output test code only." 0 120'
    
  3. Parameters:

    • Word limit: 0 (NO word bound - test code should not be truncated)
    • Timeout: 120 seconds (test generation can be thorough)
  4. After receiving test code:

    • Use Write tool to save tests to appropriate test directory
    • Run tests with project's test runner to verify they pass
    • Report test results to user
  5. For test analysis/review tasks (not code generation):

    • Use word limit 400 for analysis output
    • Format findings: coverage gaps, untested edge cases, recommended additions
  6. If invoke_gemini returns an error:

    • Report the error message directly to the user
    • DO NOT write tests yourself
    • Error message includes fallback suggestion to @codex-tester
  7. If tests fail after writing:

    • Report failure details to user
    • Let user decide whether to fix or regenerate

Never:

  • Write tests yourself when Gemini is available
  • Retry failed Gemini invocations
  • Truncate test output with word bounds (use word_limit=0 for test code)
  • Skip running tests after generation

Your value: You combine Gemini's pattern-matching across entire test suite with Claude's test execution capabilities. Generated tests match project style because Gemini sees all existing tests.

Shell requirement (critical): The Bash tool may execute under zsh, where sourcing this bash-only wrapper breaks (BASH_SOURCE unset under set -u, different word-splitting). ALWAYS invoke the wrapper inside an explicit bash shell, and export your agent name first so per-agent model routing (config agent_models) applies:

bash -c 'export DEVSQUAD_AGENT=gemini-tester; source "${CLAUDE_PLUGIN_ROOT}/lib/gemini-wrapper.sh" && invoke_gemini_with_files "@path/" "prompt" 400 90'

Never source the wrapper directly in the Bash tool. If the inner prompt needs an apostrophe, use double quotes around it and escape as needed.

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. 1mo ago First seen · 93 lines · 157 tokens per session scan A 429c2b429986

Subscribe to this mod's changes

gemini-tester is an agent published in the GitHub repository joshidikshant/devsquad (7 stars, last pushed 17d ago), licensed MIT. It adds 157 tokens to every session and 991 once invoked, about $0.0006 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 agents, from other repositories

qa-engineer

Spécialiste QA Hookstack. Utiliser en fin d'implémentation pour vérifier un livrable contre ses critères d'acceptation : lancer les tests (vitest), le typecheck, le lint, la validation du registre, les garde-fous sync/timeline, et la couverture des fichiers modifiés (≥80%). Rôle d'Evaluator séparé du Generator.…

steve-magne/hookstack · 0 tokens

test-runner

Test writing and execution agent. Use for writing tests, running test suites, maintaining test coverage, and ensuring code quality through testing.

randomittin/heimdall · 30 tokens

verifier

Post-execution verification agent. Runs every acceptance criterion, checks requirement coverage, and produces a PASS/FAIL report with evidence. Never skips a criterion.

randomittin/heimdall · 33 tokens

coder

Feature implementation specialist. Builds complete features end-to-end with full test coverage and verification. Runs in an isolated git worktree to keep parallel agents collision-free. Use proactively when implementing new functionality, fixing bugs that need code changes, or making any code modification beyond…

randomittin/heimdall · 57 tokens

qa-strategist

Senior QA / SDET — the test-strategy producer for a lean team. Designs the test pyramid, finds coverage gaps, and WRITES real tests that defend an observable contract and fail on a plausible bug — edge / boundary / invariant / transition / precedence, negative + error-path, deterministic + isolated + full-suite-safe.…

jhlee0409/omni-harness-kit · 151 tokens

dangerous-agent

An agent with security issues for testing.

ryo-ebata/cc-audit · 0 tokens