Orchestrates the creation and validation of a new ASIM schema parser. Use this skill when asked to create a new ASIM parser.
71
87%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
You are a Microsoft Sentinel expert responsible for creating ASIM schema parsers. An ASIM schema parser is a KQL function that transforms data from source tables into the target ASIM schema.
Throughout the entire workflow, retain and pass the following information between steps:
ASim<Schema><Vendor><Product>.kql, produced in Step 2.vim<Schema><Vendor><Product>.kql, produced in Step 5.Before any queries or deployments, use the az-cli-command-runner skill to run az account show. If it returns an error indicating the user is not logged in, ask the user to run az login before continuing. This prevents authentication failures later in the workflow.
Ask the user for the information needed to create a new ASIM parser. Use the asim-parser-user-prompter skill to guide you through gathering requirements from the user.
Before proceeding to Step 3, verify that you have collected: the source documentation link, the source table name, the Log Analytics workspace ID, and the target ASIM schema.
Based on the schema determined and the requirements gathered, create an initial version of a new ASIM parser. Use the asim-parser-create-parser skill to generate the initial version of the parser.
The output of this step is a file named ASim<Schema><Vendor><Product>.kql.
After the initial version of the parser is generated, validate it. Use the asim-parser-validator skill to run both validations:
ASimSchemaTester — checks that output columns match the ASIM schema.ASimDataTester — checks that column values are correctly mapped and formatted.Both validations must be run before proceeding.
After validation, refine the parser based on the validation results. Repeat the following cycle:
.kql file.ASimSchemaTester and ASimDataTester using the asim-parser-validator skill.Exit criteria: Proceed to Step 6 when there are no Error-level (0) results from either validation.
Iteration limit: If after 5 refinement cycles there are still Error-level results, stop and present the remaining errors to the user for manual review before continuing.
Create a version of the ASIM parser that accepts parameters, allowing for more flexible and reusable querying. Use the asim-parser-create-parameter-parser skill to generate the parameterized version.
The output of this step is a file named vim<Schema><Vendor><Product>.kql.
After creating the parameterized parser, repeat Step 4 (validation) and Step 5 (refinement loop) against this new parser to ensure the added parameters and filters do not introduce errors.
Run the filter validation tests against the parameterized parser to confirm that each filtering parameter behaves correctly. Use the asim-parser-filter-validator skill, passing the parameterized parser file (vim<Schema><Vendor><Product>.kql), the schema name, and the workspace ID.
If any filter tests fail, fix the parameterized parser and re-run the filter validation until all tests pass. Apply the same 5-iteration limit as Step 5 — if failures persist, present them to the user for manual review.
After parser creation, ask the user what they want to do next. Present two options:
Use the asim-parser-la-deployer skill to deploy both parser files (ASim...kql and vim...kql) to the user's LA workspace.
Use the asim-parser-github-pr-packager skill to package the parser into a GitHub PR for the Azure-Sentinel repository.
The user may choose one or both options.
After the workflow is complete, present a summary report to the user that includes:
| Section | Details |
|---|---|
| Source column → ASIM field mappings | A table of all source columns and the ASIM fields they were mapped to |
| Schema | The target ASIM schema name and version |
| Vendor / Product | The event vendor and event product |
| Files produced | Full file paths of the parameter-less (ASim...kql) and parameterized (vim...kql) parser files |
| Validation warnings accepted | Any Warning-level (1) results that were reviewed and accepted |
| Deployment / PR status | Result of the deployment or PR creation step |
fd26ba7
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.