The default review lenses for `tessl code review`, which the Tessl Code Review GitHub Action also runs. Each lens is its own skill, so a run can invoke one lens or several. Fork and tune any lens for your own repository.
64
80%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Code review lenses for tessl code review and the Tessl Code Review GitHub Action. Each lens is its own skill, so a run can point at exactly the lenses it wants.
The lenses below are the set a review runs by default. Between them, they cover the common dimensions a review is expected to catch, and they were tuned to run together.
tessl code review runs these by default, so a plain run needs no lens selection at all:
tessl code review--skill states the complete lens set instead, in the order supplied. It replaces the defaults rather than adding to them, so naming one lens makes it the whole review. A reference can be a local path (a SKILL.md file or a skill directory), an installed skill name, or a registry ref workspace/plugin[@version]#skill.
Pin the version in a reference you keep. An unpinned ref resolves to whatever the latest published version is, so its meaning changes under you when the plugin is republished.
tessl code review --skill tessl/code-review@0.1.0#review-security-and-privacySeveral lenses in one run:
tessl code review \
--skill tessl/code-review@0.1.0#review-security-and-privacy \
--skill tessl/code-review@0.1.0#review-correctness-and-data-integrityOr a lens you keep in your own repository, which is also how you iterate on one you have forked:
tessl code review --skill ./review-lenses/review-scale-and-resilience--json writes one document to stdout, on success and on failure alike. There is no output flag, so redirect it:
tessl code review --base origin/main --json > review.jsonCheck status before counting anything: a failed run writes the same shaped document and carries no findings, so a broken run is indistinguishable from a clean review unless the status is read.
The Tessl Code Review Action runs the review and publishes it as one native pull-request review with inline comments. It runs the same defaults unless its lenses input names a complete ordered set of its own:
lenses: >-
["tessl/code-review@0.1.0#review-security-and-privacy"]For the caller workflow — triggers, permissions, advisory versus gating — use tessl/code-review-setup.
The lenses are meant to be forked. Copy one into your own repository and tune it for your codebase, then reference it by local path instead of by registry ref. Or publish it to the registry to share it across your repositories.
A skill needs name and description frontmatter. Past that, the shape is a suggestion rather than a contract, and a reasonable starting point if you have no strong view of your own:
Several of these lenses hold two or three related dimensions, so treat one lens per dimension as a tendency rather than a rule. What matters more is that a lens stays short and carries only what makes it distinct.
For authoring, validating and backtesting a lens of your own, use tessl/code-review-lens-creator.