← All skills
exploratory-test
82 / 100 · Low risk
Fine to try. Some of what it can do is expected: a coding skill usually runs build and test commands.
By posit-dev/positron (GitHub) · coding · 4,341 stars · scanned at commit 5d355d4
Explore a running Positron instance as a real user to find genuine problems in a change you just made. Use when asked to exploratorily test, QA, manually test, or poke at a branch, PR, or feature through the real UI. This is discovery testing against the live app to find bugs, NOT writing automated tests; use author-e2e-tests or author-vitest-tests for that. Worth its cost for a user-visible behavior change, not for a refactor or a typo fix. Only runs when a person invokes it explicitly.
Works with any agent that supports SKILL.md skills.
What this skill can do
Runs commands on your computer
This is disclosed by the author in the skill's SKILL.md or README. Expected for a coding skill.
Found in 61 places.
Show 17 more
- .claude/skills/exploratory-test/renderer/agents/finish.mjs, line 84
execFileSync('git', ['-C', repoRoot, 'diff', '--quiet', `${baseSha}...${headSha}`], { stdio: 'ignore' }); - .claude/skills/exploratory-test/renderer/agents/finish.mjs, line 450
const git = args => execFileSync('git', ['-C', repoRoot, ...args], { encoding: 'utf8', stdio: ['ignore', 'pipe', 'ignore'] }); - .claude/skills/exploratory-test/renderer/agents/finish.mjs, line 489
execFileSync('git', ['-C', repoRoot, 'cat-file', '-e', `${commit}:${f}`], { stdio: 'ignore' }); - .claude/skills/exploratory-test/renderer/agents/finish.mjs, line 512
execFileSync('git', ['-C', repoRoot, 'grep', '-q', '-E', '-e', whole(id), commit, '--', 'src', 'extensions'], { stdio: 'ignore' }); - .claude/skills/exploratory-test/renderer/agents/finish.test.mjs, line 8
import { execFileSync } from 'node:child_process'; - .claude/skills/exploratory-test/renderer/agents/finish.test.mjs, line 312
const git = (...args) => execFileSync('git', ['-C', repo, '-c', 'user.email=t@t', '-c', 'user.name=t', ...args], { encoding: 'utf8' }).trim(); - .claude/skills/exploratory-test/renderer/agents/finish.test.mjs, line 456
const git = (...args) => execFileSync('git', ['-C', dir, ...args], { encoding: 'utf8' }).trim(); - .claude/skills/exploratory-test/renderer/agents/finish.test.mjs, line 494
const git = (...args) => execFileSync('git', ['-C', dir, ...args], { encoding: 'utf8' }).trim(); - .claude/skills/exploratory-test/renderer/collect-logs.test.mjs, line 8
import { spawnSync } from 'node:child_process'; - .claude/skills/exploratory-test/renderer/collect-logs.test.mjs, line 30
const r = spawnSync('bash', [script, logFile, '9222', 's1', run], { env: { ...process.env, PLAYWRIGHT_CLI: cli }, encoding: 'utf8' }); - .claude/skills/exploratory-test/renderer/known-issues.mjs, line 26
import { execFileSync } from 'node:child_process'; - .claude/skills/exploratory-test/renderer/known-issues.mjs, line 350
return process.env.GH_TOKEN || process.env.GITHUB_TOKEN || execFileSync('gh', ['auth', 'token'], { encoding: 'utf8', stdio: ['ignore', 'pipe', 'ignore'] }).trim - .claude/skills/exploratory-test/renderer/lint-json.mjs, line 14
import { execFileSync } from 'node:child_process'; - .claude/skills/exploratory-test/renderer/lint-json.mjs, line 278
try { return execFileSync('git', ['rev-parse', '--show-toplevel'], { encoding: 'utf8', stdio: ['ignore', 'pipe', 'ignore'] }).trim(); } catch { return null; } - .claude/skills/exploratory-test/renderer/lint/lint-ledger.test.mjs, line 13
import { spawnSync } from 'node:child_process'; - .claude/skills/exploratory-test/renderer/lint/lint-ledger.test.mjs, line 174
const run = (script, file, ...args) => spawnSync(process.execPath, [fileURLToPath(new URL(script, import.meta.url)), join(dir, file), ...args], { encoding: 'utf - .claude/skills/exploratory-test/renderer/main-build.mjs, line 17
import { execFileSync } from 'node:child_process';
and 41 more places
Sends data to these websites: api.github.com${path}, registry.npmjs.org
The author does not mention this.
Found in 8 places.
Show 5 more
Changes files outside its own folder
The author does not mention this.
Found in 3 places.
Install
Paste this into your terminal. It downloads exactly the version we scanned, not whatever is newest.
if [ -e ~/.agents/skills/'exploratory-test' ] || [ -L ~/.agents/skills/'exploratory-test' ]; then echo 'A skill folder named exploratory-test already exists — not replacing it' >&2; false; else d=$(mktemp -d) && git clone --quiet --filter=blob:none --no-checkout 'https://github.com/posit-dev/positron' "$d" && git -C "$d" checkout --quiet '5d355d4cbe7e46087286c0d17f277c0d82fd2593' -- '.claude/skills/exploratory-test' && mkdir -p ~/.agents/skills && cp -R "$d"/'.claude/skills/exploratory-test' ~/.agents/skills/'exploratory-test' && rm -rf "$d"; fi
Codex reads ~/.agents/skills directly. For Claude Code, Cursor, Copilot, Gemini CLI, Antigravity or OpenCode, also link it. For Claude Code: ln -s ~/.agents/skills/'exploratory-test' ~/.claude/skills/'exploratory-test' (other agents: ~/.cursor/skills, ~/.copilot/skills, ~/.gemini/skills, ~/.gemini/config/skills, ~/.config/opencode/skills). Or install through the finder skill, which does both.
Badge for your README
The badge for posit-dev/positron shows the score of its lowest-scoring skill.

[](https://zalavijaysinh.github.io/skilltrust/repos/posit-dev/positron/)
Score history
| Date | Version | Score |
|---|
| 2026-11-07 | 5d355d4 | 82 |