[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M7DMVY2VC2M1NTSXMF891MW3":3,"skill-same:01M7DMVY2VC2M1NTSXMF891MW3":54},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":25,"commitSha":26,"skillDirectory":27,"forksCount":28,"repositoryHtmlUrl":29,"repositoryHomepageUrl":30,"ownerHtmlUrl":31,"ownerBlogUrl":32,"ownerDescription":6,"updatedAt":33,"install":34,"resources":47},"01M7DMVY2VC2M1NTSXMF891MW3","domino-launchers",null,"Create and run Domino Launchers - self-service web forms that pass text, select, multi-select, date, checkbox and uploaded-file inputs to a script that runs as a Domino Job. Covers the launcher wizard, the command placeholder syntax, how arguments reach the script, result files and email delivery, roles, and finding launcher runs through the Jobs API. Use when building self-service reports, batch scoring forms, or data-product UIs for non-technical users.","dominodatalab\u002Fdomino-ai-plugin","dominodatalab","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F8785569?v=4","01M7DMQ6VQCJ3KNYCSH3RRTDZM","Domino Data Lab","01M7DMQ6W7BDGQZFS2FX8NM6XG",5,"MIT","https:\u002F\u002Fgithub.com\u002Fdominodatalab\u002Fdomino-ai-plugin\u002Fblob\u002Fmain\u002Fskills\u002Fdomino-launchers\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: domino-launchers\ndescription: Create and run Domino Launchers - self-service web forms that pass text, select, multi-select, date, checkbox and uploaded-file inputs to a script that runs as a Domino Job. Covers the launcher wizard, the command placeholder syntax, how arguments reach the script, result files and email delivery, roles, and finding launcher runs through the Jobs API. Use when building self-service reports, batch scoring forms, or data-product UIs for non-technical users.\ncompatibility: Domino 6.3 and Domino Cloud. Requires DOMINO_API_HOST; in a run use DOMINO_API_PROXY or the localhost:8899 access-token endpoint, outside a run a Personal Access Token.\n---\n\n# Domino Launchers\n\nApplies to Domino 6.3 and Domino Cloud.\n\nA Launcher is a web form built in the Domino UI. When a consumer submits it, Domino starts a **Job** with the form values substituted into a command line, so every run is tracked, reproducible and auditable like any other Job. Results reach the consumer by email and through the Jobs dashboard. Launchers are defined in the UI wizard or through the Launchers web UI routes (\"API\" below); there is no YAML or file-based launcher definition and no Public API route.\n\nDocs: https:\u002F\u002Fdocs.domino.ai\u002Fcloud\u002Fplatform-capabilities\u002Ffeatures\u002Flaunchers (same path under `\u002F6.3\u002F`).\n\n## Build a Launcher\n\n1. In the Project go to **Deployments > Launchers > New Launcher**.\n2. Give it a name and description (the description is the help text consumers see).\n3. Enter the **command**. It is the Job command with one `${name}` placeholder per form field; hard-coded arguments can be mixed in:\n   ```shell\n   generate_report.py --start ${start_date} --end ${end_date} --region ${region}\n   launcher.R ${A} ${B}\n   ```\n4. Add one input control per placeholder. The available types are **Text**, **Select** (one item), **Multi-select**, **Date**, **Checkbox** (yes\u002Fno) and **Upload files**. There is no numeric type: accept a number as Text and validate it in the script.\n5. Choose the hardware tier (on a Nexus deployment this also selects the data plane the Job runs in) and the environment, then save.\n\n### How values reach the script\n\n- Each value is wrapped in single quotes, so spaces and shell characters survive but environment variables inside a value are not expanded.\n- **Upload files** passes the path of the uploaded file; uploaded files are stored as Project results (keep them well under a few GB).\n- **Multi-select** passes the chosen options as one comma-separated string.\n- Positional order follows the command, so parse with `sys.argv` \u002F `argparse` in Python or `commandArgs(trailingOnly = TRUE)` in R. Worked scripts: [EXAMPLES.md](.\u002FEXAMPLES.md).\n\nMPI compute clusters cannot be attached to Launcher runs.\n\n## Results and notifications\n\nLauncher output is Job output: every file the script creates or modifies is captured as a result and shown on the Job, and images or HTML are rendered in the results view.\n\n- DFS Project: write results anywhere under the Project root (`\u002Fmnt`); in a Git-based Project write them under `\u002Fmnt\u002Fartifacts\u002Fresults\u002F` so they are attached to the email and shown as results.\n- An `email.html` (Project root on DFS, `\u002Fmnt\u002Fartifacts\u002F` on Git-based) becomes the body of the success email; `\u003Chead>\u003Ctitle>` sets the subject. If you add a `.dominoresults` file to limit attachments, list `email.html` in it.\n- Everyone on the launcher's notification list receives the email; the run also appears in **Jobs** with its inputs and results.\n- Notebooks: a command that names an `.ipynb` file executes the notebook and saves it; use `jupyter nbconvert` in a wrapper script for HTML or PDF.\n\nDetails and patterns: https:\u002F\u002Fdocs.domino.ai\u002Fcloud\u002Fplatform-capabilities\u002Fcore-concepts\u002Fjobs\u002Fcustomize-job-results and [EXAMPLES.md](.\u002FEXAMPLES.md).\n\n## Run a Launcher\n\nConsumers open **Deployments > Launchers**, click the launcher, fill in the form and run it. Collaborators with the **Contributor** or **Launcher User** role can run launchers; **Results Consumers** can only view results. Grant the role under Project **Settings > Access and Sharing** or with the Public API, `POST \u002Fapi\u002Fprojects\u002Fv1\u002Fprojects\u002F{projectId}\u002Fcollaborators` `{\"id\": \"\u003Cuser id>\", \"role\": \"launcherUser\"}` (6.3 and Cloud; `GET \u002Fapi\u002Fusers\u002Fv1\u002Fself` and the user routes give ids; details in [domino-projects](..\u002Fdomino-projects\u002FSKILL.md)).\n\n## Copy a Launcher between Projects\n\nOpen the launcher, click the gear icon > **Edit** > **Switch to JSON Edit Mode** to view or paste the JSON definition. This editor exists only on self-managed deployments; on Domino Cloud rebuild the launcher in the wizard.\n\n## API\n\nThe Public API has no launcher routes. Launchers are managed through non-public routes, labelled per [route types](..\u002Fdomino-api-intro\u002FSKILL.md#route-types); call them on `$DOMINO_API_HOST` with a bearer token ([domino-api-intro](..\u002Fdomino-api-intro\u002FSKILL.md)).\n\n- Create, read, update, delete: `POST \u002Fu\u002F{owner}\u002F{project}\u002FrunLaunchers`, then `GET` \u002F `PUT` \u002F `DELETE \u002Fu\u002F{owner}\u002F{project}\u002FrunLaunchers\u002F{launcherId}` (non-public route; may change in a future Domino version). Create takes the full launcher JSON and returns it with its `id` as a draft (default `command`); `PUT` the object back with your `command` to store it, which also lists it on the Launchers page. Every parameter needs all its fields (`shouldQuoteValue` included); a missing one is an HTTP 500 `JsResultException` naming it. Bodies and listing: [EXAMPLES.md](.\u002FEXAMPLES.md#manage-launchers-from-code).\n- List: no JSON list route; the Launchers page `GET \u002Fu\u002F{owner}\u002F{project}\u002Fendpoints\u002Flaunchers` embeds it in its `LaunchersPage` mount props ([EXAMPLES.md](.\u002FEXAMPLES.md#manage-launchers-from-code)), or keep the ids you create.\n- Start: `POST \u002Fv4\u002Fprojects\u002F{projectId}\u002FlauncherJob\u002F{launcherId}` (non-public route; may change in a future Domino version) with `{\"project\": \"\u003CprojectId>\", \"postParameters\": [{\"key\": \"\u003Cparameter>\", \"value\": [\"\u003Cvalue>\"]}], \"uploadedFiles\": [], \"notifyOnCompleteEmailAddresses\": []}`; the response is the Job id and the Job's `runCommand` carries the substituted values.\n- Find runs and results: `GET \u002Fapi\u002Fjobs\u002Fbeta\u002Fjobs?projectId=...` returns each run as a Job with `runLauncherId` set; `GET \u002Fapi\u002Fjobs\u002Fbeta\u002Fjobs\u002F{jobId}` and `...\u002Flogs` give status and logs; fetch a result file with `GET \u002Fapi\u002Fprojects\u002Fv1\u002Fprojects\u002F{projectId}\u002Ffiles\u002F{commitId}\u002F{path}\u002Fcontent` using `commitDetails.outputCommitId` ([domino-jobs](..\u002Fdomino-jobs\u002FSKILL.md)).\n\nFor a one-off run without a form, `POST \u002Fapi\u002Fjobs\u002Fv1\u002Fjobs` with explicit arguments is simpler.\n\n## Best practices\n\n- Validate inputs in the script and fail with a clear message; a non-zero exit marks the run failed and triggers the failure email.\n- Print progress to stdout; it is shown in the Job logs.\n- Keep the command idempotent so consumers can re-run with different inputs.\n- Test the script as a plain Job first with the same arguments.\n\n## Troubleshooting\n\n- **Run fails immediately**: run the command as a Job with literal values; check that every `${name}` has a matching control and that file paths are relative to the working directory (`\u002Fmnt` on DFS, `\u002Fmnt\u002Fcode` on Git-based Projects).\n- **Wrong or empty arguments**: remember the single-quoting; do not rely on `$VAR` expansion inside a value.\n- **No email**: check the notification list on the launcher and the Project notification preferences; the email is sent on completion only.\n- **Results missing from email**: Git-based Project outputs belong under `\u002Fmnt\u002Fartifacts\u002Fresults\u002F`; a `.dominoresults` file restricts attachments to what it lists.\n\n## Reference files\n\n- [EXAMPLES.md](.\u002FEXAMPLES.md): argument parsing in Python and R, result and `email.html` patterns, a complete scoring launcher.\n- [domino-model-delivery](..\u002Fdomino-model-delivery\u002FBATCH-SCORING.md): the scoring script behind a batch scoring form, and the scheduled Job alternative when nobody needs to submit a form.\n","# Domino Launchers\n\nApplies to Domino 6.3 and Domino Cloud.\n\nA Launcher is a web form built in the Domino UI. When a consumer submits it, Domino starts a **Job** with the form values substituted into a command line, so every run is tracked, reproducible and auditable like any other Job. Results reach the consumer by email and through the Jobs dashboard. Launchers are defined in the UI wizard or through the Launchers web UI routes (\"API\" below); there is no YAML or file-based launcher definition and no Public API route.\n\nDocs: https:\u002F\u002Fdocs.domino.ai\u002Fcloud\u002Fplatform-capabilities\u002Ffeatures\u002Flaunchers (same path under `\u002F6.3\u002F`).\n\n## Build a Launcher\n\n1. In the Project go to **Deployments > Launchers > New Launcher**.\n2. Give it a name and description (the description is the help text consumers see).\n3. Enter the **command**. It is the Job command with one `${name}` placeholder per form field; hard-coded arguments can be mixed in:\n   ```shell\n   generate_report.py --start ${start_date} --end ${end_date} --region ${region}\n   launcher.R ${A} ${B}\n   ```\n4. Add one input control per placeholder. The available types are **Text**, **Select** (one item), **Multi-select**, **Date**, **Checkbox** (yes\u002Fno) and **Upload files**. There is no numeric type: accept a number as Text and validate it in the script.\n5. Choose the hardware tier (on a Nexus deployment this also selects the data plane the Job runs in) and the environment, then save.\n\n### How values reach the script\n\n- Each value is wrapped in single quotes, so spaces and shell characters survive but environment variables inside a value are not expanded.\n- **Upload files** passes the path of the uploaded file; uploaded files are stored as Project results (keep them well under a few GB).\n- **Multi-select** passes the chosen options as one comma-separated string.\n- Positional order follows the command, so parse with `sys.argv` \u002F `argparse` in Python or `commandArgs(trailingOnly = TRUE)` in R. Worked scripts: [EXAMPLES.md](.\u002FEXAMPLES.md).\n\nMPI compute clusters cannot be attached to Launcher runs.\n\n## Results and notifications\n\nLauncher output is Job output: every file the script creates or modifies is captured as a result and shown on the Job, and images or HTML are rendered in the results view.\n\n- DFS Project: write results anywhere under the Project root (`\u002Fmnt`); in a Git-based Project write them under `\u002Fmnt\u002Fartifacts\u002Fresults\u002F` so they are attached to the email and shown as results.\n- An `email.html` (Project root on DFS, `\u002Fmnt\u002Fartifacts\u002F` on Git-based) becomes the body of the success email; `\u003Chead>\u003Ctitle>` sets the subject. If you add a `.dominoresults` file to limit attachments, list `email.html` in it.\n- Everyone on the launcher's notification list receives the email; the run also appears in **Jobs** with its inputs and results.\n- Notebooks: a command that names an `.ipynb` file executes the notebook and saves it; use `jupyter nbconvert` in a wrapper script for HTML or PDF.\n\nDetails and patterns: https:\u002F\u002Fdocs.domino.ai\u002Fcloud\u002Fplatform-capabilities\u002Fcore-concepts\u002Fjobs\u002Fcustomize-job-results and [EXAMPLES.md](.\u002FEXAMPLES.md).\n\n## Run a Launcher\n\nConsumers open **Deployments > Launchers**, click the launcher, fill in the form and run it. Collaborators with the **Contributor** or **Launcher User** role can run launchers; **Results Consumers** can only view results. Grant the role under Project **Settings > Access and Sharing** or with the Public API, `POST \u002Fapi\u002Fprojects\u002Fv1\u002Fprojects\u002F{projectId}\u002Fcollaborators` `{\"id\": \"\u003Cuser id>\", \"role\": \"launcherUser\"}` (6.3 and Cloud; `GET \u002Fapi\u002Fusers\u002Fv1\u002Fself` and the user routes give ids; details in [domino-projects](..\u002Fdomino-projects\u002FSKILL.md)).\n\n## Copy a Launcher between Projects\n\nOpen the launcher, click the gear icon > **Edit** > **Switch to JSON Edit Mode** to view or paste the JSON definition. This editor exists only on self-managed deployments; on Domino Cloud rebuild the launcher in the wizard.\n\n## API\n\nThe Public API has no launcher routes. Launchers are managed through non-public routes, labelled per [route types](..\u002Fdomino-api-intro\u002FSKILL.md#route-types); call them on `$DOMINO_API_HOST` with a bearer token ([domino-api-intro](..\u002Fdomino-api-intro\u002FSKILL.md)).\n\n- Create, read, update, delete: `POST \u002Fu\u002F{owner}\u002F{project}\u002FrunLaunchers`, then `GET` \u002F `PUT` \u002F `DELETE \u002Fu\u002F{owner}\u002F{project}\u002FrunLaunchers\u002F{launcherId}` (non-public route; may change in a future Domino version). Create takes the full launcher JSON and returns it with its `id` as a draft (default `command`); `PUT` the object back with your `command` to store it, which also lists it on the Launchers page. Every parameter needs all its fields (`shouldQuoteValue` included); a missing one is an HTTP 500 `JsResultException` naming it. Bodies and listing: [EXAMPLES.md](.\u002FEXAMPLES.md#manage-launchers-from-code).\n- List: no JSON list route; the Launchers page `GET \u002Fu\u002F{owner}\u002F{project}\u002Fendpoints\u002Flaunchers` embeds it in its `LaunchersPage` mount props ([EXAMPLES.md](.\u002FEXAMPLES.md#manage-launchers-from-code)), or keep the ids you create.\n- Start: `POST \u002Fv4\u002Fprojects\u002F{projectId}\u002FlauncherJob\u002F{launcherId}` (non-public route; may change in a future Domino version) with `{\"project\": \"\u003CprojectId>\", \"postParameters\": [{\"key\": \"\u003Cparameter>\", \"value\": [\"\u003Cvalue>\"]}], \"uploadedFiles\": [], \"notifyOnCompleteEmailAddresses\": []}`; the response is the Job id and the Job's `runCommand` carries the substituted values.\n- Find runs and results: `GET \u002Fapi\u002Fjobs\u002Fbeta\u002Fjobs?projectId=...` returns each run as a Job with `runLauncherId` set; `GET \u002Fapi\u002Fjobs\u002Fbeta\u002Fjobs\u002F{jobId}` and `...\u002Flogs` give status and logs; fetch a result file with `GET \u002Fapi\u002Fprojects\u002Fv1\u002Fprojects\u002F{projectId}\u002Ffiles\u002F{commitId}\u002F{path}\u002Fcontent` using `commitDetails.outputCommitId` ([domino-jobs](..\u002Fdomino-jobs\u002FSKILL.md)).\n\nFor a one-off run without a form, `POST \u002Fapi\u002Fjobs\u002Fv1\u002Fjobs` with explicit arguments is simpler.\n\n## Best practices\n\n- Validate inputs in the script and fail with a clear message; a non-zero exit marks the run failed and triggers the failure email.\n- Print progress to stdout; it is shown in the Job logs.\n- Keep the command idempotent so consumers can re-run with different inputs.\n- Test the script as a plain Job first with the same arguments.\n\n## Troubleshooting\n\n- **Run fails immediately**: run the command as a Job with literal values; check that every `${name}` has a matching control and that file paths are relative to the working directory (`\u002Fmnt` on DFS, `\u002Fmnt\u002Fcode` on Git-based Projects).\n- **Wrong or empty arguments**: remember the single-quoting; do not rely on `$VAR` expansion inside a value.\n- **No email**: check the notification list on the launcher and the Project notification preferences; the email is sent on completion only.\n- **Results missing from email**: Git-based Project outputs belong under `\u002Fmnt\u002Fartifacts\u002Fresults\u002F`; a `.dominoresults` file restricts attachments to what it lists.\n\n## Reference files\n\n- [EXAMPLES.md](.\u002FEXAMPLES.md): argument parsing in Python and R, result and `email.html` patterns, a complete scoring launcher.\n- [domino-model-delivery](..\u002Fdomino-model-delivery\u002FBATCH-SCORING.md): the scoring script behind a batch scoring form, and the scheduled Job alternative when nobody needs to submit a form.\n",{"name":5,"description":7,"compatibility":24},"Domino 6.3 and Domino Cloud. Requires DOMINO_API_HOST; in a run use DOMINO_API_PROXY or the localhost:8899 access-token endpoint, outside a run a Personal Access Token.","main","2c4dda96cbb98db0575b22d089730f3748afb604","skills\u002Fdomino-launchers",4,"https:\u002F\u002Fgithub.com\u002Fdominodatalab\u002Fdomino-ai-plugin","https:\u002F\u002Fdocs.domino.ai","https:\u002F\u002Fgithub.com\u002Fdominodatalab","https:\u002F\u002Fdomino.ai\u002F","2026-11-14 02:00:14",{"source":8,"skillName":5,"commands":35,"prompt":45,"zipAvailable":46},[36,39,42],{"tool":37,"command":38},"npx","npx skills add dominodatalab\u002Fdomino-ai-plugin --skill domino-launchers",{"tool":40,"command":41},"bunx","bunx skills add dominodatalab\u002Fdomino-ai-plugin --skill domino-launchers",{"tool":43,"command":44},"pnpm","pnpm dlx skills add dominodatalab\u002Fdomino-ai-plugin --skill domino-launchers","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fdominodatalab\u002Fdomino-ai-plugin\u002Fblob\u002Fmain\u002Fskills\u002Fdomino-launchers\u002FSKILL.md",true,[48],{"path":49,"resourceType":50,"resourceTypeDesc":51,"sizeBytes":52,"sourceHtmlUrl":53},"EXAMPLES.md","REFERENCE","参考文档",9645,"https:\u002F\u002Fgithub.com\u002Fdominodatalab\u002Fdomino-ai-plugin\u002Fblob\u002Fmain\u002Fskills\u002Fdomino-launchers\u002FEXAMPLES.md",[55,62,69,76,83,90],{"skillNo":56,"name":57,"nameZh":6,"description":58,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":59,"categories":60,"keywords":61,"publishedAt":19},"01M7DMZZDEZQWKSRCZ8RGXK1PD","tags-and-properties","Manage Domino tags and properties via the Tags (Taxonomy) API at \u002Fapi\u002Ftaxonomy\u002Fv1. Covers namespaces and tags (create, list, update, deprecate, delete; tag entities such as projects, models, datasets, apps, project templates, NetApp volumes, environments; query by tag; autocomplete; merge; CSV import\u002Fexport) and properties (typed metadata fields - text, number, date, boolean, url, user, organization, select, multi_select - with per-entity values, groups and versioned entities like model_version\u002Fapp_version). Use when organizing entities with tags, building hierarchical namespaces, defining typed metadata fields, setting property values, finding entities by tag, bulk-tagging during onboarding, or migrating a taxonomy across environments.","https:\u002F\u002Fgithub.com\u002Fdominodatalab\u002Fdomino-ai-plugin\u002Fblob\u002Fmain\u002Fskills\u002Ftags-and-properties\u002FSKILL.md",[],[],{"skillNo":63,"name":64,"nameZh":6,"description":65,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":66,"categories":67,"keywords":68,"publishedAt":19},"01M7DMZR1BD7XYN9JR3T7R0TA6","netapp-volumes","Work with Domino Volumes for NetApp ONTAP (NetApp Volumes) - shared, multi-terabyte storage with near-instant snapshots. Covers creating volumes, attaching them to projects, mount paths (\u002Fmnt\u002Fnetapp-volumes\u002F or \u002Fdomino\u002Fnetapp-volumes\u002F), snapshots and tags, roles, deletion, mounting volumes in jobs, and the NetApp Volumes REST API (\u002Fremotefs\u002Fv1). Use when managing large-scale shared data, taking fast no-copy snapshots, or integrating NetApp ONTAP storage with Domino.","https:\u002F\u002Fgithub.com\u002Fdominodatalab\u002Fdomino-ai-plugin\u002Fblob\u002Fmain\u002Fskills\u002Fnetapp-volumes\u002FSKILL.md",[],[],{"skillNo":70,"name":71,"nameZh":6,"description":72,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":73,"categories":74,"keywords":75,"publishedAt":19},"01M7DMZHZJFG57N4532E6CY3KJ","domino-workspaces","Work with Domino Workspaces - interactive sessions running Jupyter, JupyterLab, VS Code or RStudio on a hardware tier with a compute environment. Covers launching and configuring a Workspace, what persists across stop and resume, file paths and syncing for DFS and Git-based Projects, package and home-directory persistence, SSH access from a local IDE, the Workspace API routes, and troubleshooting. Use when setting up or debugging an interactive development session in Domino.","https:\u002F\u002Fgithub.com\u002Fdominodatalab\u002Fdomino-ai-plugin\u002Fblob\u002Fmain\u002Fskills\u002Fdomino-workspaces\u002FSKILL.md",[],[],{"skillNo":77,"name":78,"nameZh":6,"description":79,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":80,"categories":81,"keywords":82,"publishedAt":19},"01M7DMZ5NJRQG6GGVKND5BY6DX","domino-ui-bootstrap","Bootstrap or retrofit a Vite + React 18 + TypeScript project so it uses the Domino design system (`@dominodatalab\u002Fextensions-tools`). Scoped to a **fully standalone SPA frontend for a Domino application or extension**, not snippets, library additions, or work inside an existing Domino monorepo package. Use whenever the user wants to create, scaffold, refactor, retrofit, or set up such an SPA (a React app, web app, frontend, UI, or extension) that should \"look like Domino\", use Domino components, follow the Domino design system, or integrate with the Domino platform, including when they mention DominoThemeProviderDecorator, extensions-tools, or base-components without saying \"Domino\". Also use to make an existing standalone React\u002FVite project \"Domino-styled\" or add Domino theming. Handles React 18 \u002F react-router 5 pinning, Storybook MCP registration, theme provider wiring, and build verification.","https:\u002F\u002Fgithub.com\u002Fdominodatalab\u002Fdomino-ai-plugin\u002Fblob\u002Fmain\u002Fskills\u002Fdomino-ui-bootstrap\u002FSKILL.md",[],[],{"skillNo":84,"name":85,"nameZh":6,"description":86,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":87,"categories":88,"keywords":89,"publishedAt":19},"01M7DMZ0V0K73HEE8EAWEZEG60","domino-trace-setup","Set up GenAI tracing for an LLM or agent application in Domino by checking the Domino SDK and MLflow requirements (the DSE needs nothing installed), then adding a tracing_setup.py helper, span evaluators, a config.yaml, and @add_tracing \u002F DominoAgentContext wiring. Use when the user asks to add tracing, observability, or evaluation to an agent or LLM app running on Domino.","https:\u002F\u002Fgithub.com\u002Fdominodatalab\u002Fdomino-ai-plugin\u002Fblob\u002Fmain\u002Fskills\u002Fdomino-trace-setup\u002FSKILL.md",[],[],{"skillNo":91,"name":92,"nameZh":6,"description":93,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":94,"categories":95,"keywords":96,"publishedAt":19},"01M7DMYNVZZSB16J9N4S57X11D","domino-rust-apps","Build a Rust web app (axum) in Domino and ship it as a Domino App that starts from a prebuilt binary. Covers installing a pinned Rust toolchain into a Compute Environment with rustup, Cargo project defaults (edition 2024, rust-toolchain.toml, Cargo.lock, Clippy pedantic, rustfmt, cargo-nextest, cargo-deny), rust-analyzer for the IDE and coding agents, check hooks, calling Domino as the viewer with extended identity propagation, dev and release build profiles, keeping target\u002F out of Git and Domino storage, and an app.sh that runs the binary in App Preview and deployments without compiling. Use when the user wants a Rust app, API, dashboard or Proa site on Domino, a performance-sensitive or correctness-critical App, or asks to set up Rust, cargo, Clippy, nextest or rust-analyzer in a Domino Workspace or environment.","https:\u002F\u002Fgithub.com\u002Fdominodatalab\u002Fdomino-ai-plugin\u002Fblob\u002Fmain\u002Fskills\u002Fdomino-rust-apps\u002FSKILL.md",[],[]]