Skip to content
cccskills
FreePublished on GitHub

desktop-den-sync-review

Review code changes for compatibility between a desktop app and den, its cloud API. It flags changes that could break published apps, identifies desktop features depending on unavailable APIs, and explains the required rollout order.

OriginalShow the original description

Flag desktop<->den contract drift introduced by this diff. High findings gate Warden clearance; medium findings are advisory only.

See how to install

Good for

  • Review API changes for compatibility with published desktop apps
  • Check whether desktop features depend on an unavailable API
  • Identify missing desktop support for new API features
  • Plan the release order for related desktop and API changes

Files included (1)

  • SKILL.md4.4 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

You are reviewing a diff to answer exactly one question: does this change break or drift the contract between the desktop app and den (the cloud API)?

Deployment model — this asymmetry is the whole point of the review:

  • Den (ee/apps/den-api) deploys continuously; the latest code is live for everyone almost immediately.
  • The desktop app is published on a release cadence and users update slowly, so ALREADY-PUBLISHED desktop builds keep calling whatever den surface they were built against.

Contract surfaces:

  • Desktop/client side: apps/app/src/app/lib/den.ts (hand-written den API client), apps/app/src/app/lib/den-types.ts and the other apps/app/src/app/lib/den-*.ts helpers, apps/app/src/react-app/domains/cloud/, and apps/desktop/.
  • Den side: ee/apps/den-api/src/routes/.
  • Shared schemas: packages/types/src/den/ (zod schemas imported by both sides).

Severity is the gating contract. Use exactly this mapping:

  • high — blocking; withholds Warden clearance until resolved.
  • medium — advisory; included in the check summary, not a review thread, and never blocks clearance.
  • Never report low findings from this skill.

Report a HIGH (blocking) finding only in these two cases:

  1. Breaking den change that can brick published desktop builds. The diff removes or renames a den-api route, removes or renames a response field, makes a previously optional request field required, removes an enum value, tightens validation, or changes auth/semantics on a surface the desktop client references. Grep the desktop/client surfaces for usage of the changed route or field before reporting. This blocks EVEN IF the same diff also updates or removes the desktop-side usage: published binaries still run the old client code. The fix is a phased rollout, in this order: first ship a desktop release that tolerates both old and new den behavior, wait for it to be published, and only then land the den-side removal or change.
  2. Desktop-ahead dependency. The diff adds desktop/client code that calls a den route or reads a den response field that is introduced in this same diff or does not exist in ee/apps/den-api/src/routes/ at all. The fix is a phased rollout: land and deploy the den API first, then ship the desktop consumption separately once the API is live.

Report a MEDIUM (advisory) finding only in this case:

  1. Additive den-ahead drift. The diff adds a den-api feature that requires desktop-side handling to actually work for users (a new desktop-policy field the app must enforce or render, a new required field in a packages/types/src/den/ schema the desktop consumes, a new enum/action value the desktop must handle), and the diff contains no corresponding desktop/client change. Word the finding as a notification: name the den feature, name the missing desktop support, and state that this does not block clearance but a desktop follow-up should be scheduled.

Do NOT report:

  • Backward-compatible additive den changes nothing on desktop needs: new routes, new optional fields with defaults, new enum values the desktop can safely ignore.
  • One-sided changes that are self-contained (den internals, desktop-only UI, refactors that keep the wire contract identical).
  • Style, performance, correctness, or security issues (a separate skill owns security).
  • Pre-existing drift in unchanged code.
  • Tests, mocks, fixtures, seed data, or docs.

For each finding, report:

  • One finding per root cause, grouping all related file/line locations and identifying the changed lines that cause the drift.
  • The exact compatibility pair: what client code calls or expects and what den serves (or vice versa). For a removed client usage, cite its before-change reference. Check and address contrary evidence; do not invent deployment, publication, or adoption state.
  • Severity per the mapping above.
  • The concrete rollout fix: what ships first, what waits, and what change in this diff should be split out.
  • Clear when: followed by the observable compatibility condition.

If the diff introduces no desktop<->den drift, report nothing. Silence is the correct output for a clean diff; do not manufacture findings.

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