runwork 0.15.0 → 0.15.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +19272 -116
- package/package.json +4 -4
- package/dist/__tests__/curl-parser.test.d.ts +0 -1
- package/dist/__tests__/curl-parser.test.js +0 -250
- package/dist/__tests__/install-scripts.test.d.ts +0 -1
- package/dist/__tests__/install-scripts.test.js +0 -280
- package/dist/__tests__/types-manager.test.d.ts +0 -1
- package/dist/__tests__/types-manager.test.js +0 -89
- package/dist/agents/__tests__/chatgpt-registry.test.d.ts +0 -1
- package/dist/agents/__tests__/chatgpt-registry.test.js +0 -61
- package/dist/agents/__tests__/claude-code-managed-block.test.d.ts +0 -1
- package/dist/agents/__tests__/claude-code-managed-block.test.js +0 -97
- package/dist/agents/__tests__/claude-code-plugin.test.d.ts +0 -1
- package/dist/agents/__tests__/claude-code-plugin.test.js +0 -47
- package/dist/agents/__tests__/claude-code-stats.test.d.ts +0 -1
- package/dist/agents/__tests__/claude-code-stats.test.js +0 -390
- package/dist/agents/__tests__/claude-desktop-memory.test.d.ts +0 -1
- package/dist/agents/__tests__/claude-desktop-memory.test.js +0 -154
- package/dist/agents/__tests__/claude-desktop-plugin-tree.test.d.ts +0 -1
- package/dist/agents/__tests__/claude-desktop-plugin-tree.test.js +0 -161
- package/dist/agents/__tests__/claude-desktop-plugin.test.d.ts +0 -1
- package/dist/agents/__tests__/claude-desktop-plugin.test.js +0 -117
- package/dist/agents/__tests__/claude-desktop-rpm.test.d.ts +0 -1
- package/dist/agents/__tests__/claude-desktop-rpm.test.js +0 -126
- package/dist/agents/__tests__/claude-desktop-stats.test.d.ts +0 -1
- package/dist/agents/__tests__/claude-desktop-stats.test.js +0 -280
- package/dist/agents/__tests__/codex-instructions.test.d.ts +0 -1
- package/dist/agents/__tests__/codex-instructions.test.js +0 -57
- package/dist/agents/__tests__/codex-minimum-permissions.test.d.ts +0 -1
- package/dist/agents/__tests__/codex-minimum-permissions.test.js +0 -82
- package/dist/agents/__tests__/codex-stats.test.d.ts +0 -1
- package/dist/agents/__tests__/codex-stats.test.js +0 -370
- package/dist/agents/__tests__/cursor-merge.test.d.ts +0 -1
- package/dist/agents/__tests__/cursor-merge.test.js +0 -66
- package/dist/agents/__tests__/cursor-stats.test.d.ts +0 -1
- package/dist/agents/__tests__/cursor-stats.test.js +0 -183
- package/dist/agents/__tests__/defaults-merge.test.d.ts +0 -1
- package/dist/agents/__tests__/defaults-merge.test.js +0 -268
- package/dist/agents/__tests__/detection.test.d.ts +0 -1
- package/dist/agents/__tests__/detection.test.js +0 -89
- package/dist/agents/__tests__/graceful-degradation.test.d.ts +0 -1
- package/dist/agents/__tests__/graceful-degradation.test.js +0 -129
- package/dist/agents/__tests__/instruction-hint.test.d.ts +0 -1
- package/dist/agents/__tests__/instruction-hint.test.js +0 -69
- package/dist/agents/__tests__/intro-skill.test.d.ts +0 -1
- package/dist/agents/__tests__/intro-skill.test.js +0 -193
- package/dist/agents/__tests__/schema-validation.test.d.ts +0 -1
- package/dist/agents/__tests__/schema-validation.test.js +0 -212
- package/dist/agents/__tests__/skill-slug.test.d.ts +0 -1
- package/dist/agents/__tests__/skill-slug.test.js +0 -77
- package/dist/agents/claude-code.d.ts +0 -53
- package/dist/agents/claude-code.js +0 -754
- package/dist/agents/claude-desktop-plugin-tree.d.ts +0 -59
- package/dist/agents/claude-desktop-plugin-tree.js +0 -143
- package/dist/agents/claude-desktop.d.ts +0 -47
- package/dist/agents/claude-desktop.js +0 -684
- package/dist/agents/cline.d.ts +0 -15
- package/dist/agents/cline.js +0 -130
- package/dist/agents/codex.d.ts +0 -44
- package/dist/agents/codex.js +0 -453
- package/dist/agents/conversation-skills.d.ts +0 -18
- package/dist/agents/conversation-skills.js +0 -229
- package/dist/agents/cursor.d.ts +0 -48
- package/dist/agents/cursor.js +0 -324
- package/dist/agents/default-config.d.ts +0 -30
- package/dist/agents/default-config.js +0 -67
- package/dist/agents/defaults-merge.d.ts +0 -72
- package/dist/agents/defaults-merge.js +0 -131
- package/dist/agents/detect.d.ts +0 -4
- package/dist/agents/detect.js +0 -67
- package/dist/agents/detection.d.ts +0 -18
- package/dist/agents/detection.js +0 -94
- package/dist/agents/gemini.d.ts +0 -15
- package/dist/agents/gemini.js +0 -122
- package/dist/agents/generic-adapter.d.ts +0 -25
- package/dist/agents/generic-adapter.js +0 -151
- package/dist/agents/intro-skill.d.ts +0 -45
- package/dist/agents/intro-skill.js +0 -447
- package/dist/agents/registry-data.d.ts +0 -192
- package/dist/agents/registry-data.js +0 -669
- package/dist/agents/registry.d.ts +0 -13
- package/dist/agents/registry.js +0 -36
- package/dist/agents/runtime-detection.d.ts +0 -82
- package/dist/agents/runtime-detection.js +0 -271
- package/dist/agents/session-start-hook.d.ts +0 -37
- package/dist/agents/session-start-hook.js +0 -159
- package/dist/agents/types.d.ts +0 -171
- package/dist/agents/types.js +0 -75
- package/dist/agents/utils/instruction-hint.d.ts +0 -21
- package/dist/agents/utils/instruction-hint.js +0 -108
- package/dist/agents/utils/json-config.d.ts +0 -19
- package/dist/agents/utils/json-config.js +0 -69
- package/dist/agents/utils/toml-config.d.ts +0 -8
- package/dist/agents/utils/toml-config.js +0 -27
- package/dist/agents/windsurf.d.ts +0 -14
- package/dist/agents/windsurf.js +0 -102
- package/dist/api/__tests__/client.test.d.ts +0 -1
- package/dist/api/__tests__/client.test.js +0 -272
- package/dist/api/client.d.ts +0 -326
- package/dist/api/client.js +0 -427
- package/dist/auth/__tests__/login-flow.test.d.ts +0 -1
- package/dist/auth/__tests__/login-flow.test.js +0 -101
- package/dist/auth/__tests__/store.test.d.ts +0 -1
- package/dist/auth/__tests__/store.test.js +0 -132
- package/dist/auth/login-flow.d.ts +0 -26
- package/dist/auth/login-flow.js +0 -137
- package/dist/auth/store.d.ts +0 -5
- package/dist/auth/store.js +0 -62
- package/dist/commands/__tests__/clone-args.test.d.ts +0 -1
- package/dist/commands/__tests__/clone-args.test.js +0 -51
- package/dist/commands/__tests__/clone-source-result.test.d.ts +0 -1
- package/dist/commands/__tests__/clone-source-result.test.js +0 -45
- package/dist/commands/__tests__/info-merge.test.d.ts +0 -1
- package/dist/commands/__tests__/info-merge.test.js +0 -55
- package/dist/commands/__tests__/mcp-entries.test.d.ts +0 -1
- package/dist/commands/__tests__/mcp-entries.test.js +0 -48
- package/dist/commands/__tests__/setup-persona.test.d.ts +0 -1
- package/dist/commands/__tests__/setup-persona.test.js +0 -31
- package/dist/commands/__tests__/setup.test.d.ts +0 -1
- package/dist/commands/__tests__/setup.test.js +0 -81
- package/dist/commands/__tests__/sync-redetect.test.d.ts +0 -1
- package/dist/commands/__tests__/sync-redetect.test.js +0 -96
- package/dist/commands/__tests__/sync-telemetry.test.d.ts +0 -1
- package/dist/commands/__tests__/sync-telemetry.test.js +0 -281
- package/dist/commands/__tests__/upgrade.test.d.ts +0 -1
- package/dist/commands/__tests__/upgrade.test.js +0 -157
- package/dist/commands/agents.d.ts +0 -2
- package/dist/commands/agents.js +0 -160
- package/dist/commands/api-keys.d.ts +0 -2
- package/dist/commands/api-keys.js +0 -95
- package/dist/commands/apps.d.ts +0 -2
- package/dist/commands/apps.js +0 -82
- package/dist/commands/build-plugin.d.ts +0 -2
- package/dist/commands/build-plugin.js +0 -135
- package/dist/commands/clone.d.ts +0 -60
- package/dist/commands/clone.js +0 -271
- package/dist/commands/components.d.ts +0 -2
- package/dist/commands/components.js +0 -43
- package/dist/commands/deploy.d.ts +0 -2
- package/dist/commands/deploy.js +0 -279
- package/dist/commands/dev.d.ts +0 -11
- package/dist/commands/dev.js +0 -1011
- package/dist/commands/doctor.d.ts +0 -2
- package/dist/commands/doctor.js +0 -230
- package/dist/commands/endpoints.d.ts +0 -2
- package/dist/commands/endpoints.js +0 -189
- package/dist/commands/entities.d.ts +0 -2
- package/dist/commands/entities.js +0 -198
- package/dist/commands/files.d.ts +0 -2
- package/dist/commands/files.js +0 -193
- package/dist/commands/inbox.d.ts +0 -11
- package/dist/commands/inbox.js +0 -60
- package/dist/commands/info.d.ts +0 -178
- package/dist/commands/info.js +0 -455
- package/dist/commands/init.d.ts +0 -21
- package/dist/commands/init.js +0 -185
- package/dist/commands/integrations.d.ts +0 -2
- package/dist/commands/integrations.js +0 -233
- package/dist/commands/login.d.ts +0 -2
- package/dist/commands/login.js +0 -44
- package/dist/commands/logout.d.ts +0 -2
- package/dist/commands/logout.js +0 -13
- package/dist/commands/logs.d.ts +0 -2
- package/dist/commands/logs.js +0 -232
- package/dist/commands/mcp-entries.d.ts +0 -13
- package/dist/commands/mcp-entries.js +0 -26
- package/dist/commands/mcp.d.ts +0 -2
- package/dist/commands/mcp.js +0 -245
- package/dist/commands/open.d.ts +0 -2
- package/dist/commands/open.js +0 -53
- package/dist/commands/resume.d.ts +0 -2
- package/dist/commands/resume.js +0 -289
- package/dist/commands/save-convo.d.ts +0 -8
- package/dist/commands/save-convo.js +0 -20
- package/dist/commands/schedules.d.ts +0 -2
- package/dist/commands/schedules.js +0 -221
- package/dist/commands/setup.d.ts +0 -27
- package/dist/commands/setup.js +0 -177
- package/dist/commands/share-convo.d.ts +0 -24
- package/dist/commands/share-convo.js +0 -167
- package/dist/commands/skills.d.ts +0 -2
- package/dist/commands/skills.js +0 -352
- package/dist/commands/sync-telemetry.d.ts +0 -33
- package/dist/commands/sync-telemetry.js +0 -186
- package/dist/commands/sync.d.ts +0 -37
- package/dist/commands/sync.js +0 -702
- package/dist/commands/uninstall.d.ts +0 -2
- package/dist/commands/uninstall.js +0 -145
- package/dist/commands/upgrade.d.ts +0 -14
- package/dist/commands/upgrade.js +0 -217
- package/dist/commands/validate.d.ts +0 -2
- package/dist/commands/validate.js +0 -89
- package/dist/commands/welcome.d.ts +0 -1
- package/dist/commands/welcome.js +0 -86
- package/dist/commands/workflows.d.ts +0 -2
- package/dist/commands/workflows.js +0 -187
- package/dist/deploy/__tests__/deploy-state.test.d.ts +0 -1
- package/dist/deploy/__tests__/deploy-state.test.js +0 -80
- package/dist/deploy/__tests__/deploy-status.test.d.ts +0 -1
- package/dist/deploy/__tests__/deploy-status.test.js +0 -41
- package/dist/deploy/__tests__/detach-args.test.d.ts +0 -1
- package/dist/deploy/__tests__/detach-args.test.js +0 -30
- package/dist/deploy/deploy-state.d.ts +0 -36
- package/dist/deploy/deploy-state.js +0 -63
- package/dist/deploy/deploy-status.d.ts +0 -21
- package/dist/deploy/deploy-status.js +0 -36
- package/dist/deploy/detach.d.ts +0 -32
- package/dist/deploy/detach.js +0 -71
- package/dist/dev/__tests__/attach.test.d.ts +0 -1
- package/dist/dev/__tests__/attach.test.js +0 -296
- package/dist/dev/__tests__/detach.test.d.ts +0 -1
- package/dist/dev/__tests__/detach.test.js +0 -404
- package/dist/dev/__tests__/preview-url-poller.test.d.ts +0 -1
- package/dist/dev/__tests__/preview-url-poller.test.js +0 -149
- package/dist/dev/__tests__/session.test.d.ts +0 -1
- package/dist/dev/__tests__/session.test.js +0 -446
- package/dist/dev/__tests__/startup-sync.test.d.ts +0 -1
- package/dist/dev/__tests__/startup-sync.test.js +0 -32
- package/dist/dev/__tests__/stop.test.d.ts +0 -1
- package/dist/dev/__tests__/stop.test.js +0 -172
- package/dist/dev/attach.d.ts +0 -120
- package/dist/dev/attach.js +0 -269
- package/dist/dev/detach.d.ts +0 -187
- package/dist/dev/detach.js +0 -292
- package/dist/dev/preview-url-poller.d.ts +0 -35
- package/dist/dev/preview-url-poller.js +0 -50
- package/dist/dev/session.d.ts +0 -175
- package/dist/dev/session.js +0 -258
- package/dist/dev/startup-sync.d.ts +0 -23
- package/dist/dev/startup-sync.js +0 -14
- package/dist/dev/stop.d.ts +0 -52
- package/dist/dev/stop.js +0 -101
- package/dist/devtools/registry-data.d.ts +0 -46
- package/dist/devtools/registry-data.js +0 -40
- package/dist/generated/bundled-types.d.ts +0 -1
- package/dist/generated/bundled-types.js +0 -46
- package/dist/generated/version.d.ts +0 -1
- package/dist/generated/version.js +0 -2
- package/dist/git/__tests__/auto-commit.test.d.ts +0 -1
- package/dist/git/__tests__/auto-commit.test.js +0 -431
- package/dist/git/__tests__/classify-sync-error.test.d.ts +0 -1
- package/dist/git/__tests__/classify-sync-error.test.js +0 -57
- package/dist/git/__tests__/credential-helper-e2e.test.d.ts +0 -21
- package/dist/git/__tests__/credential-helper-e2e.test.js +0 -195
- package/dist/git/__tests__/credentials.test.d.ts +0 -1
- package/dist/git/__tests__/credentials.test.js +0 -141
- package/dist/git/__tests__/deploy-guard.test.d.ts +0 -1
- package/dist/git/__tests__/deploy-guard.test.js +0 -61
- package/dist/git/__tests__/ensure-git-credential-helper.test.d.ts +0 -1
- package/dist/git/__tests__/ensure-git-credential-helper.test.js +0 -133
- package/dist/git/__tests__/ensure-runwork-remote.test.d.ts +0 -1
- package/dist/git/__tests__/ensure-runwork-remote.test.js +0 -109
- package/dist/git/__tests__/identity.test.d.ts +0 -1
- package/dist/git/__tests__/identity.test.js +0 -146
- package/dist/git/__tests__/manifest.test.d.ts +0 -1
- package/dist/git/__tests__/manifest.test.js +0 -446
- package/dist/git/__tests__/preflight-resolution.test.d.ts +0 -1
- package/dist/git/__tests__/preflight-resolution.test.js +0 -366
- package/dist/git/__tests__/preflight.test.d.ts +0 -1
- package/dist/git/__tests__/preflight.test.js +0 -36
- package/dist/git/__tests__/repo-config.test.d.ts +0 -1
- package/dist/git/__tests__/repo-config.test.js +0 -26
- package/dist/git/__tests__/sync.test.d.ts +0 -1
- package/dist/git/__tests__/sync.test.js +0 -405
- package/dist/git/auto-commit.d.ts +0 -35
- package/dist/git/auto-commit.js +0 -293
- package/dist/git/classify-sync-error.d.ts +0 -21
- package/dist/git/classify-sync-error.js +0 -111
- package/dist/git/credentials.d.ts +0 -75
- package/dist/git/credentials.js +0 -164
- package/dist/git/critical-files.d.ts +0 -20
- package/dist/git/critical-files.js +0 -68
- package/dist/git/deploy-guard.d.ts +0 -53
- package/dist/git/deploy-guard.js +0 -78
- package/dist/git/identity.d.ts +0 -44
- package/dist/git/identity.js +0 -133
- package/dist/git/preflight.d.ts +0 -57
- package/dist/git/preflight.js +0 -276
- package/dist/git/remote.d.ts +0 -37
- package/dist/git/remote.js +0 -75
- package/dist/git/repo-config.d.ts +0 -8
- package/dist/git/repo-config.js +0 -29
- package/dist/git/sync.d.ts +0 -15
- package/dist/git/sync.js +0 -159
- package/dist/health/__tests__/checks.test.d.ts +0 -1
- package/dist/health/__tests__/checks.test.js +0 -357
- package/dist/health/__tests__/cli-distribution-checks.test.d.ts +0 -1
- package/dist/health/__tests__/cli-distribution-checks.test.js +0 -196
- package/dist/health/__tests__/fix.test.d.ts +0 -1
- package/dist/health/__tests__/fix.test.js +0 -72
- package/dist/health/__tests__/runner-filter.test.d.ts +0 -1
- package/dist/health/__tests__/runner-filter.test.js +0 -61
- package/dist/health/checks.d.ts +0 -42
- package/dist/health/checks.js +0 -636
- package/dist/health/fix.d.ts +0 -22
- package/dist/health/fix.js +0 -62
- package/dist/health/runner.d.ts +0 -8
- package/dist/health/runner.js +0 -47
- package/dist/health/types.d.ts +0 -12
- package/dist/health/types.js +0 -1
- package/dist/index.d.ts +0 -1
- package/dist/logs/__tests__/tailer-format.test.d.ts +0 -1
- package/dist/logs/__tests__/tailer-format.test.js +0 -43
- package/dist/logs/tailer.d.ts +0 -17
- package/dist/logs/tailer.js +0 -217
- package/dist/sync/__tests__/change-detect.test.d.ts +0 -1
- package/dist/sync/__tests__/change-detect.test.js +0 -123
- package/dist/sync/__tests__/hash.test.d.ts +0 -1
- package/dist/sync/__tests__/hash.test.js +0 -18
- package/dist/sync/change-detect.d.ts +0 -19
- package/dist/sync/change-detect.js +0 -136
- package/dist/sync/conflict-ui.d.ts +0 -5
- package/dist/sync/conflict-ui.js +0 -78
- package/dist/sync/executor.d.ts +0 -23
- package/dist/sync/executor.js +0 -102
- package/dist/sync/hash.d.ts +0 -1
- package/dist/sync/hash.js +0 -4
- package/dist/sync/types.d.ts +0 -24
- package/dist/sync/types.js +0 -1
- package/dist/template/manifest.d.ts +0 -17
- package/dist/template/manifest.js +0 -145
- package/dist/tools/types.d.ts +0 -52
- package/dist/tools/types.js +0 -8
- package/dist/types-manager.d.ts +0 -1
- package/dist/types-manager.js +0 -35
- package/dist/types.d.ts +0 -349
- package/dist/types.js +0 -1
- package/dist/ui/__tests__/banner.test.d.ts +0 -1
- package/dist/ui/__tests__/banner.test.js +0 -98
- package/dist/ui/__tests__/colors.test.d.ts +0 -1
- package/dist/ui/__tests__/colors.test.js +0 -22
- package/dist/ui/__tests__/keyboard.test.d.ts +0 -1
- package/dist/ui/__tests__/keyboard.test.js +0 -34
- package/dist/ui/__tests__/status-line.test.d.ts +0 -1
- package/dist/ui/__tests__/status-line.test.js +0 -54
- package/dist/ui/banner.d.ts +0 -29
- package/dist/ui/banner.js +0 -153
- package/dist/ui/colors.d.ts +0 -4
- package/dist/ui/colors.js +0 -7
- package/dist/ui/keyboard.d.ts +0 -12
- package/dist/ui/keyboard.js +0 -61
- package/dist/ui/status-line.d.ts +0 -6
- package/dist/ui/status-line.js +0 -53
- package/dist/utils/__tests__/format-error.test.d.ts +0 -1
- package/dist/utils/__tests__/format-error.test.js +0 -43
- package/dist/utils/__tests__/help-json.test.d.ts +0 -1
- package/dist/utils/__tests__/help-json.test.js +0 -39
- package/dist/utils/__tests__/http.test.d.ts +0 -1
- package/dist/utils/__tests__/http.test.js +0 -381
- package/dist/utils/__tests__/ignore-matcher.test.d.ts +0 -1
- package/dist/utils/__tests__/ignore-matcher.test.js +0 -205
- package/dist/utils/__tests__/output.test.d.ts +0 -1
- package/dist/utils/__tests__/output.test.js +0 -38
- package/dist/utils/__tests__/prompt.test.d.ts +0 -1
- package/dist/utils/__tests__/prompt.test.js +0 -27
- package/dist/utils/__tests__/resolve.test.d.ts +0 -1
- package/dist/utils/__tests__/resolve.test.js +0 -95
- package/dist/utils/__tests__/sqlite.test.d.ts +0 -1
- package/dist/utils/__tests__/sqlite.test.js +0 -89
- package/dist/utils/agent-guidance.d.ts +0 -47
- package/dist/utils/agent-guidance.js +0 -128
- package/dist/utils/app-info.d.ts +0 -70
- package/dist/utils/app-info.js +0 -167
- package/dist/utils/curl-parser.d.ts +0 -12
- package/dist/utils/curl-parser.js +0 -162
- package/dist/utils/data-input.d.ts +0 -1
- package/dist/utils/data-input.js +0 -38
- package/dist/utils/format-error.d.ts +0 -10
- package/dist/utils/format-error.js +0 -38
- package/dist/utils/fs.d.ts +0 -5
- package/dist/utils/fs.js +0 -23
- package/dist/utils/help-json.d.ts +0 -70
- package/dist/utils/help-json.js +0 -88
- package/dist/utils/http.d.ts +0 -46
- package/dist/utils/http.js +0 -421
- package/dist/utils/ignore-matcher.d.ts +0 -47
- package/dist/utils/ignore-matcher.js +0 -132
- package/dist/utils/output.d.ts +0 -17
- package/dist/utils/output.js +0 -27
- package/dist/utils/prompt.d.ts +0 -5
- package/dist/utils/prompt.js +0 -42
- package/dist/utils/resolve.d.ts +0 -12
- package/dist/utils/resolve.js +0 -52
- package/dist/utils/setup-state.d.ts +0 -3
- package/dist/utils/setup-state.js +0 -19
- package/dist/utils/sqlite-adapter.d.ts +0 -48
- package/dist/utils/sqlite-adapter.js +0 -147
- package/dist/utils/sqlite.d.ts +0 -14
- package/dist/utils/sqlite.js +0 -14
- package/dist/utils/subprocess.d.ts +0 -19
- package/dist/utils/subprocess.js +0 -27
- package/dist/utils/which.d.ts +0 -14
- package/dist/utils/which.js +0 -47
- package/dist/utils/zip.d.ts +0 -7
- package/dist/utils/zip.js +0 -42
- package/dist/validate/__tests__/validate.test.d.ts +0 -1
- package/dist/validate/__tests__/validate.test.js +0 -42
- package/dist/validate/freshness.d.ts +0 -28
- package/dist/validate/freshness.js +0 -48
- package/dist/validate/preview.d.ts +0 -21
- package/dist/validate/preview.js +0 -39
- package/dist/workspace/resolve.d.ts +0 -19
- package/dist/workspace/resolve.js +0 -100
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import type { McpServerEntry, SkillFile } from './types.js';
|
|
2
|
-
export interface PluginMetadata {
|
|
3
|
-
pluginName: string;
|
|
4
|
-
pluginVersion: string;
|
|
5
|
-
description: string;
|
|
6
|
-
authorName: string;
|
|
7
|
-
}
|
|
8
|
-
export interface PluginTreeInput extends PluginMetadata {
|
|
9
|
-
skills: SkillFile[];
|
|
10
|
-
mcpServers: McpServerEntry[];
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Write <destDir>/.claude-plugin/plugin.json.
|
|
14
|
-
*/
|
|
15
|
-
export declare function writePluginMetadata(destDir: string, metadata: PluginMetadata): void;
|
|
16
|
-
/**
|
|
17
|
-
* Write <destDir>/.mcp.json with the { mcpServers: { ... } } wrapper
|
|
18
|
-
* Claude Desktop expects. Token from Authorization header is appended to
|
|
19
|
-
* the URL so the connector auto-authenticates without a manual OAuth click.
|
|
20
|
-
*/
|
|
21
|
-
export declare function writePluginMcpConfig(destDir: string, mcpServers: McpServerEntry[]): void;
|
|
22
|
-
/**
|
|
23
|
-
* Write <destDir>/skills/runwork-team-instructions/SKILL.md containing the
|
|
24
|
-
* workspace team instructions (plus any per-agent extra instructions that
|
|
25
|
-
* the caller has already merged in). Called from both the sync path and the
|
|
26
|
-
* plugin zip build path so both produce the same on-disk layout.
|
|
27
|
-
*/
|
|
28
|
-
export declare function writePluginTeamInstructions(destDir: string, instructions: string): void;
|
|
29
|
-
/**
|
|
30
|
-
* Write <destDir>/skills/<filename>/SKILL.md for each skill. Cleans up
|
|
31
|
-
* legacy directories that used display name with spaces (e.g. "Write Cold
|
|
32
|
-
* Email" instead of kebab-cased "write-cold-email").
|
|
33
|
-
*/
|
|
34
|
-
export declare function writePluginSkills(destDir: string, skills: SkillFile[]): void;
|
|
35
|
-
/**
|
|
36
|
-
* Write the SessionStart hook script + hooks.json into <destDir>.
|
|
37
|
-
*
|
|
38
|
-
* Layout:
|
|
39
|
-
* <destDir>/hooks/on-session-start.sh (executable bash script)
|
|
40
|
-
* <destDir>/hooks/hooks.json (Claude hooks manifest)
|
|
41
|
-
*
|
|
42
|
-
* When the Cowork plugin is installed and the user opens a session, this
|
|
43
|
-
* hook writes ~/.runwork/sessions/<sessionId>.json with the authoritative
|
|
44
|
-
* transcript path + metadata, used by `runwork share-convo` and
|
|
45
|
-
* `runwork resume` for high-fidelity capture / placement.
|
|
46
|
-
*/
|
|
47
|
-
export declare function writePluginSessionStartHook(destDir: string): void;
|
|
48
|
-
/**
|
|
49
|
-
* Convenience wrapper that writes the entire plugin tree in one shot.
|
|
50
|
-
* Used by the build-plugin command to materialise a zip-ready directory.
|
|
51
|
-
*
|
|
52
|
-
* Layout:
|
|
53
|
-
* <destDir>/.claude-plugin/plugin.json
|
|
54
|
-
* <destDir>/.mcp.json
|
|
55
|
-
* <destDir>/skills/<filename>/SKILL.md
|
|
56
|
-
* <destDir>/hooks/on-session-start.sh
|
|
57
|
-
* <destDir>/hooks/hooks.json
|
|
58
|
-
*/
|
|
59
|
-
export declare function writePluginTree(destDir: string, input: PluginTreeInput): void;
|
|
@@ -1,143 +0,0 @@
|
|
|
1
|
-
import { chmodSync, mkdirSync, rmSync, existsSync, writeFileSync } from 'fs';
|
|
2
|
-
import { join } from 'path';
|
|
3
|
-
import { appendTokenToUrl, buildSkillMd, RUNWORK_WORKSPACE_MCP_NAME } from './types.js';
|
|
4
|
-
import { SESSION_START_HOOK_SCRIPT } from './session-start-hook.js';
|
|
5
|
-
/**
|
|
6
|
-
* Write <destDir>/.claude-plugin/plugin.json.
|
|
7
|
-
*/
|
|
8
|
-
export function writePluginMetadata(destDir, metadata) {
|
|
9
|
-
const pluginJsonDir = join(destDir, '.claude-plugin');
|
|
10
|
-
mkdirSync(pluginJsonDir, { recursive: true });
|
|
11
|
-
writeFileSync(join(pluginJsonDir, 'plugin.json'), JSON.stringify({
|
|
12
|
-
name: metadata.pluginName,
|
|
13
|
-
version: metadata.pluginVersion,
|
|
14
|
-
description: metadata.description,
|
|
15
|
-
author: { name: metadata.authorName },
|
|
16
|
-
}, null, 2));
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Write <destDir>/.mcp.json with the { mcpServers: { ... } } wrapper
|
|
20
|
-
* Claude Desktop expects. Token from Authorization header is appended to
|
|
21
|
-
* the URL so the connector auto-authenticates without a manual OAuth click.
|
|
22
|
-
*/
|
|
23
|
-
export function writePluginMcpConfig(destDir, mcpServers) {
|
|
24
|
-
mkdirSync(destDir, { recursive: true });
|
|
25
|
-
const mcpEntries = {};
|
|
26
|
-
for (const server of mcpServers) {
|
|
27
|
-
if (server.name === RUNWORK_WORKSPACE_MCP_NAME) {
|
|
28
|
-
// Preserve the exact, known-working behavior for the Runwork connector: embed
|
|
29
|
-
// the workspace key in the URL, no headers field. Claude Desktop's native
|
|
30
|
-
// connector did not reliably honor request headers here, which is why the token
|
|
31
|
-
// lives in the URL — do NOT change this.
|
|
32
|
-
const token = server.headers?.Authorization?.replace(/^Bearer\s+/i, '');
|
|
33
|
-
mcpEntries[server.name] = {
|
|
34
|
-
type: 'http',
|
|
35
|
-
url: token ? appendTokenToUrl(server.url, token) : server.url,
|
|
36
|
-
...(server.description ? { description: server.description } : {}),
|
|
37
|
-
};
|
|
38
|
-
}
|
|
39
|
-
else {
|
|
40
|
-
// Third-party servers: forward the auth header map (same .mcp.json schema
|
|
41
|
-
// claude-code uses). Their secrets must NEVER be placed in the URL.
|
|
42
|
-
mcpEntries[server.name] = {
|
|
43
|
-
type: 'http',
|
|
44
|
-
url: server.url,
|
|
45
|
-
...(server.headers ? { headers: server.headers } : {}),
|
|
46
|
-
...(server.description ? { description: server.description } : {}),
|
|
47
|
-
};
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
writeFileSync(join(destDir, '.mcp.json'), JSON.stringify({ mcpServers: mcpEntries }, null, 2));
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Write <destDir>/skills/runwork-team-instructions/SKILL.md containing the
|
|
54
|
-
* workspace team instructions (plus any per-agent extra instructions that
|
|
55
|
-
* the caller has already merged in). Called from both the sync path and the
|
|
56
|
-
* plugin zip build path so both produce the same on-disk layout.
|
|
57
|
-
*/
|
|
58
|
-
export function writePluginTeamInstructions(destDir, instructions) {
|
|
59
|
-
const skillDir = join(destDir, 'skills', 'runwork-team-instructions');
|
|
60
|
-
mkdirSync(skillDir, { recursive: true });
|
|
61
|
-
const skillContent = `---\nname: runwork-team-instructions\ndescription: Team instructions from your Runwork workspace. Always follow these guidelines.\n---\n\n${instructions}`;
|
|
62
|
-
writeFileSync(join(skillDir, 'SKILL.md'), skillContent);
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* Write <destDir>/skills/<filename>/SKILL.md for each skill. Cleans up
|
|
66
|
-
* legacy directories that used display name with spaces (e.g. "Write Cold
|
|
67
|
-
* Email" instead of kebab-cased "write-cold-email").
|
|
68
|
-
*/
|
|
69
|
-
export function writePluginSkills(destDir, skills) {
|
|
70
|
-
const skillsRoot = join(destDir, 'skills');
|
|
71
|
-
mkdirSync(skillsRoot, { recursive: true });
|
|
72
|
-
for (const skill of skills) {
|
|
73
|
-
if (skill.name !== skill.filename) {
|
|
74
|
-
const legacyDir = join(skillsRoot, skill.name);
|
|
75
|
-
if (existsSync(legacyDir)) {
|
|
76
|
-
try {
|
|
77
|
-
rmSync(legacyDir, { recursive: true, force: true });
|
|
78
|
-
}
|
|
79
|
-
catch {
|
|
80
|
-
/* best-effort */
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
const skillDir = join(skillsRoot, skill.filename);
|
|
85
|
-
mkdirSync(skillDir, { recursive: true });
|
|
86
|
-
writeFileSync(join(skillDir, 'SKILL.md'), buildSkillMd(skill));
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
/**
|
|
90
|
-
* Write the SessionStart hook script + hooks.json into <destDir>.
|
|
91
|
-
*
|
|
92
|
-
* Layout:
|
|
93
|
-
* <destDir>/hooks/on-session-start.sh (executable bash script)
|
|
94
|
-
* <destDir>/hooks/hooks.json (Claude hooks manifest)
|
|
95
|
-
*
|
|
96
|
-
* When the Cowork plugin is installed and the user opens a session, this
|
|
97
|
-
* hook writes ~/.runwork/sessions/<sessionId>.json with the authoritative
|
|
98
|
-
* transcript path + metadata, used by `runwork share-convo` and
|
|
99
|
-
* `runwork resume` for high-fidelity capture / placement.
|
|
100
|
-
*/
|
|
101
|
-
export function writePluginSessionStartHook(destDir) {
|
|
102
|
-
const hooksDir = join(destDir, 'hooks');
|
|
103
|
-
mkdirSync(hooksDir, { recursive: true });
|
|
104
|
-
const scriptPath = join(hooksDir, 'on-session-start.sh');
|
|
105
|
-
writeFileSync(scriptPath, SESSION_START_HOOK_SCRIPT);
|
|
106
|
-
try {
|
|
107
|
-
chmodSync(scriptPath, 0o755);
|
|
108
|
-
}
|
|
109
|
-
catch {
|
|
110
|
-
// chmod may fail on Windows; the script still ships and works wherever
|
|
111
|
-
// bash can execute it.
|
|
112
|
-
}
|
|
113
|
-
const hooksManifest = {
|
|
114
|
-
SessionStart: [
|
|
115
|
-
{ command: '${CLAUDE_PLUGIN_ROOT}/hooks/on-session-start.sh' },
|
|
116
|
-
],
|
|
117
|
-
};
|
|
118
|
-
writeFileSync(join(hooksDir, 'hooks.json'), JSON.stringify(hooksManifest, null, 2));
|
|
119
|
-
console.log(` [Claude Desktop (Cowork)] Bundled SessionStart hook -> ${scriptPath}`);
|
|
120
|
-
}
|
|
121
|
-
/**
|
|
122
|
-
* Convenience wrapper that writes the entire plugin tree in one shot.
|
|
123
|
-
* Used by the build-plugin command to materialise a zip-ready directory.
|
|
124
|
-
*
|
|
125
|
-
* Layout:
|
|
126
|
-
* <destDir>/.claude-plugin/plugin.json
|
|
127
|
-
* <destDir>/.mcp.json
|
|
128
|
-
* <destDir>/skills/<filename>/SKILL.md
|
|
129
|
-
* <destDir>/hooks/on-session-start.sh
|
|
130
|
-
* <destDir>/hooks/hooks.json
|
|
131
|
-
*/
|
|
132
|
-
export function writePluginTree(destDir, input) {
|
|
133
|
-
mkdirSync(destDir, { recursive: true });
|
|
134
|
-
writePluginMetadata(destDir, {
|
|
135
|
-
pluginName: input.pluginName,
|
|
136
|
-
pluginVersion: input.pluginVersion,
|
|
137
|
-
description: input.description,
|
|
138
|
-
authorName: input.authorName,
|
|
139
|
-
});
|
|
140
|
-
writePluginMcpConfig(destDir, input.mcpServers);
|
|
141
|
-
writePluginSkills(destDir, input.skills);
|
|
142
|
-
writePluginSessionStartHook(destDir);
|
|
143
|
-
}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import type { AgentAdapter, AgentConfigOverride, AgentUsageStats, CleanupManifest, McpServerEntry, SkillFile, SkillUsageEntry } from './types.js';
|
|
2
|
-
/**
|
|
3
|
-
* Collect every `<session>/<org>/memory/CLAUDE.md` path under the Cowork
|
|
4
|
-
* base directory. Claude Desktop loads this file on every conversation in
|
|
5
|
-
* the matching session/org — writing here gets Runwork instructions applied
|
|
6
|
-
* foundationally, without relying on the agent invoking a skill. We target
|
|
7
|
-
* every org we find because users may flip between sessions or orgs.
|
|
8
|
-
*/
|
|
9
|
-
export declare function getCoworkMemoryClaudeMdPaths(): string[];
|
|
10
|
-
export interface RpmPluginLocation {
|
|
11
|
-
/** Full path to the rpm plugin directory, e.g. `<org>/rpm/plugin_01YBqw...` */
|
|
12
|
-
pluginPath: string;
|
|
13
|
-
/** The org-level directory that contains `rpm/` */
|
|
14
|
-
orgDir: string;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Look for a plugin named `pluginName` in any `rpm/manifest.json`. These
|
|
18
|
-
* entries are created by Claude Desktop when the user uploads a plugin zip
|
|
19
|
-
* through Customize > Create plugin > Upload plugin. If found, sync should
|
|
20
|
-
* update the plugin content files inside the rpm plugin directory instead
|
|
21
|
-
* of writing to the legacy `cowork_plugins/` layout.
|
|
22
|
-
*
|
|
23
|
-
* We never modify `rpm/manifest.json` itself — Claude Desktop owns that
|
|
24
|
-
* registry and assigns the plugin id we read from it here.
|
|
25
|
-
*/
|
|
26
|
-
export declare function findRpmPluginByName(pluginName: string): RpmPluginLocation | null;
|
|
27
|
-
export declare class ClaudeDesktopAdapter implements AgentAdapter {
|
|
28
|
-
name: string;
|
|
29
|
-
slug: string;
|
|
30
|
-
detect(): Promise<boolean>;
|
|
31
|
-
supportsMcpScope(scope: 'project' | 'user'): boolean;
|
|
32
|
-
supportsSkills(): boolean;
|
|
33
|
-
writeMcpServers(servers: McpServerEntry[], _scope: 'project' | 'user'): Promise<void>;
|
|
34
|
-
writeSkills(skills: SkillFile[], _scope: 'project' | 'user'): Promise<void>;
|
|
35
|
-
writeInstructionHint(hint: string, _scope: 'project' | 'user'): Promise<void>;
|
|
36
|
-
buildPluginZip(skills: SkillFile[], mcpServers: McpServerEntry[], teamInstructions: string | null, outputPath: string): Promise<void>;
|
|
37
|
-
writeTeamInstructions(instructions: string, _scope: 'project' | 'user'): Promise<void>;
|
|
38
|
-
writeAgentConfig(config: AgentConfigOverride, _scope: 'project' | 'user'): Promise<void>;
|
|
39
|
-
cleanup(_scope: 'project' | 'user', _manifest?: CleanupManifest): Promise<void>;
|
|
40
|
-
readUsageStats(lastSyncAt: string | null): Promise<AgentUsageStats | null>;
|
|
41
|
-
readVersion(): Promise<string | null>;
|
|
42
|
-
readSkillUsage(lastSyncAt: string | null): Promise<SkillUsageEntry[] | null>;
|
|
43
|
-
/**
|
|
44
|
-
* Walk the org/user/session directory tree and invoke callback for each session JSON.
|
|
45
|
-
*/
|
|
46
|
-
private walkSessionDirs;
|
|
47
|
-
}
|