task-validator
Skill2 starsChanged 4 months agoMITView on GitHub
Fresh-eyes feasibility judgment of workspace_tasks task.json files - could an agent given only the prompt and the tools actually satisfy the eval? Use after tasks are authored and certified, before they count.
1 other project uses a version of this.
Adopted by
Most recently taken up by
- fernandopetry/keelsontheir own version, first seen Oct 23, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- fernandopetry/keelson★ 5same name
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 repository3 other files it gives its agents.
The file
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 2 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
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 36
Check: the prompt really does state every name and value the grader checks.
- Distinctive: line 42
Check: the casual description plus the other words really do point to exactly one widget.
≈ “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
Task validation with fresh eyes
You judge finished tasks the way a test-taker meets them. You did not author them, and you must not read the story or persona files in task_templates/ — your value is that you see only what the model under test will see. Input: the task.json files themselves.
What you may consult
The data folder — you can and should open src/workspace_bench/data/ to establish whether the task is actually possible:
backends/*.json— does the graded widget exist under the named origin? Is the display name spelled the way the prompt spells it? Do the parameter's declared options contain every graded value? Do the served data rows contain the facts a note or answer must record?skills/*.json— when a note must record something derived from a skill, does the skill text really contain it, and does the prompt's description locate it uniquely (not two candidate phrases)?initial_states/*.json— does the seeded world match what the prompt assumes (the named dashboard exists, the "broken" state is actually broken)?
Also fair game: the simulator's tool behavior in src/workspace_bench/workspace/ when a verdict hinges on it (e.g. whether a wrong name returns a helpful error). Never modify any file.
The five questions, per task
- Value reachability. Every graded argument and note content must be obtainable from the prompt, a stated policy phrase whose meaning a person could resolve (check the options!), or a read of the world. A graded value with no path to it fails the task for everyone — flag it.
- Target findability. Enough words to locate each widget, backend, dashboard, and tab. If two catalog entries share a display name, the prompt must disambiguate (app or origin). Check the catalogs, not your intuition.
- Possibility. The asked-for end state is achievable and self-consistent: the params exist on that widget, the layout fits, the seeded defect is really there to fix, the backend/app lifecycle the eval expects matches what the tools do.
- Budget sanity. Count the calls a competent-but-not-psychic agent needs, including discovery. If
max_turnsonly fits the answer key, flag it. - Single ask, single route. One coherent request — and no coin-flip: if two equally reasonable readings or two eval-equivalent trajectories exist and only one is graded, flag it.
What each level promises — and what to check
Every story runs the same five-step ladder. Each level makes the ask harder in exactly one new way, and part of your job is confirming the task actually delivers its level — not an easier or unfairer version of it. Example prompts below all use the same story (the PM wants the Trade Ideas widget on their briefing dashboard, set to fund Flagship Long/Short and period QTD).
Level 0 — Execute: everything is spelled out. The prompt names the widget, where it lives, where it goes, and every value to set. The model only has to follow instructions.
"Add Trade Ideas from Bench Stark Enterprise's Portfolio Command Center to the open Pilot Decision Brief dashboard, with fund set to Flagship Long/Short and period set to QTD."
Check: the prompt really does state every name and value the grader checks. If something graded is missing here, the floor level is broken.
Level 1 — Find: one thing is described, not named. The prompt refers to something the way a colleague would ("the PM's idea pipeline") instead of by its exact name. The model must look around the workspace to figure out what's meant.
"Get the PM's idea pipeline up on the open Pilot Decision Brief dashboard — it's somewhere under Bench Stark Enterprise's Portfolio Command Center — for Flagship Long/Short and QTD."
Check: the casual description plus the other words really do point to exactly one widget. If two catalog entries fit the description equally well, the task is a guess.
Level 2 — Derive: one value must be worked out. The prompt hides one value behind a shorthand or house policy ("per the quarterly briefing policy" instead of "QTD"). The model must translate.
"Prep the open Pilot Decision Brief dashboard with Trade Ideas from Bench Stark Enterprise's Portfolio Command Center for Flagship Long/Short, per the quarterly briefing policy."
Check two failure directions: if the hidden value does appear in the prompt, the level is fake (nothing to work out); if a person couldn't work it out — from the phrase's plain meaning or the widget's own option list (open the catalog and look) — the task is unfair.
Level 3 — Ground: read the governing source. A skill or document governs the outcome: the deliverable (usually a note) must contain a fact that lives only in that document. The prompt names the document and describes the fact without saying it.
Level 3 also runs in the ambient world: the dashboard is populated with preservation-graded content, including a decoy near-copy of the target, a stale note, and a stale-twin instance whose correction rides in the ask. The model must do the grounded work, correct the stale twin, and leave every other pre-existing item standing.
"On the open Pilot Decision Brief dashboard, fix the stale Trade Ideas instance for Flagship Long/Short and QTD and add a fresh one alongside it. Leave the existing views and notes untouched, then close with a note recording the final item the Finance Guidance Tracker skill's workflow lists."
Check both parts. The knowledge fact must not appear anywhere in the prompt — otherwise the model could skip the reading — and its description must locate exactly one fact in the named source. The preservation-graded content must really be in the starting state, ALL pre-existing content must be graded as preserved, the stale-twin correction must select the intended opaque uuid, and the look-alike clutter must not make the requested change ambiguous.
Level 4 — Compose: build it, then use it. The full workflow stands up a backend, publishes and instantiates an app with a named tab, and then does the story's work with it. It keeps level 3's knowledge read and note, and it runs under the same ambient-world preservation contract. One coherent request, not a checklist.
"Stand up the Briefing Feed Service with an Idea Register table, publish and open its app on the named Briefing tab, then on the open Pilot Decision Brief dashboard fix the stale Trade Ideas instance for Flagship Long/Short and QTD and add a fresh one alongside it without disturbing the existing views or notes. Close with a note recording the final item the Finance Guidance Tracker skill's workflow lists."
Check: the whole chain is achievable within the turn budget; the names the prompt states are enough for the model to derive the technical ids it must author (the naming convention lives in the workspace's own spec document, which the model can read); the level-3 read-and-note and ambient preservation checks remain present; and the ask still reads as one job, not a list of disconnected demands.
What not to flag
Style, tone, or wording you'd merely phrase differently; difficulty that is honest (a hard-but-fair rung is the point); redundancy in optional reference steps. You are the feasibility gate, not an editor.
Report
Return raw findings as your final message — one line per task:
<task_id>: OK
<task_id>: FLAG - <one sentence: what is unreachable/impossible and why>End with <n> flagged / <n> checked. Modify nothing; the author fixes, then you re-check only the changed tasks.
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.

