CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

ms365-tenant-manager

Microsoft 365 tenant administration for Global Administrators. Automate M365 tenant setup, Office 365 admin tasks, Azure AD user management, Exchange Online configuration, Teams administration, and security policies. Generate PowerShell scripts for bulk operations, Conditional Access policies, license management, and compliance reporting. Use for M365 tenant manager, Office 365 admin, Azure AD users, Global Administrator, tenant configuration, or Microsoft 365 automation.

69

Quality

87%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

The canonical home for this skill is ms365-tenant-manager in alirezarezvani/claude-skills

SKILL.md
Quality
Evals
Security

Quality

Content

77%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is a lean, highly actionable runbook with exemplary workflow sequencing, validation checkpoints, and feedback loops (report-only CA policies, WhatIf previews, validate-before-generate). Its central defect is that every referenced bundle file — the three Python generators and the three reference guides — is missing from the bundle, breaking both the preferred automation path and the entire progressive-disclosure layer, and Quick Start content duplicates the workflows.

Suggestions

Ship the referenced bundle files (scripts/tenant_setup.py, scripts/user_management.py, scripts/powershell_generator.py, references/powershell-templates.md, references/security-policies.md, references/troubleshooting.md, sample_input.json, expected_output.json) or remove the sections that point to them.

Make Workflow 1 Step 1 self-contained by inlining the setup checklist (or summarizing its phases) so the first step does not depend on a generator output the bundle cannot produce.

De-duplicate the Quick Start: drop the repeated bulk-provisioning and Conditional Access snippets and point to the corresponding workflow sections or references files instead.

DimensionReasoningScore

Conciseness

Nearly every token is executable code, terse numbered best-practices, or a compact limitations table — no concept padding Claude already knows. Not 5: Quick Start duplicates content — the 'Bulk Provision Users from CSV' snippet and the Conditional Access policy pattern reappear nearly verbatim in Workflow 1 Step 4 and Workflow 2 Step 2. Not 3: there is no noticeably verbose or unnecessary explanation.

4 / 5

Actionability

The inline PowerShell is copy-paste ready (real Graph cmdlets, required modules and permissions listed), and the offboarding workflow includes a WhatIf-style preview. Not 5: the 'Bundled Python Generators' section — positioned as the preferred path ('prefer them over hand-writing scripts') — invokes scripts/tenant_setup.py, scripts/user_management.py, scripts/powershell_generator.py, sample_input.json, and expected_output.json, none of which exist in the bundle, so roughly half the prescribed commands fail on execution. Not 3: the majority of the guidance is fully executable and self-contained.

4 / 5

Workflow Clarity

Each workflow is numbered with explicit validation and feedback loops: prerequisites before provisioning, 'Wait for DNS propagation (up to 48 h)', CA policies starting 'enabledForReportingButNotEnforced' with a 48 h sign-in-log review before enabling, the validate-before-generate gate ('require every entry to report "is_valid": true'), -WhatIf preview before license removal, and per-user try/catch with Write-Warning. Destructive and batch operations all carry validation, so the cap does not apply; this matches the anchor-5 example with checklists and recovery loops.

5 / 5

Progressive Disclosure

Sections are well organized and the 'Reference Guides' block is clearly signaled one level deep, but the actual bundle is empty: references/powershell-templates.md, references/security-policies.md, references/troubleshooting.md, the three scripts/*.py generators, sample_input.json, and expected_output.json are all referenced yet none exist. Scored against the actual bundle structure, the promised disclosure layer is entirely broken — more than the 'minor organization gaps' of anchor 4; not 2 because the SKILL.md body itself is self-contained and well structured.

3 / 5

Total

16

/

20

Passed

Description

92%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: it names the audience (Global Administrators), lists comprehensive concrete capabilities, and closes with an explicit 'Use for' trigger clause covering natural synonyms. The only weakness is a few missing common trigger variants such as 'Entra ID'.

DimensionReasoningScore

Specificity

Lists multiple concrete actions — 'Automate M365 tenant setup, Office 365 admin tasks, Azure AD user management, Exchange Online configuration, Teams administration', 'Generate PowerShell scripts for bulk operations, Conditional Access policies, license management, and compliance reporting' — with comprehensive coverage of the tenant-admin domain. Fits the anchor-5 example (multiple specific concrete actions, comprehensive coverage); score 4 would require identifiable coverage gaps, which are not present.

5 / 5

Completeness

Explicitly answers 'what' ('Automate M365 tenant setup... Generate PowerShell scripts for bulk operations...') and 'when' via the 'Use for M365 tenant manager, Office 365 admin, Azure AD users, Global Administrator, tenant configuration, or Microsoft 365 automation' clause with concrete trigger phrases. Matches the anchor-5 example exactly in form; nothing below applies since both what and when are explicit.

5 / 5

Trigger Term Quality

'Use for M365 tenant manager, Office 365 admin, Azure AD users, Global Administrator, tenant configuration, or Microsoft 365 automation' gives good natural-phrase coverage with M365/Office 365/Microsoft 365 synonyms. Not 5: a few natural terms users would say are missing (e.g., 'Entra ID', 'user onboarding/offboarding', 'M365 admin center').

4 / 5

Distinctiveness Conflict Risk

'Microsoft 365 tenant administration for Global Administrators' carves a clear niche with distinct triggers (Azure AD users, Conditional Access, tenant configuration); minimal overlap risk with adjacent skills. Not 4: no notable overlap with closely related skills is evident.

5 / 5

Total

19

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

referenced_paths_exist

Referenced path issues: 12 missing

Warning

Total

15

/

16

Passed

Repository

alirezarezvani/claude-skills

Path

.gemini/skills/ms365-tenant-manager/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.