Borrowing it
Nothing to install: this file belongs to timothywarner-org/ab900. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/timothywarner-org/ab900/main/.github/skills/ab900-item-creator/SKILL.mdgit clone --depth 1 https://github.com/timothywarner-org/ab900Wrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/timothywarner-org/ab900/ab900-item-creator)<a href="https://agentmods.dev/skills/timothywarner-org/ab900/ab900-item-creator"><img src="https://agentmods.dev/badge/skills/timothywarner-org/ab900/ab900-item-creator/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/timothywarner-org/ab900/ab900-item-creator"><img src="https://agentmods.dev/badge/skills/timothywarner-org/ab900/ab900-item-creator.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00060 | $0.03966 |
| Opus 5 | $0.00030 | $0.01983 |
| Sonnet 5 | $0.00012 | $0.00793 |
| Haiku 4.5 | $0.00006 | $0.00397 |
Grade A, and why
ab900-item-creator scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 259 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Skill: ab900.practice_questions.exam_realistic
Description: Generate AB-900 practice questions that feel like the real exam without copying it. Every item is grounded in current Microsoft Learn content, uses modern M365 and Purview terminology, and follows Microsoft-style exam item rules (scenario-first, plausible distractors, no trick wording).
Grounding
Required sources:
- Microsoft Learn (primary truth source for objectives + features; access via Microsoft Learn MCP server and Copilot web search)
- Context7 MCP (version-specific docs/snippets for M365 PowerShell and Graph API accuracy when needed)
Study guide:
- Study guide for Exam AB-900: Microsoft 365 Copilot and Agent Administration Fundamentals (skills outline + objective mapping) [Microsoft Learn]
- Current skills-measured version: Skills measured as of July 22, 2026. Always confirm the objective wording against this version before writing an item.
Exam domains and weights (as of July 22, 2026):
| Domain | Title (verbatim from the study guide) | Weight |
|---|---|---|
| Domain 1 | Identify the core features and objects of Microsoft 365 services | 30-35% |
| Domain 2 | Understand data protection and governance tasks for Microsoft 365 and Copilot | 35-40% |
| Domain 3 | Perform basic administrative tasks for Copilot and agents | 25-30% |
Domain 2 carries the most weight. The July 22, 2026 change log marks three subsections as Minor and zero as Major: "Identify the core objects of Microsoft 365 services", "Identify the core security features of Microsoft 365 services", and "Identify and monitor oversharing in SharePoint in Microsoft 365". Items targeting those three subsections should use the refreshed wording below.
Objective wording that changed in the July 22, 2026 refresh:
- "Identify the appropriate objects to configure by using the Exchange admin center (mailboxes and distribution groups)" -- NOT "Exchange Online admin center" and NOT "distribution lists".
- "Identify the appropriate objects to configure by using the SharePoint admin center (sites, libraries, and folders)" -- the admin center dropped the "in Microsoft 365" qualifier, but the SERVICE is still named "SharePoint in Microsoft 365".
- "Understand features and capabilities of SharePoint Advanced Management, including restricted access control" -- NOT "restricted site access".
- "Identify sensitive information by using Microsoft Purview Data Explorer" -- NOT Content explorer.
- "Search for files and emails by using Content search in Microsoft Purview eDiscovery" -- Content search is a capability inside eDiscovery, not a standalone solution.
- "Understand features and capabilities of Microsoft Defender XDR" -- NOT "Microsoft 365 Defender".
- "Compare Copilot monthly license model to pay-as-you-go, including SharePoint".
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 10d ago First seen · 259 lines · 60 tokens per session scan A c36e48cdac7b
ab900-item-creator is a skill published in the GitHub repository timothywarner-org/ab900 (26 stars, last pushed 1mo ago), licensed MIT. It adds 60 tokens to every session and 3,966 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
spark-3.5-updates
Knowledge base for Spark 3.1→3.5 updates not covered by the Learning Spark 2nd Ed book. Use for: (A) Pandas UDF and Arrow APIs (exam Sec 7 obj 2 'Create and invoke Pandas UDF'); (B) new built-in functions added in 3.3-3.5 (exam Sec 3); (C) AQE evolution post-3.0 — default-on, new sub-configs, SMJ→SHJ conversion (exam…
spark-connect
Knowledge base for Spark Connect (Apache Spark 3.4–3.5). Use when preparing for Sec 6 of the Databricks Certified Associate Developer for Apache Spark exam, configuring a Spark Connect client/server, or migrating PySpark code to the decoupled client-server architecture. Sources: spark.apache.org 3.5.7 docs +…
spark-cert-3.5
Meta-skill orchestrator for preparing the Databricks Certified Associate Developer for Apache Spark 3.5 exam (Python). Coordinates the sub-skills apache-spark, spark-connect, pandas-on-spark, and spark-3.5-updates. Activates on requests like "let's study Spark", "review ", "quiz on ", "mock exam", "what do I still…
build-sample-matrix
Build the matrix of all the samples throughout different frameworks.
course-builder
Use whenever the user wants to ingest a new course's materials (lecture notes, textbook chapters, HW problems, HW solutions) and build the course-specific knowledge base — patterns.md (recurring solution techniques), coverage.md (HW-to-section map with 🔥 exam tiers + ⚠weak flags), and summary.md (topic tree). Invoked…
alt-import
Parse an Exam Radar (OPTIMETA Alt plugin) export and fold its lecture-emphasis exam-probability signal into the PAIDEIA course index — write course-index/radar.md, annotate course-index/coverage.md with a lecture-emphasis column and divergence flags, and seed a gold-zone weakmap. Invoked by /paideia:alt. The export…