generate-report — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited generate-report (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
You are generating a comprehensive experiment report for this data science project. Your goal is to gather all available metrics, plots, and configuration details from the latest experiment and produce a clear, well-structured report that can be shared with the team.
Current branch: !git branch --show-current Git commit: !git rev-parse --short HEAD 2>/dev/null || echo "unknown" Recent experiment logs: !ls -lt reports/*.json experiments/*.json 2>/dev/null | head -5 || echo "No experiment logs found" Available plots: !ls reports/figures/*.png reports/figures/*.svg 2>/dev/null | head -10 || echo "No plots found" Checkpoints: !ls -lt checkpoints/*.pt checkpoints/*.pth 2>/dev/null | head -3 || echo "No checkpoints" Config used: !ls configs/*.yaml configs/*.toml 2>/dev/null | head -3 || echo "No configs"
If the user provided an experiment name: $ARGUMENTS Otherwise, derive one from the branch name, latest config file, or use the current date.
Collect all available information about the latest experiment:
reports/ or experiments/# Find and read latest metrics
METRICS_FILE=$(ls -t reports/*.json experiments/*.json 2>/dev/null | head -1)
if [ -n "$METRICS_FILE" ]; then
echo "=== Latest Metrics ==="
cat "$METRICS_FILE"
fi
# Find config used
CONFIG_FILE=$(ls -t configs/*.yaml configs/*.toml 2>/dev/null | head -1)
if [ -n "$CONFIG_FILE" ]; then
echo "=== Configuration ==="
cat "$CONFIG_FILE"
fiLook for baseline metrics to compare against:
reports/baseline_metrics.json or experiments/baseline.jsongit log --oneline --all -- reports/*.jsonIf plots do not already exist, generate them:
python3 -c "
import json
from pathlib import Path
# Check if visualization script exists
viz_script = Path('src/evaluation/visualize.py')
if viz_script.exists():
print('Visualization script found')
else:
print('No visualization script found -- will generate basic plots')
"Key visualizations to include:
Generate the report as a Markdown file at reports/experiment_report.md:
# Experiment Report: [Experiment Name]
**Date:** [current date]
**Branch:** [git branch]
**Commit:** [git commit hash]
**Author:** [generated by /generate-report skill]
---
## Executive Summary
[2-3 sentences: what was the experiment, what was the key result, and is it better than baseline?]
## Experiment Configuration
| Parameter | Value |
|-----------|-------|
| Model architecture | [from config] |
| Learning rate | [from config] |
| Batch size | [from config] |
| Epochs | [from config] |
| Optimizer | [from config] |
| Scheduler | [from config] |
| Random seed | [from config] |
| Dataset version | [from config or DVC] |
## Dataset Summary
| Split | Samples | Features | Classes |
|-------|---------|----------|---------|
| Train | [count] | [count] | [count or N/A] |
| Validation | [count] | [count] | [count or N/A] |
| Test | [count] | [count] | [count or N/A] |
## Results
### Final Metrics
| Metric | Value |
|--------|-------|
| [metric 1] | [value] |
| [metric 2] | [value] |
| ... | ... |
### Comparison with Baseline
| Metric | Baseline | Current | Delta | Improvement? |
|--------|----------|---------|-------|-------------|
| [metric 1] | [value] | [value] | [+/- value] | [Yes/No] |
| ... | ... | ... | ... | ... |
### Training Curves


### Confusion Matrix

## Analysis
### Key Findings
- [Finding 1: most important result]
- [Finding 2: notable pattern or observation]
- [Finding 3: any concerning behavior]
### Error Analysis
- [What types of errors does the model make?]
- [Are errors concentrated in specific classes or data subsets?]
### Comparison with Previous Experiments
- [How does this compare to previous runs?]
- [What changed and what impact did it have?]
## Recommendations
### Next Steps
1. [Actionable recommendation 1]
2. [Actionable recommendation 2]
3. [Actionable recommendation 3]
### Potential Improvements
- [Idea for model improvement]
- [Idea for data improvement]
- [Idea for training procedure improvement]
## Artifacts
| Artifact | Path |
|----------|------|
| Best checkpoint | checkpoints/best_model.pt |
| Metrics JSON | reports/metrics.json |
| Config file | configs/experiment.yaml |
| Training logs | experiments/[run-id]/ |
| Figures | reports/figures/ |
---
*Report generated automatically by the /generate-report skill.*After writing the report:
Report the path to the generated report file when complete.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.