Skip to content

docs(skills): add skill for creating controlplane service components#57

Open
cjeanner wants to merge 1 commit into
mainfrom
skill/create-new-service-component
Open

docs(skills): add skill for creating controlplane service components#57
cjeanner wants to merge 1 commit into
mainfrom
skill/create-new-service-component

Conversation

@cjeanner

Copy link
Copy Markdown
Collaborator

Add a new skill document that provides step-by-step instructions for adding OpenStack service components to the controlplane catalog. This codifies the implicit pattern shown in the watcher service example and ensures consistency across future service additions.

The skill covers:

  • Directory structure and file scaffolding
  • Kustomization component configuration
  • OpenStackControlPlane CR patch templates
  • YAML conventions and validation steps
  • References to existing examples and documentation

Updated AGENTS.md to include a new "Skills" section linking to the skill document, making it discoverable for both human contributors and AI agents.

AI-Tool: Claude Code
AI-Model: Claude Sonnet 4.5 (2025-09-29)

@cjeanner cjeanner self-assigned this Jun 16, 2026
Comment thread docs/skills/add-controlplane-service.md

## Prerequisites

- Service name (kebab-case, e.g., `barbican`, `designate`, `octavia`)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I know these Openstack service names are single word, but it would be better if we have some better examples of kebab-case here. I not sure what exactly to be honest.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

so there's a side-project to extract names directly from the openstack-operator documentation, and serve them via an MCP - that same MCP would also be able to extract the documentation section related to the service, to then create the needed bits.

Unless we hardcode the whole list here in the skill (won't do), I don't see what could be improved. I'm of course open to suggestion - there are about 30 services to date[1], maybe there's a wiser choice?

[1] https://openstack-k8s-operators.github.io/openstack-operator/

@oliashish oliashish Jun 17, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I think it isn't about which services to list, the three examples are fine as service list. The issue is that barbican, designate, octavia aren't kebab-case. AI might Hallucinate with requiring kebab-case and example not actually being kebab-case.
A better example would look like barbican-api showing kebab case, I know barbican-api is not something used directly it would be barbican, but just giving an example just for AI to not hallucinate over this. The example currently in all fairness is lowercase not kebab-case.
But you can choose to ignore it as kebab-case the word in skills file should be enough.

Add a new skill document that provides step-by-step instructions for
adding OpenStack service components to the controlplane catalog. This
codifies the implicit pattern shown in the watcher service example and
ensures consistency across future service additions.

The skill covers:
- Directory structure and file scaffolding
- Kustomization component configuration
- OpenStackControlPlane CR patch templates
- YAML conventions and validation steps
- References to existing examples and documentation

Updated AGENTS.md to include a new "Skills" section linking to the
skill document, making it discoverable for both human contributors
and AI agents.

AI-Tool: Claude Code
AI-Model: Claude Sonnet 4.5 (2025-09-29)
@cjeanner cjeanner force-pushed the skill/create-new-service-component branch from f19ec84 to bccc941 Compare June 17, 2026 11:01
@cjeanner cjeanner requested a review from oliashish June 17, 2026 12:54

@oliashish oliashish left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants