agentsclimarketplace

Evor report

Skill it-dainb/oh-my-evor/skills/evor-report

Generate a final Evor mission report with tree visualization, frontier table, and static HTML exportFrom its SKILL.md

Install
npx -y skills add it-dainb/oh-my-evor --skill evor-report

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

5.2 KB, as published. Nobody here has run it

<Purpose> evor-report generates the final mission report for a completed or paused Evor run. It reads the evolution tree, renders an ASCII + graphviz tree with frontier nodes highlighted and eval_version annotations, produces a frontier table with metric deltas vs baseline, aggregates lesson entries from the wiki, and exports a self-contained static HTML file. The rendered PNG is delivered to the user via `SendUserFile`. </Purpose>

<Use_When>

  • User says "report", "generate report", "final report", or invokes /evor-report
  • The evor tick loop exits due to a stop condition (called automatically by the evor skill after Step 9)
  • User wants a snapshot report of a running mission's current state </Use_When>

<Do_Not_Use_When>

  • User wants a live dashboard — use evor-dashboard
  • No run directory exists — redirect to /evor-setup </Do_Not_Use_When>
<Steps>

Step 1 — Resolve Run Directory

Call evor_state_read to retrieve the active run, or use the run-id argument to resolve the run directory directly. Print the run_id being reported on.

Step 2 — Read Run State

Call evor_state_read to load current run state and strategy data. Call evor_read_goal_contract to load the run's goal and stopping criteria.

Print run summary header:

=== Evor Mission Report ===
Mission:        <mission_id>
Run ID:         <run_id>
Status:         <status>
Ticks:          <tick_count>
Best score:     <best_score> (baseline: <baseline_value>, delta: +X%)
Frontier size:  <len(frontier_ids)>
Eval version:   <current_eval_version>
Stop reason:    <from run-state or "in-progress snapshot">

Step 3 — Render Evolution Tree

Call evor_plot_report({ run_id, run_dir, format: "ascii", highlight_frontier: true }) to produce the ASCII tree. Print the output. Each node shows: node_id (truncated), approach_family, eval_version, fitness_value, integrity_status, status.

Then call evor_plot_report({ run_id, run_dir, format: "png", output: "<run_dir>/report/tree.png", highlight_frontier: true }) to generate the PNG for the HTML export.

After the PNG is written, call SendUserFile("<run_dir>/report/tree.png") to deliver the evolution tree visualization.

Step 4 — Render Frontier Table

For each node name in frontier_ids, call evor_read_result({ run_id, node_name: <node_name> }) to retrieve the evaluation result, then render:

| Rank | Node ID | Family | Val Acc | Delta vs Baseline | Eval Version | Integrity | Lessons |
|------|---------|--------|---------|-------------------|--------------|-----------|---------|
|  1   | abc123  | arch   |  0.851  |      +12.3%       |     v2       |  passed   |    3    |
|  2   | def456  | training| 0.839  |      +10.7%       |     v2       |  passed   |    2    |

If per-domain breakdown data is available in the evaluation result, render a secondary per-domain table.

Step 5 — Aggregate Wiki Lessons

Call evor_wiki_summarize({ run_id, run_dir, confirmed_only: false }) to retrieve lessons grouped by approach_family and hypothesis_verdict. Print:

=== Compounding Wiki Summary ===
Confirmed hypotheses: N
Refuted hypotheses: M
Inconclusive: K

Top lessons by family:
  arch:
    - [lesson-id] "Residual connections improved gradient flow..." (confirmed)
  training:
    - [lesson-id] "Cosine LR schedule outperformed step decay..." (confirmed)

Step 6 — Strategy Evolution Summary

Print how the search strategy evolved over the run:

=== Strategy Evolution ===
Meta iterations: <meta_iteration>
Final UCB1 c: <ucb1_c>
Final wildness: <wildness>
Wins by family: arch=12, training=8, data-augmentation=5, ...

Step 7 — Export Static HTML

Call evor_plot_report({ run_id, run_dir, format: "html", output: "<run_dir>/report/index.html", include_frontier_table: true, include_lessons: true, include_strategy_summary: true }).

The static HTML is self-contained (inline CSS/JS, base64-encoded tree PNG). Print:

Static report exported to: <run_dir>/report/index.html
Open with: open <run_dir>/report/index.html

Call SendUserFile("<run_dir>/report/index.html") to deliver the final report.

Step 8 — Write Report Manifest

Write <run_dir>/report/manifest.json:

{
  "generated_at": "<ISO 8601>",
  "run_id": "<run_id>",
  "mission_id": "<mission_id>",
  "tick_count": "N",
  "best_score": "X",
  "baseline_value": "Y",
  "frontier_size": "Z",
  "files": {
    "html": "report/index.html",
    "tree_png": "report/tree.png"
  }
}
</Steps>

<Tool_Usage>

  • evor_state_read — load run state and strategy
  • evor_read_goal_contract — load the run's goal and stopping criteria
  • evor_read_artifact — read forge artifacts for frontier node details
  • evor_wiki_summarize — aggregate wiki lessons by approach_family and verdict
  • evor_wiki_query — retrieve individual lesson entries for the summary
  • evor_plot_report — render ASCII tree, PNG, and static HTML (three separate calls with format param)
  • SendUserFile — deliver tree PNG and HTML report to the user at completion
  • Write — report/manifest.json </Tool_Usage>

Keep looking

Skills are one crate of 627,801. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.