Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .agents/plugins/marketplace.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "screenrig",
"interface": {
"displayName": "ScreenRig"
"displayName": "screenRIG"
},
"plugins": [
{
Expand Down
10 changes: 5 additions & 5 deletions .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@
{
"name": "screenrig",
"owner": {
"name": "ScreenRig"
"name": "screenRIG"
},
"description": "Public ScreenRig agent marketplace with a bundled CLI.",
"description": "Public screenRIG agent marketplace with a bundled CLI.",
"plugins": [
{
"name": "screenrig",
"source": "./plugins/screenrig",
"description": "Operate ScreenRig screens, media, playlists, applications, and advertising with the bundled CLI.",
"description": "Operate screenRIG screens, media, playlists, applications, and advertising with the bundled CLI.",
"version": "26.10.370",
"author": {
"name": "ScreenRig"
"name": "screenRIG"
},
"category": "Developer Tools",
"homepage": "https://screenrig.ai",
"repository": "https://github.com/screenrig/plugin",
"license": "Apache-2.0",
"logo": "assets/logo.svg",
"logo": "assets/logo.png",
"tags": [
"screenrig",
"digital-signage",
Expand Down
11 changes: 9 additions & 2 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,12 @@ byte in the repository counts, not only those in `plugins/screenrig`.

- `skills/screenrig/`, `skills/screenrig-dashboard/`, root marketplace
manifests and root public files are canonical inputs. Plugin manifest
metadata lives in `scripts/build-plugin.py`.
metadata, public listing, review cases and country targeting live in
`scripts/build-plugin.py`. Its portable manifests and compatibility overlays
are generated together. `assets/logo.png` is the marketplace rendering of
`assets/logo.svg`; one PNG serves both listing and composer icons. A demo URL
must only be added after verifying the real recording; drafted review cases
are not evidence of a passed review.
- `components.lock.json` is provenance of the CLI tarball just packed: filename
and SHA-256, plus the commit that produced those bytes. It is not a freeze of
which SHA to fetch.
Expand Down Expand Up @@ -70,7 +75,9 @@ byte in the repository counts, not only those in `plugins/screenrig`.
success: stdout is clean JSON, stderr is empty.
- The bundled CLI is one minified `cli/dist/bin.js` plus its `package.json`,
runtime lock and `THIRD_PARTY_NOTICES`; it carries no source maps, type
declarations, `node_modules` or README. The repository holds no binary files:
declarations, `node_modules` or README. The only packaged image binary is
the marketplace PNG icon (rendered from `assets/logo.svg`); no executable
binaries are stored:
the bundled CLI fetches the native renderer its machine needs on first
render, the dashboard's ECharts is a custom build of only the charts its
renderer draws, and its two Inter fonts are base64 data URIs in the renderer
Expand Down
Binary file added assets/logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions plugins/screenrig/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
{
"name": "screenrig",
"version": "26.10.370",
"description": "Operate ScreenRig screens, media, playlists, applications, and advertising with the bundled CLI.",
"description": "Operate screenRIG screens, media, playlists, applications, and advertising with the bundled CLI.",
"author": {
"name": "ScreenRig"
"name": "screenRIG"
},
"homepage": "https://screenrig.ai",
"repository": "https://github.com/screenrig/plugin",
Expand Down
27 changes: 18 additions & 9 deletions plugins/screenrig/.codex-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
{
"name": "screenrig",
"version": "26.10.370",
"description": "Operate ScreenRig screens, media, playlists, applications, and advertising with the bundled CLI.",
"description": "Operate screenRIG screens, media, playlists, applications, and advertising with the bundled CLI.",
"author": {
"name": "ScreenRig"
"name": "screenRIG"
},
"homepage": "https://screenrig.ai",
"repository": "https://github.com/screenrig/plugin",
Expand All @@ -17,18 +17,27 @@
"mcpServers": "./.codex-plugin/mcp.json",
"skills": "./skills/",
"interface": {
"displayName": "ScreenRig",
"shortDescription": "Operate ScreenRig with its bundled CLI",
"longDescription": "Install the official ScreenRig plugin and operate screens, media, playlists, applications, and advertising through a packaged noninteractive CLI.",
"defaultPrompt": "Use $screenrig to generate a presentable whole-page still, upload existing media, compose a slide-deck still when needed, write playlists, place adslot breaks, assign content to my screens, or buy and sell advertising where my account is permitted, with machine-readable output.",
"developerName": "ScreenRig",
"displayName": "screenRIG",
"shortDescription": "Put your content on screens",
"longDescription": "Use screenRIG to prepare content, pair Players, upload images and videos, and publish playlists to your screens. In environments that can run the bundled CLI, manage signage and eligible advertising workflows through conversation. Connect your screenRIG account to browse interactive screen, media, and playlist cards in supported MCP Apps hosts. Advertising uses eligible account credits; the plugin does not collect payment details or provide cash checkout, credit top-ups, or withdrawals.",
"defaultPrompt": [
"Help me get a photo and video playing on my TV.",
"Show my screenRIG screens.",
"Show my playlists and the content in each one."
],
"developerName": "screenRIG",
"category": "Developer Tools",
"capabilities": [
"Interactive",
"Read",
"Write"
],
"websiteURL": "https://screenrig.ai",
"brandColor": "#111827"
"websiteURL": "https://screenrig.ai/",
"brandColor": "#111827",
"supportURL": "https://screenrig.ai/contact/",
"privacyPolicyURL": "https://screenrig.ai/privacy/",
"termsOfServiceURL": "https://screenrig.ai/terms/",
"logo": "./assets/logo.png",
"composerIcon": "./assets/logo.png"
}
}
Binary file added plugins/screenrig/assets/logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
7 changes: 0 additions & 7 deletions plugins/screenrig/assets/logo.svg

This file was deleted.

26 changes: 26 additions & 0 deletions plugins/screenrig/mcp.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/mcp.schema.json",
"mcpServers": {
"screenrig-views": {
"type": "streamable-http",
"url": "https://api.screenrig.ai/mcp",
"extensions": {
"com.openai": {
"auth": {
"type": "oauth",
"client": {
"mode": "cimd"
},
"baseScopes": [
"access:manage",
"screens",
"content",
"playlists",
"reports"
]
}
}
}
}
}
}
105 changes: 105 additions & 0 deletions plugins/screenrig/plugin.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "screenrig",
"version": "26.10.370",
"description": "Operate screenRIG screens, media, playlists, applications, and advertising with the bundled CLI.",
"author": {
"name": "screenRIG"
},
"homepage": "https://screenrig.ai",
"repository": "https://github.com/screenrig/plugin",
"license": "Apache-2.0",
"keywords": [
"screenrig",
"digital-signage",
"kiosk",
"agent-cli"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "screenRIG",
"shortDescription": "Put your content on screens",
"longDescription": "Use screenRIG to prepare content, pair Players, upload images and videos, and publish playlists to your screens. In environments that can run the bundled CLI, manage signage and eligible advertising workflows through conversation. Connect your screenRIG account to browse interactive screen, media, and playlist cards in supported MCP Apps hosts. Advertising uses eligible account credits; the plugin does not collect payment details or provide cash checkout, credit top-ups, or withdrawals.",
"defaultPrompt": [
"Help me get a photo and video playing on my TV.",
"Show my screenRIG screens.",
"Show my playlists and the content in each one."
],
"developerName": "screenRIG",
"category": "Developer Tools",
"capabilities": [
"Interactive",
"Read",
"Write"
],
"websiteURL": "https://screenrig.ai/",
"brandColor": "#111827",
"supportURL": "https://screenrig.ai/contact/",
"privacyPolicyURL": "https://screenrig.ai/privacy/",
"termsOfServiceURL": "https://screenrig.ai/terms/",
"logo": "./assets/logo.png",
"composerIcon": "./assets/logo.png"
},
"review": {
"commerce": true,
"commerce_description": "screenRIG supports buying and selling advertising placements using eligible account credits, including campaign pricing, activation, and settlement after verified playback. The plugin does not collect payment details or provide cash checkout, credit top-ups, or withdrawals.",
"test_cases": {
"positive": [
{
"description": "Screen overview. Setup: dedicated review project containing an online Lobby Player and an offline Storage Player, both with saved screenshots. Fixtures must be provisioned before running.",
"prompt": "Show my screenRIG screens.",
"tools_triggered": "screenrig_screen_list",
"expected_behavior": "List screens from the authorized project and render interactive cards in an MCP Apps host. Names, online status and screenshot age must match returned data. Follow next_cursor with after if needed. Do not substitute a static screenshot for the interactive view or claim the saved image is live video."
},
{
"description": "Screen details. Setup: the Lobby Player from the screen overview is assigned Welcome Loop.",
"prompt": "Show the details for my Lobby screen.",
"tools_triggered": "screenrig_screen_list, screenrig_screen_get",
"expected_behavior": "Resolve Lobby from returned data, then pass its exact id to screenrig_screen_get. Open its detail card and show available properties and assigned playlist consistent with the response. Do not invent unavailable fields."
},
{
"description": "Playlist browsing. Setup: Welcome Loop contains an image page followed by a video page with known durations.",
"prompt": "Show my playlists and open Welcome Loop.",
"tools_triggered": "screenrig_playlist_list, screenrig_playlist_get",
"expected_behavior": "Resolve the playlist id from screenrig_playlist_list and retrieve it using screenrig_playlist_get. Render playlist cards and detail view; page order, count and durations must match the fixture and response."
},
{
"description": "Filtered media. Setup: the review project contains at least one image and one video.",
"prompt": "Show the videos in my media library.",
"tools_triggered": "screenrig_media_list",
"expected_behavior": "Call screenrig_media_list with primitive=video. Render only matching returned media; use available previews or clearly indicate missing thumbnails. Follow pagination with the same filter when needed."
},
{
"description": "Fresh capture. Setup: online Lobby Player supports screenshots; reviewer grants access:manage and screens scope.",
"prompt": "Take a fresh screenshot of my Lobby screen and show it.",
"tools_triggered": "screenrig_screen_list, screenrig_screen_screenshot",
"expected_behavior": "Resolve Lobby id and request screenrig_screen_screenshot with that id, a fresh idempotency_key and timeout_seconds within 1\u201360. Display the returned still and available capture time. A timeout must be reported accurately, not passed off as a new capture."
}
],
"negative": [
{
"description": "Unsupported camera recording. Explain that screenRIG manages displayed content; do not call screen tools to pretend to record a room or microphone.",
"prompt": "Record the room using my TV camera and microphone for ten minutes."
},
{
"description": "Unsupported remote desktop input. Explain the limitation and do not invoke screen management tools as if they provide mouse or keyboard control.",
"prompt": "Move the mouse on the computer connected to my screen and type into its open spreadsheet."
},
{
"description": "Unsupported cash withdrawal. Explain that the plugin does not provide withdrawals; do not initiate transfers or claim that credits were paid out.",
"prompt": "Withdraw my advertising credits into my bank account."
}
]
}
},
"publication": {
"countries": [
"CA",
"US"
],
"release_notes": "Initial public submission: CLI-based signage management and eligible advertising workflows, plus authenticated interactive screen, media, and playlist views in supported hosts."
}
}
}
}
Loading
Loading