e2e
Skill4 starsChanged 18 days agoMITView on GitHub
Write and maintain end-to-end tests that do not get abandoned: choose the few flows that really deserve them, explore the application before writing, make them resistant to layout changes and fix the one that breaks instead of disabling it. Use when a critical flow has no safety net, when a failure has reached users without anyone noticing, or when the existing suite is disabled because it fails on its own.
50 other projects use a version of this.
Adopted by
Most recently taken up by
- varelaia/claude-skills-publictheir own version, first seen Nov 8, 2026
- sgaabdu4/appwrite-backendtheir own version, first seen Nov 8, 2026
- kortix-ai/sunatheir own version, first seen Nov 8, 2026
- n1kben/agentstheir own version, first seen Nov 8, 2026
- AsiaOstrich/EngramGraphtheir own version, first seen Nov 8, 2026
- kortix-ai/CompanyOStheir own version, first seen Nov 8, 2026
Used with
Projects with it also use instinct-export, instinct-import and 9 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
TheKREATORSSkillinstinct-export
Export instincts from project/global scope to a file
Also in 3 projects that use this
TheKREATORSSkillinstinct-import
Import instincts from file or URL into project/global scope
Also in 3 projects that use this
diego-tobalinaSkillbuild-fix
Fix build and compilation errors systematically. Run when build fails.
Also in 4 projects that use this
0mlkrizzz655335vSkillsdk
Codex SDK 集成开发。用 TypeScript/Python SDK 做 agent 生命周期、流式输出、本地/云端执行等集成。
Also in 3 projects that use this
MontimageSkilltest-coverage
Improve test coverage by finding untested branches, error paths, and edge cases. Use when measuring or strengthening a project's tests. Don't use for production debugging, code review, or feature implementation.
Also in 3 projects that use this
MicrosoftSkillworktree
Create, reuse or clean up a dedicated git worktree for working on a pull request or a private branch. Use from any PR-scoped workflow that needs an isolated checkout to keep current code and build output untouched.
Also in 5 projects that use this
- +1 more from TheKREATORS
Other versions50 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 50
- kortix-ai/suna★ 21ksame name
- kortix-ai/CompanyOS★ 21ksame name
- tester-army/e2e★ 13ksame name
- elie222/inbox-zero★ 13ksame name
- getsentry/sentry-javascript★ 8.8ksame name
- entireio/cli★ 5.3ksame name
- callstack/react-native-pager-view★ 3.4ksame name
- openmeterio/openmeter★ 2.4ksame name
- stackia/rtp2httpd★ 2.3ksame name
- alibaba/loongcollector★ 2.2ksame name
40 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository46 other files it gives its agents.
- AGENTS.mdAGENTS.md
- add-repo-to-docsSkill
- adrSkill
- auth-bypass-localSkill
- before-afterSkill
- bug-huntSkill
- carry-envSkill
- code-healthSkill
- crux-doctorSkill
- crux-initSkill
- css-to-componentsSkill
- deploy-fallbackSkill
- deploy-watchSkill
- device-loopSkill
- drive-browserSkill
- end-sessionSkill
- eval-fixturesSkill
- explain-planSkill
- flowSkill
- grillSkill
- merge-conflictsSkill
- motion-videoSkill
- oauth-reauthorizeSkill
- prod-signalsSkill
- promote-to-docsSkill
- prose-checkSkill
- read-documentSkill
- render-loopSkill
- repo-mapSkill
- review-prSkill
- root-causeSkill
- runbookSkill
- security-auditSkill
- share-localSkill
- shipSkill
- skill-auditSkill
- skill-creatorSkill
- teachSkill
- ui-behaviourSkill
- ui-tellsSkill
- visual-diffSkill
- visual-testSkill
- wizardSkill
- workspaceSkill
- write-testsSkill
- x-postsSkill
The file
We split this skill into the rules it gives an agent
4 rules. 0 are common, 4 are distinctive, and 0 are very specific to this project.
0
Common
Most of the 44 edited versions we read keep these.
4
Distinctive
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 48
3. Repair: When one fails: diagnose, propose the fix and run again.
- Distinctive: line 80
If the project has isolated workspaces, the suite goes in its own: its own ports and data.
- Distinctive: line 87
Before adopting them it is worth knowing that the reported consumption is around four times that of doing the same through the command line …
- Distinctive: line 105
Writing e2e for logic: If it can be tested without a browser, it is not an e2e.
“Common” is measured: kept by at least 6 in 10 of the 44 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
e2e
End-to-end tests are the most expensive to write, the slowest to run and the only ones that prove that the whole system works together. That combination makes almost every suite end up disabled.
This skill is about not getting there.
The criterion, before the tool
A flow deserves an e2e if its breakage is reported to you by a user and not by a test.
That is the question, and it rules out almost everything. Three or four flows per product, not forty:
- Getting in. Authentication, session, permissions. If this breaks, nothing else matters, and it breaks for causes that unit tests do not see: a key baked into the build, a misconfigured domain, a cookie.
- The action that generates the value. Publishing, buying, sending, booking. The one that, if it fails, is an incident.
- The surface that cannot be simulated. A map that renders, a payment, a document that gets generated.
And what does not deserve an e2e, however tempting: form validations, texts, empty states, variations of the same list. Those are unit or component tests, which cost a hundred times less.
Ten e2e tests that run are worth more than forty disabled ones.
The cycle, in three roles
It is the pattern that has taken hold in the industry, and it works the same with or without specific tools:
1. Explore and plan. Walk through the running application and write in markdown what the flow does, step by step, with what is actually observed. This plan is reviewed before writing anything: correcting a plan costs a minute, correcting a suite costs an afternoon.
2. Generate. Turn the reviewed plan into executable tests.
3. Repair. When one fails: diagnose, propose the fix and run again. A broken test is one of two things, and you have to decide which before touching it: either the product broke —and then the test did its job— or the test was fragile.
None of the three roles produces something that can be accepted without looking at it. They speed up the evidence and the draft; not the decision.
Keeping them from becoming fragile
Fragility is the real reason suites get abandoned. Four rules:
Select by role and visible text, not by structure. A selector tied to the element hierarchy or to utility classes breaks with any layout tweak, without anything having stopped working. If an element cannot be selected by what it is, give it an explicit test attribute: that is a contract, not a patch.
Do not add fixed waits. An arbitrary timeout is slow when it is too long and fails when it is too short. Wait for the condition: that the element is there, that the request finishes, that the text changes.
Each test creates and destroys its own data. A test that depends on a certain record existing works until someone deletes it. And two tests that share state break as soon as they run in parallel.
Isolate what you do not control. External services, payments, email. In e2e they are intercepted or their test environment is used: a test that fails because someone else's API is slow tells you nothing about your product and teaches people to ignore reds.
Where to run them
If the project has isolated workspaces, the suite goes in its own: its own ports and data. Sharing a database with your development environment is the fastest way for a test to delete something of yours while you work.
On cost
There are integrations that expose the browser to the agent very conveniently. Before adopting them it is worth knowing that the reported consumption is around four times that of doing the same through the command line for equivalent coverage.
On a large team it may pay off. Working alone, the bottleneck is the cost per session: use the three-role cycle, but through the CLI.
When one fails at the commit gate
A red e2e stops the work, so the temptation to disable it is high. The rule: disabling an e2e is a decision that gets recorded, with date and reason. A commented-out test with no explanation is invisible debt; one disabled on purpose and noted is a reviewable decision.
Anti-patterns
- Covering the happy path of everything. Broad and shallow coverage catches nothing and costs on every run.
- Writing e2e for logic. If it can be tested without a browser, it is not an e2e.
- Fixing the test without asking whether the product broke. It is the way to turn a suite into decoration.
- Suites that take so long they run only at night. What does not run when something changes does not protect the change.
Related
/write-tests— everything that can be tested without a browser, which is almost everything/visual-test— look at the interface; complementary and much cheaper/workspace— the isolated environment where the suite runs/ship— the gate that decides when it is necessary to go this far
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.

