Plan Step 1. Builds the probe vehicle and the checklist; does NOT answer it. The four questions all require the operator in a live Cowork session on this Mac, and that is a fact about the measurement rather than a caveat: measured 2026-09-04, the session mode is not readable from disk (cowork_settings.json carries only extraKnownMarketplaces; the desktop config carries coworkNetworkMode and a trusted-folder list, neither states where a session runs), and the other three each need a plugin installed in a live session. The step's Verify is therefore RED on purpose and stays red until the operator answers: test "$(grep -cE '...' docs/cowork-probe.md)" = 4 -> exit 1 (0 of 4 matched) Validated in both directions: a fully answered copy exits 0, a copy with three of four answered exits 1. The gate can pass, so its failure means something. Probe vehicle: jobbsok-probe, exactly four files under tests/fixtures/cowork-probe/ -- manifest, skills/probe-versjon/SKILL.md, .mcp.json declaring the stdio server probe-tools, and probe_tools.py (standard library only). Smoke-tested from Claude Code: initialize handshake completes, tools/list returns probe_ping, tools/call returns an interpreter version, an unknown tool name is rejected. What is NOT verified is whether Cowork ever starts it -- that is the question. Archive is built from an explicit four-file include list, never zip -r over the repo root; verified to contain no .git, STATE.md, .venv or .claude/ entry. The degradation branch for each possible nei is written down now, before any answer is known, so it is not decided under pressure later. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2.1 KiB
| name | description |
|---|---|
| probe-versjon | Report what this probe plugin can actually see from inside a Cowork session - its own manifest version, the resolved value of ${CLAUDE_PLUGIN_ROOT}, and whether python3 can be invoked at all. Use when running the jobbsok Cowork probe, or when the operator asks to check Cowork session mode, host MCP visibility, python3 availability or plugin-root resolution. |
probe-versjon
This skill exists to answer three of the four questions in
docs/cowork-probe.md. It measures; it decides nothing.
Run all three checks and report each result verbatim. Do not summarise, do not infer a result you did not observe, and do not fill in a value from memory of how plugins usually behave — an unmeasured answer is worse than no answer here, because the whole point of the probe is that these behaviours are unknown on this machine.
1. Manifest version
Read ${CLAUDE_PLUGIN_ROOT}/.claude-plugin/plugin.json and report the version
field. Expected: 0.0.1. A different value means the session served a cached or
different build, and every other result below is about that other build.
2. Plugin-root resolution
Report the value ${CLAUDE_PLUGIN_ROOT} resolved to.
- If it is an absolute filesystem path: the answer to
- CLAUDE_PLUGIN_ROOT:isja. - If it is the literal, unexpanded string
${CLAUDE_PLUGIN_ROOT}, or empty: the answer isnei.
3. python3 invocation
Run exactly:
python3 -c 'import sys; print(sys.version)'
Report whether the command ran and what it printed.
- If it ran: the answer to
- python3:isja, followed by the reported version. - If it could not run (no such command, blocked, sandbox refusal): the answer is
nei, followed by the error text.
Reporting
Print the three results as a block the operator can copy into
docs/cowork-probe.md:
- python3: <ja|nei> <version or error>
- CLAUDE_PLUGIN_ROOT: <ja|nei> (<resolved value>)
manifest version: <value>
The fourth question (- Host-MCP:) is not this skill's to answer: it is about
whether the probe-tools connector appears in the session, which the operator
reads off the Cowork UI and confirms by calling probe_ping.