parallels-discord-roundtrip
Run macOS Parallels smoke with Discord send, host verification, host reply, and guest readback proof.
- License 许可
- MIT
- 最近更新
- 2026-11-11
- Stars
- ★ 39w
- Forks
- 8.3w
01 前言 Front Matter
- name
- parallels-discord-roundtrip
- description
- Run macOS Parallels smoke with Discord send, host verification, host reply, and guest readback proof.
03 SKILL.md 正文
Parallels Discord Roundtrip
Use when macOS Parallels smoke must prove Discord two-way delivery end to end.
Goal
Cover:
- install on fresh macOS snapshot
- onboard + gateway health
- guest
message sendto Discord - host sees that message on Discord
- host posts a new Discord message
- guest
message readsees that new message
Inputs
- host env var with the token for a dedicated, operator-approved QA bot
- operator-approved QA guild and channel IDs
OPENAI_API_KEY
Preferred run
Load OPENCLAW_PARALLELS_DISCORD_TOKEN through the approved secret source.
Set OPENCLAW_PARALLELS_DISCORD_GUILD_ID and OPENCLAW_PARALLELS_DISCORD_CHANNEL_ID
to the approved QA destination. The harness configures that bot inside the selected guest.
pnpm test:parallels:macos \
--discord-token-env OPENCLAW_PARALLELS_DISCORD_TOKEN \
--discord-guild-id "$OPENCLAW_PARALLELS_DISCORD_GUILD_ID" \
--discord-channel-id "$OPENCLAW_PARALLELS_DISCORD_CHANNEL_ID" \
--json
Notes
- Snapshot target: closest to
macOS 26.3.1 fresh. - Snapshot resolver now prefers matching
*-poweroff*clones when the base hint also matches. That lets the harness reuse disk-only recovery snapshots without passing a longer hint. - If Windows/Linux snapshot restore logs show
PET_QUESTION_SNAPSHOT_STATE_INCOMPATIBLE_CPU, drop the suspended state once, create a*-poweroff*replacement snapshot, and rerun. The smoke scripts now auto-start restored power-off snapshots. - Harness configures Discord inside the guest; no checked-in token/config.
- Use the
openclawwrapper for guestmessage send/read;node openclaw.mjs message ...does not expose the lazy message subcommands the same way. - Write
channels.discord.guildsin one JSON object (--strict-json), not dottedconfig set channels.discord.guilds.<snowflake>...paths; numeric snowflakes get treated like array indexes. - Avoid
prlctl enter/ expect for long Discord setup scripts; it line-wraps/corrupts long commands. Useprlctl exec --current-user /bin/sh -lc ...for the Discord config phase. - Full 3-OS sweeps: the shared build lock is safe in parallel, but snapshot restore is still a Parallels bottleneck. Prefer serialized Windows/Linux restore-heavy reruns if the host is already under load.
- Harness cleanup deletes the temporary Discord smoke messages at exit.
- The harness attempts to stop its selected guest after successful Discord proof and warns if the stop fails. For ad-hoc Discord checks, stop only the task-owned guest before handoff. Do not leave the Discord-configured test guest running after proof.
- Per-phase logs:
/tmp/openclaw-parallels-smoke.* - Machine summary: pass
--json - If roundtrip flakes, inspect
fresh.discord-roundtrip.loganddiscord-last-readback.jsonin the run dir first.
Pass criteria
- fresh lane or upgrade lane requested passes
- summary reports
discord=passfor that lane - guest outbound nonce appears in channel history
- host inbound nonce appears in
openclaw message readoutput
04 同仓库更多 Skills
lobster
暂无简介
xurl
xurl CLI for authenticated X posts, replies, reads/search, DMs, media upload, followers, auth status, or raw v2 API calls.
weather
Current weather and forecasts with web_fetch, falling back to wttr.in curl for locations, rain, temperature, travel planning.
visualize
Create inline visuals for code and explanations, or author persistent OpenClaw dashboard widgets with show_widget.
trello
Manage Trello boards, lists, and cards via the Trello REST API.
tmux
Control tmux sessions/panes for interactive CLIs: list, capture output, send keys, paste text, monitor prompts.