Eval runner: send the prompt on stdin; add a-empty results
On Windows a multi-line argv prompt is cut at its first newline, which also dropped the permission flags. The a-empty eval now passes every check, including the page check on the page the skill built. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
7f2ddecffb
commit
58baf7f778
3 files changed
+336
-2
No files matched your search
@@ -47,11 +47,13 @@ def main(fixture):
|
||||
for skill in ROOT.glob("rpa-dashboard-*"):
|
||||
shutil.copytree(skill, project / ".claude" / "skills" / skill.name)
|
||||
|
||||
# The prompt goes in on stdin: on Windows a multi-line argv prompt is cut at the first newline.
|
||||
run = subprocess.run(
|
||||
[shutil.which("claude") or "claude", "-p", cfg["prompt"] + REPLY_FORMAT, "--output-format", "json",
|
||||
[shutil.which("claude") or "claude", "-p", "--output-format", "json",
|
||||
"--permission-mode", "acceptEdits", "--allowedTools", "Skill", "Read", "Write", "Edit",
|
||||
"Glob", "Grep", "Bash(python *)", "PowerShell(python *)"],
|
||||
cwd=project, capture_output=True, text=True, encoding="utf-8", timeout=1800)
|
||||
input=cfg["prompt"] + REPLY_FORMAT, cwd=project, capture_output=True, text=True, encoding="utf-8",
|
||||
timeout=1800)
|
||||
reply = json.loads(run.stdout).get("result", "") if run.stdout.strip().startswith("{") else run.stdout
|
||||
|
||||
def line(key):
|
||||
|
||||
Reference in new issue
Block a user