Worktree-isolated sessions refuse claude plugin eval (guard reads 'eval' as shell eval)

Abierto Apto para principiantes
#5,696 1 comentario 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
62/100
Tipo de issue
Documentación
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
shell

Línea de trabajo

El Claude Code binary guard no se puede cambiar en este repo. Localiza la skill /evals:plugin-eval (plugin evals) y documenta que las sesiones aisladas en worktree rechazan claude plugin eval porque el guard trata eval como el shell builtin. Indica el workaround: ejecuta el comando exacto en un terminal separado fuera de Claude Code. Vuelve a comprobarlo en las nuevas versiones de Claude Code según se describe en el issue.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

needs-human priority: low work-class: read-only

Summary

In a worktree-isolated Claude Code session, the Bash tool refuses any command that contains eval as a word, including claude plugin eval and claude plugin eval --help. The guard reads the subcommand as the shell builtin eval. Plugin skills that run plugin evals (/evals:plugin-eval) therefore cannot run from an isolated worktree session.

The guard is built into Claude Code: its message text is in the 2.1.285 binary, not in any plugin in this repo. Per our rule against filing on Anthropic's repositories, this issue tracks the limitation here.

Repro

  1. Start a session isolated in a git worktree (Claude Code 2.1.285, Linux/WSL2).
  2. Have the model run claude plugin eval --help.
  3. Observed: refused with "this command runs a string through eval, which can't be verified to stay inside the worktree."
  4. Expected: claude plugin eval is a CLI subcommand, not shell eval, so it should run.

claude --version and claude plugin --help pass. Another message from the same guard: "uses a subshell in a command inside a construct too complex to verify".

Workaround

Run the command in a separate terminal outside Claude Code. The ! prefix does not work: the user's own ! command in the same session is refused with the identical message (verified 2026-10-01). Do not bypass the guard with wrapper scripts.

Follow-ups

  • /evals:plugin-eval should name this limitation and give the user the exact command to run in a separate terminal when it runs in a worktree-isolated session.
  • The refusal message ends "a worktree-isolated session's git operations must target its own worktree", which is misleading because this command is not a git operation.
  • Recheck on each Claude Code release: run claude plugin eval --help from an isolated worktree session, and close this issue once it passes.

Found while running an approved observation run during the eval-design/hillclimbing digest interview (branch feat/eval-design-hillclimbing-digest).

🤖 Generated with Claude Code

Lenguaje dominante
Shell
Estrellas
22
Forks
2
Merge medio
1 h 29 min
PR fusionados (30 d)
895

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de melodic-software/claude-code-plugins

Todos los issues de melodic-software/claude-code-plugins

Issues similares

Más issues de Shell/Bash

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.