MANDATORY guidelines for ANY edit to ANY file under Tools/Solutions Analyzer/ — including the mapper (map_solutions_connectors_tables.py), doc generator (generate_connector_docs.py), interactive docs (generate_interactive_docs.py), ASIM browser, collect_table_info, collect_asim_fields, upload_to_kusto, compare_runs, solution_analyzer_overrides.csv, filter_field_resolution.yaml, or any other script/config in that folder. Use when: editing/modifying/refactoring/fixing/renaming/tweaking ANY logic in those files, even one-line fixes such as renaming a classification, escaping a character, adjusting a regex, adding an override row, suppressing a false positive, or changing a constant. Covers: keeping script-docs in sync, README Version History changelog rules (required for feature/behavior changes; optional for small bug fixes), CSV output sync with upload_to_kusto.py, static/interactive index synchronization, and markdown/HTML entity page synchronization.
76
93%
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
Always review the relevant script documentation in Tools/Solutions Analyzer/script-docs/ first. For changes to a CSV output file's columns or semantics, also review the corresponding per-CSV reference page in Tools/Solutions Analyzer/script-docs/csv/ (one file per CSV).
When updating a script, update the corresponding doc in script-docs/ to reflect:
script-docs/csv/<csv-name>.md (the script doc only lists CSVs as a summary table with links; it does not duplicate column tables)script-docs/csv/, add a row to the summary table in the script doc, and add the new CSV to script-docs/csv/README.md (both the "By generating script" and "By role" sections)Required for feature additions and behavior changes; optional for small bug fixes. New features, changed analysis logic, new/renamed/removed CSV columns, parameter changes, and other user-visible behavior changes must appear in the changelog. Pure bug fixes — such as correcting a typo, fixing a crash, escape-character tweaks, regex corrections, or one-line fixes that restore intended behavior without changing it — may be logged at your discretion but are not required.
When a changelog entry is warranted, update the ## Version History section in Tools/Solutions Analyzer/README.md:
**Fix Name:**)When adding or removing a CSV output file from the mapper:
upload_to_kusto.py → SOLUTION_ANALYZER_FILES list to add/remove the fileThe documentation generator produces two parallel sets of index pages that must stay in sync:
generate_connector_docs.py): Markdown index pages — solutions-index.md, connectors-index.md, tables-index.md, content/content-index.md, etc.generate_interactive_docs.py): HTML page with DataTables.js — index.html with tabs for Solutions, Connectors, Tables, and Content.When modifying any index generation logic, apply the same change to BOTH:
<PlaybookName>, "GitHub Only" solution name)The doc generator produces both static markdown and HTML versions of every entity page.
generate_connector_docs.py): Primary data source — all content, counts, tables, and formatting are defined here.generate_interactive_docs.py → _generate_html_pages()): Auto-generated from markdown via Python markdown library.In most cases, changing generate_connector_docs.py is sufficient because HTML pages derive from markdown. But if the change involves:
...also update generate_interactive_docs.py.
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.