exploratory-charters
Skill1 starsChanged 2 months agoMITView on GitHub
Run session-based exploratory testing with time-boxed charters, heuristics and structured notes — the human/agent judgment layer that scripted automation cannot replace. Use before a release, on a new feature, or when asked to "just test it and see what breaks".
In this repository34 other files it gives its agents.
- a11y-auditSkill
- api-contract-testingSkill
- autonomous-explorationSkill
- bug-reproSkill
- chaos-resilienceSkill
- ci-wiringSkill
- contract-testing-pactSkill
- coverage-ratchetSkill
- database-testingSkill
- e2e-authoringSkill
- environment-paritySkill
- false-positive-hunterSkill
- flake-forensicsSkill
- i18n-l10n-testingSkill
- load-and-stressSkill
- mutation-proofSkill
- never-break-prodSkill
- payment-testingSkill
- perf-budgetSkill
- qa-triageSkill
- regression-curationSkill
- release-gateSkill
- responsive-mobile-testingSkill
- risk-mapSkill
- root-cause-protocolSkill
- security-regressionSkill
- smoke-and-sanitySkill
- state-machine-testingSkill
- test-data-managementSkill
- test-strategySkill
- tracking-testingSkill
- transactional-email-testingSkill
- unit-test-authoringSkill
- visual-regressionSkill
The file
We split this skill into the rules it gives an agent
3 rules. About 0 are common, 3 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈3
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 27
Sequence: do things out of order — pay before choosing shipping, submit twice fast.
- Distinctive: line 29
Time: leave a form open for an hour, cross midnight, set the clock forward.
- Distinctive: line 31
CRUD symmetry: create, read, update, delete, then read again — most bugs live in the last step.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Exploratory Charters
Automation checks what you already thought of. Exploration finds what you did not. It is not random clicking: it is a time-boxed investigation with a stated mission and a written trail.
The charter
CHARTER Explore the checkout with expired and declined cards
to discover error-handling and state-recovery defects.
TIMEBOX 45 minutes
SETUP staging, seeded tenant `acme`, Stripe test cardsOne mission per charter. When you find something outside the mission, note it and continue — that is the discipline that keeps a session from dissolving.
Heuristics to attack with
- Boundaries: 0, 1, max, max+1, empty, huge, negative, unicode, emoji.
- Interruption: refresh mid-flow, back button, duplicate tab, close and reopen, lose network.
- Sequence: do things out of order — pay before choosing shipping, submit twice fast.
- Identity: different role, expired session, two tabs as two users, logged out mid-flow.
- Time: leave a form open for an hour, cross midnight, set the clock forward.
- Data: the same name twice, a deleted item still in the cart, a stale link.
- CRUD symmetry: create, read, update, delete, then read again — most bugs live in the last step.
- Follow the money: anything that charges, refunds, or changes a plan gets double attention.
Notes as you go (SBTM)
Record continuously, not at the end:
14:02 setup done, tenant acme, card 4000000000000002 (declined)
14:09 BUG? declined card leaves the cart empty but the order shows as pending in /orders
14:14 confirmed, reproduced twice — screenshot 3, request id req_8812
14:20 QUESTION should a pending order be cancellable by the user?
14:31 covered: decline, expiry, 3DS challenge. NOT covered: partial refund (no test data)Tag lines as BUG, QUESTION, IDEA, RISK, SETUP. The session report is these notes plus a one-line verdict — nothing needs to be rewritten into prose.
Session report
CHARTER checkout error handling TIMEBOX 45m (used 38m)
COVERED decline, expired, 3DS, network drop mid-payment
NOT partial refunds (blocked: no test data), Apple Pay (no device)
BUGS 2 confirmed (1 P0: pending order created for a declined card), 1 unconfirmed
RISK the retry path is untested by the automated suite — added to risk registerFeed every confirmed bug to bug-repro, and every recurring class of finding into an automated
test so the next session explores new ground instead of the same ground.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

