Scenario Maya Expert
scenario-labs/skills
A skill your agent uses when doing any Autodesk Maya task through Python or a bridge, headless or live: maya.cmds or OpenMaya 2.0 scripts, mayapy or maya.standalone batch jobs, a commandPort or MCP…
Environment-level Dataverse administration — bulk delete, retention/archival, organization settings, OrgDB settings, recycle bin, audit, and the 37 allowlisted PPAC toggles.
$ npx skills add microsoft/Dataverse-skills --skill dv-admin -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install microsoft/Dataverse-skills dv-admin --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/microsoft/Dataverse-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.github/plugins/dataverse/skills/dv-admin .claude/skills/dv-admin && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "dv-admin" agent skill from https://github.com/microsoft/Dataverse-skills/tree/main/.github/plugins/dataverse/skills/dv-admin into .claude/skills/dv-admin/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dv-admin", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/microsoft/Dataverse-skills/tree/main/.github/plugins/dataverse/skills/dv-adminType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add microsoft/Dataverse-skills --skill dv-admin -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install microsoft/Dataverse-skills dv-admin --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/microsoft/Dataverse-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.github/plugins/dataverse/skills/dv-admin .agents/skills/dv-admin && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "dv-admin" agent skill from https://github.com/microsoft/Dataverse-skills/tree/main/.github/plugins/dataverse/skills/dv-admin into .agents/skills/dv-admin/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dv-admin", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add microsoft/Dataverse-skills --skill dv-admin -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install microsoft/Dataverse-skills dv-admin --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/microsoft/Dataverse-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.github/plugins/dataverse/skills/dv-admin .cursor/skills/dv-admin && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "dv-admin" agent skill from https://github.com/microsoft/Dataverse-skills/tree/main/.github/plugins/dataverse/skills/dv-admin into .cursor/skills/dv-admin/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dv-admin", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/microsoft/Dataverse-skills.git --path .github/plugins/dataverse/skills/dv-admin--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add microsoft/Dataverse-skills --skill dv-admin -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install microsoft/Dataverse-skills dv-admin --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/microsoft/Dataverse-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.github/plugins/dataverse/skills/dv-admin .gemini/skills/dv-admin && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "dv-admin" agent skill from https://github.com/microsoft/Dataverse-skills/tree/main/.github/plugins/dataverse/skills/dv-admin into .gemini/skills/dv-admin/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dv-admin", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install microsoft/Dataverse-skills dv-adminInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add microsoft/Dataverse-skills --skill dv-admin -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/microsoft/Dataverse-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/.github/plugins/dataverse/skills/dv-admin .github/skills/dv-admin && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "dv-admin" agent skill from https://github.com/microsoft/Dataverse-skills/tree/main/.github/plugins/dataverse/skills/dv-admin into .github/skills/dv-admin/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dv-admin", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add microsoft/Dataverse-skills --skill dv-admin -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install microsoft/Dataverse-skills dv-admin --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/microsoft/Dataverse-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.github/plugins/dataverse/skills/dv-admin .opencode/skills/dv-admin && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "dv-admin" agent skill from https://github.com/microsoft/Dataverse-skills/tree/main/.github/plugins/dataverse/skills/dv-admin into .opencode/skills/dv-admin/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dv-admin", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
dv-adminEnvironment-level Dataverse administration — bulk delete, retention/archival, organization settings, OrgDB settings, recycle bin, audit, and the 37 allowlisted PPAC toggles.
Dv Admin is an agent skill from microsoft/Dataverse-skills, published by the product's own GitHub organization. Environment-level Dataverse administration — bulk delete, retention/archival, organization settings, OrgDB settings, recycle bin, audit, and the 37 allowlisted PPAC toggles. Use when the user wants to clean up data at scale, configure audit, change environment settings, manage retention policies, or list/cancel ERP batch jobs.
Its SKILL.md is about 5.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including reference files (for example `references/erp-batch.md`, `references/orgdb-settings.md` and `references/recycle-bin.md`).
It sits in Backend & APIs, covering Background jobs. It works with Power Automate, Microsoft Excel, Python and Model Context Protocol. The repository describes itself as: Microsoft Dataverse skills for AI coding agents. Wraps the Dataverse MCP server, Dataverse CLI, Python SDK, and PAC CLI behind specialist skills for building, querying… The licence is MIT.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 3be592f. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
dotnetFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Dv Admin loads about 5.1k tokens when it runs, and up to ~11k if it reads all its reference files. Until then it costs about 84 tokens; SKILL.md has 2,065 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from microsoft/Dataverse-skills at commit 3be592f, republished under its MIT licence (© microsoft). 2,065 words, ~5,065 tokens.
.claude/skills/dv-admin/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.⚠️ Critical safety rules — read first
- Bulk delete is irreversible and bypasses the recycle bin.
pac data bulk-delete schedulewithout--fetchxmldeletes every record in the table. Refuse to run until the user explicitly says ALL (or ALL RECORDS) and the entity logical name — e.g.,"yes, delete ALL records in contact". Bare"yes"rejected. Empty-filter FetchXML does NOT bypass this gate. See Bulk Delete Commands for the full rule and disambiguation flow.- Settings allowlist is hard. Only the 37 PPAC toggles in Allowed settings may be read or updated. Any other setting must be refused: "That setting is out of scope for dv-admin. Use the Power Platform admin center."
- Recycle bin disable is PATCH, never DELETE.
PATCH statecode=1, statuscode=2, isreadyforrecyclebin=false. DELETE enqueues async opt-out and orphans per-entity configs — seereferences/recycle-bin.md.- System tables warning. Unfiltered bulk delete on
systemuser,businessunit,organization, orrolebreaks the environment. Warn additionally before running.
Four mechanisms — pick based on where the setting lives:
| Mechanism | Use for | How |
|---|---|---|
PAC CLI (pac org update-settings / list-settings) | Columns on the organization entity (audit, plugin trace, typeahead, quick find, canvas/flow solutions, email validation, audit retention) | --name <column> --value <value> — accepts any org column, not just the legacy audit ones |
| Python SDK — OrgDB XML | Keys inside the orgdborgsettings XML blob (MCP, search, Fabric, Work IQ, TDS endpoint, attachment security, ownership, address records, block unmanaged, delete users, Excel AI) | Read XML → parse → modify → PATCH whole blob back on organizations({id}) |
| Python SDK — recyclebinconfigs | Recycle bin on/off + retention days | CREATE/PATCH recyclebinconfigs entity record |
| Python SDK — settingdefinition + organizationsettings | App-level / plan-level security role toggles | Look up settingdefinition by uniquename → CREATE or PATCH organizationsettings row with value |
ERP batch admin: see references/erp-batch.md. Planning-only ERP requests may read skills/references, but make no environment calls or file writes.
Do NOT write Python scripts for operations PAC CLI can handle. Do NOT mix mechanisms (e.g., don't hand-PATCH an org column that PAC CLI already covers).
Use dv-data for record CRUD and sample data, dv-metadata for tables / columns / relationships, dv-query for reading records, dv-solution for solution export/import, dv-security for roles and self-elevate, pac admin --help for tenant governance (DLP, env lifecycle).
The 37 PPAC toggles below are the only ones this skill may read or update (35 unique backend keys — SearchAndCopilotIndexMode and auditretentionperiodv2 each cover two toggles). Examples that are out of scope and must be refused per the safety rule above: sessiontimeoutinmins, isautosaveenabled, IsShadowLakeEnabled, IsArchivalEnabled. Do not run pac org list-settings without --filter, and do not dump the whole orgdborgsettings XML for a non-allowlisted setting.
Use pac org list-settings --filter <column> to read, pac org update-settings --name <column> --value <value> to write. PAC CLI accepts any column on the organization entity — not just the legacy audit ones.
| # | PPAC label | Column | Type |
|---|---|---|---|
| 1 | Start Auditing | isauditenabled | bool |
| 2 | Audit user access (Log access) | isuseraccessauditenabled | bool |
| 3 | Start Read Auditing (Read logs to Purview) | isreadauditenabled | bool |
| 4 | Plugin trace log setting | plugintracelogsetting | int: 0 Off, 1 Exception, 2 All |
| 5 | Single table search option | tablescopeddvsearchinapps | bool |
| 6 | Prevent slow keyword filter for quick find terms | allowleadingwildcardsinquickfind | int: 0 prevent, 1 allow (UI "prevent=On" flips to 0) |
| 7 | Quick Find record limits | quickfindrecordlimitenabled | bool |
| 8 | Use quick find view for searching on grids/subgrids | usequickfindviewforgridsearch | bool |
| 9 | Canvas apps in Dataverse solutions by default | enablecanvasappsinsolutionsbydefault | bool |
| 10 | Cloud flows in Dataverse solutions by default | enableflowsinsolutionbydefault | bool (note: solution singular) |
| 11 | Enable email address validation (preview) | isemailaddressvalidationenabled | bool |
| 12 | Minimum number of characters to trigger typeahead | lookupcharactercountbeforeresolve | int (0–MAX_INT, null = feature off) |
| 13 | Delay between character inputs that trigger a search | lookupresolvedelayms | int ms (default 250) |
| 14 | Audit log retention policy / Custom retention period (days) | auditretentionperiodv2 | int days (-1 = Forever; presets 30/90/180/365/730/2555; max 365000) |
orgdborgsettings blob (17)PascalCase is significant (IsMCPEnabled, not IsMcpEnabled). Full key list with PPAC labels and types lives in references/orgdb-settings.md. Notable keys: IsMCPEnabled, IsMCPPreviewEnabled, SearchAndCopilotIndexMode, IsLinkToFabricEnabled, IsFabricVirtualTableEnabled, ShowDataInM365Copilot, EnableWorkIQ, IsLockdownOfUnmanagedCustomizationEnabled, EnableSecurityOnAttachment, EnableTDSEndpoint, AllowAccessToTDSEndpoint, EnableOwnershipAcrossBusinessUnits, CreateOnlyNonEmptyAddressRecordsForEligibleEntities, EnableDeleteAddressRecords, BlockDeleteManagedAttributeMap, EnableSystemUserDelete, IsExcelToExistingTableWithAssistedMappingEnabled.
SearchAndCopilotIndexMode is one int (0–3) that encodes two UI toggles — Dataverse search × M365 Copilot search:
| Value | Dataverse search | M365 Copilot search |
|---|---|---|
0 | Off | On |
1 | On | On |
2 | Off | Off |
3 | On | Off |
Two toggles operate on the org-level recyclebinconfigs row (filtered by the organization entity's MetadataId): on/off (statecode + statuscode + isreadyforrecyclebin) and cleanup days (cleanupintervalindays). Per-table toggles are out of scope — refuse requests like "enable recycle bin for contact only". Full lifecycle in references/recycle-bin.md.
Two allowlisted toggles, both bool stored as string: PowerAppsAppLevelSecurityRolesEnabled (canvas apps), PlanShareSecurityRolesEnabled (plan designer). Read default from settingdefinition, CREATE/PATCH organizationsettings for the override. Full Python in references/settings-overrides.md.
<ENV_URL>) for unknowns and ask for missing values in the same turn. Skip the raw CLI block.The user must be able to evaluate the action from your first response. A bare "which environment?" fails; a one-line prose preview passes.
Pause bulk delete (destructive, ID supplied):
<job-id> on the active environment. Confirm to proceed."Audit status across N environments (read-only, multi-call):
pac org fetch per env, or starting with Python/SDK because it "feels like a query."pac org list-settings --filter audit in parallel across all N environments (one &-batch, single wait)."Org settings always go through pac org list-settings / pac org update-settings — never raw Web API, FetchXML, PowerShell, or Python for org columns. Use --filter <substring> for category reads in one call. Multi-environment work runs in parallel via & + wait in ONE bash call.
Single setting:
pac org list-settings --filter isauditenabled --environment <url>Category read (returns every match, e.g. all audit settings in one call):
pac org list-settings --filter audit --environment <url>Multi-environment — parallel in ONE bash call:
pac org list-settings --filter audit --environment <url1> &
pac org list-settings --filter audit --environment <url2> &
pac org list-settings --filter audit --environment <url3> &
waitIf pac org list-settings fails for a setting, that setting is NOT an org column — check the mechanism routing in the four-mechanism table at the top, then use the appropriate Python pattern. Do NOT fall back to Web API, PowerShell, FetchXML, or pac org fetch for org columns.
pac data bulk-delete/pac data retention are only in the .NET Framework build (not the dotnet tool version). Check pac help; if it shows .NET 10/.NET 8, run pac install latest && pac use latest.pac auth create), active profile (pac auth list), and System Administrator privilege on the target environment.organization records); service principal for PAC-only ones. See dv-connect/references/headless-hosts.md.The same & + wait pattern from list-settings applies to every multi-env operation (update-settings, bulk-delete, etc.) — N backgrounded calls in ONE bash call, never sequential or for loops.
These flags do not exist. Using them will produce errors.
| Wrong | Correct |
|---|---|
--filter | use --fetchxml with a FetchXML string |
--query / --where / --condition | use --fetchxml |
--date / --before / --older-than | encode date in FetchXML <condition> |
--job-id | use --id |
--all / --purge / --truncate | omit --fetchxml to target all records (warn user first) |
| Wrong | Correct |
|---|---|
--fetchxml | use --criteria (same FetchXML format, different flag name) |
--filter / --query / --policy | use --criteria |
--enable / --activate | use pac data retention enable-entity |
--table | use --entity |
--operation-id / --job-id / --guid | use --id |
| Wrong | Correct |
|---|---|
--enable-audit / --audit | use --name isauditenabled --value true |
--trace / --plugin-trace / --logging | use --name plugintracelogsetting --value 2 |
--setting / --key / --flag | use --name |
String values like "all" or "enabled" for option sets | use integers: 0, 1, 2 |
pac data bulk-delete schedule --entity activitypointer \
--fetchxml "<fetch><entity name='activitypointer'><filter><condition attribute='createdon' operator='lt' value='2024-01-01'/></filter></entity></fetch>"
pac data bulk-delete schedule --entity email \
--fetchxml "<fetch><entity name='email'><filter><condition attribute='createdon' operator='lt' value='2024-06-01'/></filter></entity></fetch>" \
--job-name "Cleanup old emails" --recurrence "FREQ=DAILY;INTERVAL=1"| Argument | Alias | Required | Description |
|---|---|---|---|
--entity | -e | Yes | Logical name of the table |
--fetchxml | -fx | No | FetchXML filter. See the hard-stop rule below — if omitted, ALL records in the table are deleted. |
--job-name | -jn | No | Descriptive name for the job |
--start-time | -st | No | ISO 8601 start time. Defaults to now |
--recurrence | -r | No | RFC 5545 pattern (e.g., FREQ=DAILY;INTERVAL=1) |
--environment | -env | No | Target environment URL |
--fetchxml means ALL recordspac data bulk-delete schedule without --fetchxml targets every record in the table and is irreversible (does not go through recycle bin). Required gate:
"yes, delete ALL records in contact". Bare "yes" rejected.<filter/> or <filter><condition><value/></condition></filter> still targets every record.bulk-delete schedule only. cancel, pause, resume, show, list don't need it.For system tables (systemuser, businessunit, organization, role), additionally warn that unfiltered bulk delete breaks the environment.
pac data bulk-delete list --environment https://myorg.crm.dynamics.com
pac data bulk-delete show --id <job-id>
pac data bulk-delete pause --id <job-id>
pac data bulk-delete resume --id <job-id>
pac data bulk-delete cancel --id <job-id>Data retention moves old records to long-term storage without permanently deleting them.
Step 1: pac data retention enable-entity --entity activitypointer
Step 2: pac data retention list
Step 3: pac data retention set --entity activitypointer --criteria "<fetchxml>..."
Step 4: pac data retention show --id <config-id>pac data retention enable-entity --entity activitypointer --environment https://myorg.crm.dynamics.com
pac data retention set --entity activitypointer \
--criteria "<fetch><entity name='activitypointer'><filter><condition attribute='createdon' operator='lt' value='2023-01-01'/></filter></entity></fetch>"
pac data retention list --environment https://myorg.crm.dynamics.com
pac data retention show --id <config-id>
pac data retention status --id <operation-id>| Argument | Alias | Required | Description |
|---|---|---|---|
--entity | -e | Yes | Logical name of the table |
--criteria | -c | Yes | FetchXML defining which records to archive |
--start-time | -st | No | ISO 8601 start time. Defaults to now |
--recurrence | -r | No | RFC 5545 recurrence pattern |
--environment | -env | No | Target environment URL |
| Scenario | Use |
|---|---|
| Data no longer needed, permanently delete | Bulk Delete |
| Data must be preserved for compliance | Retention (archive) |
pac org list-settings --environment https://myorg.crm.dynamics.com
pac org list-settings --filter isauditenabled --environment https://myorg.crm.dynamics.compac org update-settings --name isauditenabled --value true --environment https://myorg.crm.dynamics.com
pac org update-settings --name plugintracelogsetting --value 2 --environment https://myorg.crm.dynamics.comArgs: --name <column> (required), --value <value> (required; true/false for bool, int for option sets), --environment <url> (optional). Allowed columns are the 14 listed in Allowed settings — anything else is out of scope.
Batch workflow: pac admin list → filter targets → confirm → run all update-settings calls in parallel (& + wait) → render summary table.
OrgDB, recycle bin, and settings-definition overrides each need raw Web API or the Python SDK — PAC CLI does not cover them. The four-mechanism routing table at the top of this skill (§ Skill) maps each setting to its mechanism. Sub-sections below summarise the patterns and link to the references for full Python.
OrgDB settings live as PascalCase XML elements inside the orgdborgsettings column of the organizations entity. PAC CLI cannot read or write these — use raw Web API.
Quick reference: GET /organizations?$select=organizationid,orgdborgsettings → parse XML with xml.etree.ElementTree → modify or SubElement → PATCH /organizations({id}) with the serialized XML.
For the read / update / remove Python patterns and the 17-key allowlist, see references/orgdb-settings.md. Keys are case-sensitive (IsMCPEnabled, not IsMcpEnabled).
Recycle bin settings live in the recyclebinconfigs entity (NOT orgdborgsettings). PAC CLI cannot manage them — use raw Web API.
Quick reference: filter recyclebinconfigs by _extensionofrecordid_value eq <ORG_ENTITY_METADATA_ID> (the org-level metadata ID is a system constant: e1bd1119-6e9d-45a4-bc15-12051e65a0bd).
statecode=0, statuscode=1, isreadyforrecyclebin=true (or POST a new config). isreadyforrecyclebin: true is required to force the synchronous opt-in path.statecode=1, statuscode=2, isreadyforrecyclebin=false. Do NOT DELETE — it enqueues async opt-out and orphans per-entity configs.ProcessRecycleBin async jobs (operationtype eq 50, statecode ne 3) before any second toggle.For the full Python lifecycle (read / enable / disable / async-drain helper), the cache-vs-DB race explanation, and the per-table out-of-scope rule, see references/recycle-bin.md.
Two allowlisted toggles (PowerAppsAppLevelSecurityRolesEnabled, PlanShareSecurityRolesEnabled) live in a join: settingdefinition (defaults) + organizationsettings (overrides). PAC CLI doesn't manage these.
Quick reference: look up the settingdefinitionid by uniquename, then either CREATE an organizationsettings row with value (string "true"/"false") or PATCH the existing row. DELETE on the override row reverts to the default.
For the read + idempotent CREATE/PATCH Python and the gating notes, see references/settings-overrides.md.
The four rules in the safety callout at the top of this file cover the irreversible / destructive cases. The rules below cover the non-destructive but still impactful operations:
isreadyforrecyclebin explicitly (true on enable, false on disable), and drain any in-flight ProcessRecycleBin async jobs before any second toggle. Omitting these can produce EntityBinUpdateAction called for entity <x> which is not enabled for RecycleBin on unrelated platform operations.© microsoft, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 4 other files (references) in .github/plugins/dataverse/skills/dv-admin of microsoft/Dataverse-skills.
Open the folder on GitHubat commit 3be592f
Dv Admin next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Dv Admin this skillmicrosoft/Dataverse-skills | 241 | — | ~5.1k | Automated safety check: Pass | MIT | |
| Scenario Maya Expertscenario-labs/skills | 898 | — | ~5.5k | Automated safety check: Pass | MIT | |
| MineruNebutra/MinerU-Skill | 122 | — | ~1.4k | Automated safety check: Pass | MIT | |
| Flowstudio Power Automate MCPgithub/awesome-copilot | 40k | 1 repos | ~3.4k | Automated safety check: Pass | MIT | |
| Power Automate MCPLeoYeAI/openclaw-master-skills | 2.2k | — | ~4.4k | Automated safety check: Pass | MIT | |
| Autocad Tianzheng Hvachashgraph-online/awesome-codex-plugins | 1.2k | — | ~762 | Automated safety check: Pass | Apache-2.0 |
scenario-labs/skills
A skill your agent uses when doing any Autodesk Maya task through Python or a bridge, headless or live: maya.cmds or OpenMaya 2.0 scripts, mayapy or maya.standalone batch jobs, a commandPort or MCP…
Nebutra/MinerU-Skill
An AI-Native skill for parsing PDF / Office / image files into clean Markdown with MinerU — a fast, zero-config document parser for AI agents.
github/awesome-copilot
Foundation skill for Power Automate via FlowStudio MCP — auth setup, the reusable MCP helper (Python + Node.js), tool discovery via listskills / toolsearch, and oversized-response handling.
LeoYeAI/openclaw-master-skills
Connect to and operate Power Automate cloud flows via a FlowStudio MCP server.
hashgraph-online/awesome-codex-plugins
A skill your agent uses when controlling AutoCAD 2026 with Tianzheng HVAC T30 through the autocadtianzheng MCP server, including connecting the THvac30V1 profile, reading or creating DWG engineering…
hashgraph-online/awesome-codex-plugins
Foundation skill for Power Automate via FlowStudio MCP — auth setup, the reusable MCP helper (Python + Node.js), tool discovery via listskills / toolsearch, and oversized-response handling.
microsoft/Dataverse-skills
One-step setup and connection diagnostics for a Dataverse environment — installs tools, authenticates, registers MCP, writes .env, and verifies active profiles and linked ERP endpoints.
microsoft/Dataverse-skills
Record-level CRUD and bulk operations — create, update, delete, upsert, CSV import, multi-table foreign-key loads, AI-generated sample data.
microsoft/Dataverse-skills
Bulk reads, multi-page iteration, and analytics over Dataverse data.
microsoft/Dataverse-skills
X++ code development lifecycle for Finance and Operations — scaffold models, author classes, custom services/APIs, and data entities, install matching SDKs, compile deployable packages, deploy…
microsoft/Dataverse-skills
Dataverse schema authoring and inspection — tables, columns, relationships, forms, and views.
microsoft/Dataverse-skills
Foundational cross-cutting context for Dataverse / Power Platform work — scope and the skill map, the tool-capability reference, the safety rules, and the safe change lifecycle.
Categories
Environment-level Dataverse administration — bulk delete, retention/archival, organization settings, OrgDB settings, recycle bin, audit, and the 37 allowlisted PPAC toggles. Dv Admin is an agent skill from microsoft/Dataverse-skills, published by the product's own GitHub organization. Environment-level Dataverse administration — bulk delete, retention/archival, organization settings, OrgDB settings, recycle bin, audit, and the 37 allowlisted PPAC toggles.
Dv Admin fits situations like: the user wants to clean up data at scale; configure audit; change environment settings; manage retention policies.
Run `npx skills add microsoft/Dataverse-skills --skill dv-admin -a claude-code`. Or copy the skill folder (.github/plugins/dataverse/skills/dv-admin in microsoft/Dataverse-skills) into .claude/skills/dv-admin in your project. Claude Code loads it when a task matches its description.
Run `npx skills add microsoft/Dataverse-skills --skill dv-admin -a codex`. Or copy the skill folder (.github/plugins/dataverse/skills/dv-admin in microsoft/Dataverse-skills) into .agents/skills/dv-admin in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add microsoft/Dataverse-skills --skill dv-admin -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/dv-admin, .gemini/skills/dv-admin, .github/skills/dv-admin and .opencode/skills/dv-admin in your project.
Going by SKILL.md and its folder, Dv Admin needs the command-line tools its instructions call (dotnet). Our summary lists: Python 3.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Dv Admin is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 5.1k tokens (SKILL.md is roughly 20k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 6.1k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Dv Admin: Scenario Maya Expert (scenario-labs/skills, 898 stars), Mineru (Nebutra/MinerU-Skill, 122 stars), Flowstudio Power Automate MCP (github/awesome-copilot, 40k stars) and Power Automate MCP (LeoYeAI/openclaw-master-skills, 2.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
microsoft (a GitHub organization, an official publisher) maintains it in microsoft/Dataverse-skills, which has 241 GitHub stars. The repository holds 9 skills in this directory. The repository was last updated on October 5, 2026.
Source: microsoft/Dataverse-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.