[GH-ISSUE #1923] [Feature] Enable verify:claude-client on native Windows (the lane already passes there) #641

Closed
opened 2026-10-15 18:26:52 +00:00 by bsakaguchi · 0 comments
Owner

Originally created by @pablodiazjorge on GitHub (Oct 11, 2026).
Original GitHub issue: https://github.com/morluto/rea/issues/1923

Before submitting

  • I searched the open and closed issues and pull requests for a related proposal.
  • I removed credentials, tokens, private paths, and sensitive target data.

Area

MCP or agent integration

Current limitation

scripts/verify-claude-client.mjs stops on win32 before doing anything ("Native Claude Code verifier requires POSIX; Windows is unverified"), and docs/testing.md lists native Windows as unverified for this lane. So the Claude Code integration (setup, skill discovery, catalog forwarding, Evidence) has no verification lane on Windows, although nothing in the lane depends on POSIX.

Use cases

  • Windows users who register REA in Claude Code through rea setup --client claude_code have no verified lane behind that path.
  • Contributors on Windows cannot run the Claude Code lane at all, even with Claude Code installed.

I removed only the assertion and ran the lane on native Windows 11 x64 (non-elevated, Node 22.22.3, main at 9d8e42bd):

Claude Code Mode Result
2.1.296 (npm install, the version the POSIX lane uses) call passed: catalog 172, schemas 172, Evidence seen, skill loaded
2.1.296 (npm install) chat passed
2.1.261 (npm install) call passed, same checks
2.1.261 (npm install) chat passed
2.1.295 (standalone claude.exe) call passed, same checks
2.1.295 (standalone claude.exe) chat passed

Desired outcome and success criteria

  • npm run verify:claude-client (call and -- chat) runs and passes on native Windows when REA_VERIFY_CLAUDE_COMMAND points at claude.exe.
  • When the default claude cannot be spawned on Windows, the preflight error says how to select claude.exe. With an npm install, claude on PATH is a claude.cmd shim that execFile cannot spawn (spawn claude ENOENT; Node does not run .cmd files without a shell).
  • docs/testing.md records 2.1.296 as verified on native Windows too and explains how to select claude.exe.
  • The POSIX path does not change.

Authority boundaries and non-goals

No product code changes. The lane keeps its isolated CLAUDE_CONFIG_DIR, its separate Git workspace and the loopback Anthropic Messages/SSE fixture, so no live API is used. Out of scope: resolving the npm shim automatically, live Anthropic API and bare-mode skill activation (unverified on POSIX too), and the other client verifiers that still assert POSIX.

Alternatives considered

Keeping the lane POSIX-only leaves Windows unverified. Resolving the npm shim automatically would add Windows-specific lookup code; an explicit REA_VERIFY_CLAUDE_COMMAND, as every client lane already uses, keeps the verifier simple.

Possible direction

One focused PR, ready on my side: remove the assertion, add the Windows hint to the preflight error and update docs/testing.md. Happy to adjust the scope if you prefer otherwise.

References

  • scripts/verify-claude-client.mjs (the win32 assertion and the preflight)
  • docs/testing.md, verify:claude-client section
  • #1549, which introduced the native Claude Code lane
Originally created by @pablodiazjorge on GitHub (Oct 11, 2026). Original GitHub issue: https://github.com/morluto/rea/issues/1923 ### Before submitting - [x] I searched the open and closed issues and pull requests for a related proposal. - [x] I removed credentials, tokens, private paths, and sensitive target data. ### Area MCP or agent integration ### Current limitation `scripts/verify-claude-client.mjs` stops on win32 before doing anything ("Native Claude Code verifier requires POSIX; Windows is unverified"), and `docs/testing.md` lists native Windows as unverified for this lane. So the Claude Code integration (setup, skill discovery, catalog forwarding, Evidence) has no verification lane on Windows, although nothing in the lane depends on POSIX. ### Use cases - Windows users who register REA in Claude Code through `rea setup --client claude_code` have no verified lane behind that path. - Contributors on Windows cannot run the Claude Code lane at all, even with Claude Code installed. I removed only the assertion and ran the lane on native Windows 11 x64 (non-elevated, Node 22.22.3, `main` at `9d8e42bd`): | Claude Code | Mode | Result | |---|---|---| | 2.1.296 (npm install, the version the POSIX lane uses) | call | passed: catalog 172, schemas 172, Evidence seen, skill loaded | | 2.1.296 (npm install) | chat | passed | | 2.1.261 (npm install) | call | passed, same checks | | 2.1.261 (npm install) | chat | passed | | 2.1.295 (standalone `claude.exe`) | call | passed, same checks | | 2.1.295 (standalone `claude.exe`) | chat | passed | ### Desired outcome and success criteria - `npm run verify:claude-client` (call and `-- chat`) runs and passes on native Windows when `REA_VERIFY_CLAUDE_COMMAND` points at `claude.exe`. - When the default `claude` cannot be spawned on Windows, the preflight error says how to select `claude.exe`. With an npm install, `claude` on `PATH` is a `claude.cmd` shim that `execFile` cannot spawn (`spawn claude ENOENT`; Node does not run `.cmd` files without a shell). - `docs/testing.md` records 2.1.296 as verified on native Windows too and explains how to select `claude.exe`. - The POSIX path does not change. ### Authority boundaries and non-goals No product code changes. The lane keeps its isolated `CLAUDE_CONFIG_DIR`, its separate Git workspace and the loopback Anthropic Messages/SSE fixture, so no live API is used. Out of scope: resolving the npm shim automatically, live Anthropic API and bare-mode skill activation (unverified on POSIX too), and the other client verifiers that still assert POSIX. ### Alternatives considered Keeping the lane POSIX-only leaves Windows unverified. Resolving the npm shim automatically would add Windows-specific lookup code; an explicit `REA_VERIFY_CLAUDE_COMMAND`, as every client lane already uses, keeps the verifier simple. ### Possible direction One focused PR, ready on my side: remove the assertion, add the Windows hint to the preflight error and update `docs/testing.md`. Happy to adjust the scope if you prefer otherwise. ### References - `scripts/verify-claude-client.mjs` (the win32 assertion and the preflight) - `docs/testing.md`, `verify:claude-client` section - #1549, which introduced the native Claude Code lane
bsakaguchi 2026-10-15 18:26:52 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
morluto/rea#641
No description provided.