Dev.to AI 🤖 Ai 👁 0 📖 2 min read

Harness Score 1.1: multilingual guide (EN / pt-BR / es) + Claude Code hook-path fix

A week after 1.0, harness-score 1.1.0 is out. Same maturity model. Same check IDs. Same deterministic scanner. Two things changed — and both came from real usage: The guide is now available in English, Portuguese (Br

A week after 1.0, harness-score 1.1.0 is out.

Same maturity model. Same check IDs. Same deterministic scanner.

Two things changed — and both came from real usage:

  1. The guide is now available in English, Portuguese (Brazil), and Latin American Spanish.
  2. HKS-05 no longer false-negatives valid Claude Code hook command paths.

TL;DR

  • Docs: full VitePress guide + landing pages at /, /pt-BR/, /es/ with a language switcher
  • Scanner: HKS-05 understands unbraced $CLAUDE_PROJECT_DIR/... and node_modules/.bin/ hook binaries
  • Stability: no check renames, no score-model churn — upgrade is safe
  • Still: MIT, zero runtime deps, zero LLM calls, CI-gateable

Why multilingual docs matter for harness engineering

Harness engineering isn't an English-only conversation.

Teams in Brazil, LatAm, and Spain are wiring Cursor, Claude Code, and Windsurf into production repos right now. The maturity model — L0 Unharnessed through L4 Self-correcting — only helps if people can read the remediation recipes in the language they think in.

So 1.1.0 ships the same guide, fully translated:

Locale URL
English (default) paladini.github.io/harness-score
Português (Brasil) /pt-BR/
Español (LatAm) /es/

Landing pages, guide chapters, check catalog anchors (#ctx-01, …), glossary, and hreflang SEO all ship together. Switch language from the header — you land on the equivalent page, not the homepage.

The English source remains the contract. Translations track it; CI keeps check-catalog anchors in sync across locales.

The Claude Code false negative (HKS-05)

HKS-05 asks: do the scripts your hooks invoke actually exist in the repository?

Claude Code accepts both interpolation forms for project-relative hook commands:

${CLAUDE_PROJECT_DIR}/.claude/hooks/setup.sh   # braced — already worked
$CLAUDE_PROJECT_DIR/.claude/hooks/setup.sh     # unbraced — was a false negative

Both are valid. Before 1.1.0, only the braced form was stripped before the filesystem check. If your hooks used $CLAUDE_PROJECT_DIR/... and the script was committed, you still lost 2 points — and got told to "commit the script."

Also fixed: hooks that call package-manager binaries under node_modules/.bin/ (e.g. ${CLAUDE_PROJECT_DIR}/node_modules/.bin/block-no-verify). Those aren't supposed to be in git — npm install creates them. The scanner now treats them as resolved.

If you were on Claude Code hooks and scratching your head at HKS-05: upgrade and re-scan.

npx [email protected] --diff baseline.json

What did not change

Surface Still true in 1.1.0
Check IDs (CTX-01HYG-08) Stable public API
Point totals / level thresholds Same as 1.0.0
Determinism No LLM · no network · no telemetry
Multi-harness OR semantics Cursor, Claude Code, Windsurf, Cline, Continue, Codex, Copilot, …
Exit codes 0 pass · 1 gate fail · 2 usage error

1.1 is a minor: docs + correctness. Not a new maturity ladder.

Try it

Gate CI at L3:

- uses: paladini/harness-score/action@main
  with:
    min-level: '3'

Read the guide in your language:

Links

If the multilingual guide helped — or if HKS-05 was biting you — drop your level + tool stack in the comments.

📰 Read the original article on Dev.to AI

Originally published by Dev.to AI. Aggregated on AIWithGhost for educational purposes — full credit and traffic to the original publisher.