Agent-scaffold discovery benchmark (tool-use harness) - #86
Conversation
Addresses skydiscover-ai#1 with a DGM-style discovery object: evolve run_agent over a fixed synthetic multi-hop tool suite (search/lookup/calculate) scored by held-out accuracy and tool efficiency. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Nice tool-use scaffold benchmark - the held-out train/test split and the efficiency signal are a good design. I ran the evaluator closely and found one issue worth closing before this goes in, plus a few smaller notes. Main issue - Suggested fix: load Smaller, non-blocking:
The import leak is the one real blocker for me; the rest are polish. Happy to help once that is addressed. |
Load the task suite first, then drop the evaluator dir from sys.path and remove tasks/tools from sys.modules before exec so `import tasks` cannot read held-out answers. Gate the efficiency bonus on accuracy. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Addressed the ground-truth import leak from the review:
Regression: |
|
@ShauryaVM Thanks, The ground-truth leak class remains, though. The candidate is still exec'd in-process, cwd is the benchmark dir, and |
Issue #1 asked whether SkyDiscover can optimize agent scaffolds / dynamic programs the way DGM and ShinkaEvolve do. We already have
--agenticfor reading a codebase while generating solutions; this adds a first-class discovery object that is the harness itself.What lands
benchmarks/agent_scaffold/: evolverun_agent(question, tools) -> strsearch/lookup/calculate) — no API keys in the evaluatoraccuracy,efficiency(tool budget),combined_scoreHow I tested
python3 benchmarks/agent_scaffold/evaluator.py benchmarks/agent_scaffold/initial_program.pyRelated to #1
Made with Cursor