All skills
harlan-zw avatar

/nuxt-frontend-review

@474ef33

Adversarially review a Nuxt frontend. Run it and verify its contract, UX, and visual behavior. Use for frontend review or testing.

Use this Skill: https://skilld.dev/gh/harlan-zw/harlan-agent-kit/nuxt-frontend-review

This session only. Nothing lands on disk.

referencesmechanical-checks.md

≈503 tokens on demand. Your agent reads this file only when SKILL.md points to it.

Mechanical Checks

Run all of these on the changed files. Report each result, even when clean.

Class-token inventory (preferred over grep for design-system compliance)

AST-aware tokenization across .vue/.ts/.tsx (strings, class attrs, @apply). Catches Vue template class bindings and kebab-case component tags that grep misses.

npx -y @ripast/cli css-class-scan --glob 'app/**' --sort count-desc --json \
  | jq '[.tokens[] | select(.token | test("^(slate|gray|zinc|stone|bg-white|text-black|border-gray)"))]'

npx -y @ripast/cli css-class-scan --pattern 'font-inter,font-roboto,font-arial,font-system-ui' --glob 'app/**' --json

Cross-reference slate-/gray-/zinc-/stone- hits against the project's configured neutral in app.config.ts; exclude that neutral.

Dead code (catches generator-left scaffolding)

npx -y @ripast/cli unused --tsconfig .nuxt/tsconfig.json --exports local --json

Any hit in a file the generator created or modified is a RUBRIC violation.

Remaining greps (no AST equivalent)

# Completeness
grep -rEn 'TODO|FIXME|placeholder|Lorem|Coming soon|Sample' {changed_files}

# Raw color values
grep -rEn '#[0-9a-fA-F]{3,8}' {changed_files}
grep -rEn 'rgb|hsl|rgba' {changed_files}

# Custom tokens that should have been Nuxt UI overrides
grep -rEn '^\s*--[a-z]' app/assets/css/main.css | grep -v '\-\-ui-' | grep -v '\-\-font-' | grep -v '\-\-color-'

Every custom token found needs justification. Flag any that duplicates a --ui-* variable or a Tailwind utility.

Component locality (single-caller global components)

Every component in app/components/ touched by the diff needs ≥2 unrelated callers, otherwise it should be colocated as _Component.vue next to its sole consumer.

npx -y @ripast/cli scan <ComponentName> --kind jsx,identifier-reference --tsconfig .nuxt/tsconfig.json --json

Single caller in a single feature dir is a RUBRIC violation: "global auto-import without cross-feature consumers."

Source: SKILL.md on GitHub

2 warnings1mo3 checks · Risk MEDIUM
  • Gen Agent Trust Hub1mo

    The skill performs automated frontend reviews by executing shell commands, running a local development server, and utilizing external Node.js packages. It executes an unverified CLI tool (@ripast/cli) via npx, which introduces a supply chain risk. It also uses dynamic context injection to gather job information and git metadata.

  • Socket1mo

    No alerts

  • Snyk1mo

    Risk: MEDIUM · 2 issues

Signed by skilld at 474ef33. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 6 hours ago.

Activeupdated 7 hours ago
What it can do
Reads files Runs commands
user_invocable
true
argument-hint
[job-id] [inline]
effort
high
All 4 allowed tools
ReadBashGlobGrep

README badge

README badge for harlan-zw/harlan-agent-kit/nuxt-frontend-review