Skip to content
cccskills
FreePublished on GitHub

verify-openwork

Verify OpenWork changes by running the real product and following user or client actions. Choose suitable tests, capture screenshots and reports, and demonstrate that the check fails on dev but passes on the changed branch.

OriginalShow the original description

Prove an OpenWork change works on the real product before calling it done. Start the product, drive the change the way a user or client would, capture screenshots, and show the proof fails on dev and passes on your branch. Use before opening a PR, when a reviewer asks "show me", or when a core journey is red.

Works withMySQL
See how to install

Good for

  • Verifying real product behavior before opening a PR
  • Preparing screenshots and test evidence for a reviewer
  • Checking a fix against dev and the changed branch
  • Investigating failures in the nine core user journeys

Files included (1)

  • SKILL.md3.9 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Verify OpenWork

A change is done when you have watched it work on the real product, not when it compiles. The committed e2e suite is only the nine core journeys in evals/journeys.ts; everything else is proved per PR and thrown away.

1. Pick the check

The change is…Prove it with
a server rule (permissions, isolation, validation, secrets)an API test next to the code, e.g. ee/apps/den-api/test/api/*.api.test.ts (pnpm --filter @openwork-ee/den-api test:api)
a pure function or component logica colocated unit test
something a person or client does end to enda proof: evals/proofs/<name>.proof.test.ts (write-a-spec)
one of the nine core journeys broke or changeda step in that journey, evals/core/<journey>.e2e.test.ts

2. Start the product

pnpm world up dev-app-web --detach -- --browser   # this checkout in headless Chrome; prints webUrl and cdp
pnpm world down dev-app-web                        # when done

Use a desktop window only for desktop-shell changes (see drive-desktop-cdp). Den needs MySQL and Redis on localhost (pnpm dev:den:mysql, or a local MySQL via OPENWORK_EVAL_MYSQL_URL=mysql://root@127.0.0.1:3306).

3. Drive it and keep the evidence

  • By hand while working: drive-desktop-cdp (new session, send, wait, screenshot).
  • As a proof: pnpm evals:e2e <name> --local; screenshots and the report land in evals/results/test-runs/<latest>/.

Drive the real user path. No internal setters, no test-only endpoints, no reading app state; pnpm --dir evals lint:specs rejects those in proofs.

4. Show it fails without your change

A proof that passes on dev proves nothing about your change. Run it on both:

git worktree add /tmp/ow-base origin/dev
cp evals/proofs/<name>.proof.test.ts /tmp/ow-base/evals/proofs/
(cd /tmp/ow-base && pnpm install --frozen-lockfile && pnpm evals:e2e <name> --local)   # must fail
pnpm evals:e2e <name> --local                                                           # must pass
git worktree remove /tmp/ow-base

If it passes on dev, the assertion is looser than the change: tighten it.

5. Hand it over

Open the PR with open-a-pr. CI runs your proof and the nine core journeys on the PR head and posts the evidence. Name the proof and its before → after in the PR's Evidence section.

The nine core journeys (feature map)

JourneyWhat it provesRun
org-invite-joinan owner invites someone and they join with the right rolepnpm evals:e2e org-invite-join --local
core-chata signed-in person sends a message and reads the replypnpm evals:e2e core-chat --local
thread-continues-after-restarta conversation, queued follow-up and draft survive a restartdesktop; pnpm evals:e2e thread-continues-after-restart --local
agent-connection-journeya connector call in chat shows what was called and what came backpnpm evals:e2e agent-connection-journey --local
agent-permissionsblocked commands stay blocked; allowed ones runpnpm evals:e2e agent-permissions --local
app-smokethe packaged desktop app opens to a working screenpackaged smoke (apps/desktop/scripts/packaged-smoke.mjs)
packaged-update-installan installed app downloads and installs a newer buildmacOS packaged smoke
agent-signup-via-mcpan MCP client connects, searches capabilities and runs onepnpm evals:e2e agent-signup-via-mcp --local
secure-keys-in-chatkeys stay out of the transcript, model, logs and other members' callspnpm evals:e2e secure-keys-in-chat --local

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

add-a-feature

FreeSummary

Manage OpenWork feature releases with feature flags, switches that control access to new behavior. Register features before coding, release them by organization and deployment, prepare a global shutdown option, and remove temporary flags after rollout.

  • Registering a feature before implementation
  • Releasing a feature to selected organizations
  • Separating cloud and self-hosted availability
different-ai/openwork24.2KUpdated Oct 18, 2026

Connect OpenCode browser tools to a locally running OpenWork Electron app to inspect its UI, enter a task, and check the response. This skill supports exploration and debugging through CDP, Chrome's remote control protocol.

  • Connecting browser tools to a local Electron development app
  • Inspecting screen state during debugging
  • Entering a task in the composer and running it
different-ai/openwork24.2KUpdated Oct 18, 2026

Check added lines in a change for information identifying customers, prospects, partners, or outside individuals. Report locations and generic remediation without reproducing identities, and escalate cases where the information is already public.

  • Checking changes for customer and partner identities
  • Reviewing documents and test data for identifying details
  • Reporting disclosure locations without repeating identities
different-ai/openwork24.2KUpdated Oct 18, 2026

Connects supported AI clients, including Claude Code and Codex, to OpenWork through MCP, a protocol for accessing external tools. It guides account sign-in and verifies that tools for finding and running organization capabilities are available.

  • Connecting an AI client to OpenWork organization resources
  • Signing in and verifying available MCP tools
  • Switching organizations or troubleshooting authentication
different-ai/openwork24.2KUpdated Oct 18, 2026

Review an outside contributor’s pull request before running its code. Identify concealed behavior, obfuscated code, risky dependencies, and build hooks, with file locations and specific checks for maintainers to follow up.

  • Screening an outside contributor’s pull request before execution
  • Checking encoded code and unexplained network calls
  • Reviewing dependency changes and installation scripts
different-ai/openwork24.2KUpdated Oct 18, 2026

create-plugin

FreeSummary

Create an OpenCode plugin for OpenWork with custom tools and hooks, which run code at specific events. The skill builds the plugin file and adds its entry to the project configuration.

  • Adding custom tools to OpenWork
  • Creating a plugin to save and list notes
  • Running custom code before or after tool execution
different-ai/openwork24.2KUpdated Oct 18, 2026

See all skills by different-ai

Report a problem with this skill