Install
$ agentstack add skill-nicolasmelo1-logion-with-eval ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
With-Eval: Checklist-Driven PR Review
This skill reviews code diffs against a bundled checklist. The agent reads references/checklist.md, walks the diff category by category, and writes a structured review naming any violated categories by their stable code (e.g. security:sql-injection, reliability:missing-error-handling).
The output format is deliberately structured — one line per finding, with the category code, file path, line number, and a short description. The categories don't change between versions, so reviews are comparable across diffs and across time.
How the agent uses this skill
When asked to review a diff:
- Read
references/checklist.md(loaded on-demand via progressive disclosure — not loaded at activation). - Walk the diff against each category in the checklist.
- For each issue found, write one line in the format:
`` : — ``
- If the diff is clean, write a single line:
no issues.
That's the entire workflow. The user gets a list of categorised findings or a clean bill of health.
Example output
For a diff that introduces a string-concatenated SQL query and a hardcoded API key:
security:sql-injection users/dao.py:7 — query built via string concatenation with user-supplied `email`
security:hardcoded-secret users/dao.py:4 — API key stored as a string literal
When to use this skill
- Pre-merge PR review (the obvious case).
- Auditing a vendor patch before applying it.
- Self-review before pushing a feature branch.
- Anywhere you'd otherwise get a free-form "looks good 👍" from an agent — this skill forces a categorised answer.
Capability declarations
tools: [file, terminal]— reads the diff, the checklist, writes the review.filesystem.write: [./evals/reviews, ./evals/reports]— review output + self-test verdicts (see below).- No network, no secrets, no human approval. The skill runs entirely locally.
Verifying the skill works: bundled self-test
The skill ships with a small evaluation harness under evals/ that lets you (or a CI job, or a future bounty-eval) verify the agent actually applies the checklist instead of rubber-stamping.
Why this matters
LLM-driven review can be faked. An agent that says "the code looks fine" on every diff appears to be doing review work but isn't. The bundled self-test catches the rubber-stamp pattern: it feeds the agent two known fixtures and mechanically scores its reviews.
How to run it
# 1. Ask the agent to review each fixture, writing each review to:
# evals/reviews/buggy_pr_must_flag_planted_issues.txt
# evals/reviews/clean_pr_no_false_positives.txt
#
# 2. Run the scorer:
python evals/runner.py
For each scenario in evals/scenarios.json:
- The runner reads the review the agent wrote.
- Loads the expected outcome from
evals/expected/.json. - Scores by substring presence:
- Buggy fixture (
verdict: must_flag): every category inrequired_categoriesmust appear in the review. - Clean fixture (
verdict: must_pass): no category inforbidden_categoriesmay appear. - Writes a verdict to
evals/reports/.json. Exits non-zero if any scenario failed.
The runner does not call an LLM. The agent has already written the review; the runner is the check, not the reviewer. Deterministic, cheap, trust-clean.
What gets planted in buggy_pr.diff
| Planted issue | Checklist category | |---|---| | SQL query built via string concatenation | security:sql-injection | | API key hardcoded as a string literal | security:hardcoded-secret | | urlopen call without try/except | reliability:missing-error-handling | | range(n + 1) where range(n) is intended | correctness:off-by-one |
A faking agent that writes "LGTM" or "no issues" on the buggy fixture fails on all four. An over-eager agent that flags every change fails the clean fixture by mentioning forbidden categories.
Forward-compat note
This bundled self-test is the same shape future eval-backed marketplace bounties will use: bundled fixtures + bundled expectations + a deterministic scorer. A course that ships a working self-test today is one that supports paid-evaluator bounties tomorrow with no schema change — same fixtures, same scorer, just network evaluators instead of local self-check.
Structure
with-eval/
├── SKILL.md # this file
├── course/
│ └── capabilities.yaml # file + terminal; no network, no secrets
├── references/
│ └── checklist.md # the review checklist
└── evals/ # bundled self-test
├── scenarios.json # which fixtures to run, expected outcomes
├── fixtures/
│ ├── clean_pr.diff # a diff with no issues
│ └── buggy_pr.diff # a diff with four planted issues
├── expected/
│ ├── clean_pr.json
│ └── buggy_pr.json
├── runner.py # deterministic scorer (no LLM)
├── reviews/ # agent writes its reviews here
└── reports/ # runner writes verdicts here
What an author should change when copying
name:in frontmatter (must match the directory name).description:(specific about what your checklist covers).- Replace
references/checklist.mdwith your domain's checklist. Keep the category codes specific and stable — the self-test depends on substring presence. - Replace
evals/fixtures/with diffs / inputs / artifacts representative of your domain. - Update
evals/expected/with the categories a correct response should (or should not) mention. - The runner is generic — substring presence against expected JSON — so you usually don't need to edit it. Adjust only if your scoring rule isn't substring-presence.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: nicolasmelo1
- Source: nicolasmelo1/logion
- License: MIT
- Homepage: https://logion.sh
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.