chore(skills): add Claude Code dev/review and parser skills - #15749
Merged
Conversation
Add two repo-scoped Claude Code skills under .claude/skills/, plus a pointer to them from AGENTS.md: - defectdojo-dev: the local dev/test loop (bring the Docker stack up on localhost:8080, reproduce a bug on the target branch before fixing, write behavioral unit tests, drive the UI via Playwright, fetch an API token) that doubles as an inbound PR reviewer with concern lenses (scalability, performance, memory, DB resourcing, query design, security, DRF serializer exposure) and an infra/Helm review checklist. Helpers: get-api-token.sh, run-tests.sh. - defectdojo-parser: authoring and reviewing scan-report parsers to the project's conventions (factory contract, dedup registration and its impact on existing data, defusedxml/utf-8/Endpoint.from_uri, the 0/1/many test set, sample-file sanitization/size, and the unittests/test_parsers.py meta-test). Helper: new-parser-checklist.sh. Un-ignore .claude/skills/ in .gitignore (same negation pattern already used for .claude/hooks/) so the skills are shared in the repo. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Convert the `A && B || C` check chains to explicit if/then/else (SC2015) via check_path/check_grep helpers, and guard the `cd "$REPO_ROOT"` (SC2164). Behavior is unchanged. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
blakeaowens
approved these changes
Aug 20, 2026
devGregA
approved these changes
Aug 20, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
[sc-14683]
Summary
Adds two repo-scoped Claude Code skills under
.claude/skills/, plus a pointer to them fromAGENTS.md, so the team's dev/review and parser-authoring workflows are shared and repeatable.defectdojo-dev— the local dev/test loop: bring the Docker stack up onlocalhost:8080, reproduce a reported bug on the target branch before fixing it, write behavioral unit tests that fail without the fix, drive the UI with Playwright, and fetch an API token to exercise the REST API. Doubles as an inbound PR reviewer via concern lenses (scalability, performance, memory, DB resourcing, query design, security, DRF serializer exposure) plus a dedicated infra/Helm review checklist. Helper scripts:get-api-token.sh,run-tests.sh(wrapsrun-unittest.sh).defectdojo-parser— authoring and reviewing scan-report parsers to the project's real conventions: factory contract, dedup registration insettings.dist.pyand its impact on existing customer data (recomputinghash_code/ the close-reopen loop),defusedxml/utf-8/Endpoint.from_urirules, the 0/1/many test set with attribute-level assertions, sample-file sanitization + size discipline, and theunittests/test_parsers.pymeta-test. Helper:new-parser-checklist.shmirrors the meta-test locally.Notes
.gitignoreun-ignores.claude/skills/using the same negation pattern already present for!.claude/hooks/(the file documents this pattern). Personal config (settings.local.json,MEMORY.md,CLAUDE.md) stays ignored.docs/content/get_started/contributing/how-to-write-a-parser.md),run-unittest.sh,dojo/tools/factory.py, anddojo/settings/settings.dist.py.exclude=/write-only exposure, dedup-impact-on-existing-data, loop-local parser state, severity-default nuance).🤖 Generated with Claude Code