This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
This is a Claude Code plugin marketplace containing two plugins for Datum Cloud:
- datum-platform: Kubernetes platform engineering automation (aggregated API servers, controller patterns, GitOps deployment)
- datum-gtm: Go-to-market automation (commercial strategy, product discovery, customer support)
# Validate marketplace and plugin structure
claude plugin validate .
# Or from within Claude Code
/plugin validate ..claude-plugin/
marketplace.json # Marketplace catalog listing plugins
plugins/
datum-platform/
.claude-plugin/
plugin.json # Plugin manifest
agents/ # Agent definitions (markdown)
skills/ # Knowledge modules (SKILL.md + topic files)
commands/ # Slash command definitions
hooks/hooks.json # Automation hooks (PostToolUse)
scripts/ # Utility scripts (auto-validate.sh)
datum-gtm/
.claude-plugin/
plugin.json # Plugin manifest
agents/
skills/
commands/
docs/ # User documentation
Specialized agents with narrow expertise. Each agent has:
- A markdown file in
agents/with YAML front matter (name, description, tools, model) - A specific role in the pipeline (discovery → design → implementation → review → deploy)
- Skills they load based on task
datum-platform agents: plan, api-dev, frontend-dev, sre, test-engineer, code-reviewer, tech-writer datum-gtm agents: product-discovery, commercial-strategist, gtm-comms, support-triage
Knowledge modules agents read during context discovery. Each skill has:
SKILL.mdas the entry point- Additional topic files (e.g.,
implementation.md,concepts.md) - Optional scripts for validation or scaffolding
Slash commands users invoke (e.g., /discover, /review, /deploy). Defined in markdown files under commands/.
Automation hooks in hooks/hooks.json. Currently uses PostToolUse to run validation after Write/Edit operations.
Features flow through stages: request → discovery → spec → pricing → design → ui-patterns → implementation → test → review → deploy → document → announce
Pipeline artifacts live in .claude/pipeline/ in the target repository (not this plugin repo).
- Create
plugins/{plugin}/agents/{name}.mdwith YAML front matter:--- name: agent-name description: > When and how to use this agent tools: Read, Write, Edit, Grep, Glob, Bash model: sonnet ---
- Document workflow, skills to reference, and pipeline contract
- Create directory
plugins/{plugin}/skills/{skill-name}/ - Add
SKILL.mdas entry point - Add supporting files for specific topics
- Reference skill in relevant agent definitions
Create plugins/{plugin}/commands/{command}.md defining the slash command behavior.
Use ${CLAUDE_PLUGIN_ROOT} for dynamic path resolution in hooks and scripts. This resolves to the plugin's installation directory at runtime.
When making changes to plugins, follow these requirements:
Always bump the version in plugins/{plugin}/.claude-plugin/plugin.json when making changes:
- Patch (1.0.x): Bug fixes, typo corrections, minor documentation fixes
- Minor (1.x.0): New features, new skills, new agents, significant documentation additions
- Major (x.0.0): Breaking changes, major restructuring
Maintain CHANGELOG.md at the repo root. For each release:
- Use format
## [X.Y.Z] - YYYY-MM-DD - Keep entries concise and user-focused (what value does this provide?)
- Avoid implementation details - focus on capabilities added
Example:
## [1.3.0] - 2026-02-20
### Added
- **Feature gates pattern** (`k8s-apiserver-patterns`) — Guidance for safely introducing experimental features with Alpha/Beta/GA lifecycle stages.Update the version table in README.md to match plugin.json:
| [datum-platform](./plugins/datum-platform/) | ... | 1.3.0 |- Bump version in
plugins/{plugin}/.claude-plugin/plugin.json - Add entry to
CHANGELOG.mdwith date - Update version in
README.mdtable - Commit with conventional commit message:
feat(plugin-name): description - Push to main (plugins auto-update from main branch)