Skip to content

Add Claude Code skills for content development workflows#14529

Open
vojtapolasek wants to merge 2 commits intoComplianceAsCode:masterfrom
vojtapolasek:add_skills
Open

Add Claude Code skills for content development workflows#14529
vojtapolasek wants to merge 2 commits intoComplianceAsCode:masterfrom
vojtapolasek:add_skills

Conversation

@vojtapolasek
Copy link
Collaborator

Description:

  • Add 10 Claude Code skill definitions under .claude/skills/ that automate common development tasks: build-product, create-rule, draft-pr, inspect-control, map-controls, map-requirement, onboard-control, run-tests, test-rule, and shared MCP fallback utilities.
  • Skills cover the full development lifecycle: building products, creating and testing rules, mapping control file requirements, onboarding new security policies, and drafting PR descriptions.
  • Each skill is invoked as a slash command (e.g., /build-product rhel9) and is defined by a SKILL.md file documenting its purpose, arguments, phases, and behavior.
  • Skills optionally use the content-mcp MCP server for structured operations but fall back to filesystem-based alternatives when the MCP server is unavailable.
  • Add developer documentation (docs/manual/developer/12_ai_skills.md) describing how to find and use the skills.

Rationale:

  • These skills encode project-specific best practices, conventions, and workflows into reusable, self-documenting automation. They reduce onboarding friction for new contributors and help experienced contributors avoid repetitive manual steps.
  • The skills are compatible with any LLM client supporting the .claude/skills/ convention (Claude Code, Opencode, etc.), making AI-assisted development accessible across tooling.

Review Hints:

  • Key files to review:
    • .claude/skills/shared/mcp_fallbacks.md — shared fallback procedures referenced by multiple skills
    • .claude/skills/create-rule/SKILL.md — largest skill (~585 lines), covers rule creation end-to-end
    • docs/manual/developer/12_ai_skills.md — developer-facing documentation
  • The skills themselves are Markdown instruction files, not executable code. Review them for accuracy of project conventions, correct command examples, and completeness of workflows.
  • No build or test infrastructure is affected. No products need to be rebuilt to verify this PR.
  • Review all commits together — the first commit adds all skills and the second adds documentation.

vojtapolasek and others added 2 commits March 4, 2026 14:31
Introduces 10 skill definitions covering building, testing, rule
creation, control file management, and PR workflows. Includes
shared MCP fallback utilities for graceful degradation when the
content-mcp server is unavailable.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@vojtapolasek vojtapolasek added this to the 0.1.81 milestone Mar 4, 2026
@vojtapolasek vojtapolasek added the enhancement General enhancements to the project. label Mar 4, 2026
@openshift-ci
Copy link

openshift-ci bot commented Mar 4, 2026

@vojtapolasek: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/e2e-aws-openshift-node-compliance 3c822bf link true /test e2e-aws-openshift-node-compliance

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@comps
Copy link
Collaborator

comps commented Mar 6, 2026

The yamllint error is bogus, it detected --- (YAML document start) on the first line and assumed the .md file is YAML.

You might want to limit yamllint to specific file extensions or patterns in its config (or via -d), I've done that in https://github.com/RHSecurityCompliance/atex/blob/4181202326fe118d588cba72ec515e4c2c030eb2/.github/workflows/style.yaml#L30-L58 .

If ninja is available:
```bash
cd build
cmake -G Ninja ..
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd prefer to use the build_product script for ninja builds as well.


3. **Rationale**: Why this rule is important for security

4. **Severity**: One of `low`, `medium`, `high`, `unknown`
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

severity could have a default value, so that the users won't need to answer it

## Important Notes

- **Do NOT make test files executable** - the test framework handles this
- **Use proper Jinja2 syntax** for macros in description, rationale, etc.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wonder if this can trip it on a wrong path. Our project uses a custom Jinja syntax ie. we use triple braces instead of the default double braces.


# Test Rule

Run Automatus tests for a ComplianceAsCode security rule.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can this skill build and use thin data streams? That'd make the test faster.

@jan-cerny jan-cerny self-assigned this Mar 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement General enhancements to the project.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants