claude-code-kit 0.42.0__tar.gz → 0.43.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/.claude-plugin/marketplace.json +1 -1
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/.claude-plugin/plugin.json +1 -1
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/CHANGELOG.md +21 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/PKG-INFO +4 -4
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/README.md +3 -3
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/docs/stack-skills/README.md +4 -2
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/pyproject.toml +1 -1
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/observability-and-logging/SKILL.md +2 -0
- claude_code_kit-0.43.0/skills/otel-tracing/README.md +49 -0
- claude_code_kit-0.43.0/skills/otel-tracing/SKILL.md +185 -0
- claude_code_kit-0.43.0/skills/otel-tracing/references/collector.md +367 -0
- claude_code_kit-0.43.0/skills/otel-tracing/references/correlation.md +179 -0
- claude_code_kit-0.43.0/skills/otel-tracing/references/gotchas.md +172 -0
- claude_code_kit-0.43.0/skills/otel-tracing/references/instrumentation.md +297 -0
- claude_code_kit-0.43.0/skills/otel-tracing/references/sampling.md +298 -0
- claude_code_kit-0.43.0/skills/otel-tracing/references/tempo.md +280 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/src/claude_kit/__init__.py +1 -1
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/.gitignore +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/CLAUDE.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/CONTRIBUTING.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/LICENSE +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/acceptance-reviewer.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/auditor.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/dependency-scanner.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/developer.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/devils-advocate.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/devops-engineer.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/e2e-tester.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/em-reviewer.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/incident-responder.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/merge-reviewer.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/observability-engineer.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/orchestrator.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/owasp-reviewer.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/policy-validator.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/pr-raiser.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/risk-classifier.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/sdlc-code-reviewer.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/secret-scanner.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/security-reviewer.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/senior-backend-dev.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/senior-frontend-dev.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/senior-tester.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/spec-doc-writer.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/story-planner.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/technical-architect.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/tester.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/ui-designer.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/agents/unit-tester.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/catalog/capture.yaml +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/catalog/mcp.yaml +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/catalog/org.yaml +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/catalog/profiles.yaml +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/catalog/stacks.yaml +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/commands/abort.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/commands/init.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/commands/sdlc.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/commands/status.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/docs/agentic-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/docs/agents.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/docs/architecture.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/docs/capture-a-real-run.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/docs/coverage-audit.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/docs/eval-harness.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/docs/org-capabilities.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/docs/stack-skills/GAP-ANALYSIS.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/docs/stack-skills/REPO-INVENTORY.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/hooks/hooks.json +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/hooks/scripts/audit-log.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/hooks/scripts/capture-learnings.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/hooks/scripts/guard-destructive-git.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/hooks/scripts/guard-kubectl-delete.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/hooks/scripts/guard-secrets.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/hooks/scripts/lint-fix.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/hooks/scripts/load-autonomy.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/hooks/scripts/load-continuity.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/hooks/scripts/load-learnings.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/hooks/scripts/type-check.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/hooks/scripts/validate-frontmatter.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/hooks/scripts/validate-settings.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/hooks/scripts/warn-large-edits.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/hooks/scripts/warn-llm-io.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/hooks/scripts/warn-missing-tests.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/hooks/scripts/warn-sensitive-files.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/hooks/scripts/warn-shared-modules.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/agent-guardrails.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/agent-memory.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/agent-resilience.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/autonomy-levels.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/code-organization.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/continuity.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/design-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/devops-observability.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/documentation.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/evals.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/frontend-best-practices.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/goal-setting-and-monitoring.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/human-in-the-loop.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/linting-and-formatting.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/mandatory-workflow.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/model-tiers.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/quality-gates.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/rarv-cycle.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/reasoning-techniques.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/responsive-and-accessibility.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/risk-classification.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/testing.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/rules/tool-design.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/scripts/capture-sdlc-run.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/scripts/check_docs_consistency.py +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/scripts/gen_hooks.py +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/scripts/init.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/_references/accessibility-checklist.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/_references/orchestration-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/_references/performance-checklist.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/_references/security-checklist.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/_references/testing-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/accessibility-review/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/alembic-migrations/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/alembic-migrations/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/alembic-migrations/references/alembic-setup-and-env.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/alembic-migrations/references/async-and-multitenant-migrations.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/alembic-migrations/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/alembic-migrations/references/troubleshooting-and-debugging.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/alembic-migrations/references/writing-migrations.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/anthropic-vertex-integration/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/anthropic-vertex-integration/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/anthropic-vertex-integration/references/generate-helpers-and-retry.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/anthropic-vertex-integration/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/anthropic-vertex-integration/references/vertex-client-and-auth.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/api-and-interface-design/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/api-integration/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/api-pagination-filtering-sorting/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/api-pagination-filtering-sorting/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/api-pagination-filtering-sorting/references/query-params-conventions.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/api-pagination-filtering-sorting/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/api-pagination-filtering-sorting/references/response-metadata.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/archive-sprint/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/async-python-patterns/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/async-python-patterns/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/async-python-patterns/references/async-boundaries.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/async-python-patterns/references/lifecycle-and-gather.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/async-python-patterns/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/auth-and-rbac/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/auth-and-rbac/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/auth-and-rbac/references/auth-dependencies.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/auth-and-rbac/references/rbac-and-permissions.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/auth-and-rbac/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/auth-and-rbac/references/security-hardening.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/auth-and-rbac/references/tokens-and-hashing.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/backend-repo-architecture/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/backend-repo-architecture/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/backend-repo-architecture/references/deployment-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/backend-repo-architecture/references/entrypoint-and-config.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/backend-repo-architecture/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/backend-repo-architecture/references/structure-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/backend-repo-architecture/references/troubleshooting.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/backlog/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/backlog/item-template.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/browser-testing-with-devtools/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/bug-hunt/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/ci-cd-and-automation/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/code-review-and-quality/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/code-simplification/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/component-design/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/configargparse-yaml-env-layering/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/configargparse-yaml-env-layering/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/configargparse-yaml-env-layering/references/config-layering-anatomy.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/configargparse-yaml-env-layering/references/mode-dispatch-and-precedence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/configargparse-yaml-env-layering/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/consolidate-learnings/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/containerization-and-deployment/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/containerization-and-deployment/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/containerization-and-deployment/references/deployment-and-secrets.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/containerization-and-deployment/references/dockerfile-and-compose.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/containerization-and-deployment/references/entrypoint-and-modes.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/containerization-and-deployment/references/kerberos-kinit-bootstrap.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/containerization-and-deployment/references/makefile-dev-workflow.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/containerization-and-deployment/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/context-engineering/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/cron-and-scheduled-jobs/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/cron-and-scheduled-jobs/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/cron-and-scheduled-jobs/references/choosing-and-operations.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/cron-and-scheduled-jobs/references/kubernetes-cronjob.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/cron-and-scheduled-jobs/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/cron-and-scheduled-jobs/references/temporal-schedules.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/data-engineering-bigquery-gcs/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/data-engineering-bigquery-gcs/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/data-engineering-bigquery-gcs/references/bigquery-advanced-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/data-engineering-bigquery-gcs/references/bigquery-gcs-io.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/data-engineering-bigquery-gcs/references/medallion-architecture.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/data-engineering-bigquery-gcs/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/data-engineering-bigquery-gcs/references/temp-table-merge-pattern.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/debugging-and-error-recovery/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/decision/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/decision/adr-template.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/dependency-verification/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/deprecation-and-migration/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/design-patterns-and-conventions/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/design-patterns-and-conventions/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/design-patterns-and-conventions/references/anti-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/design-patterns-and-conventions/references/naming-and-layout.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/design-patterns-and-conventions/references/patterns-catalog.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/design-patterns-and-conventions/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/design-patterns-and-conventions/references/testing-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/design-patterns-and-conventions/references/troubleshooting.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/doc-consolidation/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/docker-compose/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/docker-compose/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/docker-compose/references/compose-services-and-healthchecks.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/docker-compose/references/dev-vs-prod-variants.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/docker-compose/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/docker-shared/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/docker-shared/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/docker-shared/references/dockerignore-and-build-secrets.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/docker-shared/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/docker-shared/references/shared-base-images.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/docker-shared/references/shared-compose-fragments.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/dockerfile-backend/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/dockerfile-backend/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/dockerfile-backend/references/backend-dockerfile-anatomy.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/dockerfile-backend/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/dockerfile-backend/references/system-deps-and-caching.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/dockerfile-frontend/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/dockerfile-frontend/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/dockerfile-frontend/references/build-args-and-nginx.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/dockerfile-frontend/references/frontend-dockerfile-anatomy.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/dockerfile-frontend/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/documentation-and-adrs/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/doubt-driven-development/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/edge-to-service-trust-boundary/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/edge-to-service-trust-boundary/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/edge-to-service-trust-boundary/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/edge-to-service-trust-boundary/references/trust-contract.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/execute/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/fastapi-service-patterns/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/fastapi-service-patterns/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/fastapi-service-patterns/references/api-versioning.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/fastapi-service-patterns/references/app-factory-and-lifespan.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/fastapi-service-patterns/references/custom-route-and-middleware.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/fastapi-service-patterns/references/dependency-injection.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/fastapi-service-patterns/references/model-and-serialization-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/fastapi-service-patterns/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/file-export-and-reporting/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/file-export-and-reporting/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/file-export-and-reporting/references/excel-generation.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/file-export-and-reporting/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/file-export-and-reporting/references/streaming-and-downloads.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/frontend-repo-architecture/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/frontend-repo-architecture/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/frontend-repo-architecture/references/api-layer-and-types.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/frontend-repo-architecture/references/divergences.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/frontend-repo-architecture/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/frontend-repo-architecture/references/structure-and-state.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/frontend-repo-architecture/references/testing-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/frontend-ui-engineering/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/gcp-cloud-run-github-actions/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/gcp-cloud-run-github-actions/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/gcp-cloud-run-github-actions/references/cloud-run-deploy.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/gcp-cloud-run-github-actions/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/gcp-cloud-run-github-actions/references/workflow-structure.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/gcs-file-storage-patterns/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/gcs-file-storage-patterns/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/gcs-file-storage-patterns/references/client-and-uploads.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/gcs-file-storage-patterns/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/gcs-file-storage-patterns/references/signed-urls-and-reads.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/git-workflow-and-versioning/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/grafana-dashboards-and-alerts/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/grafana-dashboards-and-alerts/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/grafana-dashboards-and-alerts/references/dashboard-json-and-templating.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/grafana-dashboards-and-alerts/references/provisioning-and-organization.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/grafana-dashboards-and-alerts/references/red-metrics-queries.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/grafana-dashboards-and-alerts/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/grafana-dashboards-and-alerts/references/unified-alerting.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/graphql-patterns/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/graphql-patterns/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/graphql-patterns/references/apollo-client-frontend.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/graphql-patterns/references/apollo-client-setup.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/graphql-patterns/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/graphql-patterns/references/strawberry-backend.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/graphql-patterns/references/when-to-use-graphql.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/idea-refine/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/idea-refine/examples.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/idea-refine/frameworks.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/idea-refine/refinement-criteria.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/idea-refine/scripts/idea-refine.sh +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/incident-postmortem/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/incremental-implementation/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/interview-me/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/kafka-config-driven/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/kafka-config-driven/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/kafka-config-driven/references/config-and-sasl-kerberos.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/kafka-config-driven/references/consumer-producer-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/kafka-config-driven/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/kafka-config-driven/references/troubleshooting-and-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/kubectl-operations/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/kubectl-operations/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/kubectl-operations/references/command-reference.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/kubectl-operations/references/context-namespace-rbac.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/kubectl-operations/references/debugging-playbooks.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/kubectl-operations/references/output-formats-and-selectors.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/kubectl-operations/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/kubernetes-workload-hardening/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/kubernetes-workload-hardening/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/kubernetes-workload-hardening/references/networkpolicy-and-rbac.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/kubernetes-workload-hardening/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/kubernetes-workload-hardening/references/securitycontext-and-podsecurity.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/langfuse-llm-tracing/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/langfuse-llm-tracing/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/langfuse-llm-tracing/references/langfuse-client-and-tracing.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/langfuse-llm-tracing/references/python-and-typescript.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/langfuse-llm-tracing/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/library-review/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/load-testing/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/manual-test/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/modernization-and-migration/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/modernization-and-migration/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/modernization-and-migration/references/migration-best-practices.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/modernization-and-migration/references/pydantic-v1-to-v2.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/modernization-and-migration/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/modernization-and-migration/references/shared-internal-library.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/modernization-and-migration/references/sqlalchemy-14-to-20.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/multi-tenancy-patterns/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/multi-tenancy-patterns/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/multi-tenancy-patterns/references/caching-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/multi-tenancy-patterns/references/isolation-strategies.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/multi-tenancy-patterns/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/multi-tenancy-patterns/references/tenant-resolution.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/node-express-service/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/node-express-service/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/node-express-service/references/app-factory-and-mode-dispatch.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/node-express-service/references/config-and-module-alias.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/node-express-service/references/middleware-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/node-express-service/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/node-objection-knex/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/node-objection-knex/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/node-objection-knex/references/migrations-and-validation.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/node-objection-knex/references/objection-model-and-knex.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/node-objection-knex/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/notifications-and-messaging/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/notifications-and-messaging/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/notifications-and-messaging/references/provider-abstraction.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/notifications-and-messaging/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/notifications-and-messaging/references/templates-and-fallback.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/observability-and-logging/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/observability-and-logging/references/health-and-readiness.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/observability-and-logging/references/logging-and-structlog.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/observability-and-logging/references/outbound-metrics-and-multi-mode.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/observability-and-logging/references/pii-redaction.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/observability-and-logging/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/observability-and-logging/references/tracing-and-metrics.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/over-engineering-review/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/performance-optimization/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/planning-and-task-breakdown/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/playwright-verification/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/pydantic-schema-patterns/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/pydantic-schema-patterns/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/pydantic-schema-patterns/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/pydantic-schema-patterns/references/settings-and-validation.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/pydantic-schema-patterns/references/troubleshooting-and-common-errors.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/pydantic-schema-patterns/references/v1-vs-v2.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/python-dao-and-database/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/python-dao-and-database/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/python-dao-and-database/references/advanced-query-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/python-dao-and-database/references/basedao-and-sessions.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/python-dao-and-database/references/mongodb-advanced.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/python-dao-and-database/references/other-db-mongodb.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/python-dao-and-database/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/python-dao-and-database/references/sqlalchemy-1x-vs-2x.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/radix-tailwind-component-patterns/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/radix-tailwind-component-patterns/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/radix-tailwind-component-patterns/references/radix-primitives-and-variants.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/radix-tailwind-component-patterns/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/radix-tailwind-component-patterns/references/tailwind-theme-and-cn.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/react-hook-form-zod-patterns/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/react-hook-form-zod-patterns/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/react-hook-form-zod-patterns/references/form-setup-and-zod.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/react-hook-form-zod-patterns/references/multi-step-and-modes.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/react-hook-form-zod-patterns/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/redis-caching-patterns/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/redis-caching-patterns/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/redis-caching-patterns/references/cache-manager-and-fallback.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/redis-caching-patterns/references/namespacing-and-invalidation.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/redis-caching-patterns/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/refresh-docs/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/remember/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/safety-critical-patterns/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/scope/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/scope/scope-template.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/sdlc/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/security-and-hardening/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/security-verification/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/shannon-ai-pentest/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/shannon-ai-pentest/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/shannon-ai-pentest/references/operating-guide.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/shell-review/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/shipping-and-launch/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/simplification-debt/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/smoke-test/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/source-driven-development/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/spec-driven-development/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/sprint/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/sprint/sprint-template.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/tanstack-react-query-patterns/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/tanstack-react-query-patterns/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/tanstack-react-query-patterns/references/mutations-and-cache.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/tanstack-react-query-patterns/references/query-keys-and-hooks.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/tanstack-react-query-patterns/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/task-tracker-sync/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/temporal-config-driven/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/temporal-config-driven/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/temporal-config-driven/references/config-and-retry-idempotency.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/temporal-config-driven/references/dag-dsl-interpreter.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/temporal-config-driven/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/temporal-config-driven/references/schedule-registration.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/temporal-config-driven/references/schedules-and-cron.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/temporal-config-driven/references/worker-workflow-activity-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/temporal-developer/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/temporal-developer/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/temporal-developer/references/cli.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/temporal-developer/references/determinism.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/temporal-developer/references/gotchas.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/temporal-developer/references/languages.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/temporal-developer/references/testing.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/temporal-developer/references/versioning.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/test-driven-development/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/test-plan-review/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/testing-conventions/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/testing-conventions/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/testing-conventions/references/async-and-mocking.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/testing-conventions/references/coverage-gap-and-recommendations.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/testing-conventions/references/github-actions-test-orchestration.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/testing-conventions/references/pytest-and-fixtures.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/testing-conventions/references/pytest-asyncio-modes.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/testing-conventions/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/testing-conventions/references/security-regression-tests.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/testing-conventions/references/vitest-frontend-testing.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/threat-model/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/triage/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/ui-ux-design/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/unit-test/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/using-agent-skills/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/vitest-rtl-msw-patterns/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/vitest-rtl-msw-patterns/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/vitest-rtl-msw-patterns/references/msw-and-contract-tests.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/vitest-rtl-msw-patterns/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/vitest-rtl-msw-patterns/references/vitest-rtl-setup.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/zap-vapt-scanning/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/zap-vapt-scanning/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/zap-vapt-scanning/references/operating-guide.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/zap-vapt-scanning/scripts/endpoints.example.txt +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/zap-vapt-scanning/scripts/requirements.txt +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/zap-vapt-scanning/scripts/zap_vapt.py +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/zustand-state-patterns/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/zustand-state-patterns/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/zustand-state-patterns/references/async-polling-and-persistence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/zustand-state-patterns/references/repo-evidence.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/skills/zustand-state-patterns/references/store-structure-and-selectors.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/src/claude_kit/__main__.py +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/src/claude_kit/catalog.py +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/src/claude_kit/cli.py +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/src/claude_kit/hooks.py +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/src/claude_kit/models.py +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/src/claude_kit/pipeline.py +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/src/claude_kit/prompts.py +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/src/claude_kit/render.py +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/src/claude_kit/scaffold.py +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/src/claude_kit/upgrader.py +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/src/claude_kit/validator.py +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/CLAUDE.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/CLAUDE.stack.md.tmpl +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/CONTINUITY.template.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/README.claude-sdlc.md.tmpl +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/agent-memory/MEMORY.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/agent-memory/api/.gitkeep +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/agent-memory/architecture/.gitkeep +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/agent-memory/debugging/.gitkeep +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/agent-memory/gotchas/.gitkeep +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/agent-memory/patterns/.gitkeep +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/agent-memory/performance/.gitkeep +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/artifacts/adr.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/artifacts/api-change-report.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/artifacts/change-proposal.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/artifacts/feature-spec.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/artifacts/release-plan.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/artifacts/runbook.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/artifacts/security-review.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/artifacts/test-plan.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/agents/data-workflow-agent.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/agents/founder-prototype-agent.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/agents/internal-tools-builder.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/agents/pm-copilot.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/agents/staff-pm-reviewer.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/agents/support-ticket-engineer.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/packs/devops-and-release/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/packs/devops-and-release/pack.yaml +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/packs/engineering-core/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/packs/engineering-core/pack.yaml +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/packs/non-engineer-builder/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/packs/non-engineer-builder/pack.yaml +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/packs/onboarding-and-docs/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/packs/onboarding-and-docs/pack.yaml +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/packs/product-to-code/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/packs/product-to-code/pack.yaml +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/packs/quality-and-review/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/packs/quality-and-review/pack.yaml +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/packs/security-and-compliance/README.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/packs/security-and-compliance/pack.yaml +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/rules/ai-working-agreement.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/rules/ambiguity-resolution.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/rules/branch-and-pr-policy.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/rules/compliance-policy.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/rules/non-engineer-safe-coding.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/rules/pii-policy.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/rules/production-data-policy.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/rules/prompt-to-task-conversion.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/rules/prototype-boundaries.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/rules/secrets-policy.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/skills/customer-issue-to-fix/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/skills/feature-from-idea/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/skills/prompt-to-safe-task/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/skills/prototype-to-production/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/skills/repo-onboarding/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/skills/review-scope/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/skills/review-sprint/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/skills/review-sprint-plan/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/org/skills/review-ux-flow/SKILL.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/settings.json +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/stacks/backend/go/net-http/rules/go-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/stacks/backend/python/fastapi/rules/fastapi-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/stacks/db/mongodb/agents/migration-specialist.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/stacks/db/mongodb/agents/mongodb-specialist.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/stacks/db/mongodb/rules/mongodb-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/stacks/db/postgres/agents/db-performance-reviewer.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/stacks/db/postgres/agents/migration-specialist.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/stacks/db/postgres/agents/postgres-specialist.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/stacks/db/postgres/rules/database-performance.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/stacks/db/postgres/rules/postgres-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/stacks/frontend/react/rules/design-system-compliance.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/stacks/frontend/react/rules/mobile-design-guidelines.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/stacks/frontend/react/rules/react-patterns.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/stacks/frontend/react/rules/ui-design-system.md +0 -0
- {claude_code_kit-0.42.0 → claude_code_kit-0.43.0}/templates/stacks/frontend/react/rules/ux-patterns.md +0 -0
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"name": "claude-kit",
|
|
11
11
|
"source": "./",
|
|
12
12
|
"description": "Cookiecutter-style scaffolder for an autonomous Claude Code SDLC config (no app code, no Docker): install CLAUDE.md + .claude/ (rules, the profile's agents/skills, hooks, artifact templates) + optional .mcp.json, then run /sdlc to drive spec → review → build → test → security → ship through profile-aware quality gates, working memory, and a self-improving learnings loop.",
|
|
13
|
-
"version": "0.
|
|
13
|
+
"version": "0.43.0",
|
|
14
14
|
"license": "MIT",
|
|
15
15
|
"keywords": ["sdlc", "agents", "orchestration", "quality-gates", "workflow", "scaffold", "cookiecutter"]
|
|
16
16
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "claude-kit",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.43.0",
|
|
4
4
|
"description": "Cookiecutter-style scaffolder for an autonomous Claude Code SDLC config (no app code, no Docker). `claude-kit init` asks ordered questions and installs CLAUDE.md + .claude/ (rules, the profile's agents/skills, hooks, artifact templates) + optional .mcp.json; run /sdlc to drive spec → review → build → test → security → ship through profile-aware quality gates with working memory and a self-improving learnings loop.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Arjunsingh Yadav",
|
|
@@ -4,6 +4,27 @@ All notable changes to claude-kit are documented here. The format follows
|
|
|
4
4
|
[Keep a Changelog](https://keepachangelog.com/), and the project uses
|
|
5
5
|
[semantic versioning](https://semver.org/).
|
|
6
6
|
|
|
7
|
+
## [0.43.0] — 2026-06-26
|
|
8
|
+
|
|
9
|
+
**New `otel-tracing` collection skill** — vendor-neutral distributed tracing with OpenTelemetry and
|
|
10
|
+
Grafana Tempo. Re-derived from public OpenTelemetry, W3C Trace Context, and Grafana Tempo
|
|
11
|
+
documentation; nothing vendored, no proprietary content.
|
|
12
|
+
|
|
13
|
+
- **`skills/otel-tracing/`** (new collection skill) — the language-neutral tracing **pipeline and
|
|
14
|
+
backend**, complementary to the app-side `observability-and-logging`. `SKILL.md` covers the OTel
|
|
15
|
+
trace data model, the standard OTLP env-var contract (incl. the 4317-gRPC / 4318-HTTP +
|
|
16
|
+
`/v1/traces` port/path traps and the missing-`service.name` trap), the signal pipeline, env-gated /
|
|
17
|
+
fail-safe / idempotent instrumentation (auto + manual + framework, init order, span processors),
|
|
18
|
+
head-plus-tail sampling, Tempo essentials (distributor/ingester/querier/compactor, retention, the
|
|
19
|
+
metrics-generator), and trace↔logs↔metrics correlation. Six references go deep:
|
|
20
|
+
`instrumentation.md`, `collector.md`, `sampling.md`, `tempo.md`, `correlation.md`, and `gotchas.md`.
|
|
21
|
+
- **Clean auto-trigger boundaries** — the `description:` routes app-side observability code to
|
|
22
|
+
`observability-and-logging` and LLM/model tracing to `langfuse-llm-tracing`; both siblings carry a
|
|
23
|
+
reciprocal pointer back (the `observability-and-logging` OTel section now points to `otel-tracing`
|
|
24
|
+
for the pipeline/backend layer). The neutral policy stays in `.claude/rules/devops-observability.md`
|
|
25
|
+
and the role stays the `observability-engineer` agent.
|
|
26
|
+
- Counts: **102 → 103** total skills (**46 → 47** stack-collection; core unchanged at 56).
|
|
27
|
+
|
|
7
28
|
## [0.42.0] — 2026-06-26
|
|
8
29
|
|
|
9
30
|
**Doc hygiene + workflow polish** (PR 4 of 4 — the final adoption from the MIT
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: claude-code-kit
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.43.0
|
|
4
4
|
Summary: Cookiecutter-style scaffolder for an autonomous Claude Code SDLC configuration (no app code, no Docker). Asks ordered questions and installs CLAUDE.md + .claude/ (rules, the chosen profile's agents/skills, hooks, artifact templates) + optional .mcp.json; run /sdlc to drive spec → review → build → test → security → ship through profile-aware quality gates, working memory, and a self-improving learnings loop.
|
|
5
5
|
Project-URL: Homepage, https://github.com/ajyadav013/claude-kit
|
|
6
6
|
Project-URL: Repository, https://github.com/ajyadav013/claude-kit
|
|
@@ -84,7 +84,7 @@ Quick start) for the full breakdown of any row.
|
|
|
84
84
|
| 🔁 **Pipeline & quality gates** | Gate-enforced progression (zero open Critical/High/Medium to advance), per-profile gate sets, a fast-track for small changes, and an anti-sycophancy `devils-advocate` pass |
|
|
85
85
|
| 🤖 **Agent roster** | **28** tiered agents + per-database overlays + **6** org personas, led by an Orchestrator that never writes code |
|
|
86
86
|
| 🔍 **Self-verification & review** | RARV green-Verify (real commands, not imagined), blind parallel review, and read-only risk classification |
|
|
87
|
-
| 📐 **Rules & skills** | **23** stack-agnostic core rules (incl. 8 agent-operation rules) + **
|
|
87
|
+
| 📐 **Rules & skills** | **23** stack-agnostic core rules (incl. 8 agent-operation rules) + **103** context-activated skills (56 core + 47 stack-collection) |
|
|
88
88
|
| 🧱 **Stacks & overlays** | Stack-agnostic core + **10** overlay rule sets (React · FastAPI · Go · Postgres · Mongo) wired to your exact commands, incl. a full React design system |
|
|
89
89
|
| 🎚️ **Profiles, scopes & org** | **3** rigor profiles · **3** scopes · **5** autonomy levels · **7** org packs + **10** policy rules |
|
|
90
90
|
| 🧠 **Memory & learning** | Working memory across context compaction + a cost-aware learnings loop (`capture_mode`) so the same mistake isn't repeated |
|
|
@@ -281,7 +281,7 @@ need.
|
|
|
281
281
|
- **23 stack-agnostic core rules** in [`rules/`](rules/) — `mandatory-workflow`, `quality-gates`,
|
|
282
282
|
`rarv-cycle`, `continuity`, plus eight agent-operation rules and `autonomy-levels` +
|
|
283
283
|
`risk-classification` (see [`docs/agentic-patterns.md`](docs/agentic-patterns.md)).
|
|
284
|
-
- **
|
|
284
|
+
- **103 on-demand skills** in [`skills/`](skills/) (56 core + 47 stack-collection) — spec-driven dev, planning, TDD, debugging, code
|
|
285
285
|
review, threat modeling, and more — activated by context and led by the `sdlc` entrypoint.
|
|
286
286
|
- **Profile-subset install** — each profile installs a strict subset of agents, skills, hooks, and
|
|
287
287
|
rules (`lean ⊂ standard ⊂ enterprise`), from fast track to full audit.
|
|
@@ -437,7 +437,7 @@ owned gates, and the rule that **no gate passes on an unproven verdict**.
|
|
|
437
437
|
| **[wshobson/agents](https://github.com/wshobson/agents)** & similar agent collections | Large libraries of individual subagent prompts you pick from | A **smaller, opinionated set wired into a sequenced pipeline with owned quality gates** — agents aren't a menu, they're stages that hand off and block on each other. Adopt-by-reuse, not by accumulation. |
|
|
438
438
|
| **[GitHub spec-kit](https://github.com/github/spec-kit)** | A spec-driven workflow (constitution → spec → tasks → analyze) | The same coverage-gate idea (the `story-planner` 1f gate + `task-tracker-sync`) **absorbed into a broader** lifecycle that also covers review, security, build, test, release, and observability gates. Complementary, wider scope. |
|
|
439
439
|
| **claude-flow / multi-agent runtimes** | Runtime orchestrators that *execute* swarms of agents | **Portable configuration**, not a running process — the orchestration is described in rules the host (Claude Code) executes. No daemon, no lock-in, no app code. |
|
|
440
|
-
| **dotfiles / `CLAUDE.md` starters** | A single rules file or settings snippet | A **catalog-driven generator**: resolves your stack/profile/scope into the right subset of 23 rules, 28 agents,
|
|
440
|
+
| **dotfiles / `CLAUDE.md` starters** | A single rules file or settings snippet | A **catalog-driven generator**: resolves your stack/profile/scope into the right subset of 23 rules, 28 agents, 103 skills, gates, and hooks, kept **upgradeable** (`claude-kit upgrade` preserves your edits via owner + checksum). |
|
|
441
441
|
|
|
442
442
|
**Choose claude-kit when** you want a consistent, reviewable, **gate-enforced** autonomous-SDLC setup
|
|
443
443
|
that's the same across every repo and stack, installs in seconds, ships nothing you have to run, and
|
|
@@ -54,7 +54,7 @@ Quick start) for the full breakdown of any row.
|
|
|
54
54
|
| 🔁 **Pipeline & quality gates** | Gate-enforced progression (zero open Critical/High/Medium to advance), per-profile gate sets, a fast-track for small changes, and an anti-sycophancy `devils-advocate` pass |
|
|
55
55
|
| 🤖 **Agent roster** | **28** tiered agents + per-database overlays + **6** org personas, led by an Orchestrator that never writes code |
|
|
56
56
|
| 🔍 **Self-verification & review** | RARV green-Verify (real commands, not imagined), blind parallel review, and read-only risk classification |
|
|
57
|
-
| 📐 **Rules & skills** | **23** stack-agnostic core rules (incl. 8 agent-operation rules) + **
|
|
57
|
+
| 📐 **Rules & skills** | **23** stack-agnostic core rules (incl. 8 agent-operation rules) + **103** context-activated skills (56 core + 47 stack-collection) |
|
|
58
58
|
| 🧱 **Stacks & overlays** | Stack-agnostic core + **10** overlay rule sets (React · FastAPI · Go · Postgres · Mongo) wired to your exact commands, incl. a full React design system |
|
|
59
59
|
| 🎚️ **Profiles, scopes & org** | **3** rigor profiles · **3** scopes · **5** autonomy levels · **7** org packs + **10** policy rules |
|
|
60
60
|
| 🧠 **Memory & learning** | Working memory across context compaction + a cost-aware learnings loop (`capture_mode`) so the same mistake isn't repeated |
|
|
@@ -251,7 +251,7 @@ need.
|
|
|
251
251
|
- **23 stack-agnostic core rules** in [`rules/`](rules/) — `mandatory-workflow`, `quality-gates`,
|
|
252
252
|
`rarv-cycle`, `continuity`, plus eight agent-operation rules and `autonomy-levels` +
|
|
253
253
|
`risk-classification` (see [`docs/agentic-patterns.md`](docs/agentic-patterns.md)).
|
|
254
|
-
- **
|
|
254
|
+
- **103 on-demand skills** in [`skills/`](skills/) (56 core + 47 stack-collection) — spec-driven dev, planning, TDD, debugging, code
|
|
255
255
|
review, threat modeling, and more — activated by context and led by the `sdlc` entrypoint.
|
|
256
256
|
- **Profile-subset install** — each profile installs a strict subset of agents, skills, hooks, and
|
|
257
257
|
rules (`lean ⊂ standard ⊂ enterprise`), from fast track to full audit.
|
|
@@ -407,7 +407,7 @@ owned gates, and the rule that **no gate passes on an unproven verdict**.
|
|
|
407
407
|
| **[wshobson/agents](https://github.com/wshobson/agents)** & similar agent collections | Large libraries of individual subagent prompts you pick from | A **smaller, opinionated set wired into a sequenced pipeline with owned quality gates** — agents aren't a menu, they're stages that hand off and block on each other. Adopt-by-reuse, not by accumulation. |
|
|
408
408
|
| **[GitHub spec-kit](https://github.com/github/spec-kit)** | A spec-driven workflow (constitution → spec → tasks → analyze) | The same coverage-gate idea (the `story-planner` 1f gate + `task-tracker-sync`) **absorbed into a broader** lifecycle that also covers review, security, build, test, release, and observability gates. Complementary, wider scope. |
|
|
409
409
|
| **claude-flow / multi-agent runtimes** | Runtime orchestrators that *execute* swarms of agents | **Portable configuration**, not a running process — the orchestration is described in rules the host (Claude Code) executes. No daemon, no lock-in, no app code. |
|
|
410
|
-
| **dotfiles / `CLAUDE.md` starters** | A single rules file or settings snippet | A **catalog-driven generator**: resolves your stack/profile/scope into the right subset of 23 rules, 28 agents,
|
|
410
|
+
| **dotfiles / `CLAUDE.md` starters** | A single rules file or settings snippet | A **catalog-driven generator**: resolves your stack/profile/scope into the right subset of 23 rules, 28 agents, 103 skills, gates, and hooks, kept **upgradeable** (`claude-kit upgrade` preserves your edits via owner + checksum). |
|
|
411
411
|
|
|
412
412
|
**Choose claude-kit when** you want a consistent, reviewable, **gate-enforced** autonomous-SDLC setup
|
|
413
413
|
that's the same across every repo and stack, installs in seconds, ships nothing you have to run, and
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Production Engineering Skills Collection
|
|
2
2
|
|
|
3
|
-
These forty-
|
|
3
|
+
These forty-seven Claude Code skills encode production-proven engineering conventions derived from real-world Python/FastAPI, Node/Express, and React services. Each skill was extracted from analyzing patterns across multiple production backend and frontend services, capturing canonical patterns for FastAPI microservices, async Python, Kafka/Temporal integration, multi-tenancy, database access, layered configuration, Redis caching, GCS file handling, LLM integration (Vertex AI / Langfuse), Node/Express services, React frontends (state, data-fetching, forms, design systems, testing), observability (including Grafana dashboards & unified alerting), authentication, containerization (with granular Dockerfile/compose deep-dives), testing, data pipelines, security scanning (OWASP ZAP VAPT/DAST and autonomous AI pentesting), security architecture (edge-to-service signed-identity trust boundary, Kubernetes workload hardening), scheduled & recurring jobs (Kubernetes CronJob + Temporal Schedule), kubectl day-2 operations, and modernization strategies. Use them to align new projects with established patterns, audit existing services, or onboard engineers to modern Python, Node, and React development practices.
|
|
4
4
|
|
|
5
5
|
> **Where these live in this repo:** the skill folders are under [`skills/`](../../skills/) (auto-discovered by the claude-kit plugin). The links below point there.
|
|
6
6
|
|
|
@@ -20,6 +20,7 @@ These forty-six Claude Code skills encode production-proven engineering conventi
|
|
|
20
20
|
| **design-patterns-and-conventions** | Design conventions across repos — naming (classes/files/routes), error handling (ResponseData envelope), config hierarchy, logging structured-log patterns, code organization | [SKILL.md](../../skills/design-patterns-and-conventions/SKILL.md) |
|
|
21
21
|
| **multi-tenancy-patterns** | Multi-tenant isolation strategies — tenant resolution (header/JWT/session), Postgres RLS, multi-pool databases, lazy connectors, data-layer org_id tenancy | [SKILL.md](../../skills/multi-tenancy-patterns/SKILL.md) |
|
|
22
22
|
| **observability-and-logging** | Structured logging, OpenTelemetry tracing, Sentry error tracking, Prometheus metrics, NewRelic, request/correlation IDs, /health and /readiness endpoints | [SKILL.md](../../skills/observability-and-logging/SKILL.md) |
|
|
23
|
+
| **otel-tracing** | Vendor-neutral distributed tracing *pipeline + backend* (language-agnostic; complement to observability-and-logging) — the OTel trace data model, the standard OTLP env-var contract, the OTLP→Collector→Tempo path, head-plus-tail sampling (loadbalancing exporter, `tail_sampling`), W3C context propagation across async/queue boundaries, the Grafana Tempo backend (distributor/ingester/querier/compactor, retention/compaction, OTLP ports/paths), TraceQL, the metrics-generator (span metrics + service graphs), and trace↔logs↔metrics correlation (exemplars); re-derived from public OpenTelemetry, W3C Trace Context, and Grafana Tempo docs | [SKILL.md](../../skills/otel-tracing/SKILL.md) |
|
|
23
24
|
| **grafana-dashboards-and-alerts** | Grafana dashboards + unified alerting — dashboard JSON model, `$datasource`/cascading `label_values` template variables, RED-metric PromQL (NGINX ingress, OTel span-metrics, pod utilization), multi-stage alert rules with label-based routing (slack_0/pagerduty_0/webhook_0) + dashboard/panel deep-link annotations, Tempo service graphs, and dashboards-as-code provisioning | [SKILL.md](../../skills/grafana-dashboards-and-alerts/SKILL.md) |
|
|
24
25
|
| **auth-and-rbac** | Authentication dependency chain (get_current_client / x-user-data header), JWT verification, RBAC role/permission enforcement, password hashing (argon2), OTP (pyotp), tenant-scoped authorization | [SKILL.md](../../skills/auth-and-rbac/SKILL.md) |
|
|
25
26
|
| **containerization-and-deployment** | Multi-stage Dockerfiles, docker-compose for local infra, one-image-many-roles pattern (entrypoint.py MODE dispatch), cert/keytab writing from env + kinit bootstrap, k8s health/readiness probes, CI pipelines, secrets/env hygiene | [SKILL.md](../../skills/containerization-and-deployment/SKILL.md) |
|
|
@@ -71,7 +72,8 @@ These forty-six Claude Code skills encode production-proven engineering conventi
|
|
|
71
72
|
- "build multi-tenant data isolation" → **multi-tenancy-patterns**
|
|
72
73
|
- "set up React frontend" → **frontend-repo-architecture**
|
|
73
74
|
- "migrate Pydantic v1 to v2" → **pydantic-schema-patterns**
|
|
74
|
-
- "add observability / structured logging / tracing" → **observability-and-logging**
|
|
75
|
+
- "add observability / structured logging / app-side tracing instrumentation" → **observability-and-logging**
|
|
76
|
+
- "design the OTLP/Collector/Tempo tracing pipeline / sample traces (head+tail) / write TraceQL / configure the Tempo backend / correlate traces↔logs↔metrics" → **otel-tracing**
|
|
75
77
|
- "build a Grafana dashboard / write dashboard JSON or PromQL / RED dashboard / Grafana alert rule / contact points / provision dashboards as code" → **grafana-dashboards-and-alerts**
|
|
76
78
|
- "implement authentication / RBAC / JWT verification" → **auth-and-rbac**
|
|
77
79
|
- "create Dockerfile / docker-compose / k8s probes" → **containerization-and-deployment**
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "claude-code-kit"
|
|
7
|
-
version = "0.
|
|
7
|
+
version = "0.43.0"
|
|
8
8
|
description = "Cookiecutter-style scaffolder for an autonomous Claude Code SDLC configuration (no app code, no Docker). Asks ordered questions and installs CLAUDE.md + .claude/ (rules, the chosen profile's agents/skills, hooks, artifact templates) + optional .mcp.json; run /sdlc to drive spec → review → build → test → security → ship through profile-aware quality gates, working memory, and a self-improving learnings loop."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.9"
|
|
@@ -76,6 +76,8 @@ and blow up log volume. _(reference service pattern)_
|
|
|
76
76
|
|
|
77
77
|
### OpenTelemetry Distributed Tracing
|
|
78
78
|
|
|
79
|
+
> This section is the **app-side** wiring (SDK init, FastAPI/asyncpg/Redis/Kafka auto-instrumentation, the `OTEL_ENABLED` switch). For the language-neutral tracing **pipeline and backend** — the OTLP/Collector topology, head-plus-tail sampling, the Grafana Tempo backend, TraceQL, and trace↔logs↔metrics correlation — see the sibling `otel-tracing` skill.
|
|
80
|
+
|
|
79
81
|
**Initialize SDK first**: Call `initialize_telemetry()` in the app startup hook; create `TracerProvider(resource=Resource({SERVICE_NAME: ...}))`, add `BatchSpanProcessor(OTLPSpanExporter(endpoint=...))`, set global provider with `trace.set_tracer_provider()`. _(reference service pattern)_
|
|
80
82
|
|
|
81
83
|
**Auto-instrumentation**: After SDK init, call `FastAPIInstrumentor.instrument_app(app)`, `AsyncPGInstrumentor().instrument()`, `RedisInstrumentor().instrument()`. Kafka consumers: `KafkaInstrumentor().instrument()`. _(production services pattern)_
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# otel-tracing
|
|
2
|
+
|
|
3
|
+
Language-neutral distributed tracing: model your system with the OpenTelemetry data model, ship spans through the OTLP/Collector pipeline into Grafana Tempo, sample smartly (head plus tail), propagate W3C context across services and queues, query with TraceQL, and correlate traces with logs and metrics. This skill is the concrete OpenTelemetry-plus-Tempo how-to for turning isolated spans into debuggable distributed request flows, independent of any single language or framework.
|
|
4
|
+
|
|
5
|
+
> **Boundary.** This skill owns the vendor-neutral tracing *pipeline* and *backend*: the OTel data model, OTLP protocol, Collector topology, sampling, propagation, the Tempo backend, and TraceQL. It does NOT cover app-side observability setup (structured logging, PII/secret redaction, error tracking, application RED metrics, health probes, framework auto-instrumentation wiring) — that is the sibling **observability-and-logging** — nor LLM/model-call tracing (prompts, tokens, cost) — that is **langfuse-llm-tracing**. The neutral policy lives in `.claude/rules/devops-observability.md` and the role is the **observability-engineer** agent; this skill is their concrete OTel+Tempo reference.
|
|
6
|
+
|
|
7
|
+
## What's inside
|
|
8
|
+
|
|
9
|
+
| File | Covers |
|
|
10
|
+
|------|--------|
|
|
11
|
+
| `SKILL.md` | The overview: OTel data model, the standard env-var contract, the signal pipeline, instrumentation principles (env-gated/fail-safe init, auto vs manual vs framework interceptors, one-trace-tree propagation), sampling (head + tail), Tempo essentials, TraceQL, and trace/logs/metrics correlation. |
|
|
12
|
+
| `references/instrumentation.md` | The data model and resource semantic conventions, SDK init order (Resource → Exporter → SpanProcessor → TracerProvider), the env-gated/fail-safe/idempotent/shutdown-flush pattern, the full env-var contract, auto vs manual vs framework-interceptor instrumentation, and W3C context propagation across async/queue boundaries. |
|
|
13
|
+
| `references/collector.md` | When to run the OTel Collector (and when to export app→Tempo directly), the receiver→processor→exporter pipeline, agent vs gateway topology, the core processors (`memory_limiter`, `batch`, `resource`/`attributes`, `tail_sampling`), the OTLP exporter to Tempo, and the loadbalancing exporter that tail sampling requires. |
|
|
14
|
+
| `references/sampling.md` | Head sampling (parent-based + trace-id-ratio in the SDK) vs tail sampling (`tail_sampling` in the Collector), the hybrid production pattern (keep all errors + slow traces + a baseline %), consistent sampling-decision propagation, and the cost of 100% sampling. |
|
|
15
|
+
| `references/tempo.md` | Tempo as an object-storage trace backend: native OTLP ingest (4317/4318) and the `/v1/traces` path nuance, the distributor/ingester/querier/compactor roles, deployment modes, retention/compaction, TraceQL query patterns, and the metrics-generator (span metrics + service graphs → Prometheus). |
|
|
16
|
+
| `references/correlation.md` | Binding the three signals: `trace_id`/`span_id` on every log line (logs→traces), exemplars (metrics→traces), service graphs and span metrics (traces→metrics), consistent resource attributes so they join, and the error-tracker/OTel coexistence rule (avoid double-tracing). |
|
|
17
|
+
| `references/gotchas.md` | The highest-leverage failure modes and fixes: endpoint/port/path traps, a legacy exporter overriding OTLP, fail-safe init, lost context propagation across queues, missing `service.name`, over-sampling cost, batch-queue overflow, cardinality blowups, and double-tracing. |
|
|
18
|
+
|
|
19
|
+
## Provenance
|
|
20
|
+
|
|
21
|
+
Re-derived (not vendored) from public, authoritative documentation: OpenTelemetry.io (SDK configuration, OTLP exporter, Collector architecture, semantic conventions, context propagation, sampling), the W3C Trace Context specification, and Grafana Tempo documentation (architecture, TraceQL, metrics-generator, datasource configuration). Vendor-neutral; no proprietary content. When this skill and the upstream docs disagree, trust upstream.
|
|
22
|
+
|
|
23
|
+
## When to use
|
|
24
|
+
|
|
25
|
+
- **Designing the pipeline** — where to run the Collector, agent vs gateway topology, how to order receivers/processors/exporters.
|
|
26
|
+
- **Debugging missing or fragmented traces** — TracerProvider init order, context propagation across async/queue boundaries, `tail_sampling` without a loadbalancing exporter, endpoint/port/path mismatches.
|
|
27
|
+
- **Choosing sampling** — head-based in the SDK, tail-based (error/latency-aware) in the Collector, and the hybrid production pattern: SDKs use `parentbased_always_on` to preserve context, the Collector applies `tail_sampling` (100% errors, 100% latency outliers, low-rate probabilistic for the rest).
|
|
28
|
+
- **Configuring Tempo** — OTLP receivers, trace-ID sharding, retention/compaction, object storage, and the metrics-generator (RED metrics, service graphs).
|
|
29
|
+
- **Writing TraceQL** — filtering by service, span attribute, duration, status; navigating structure with descendant/ancestor operators; preferring trace-level intrinsics.
|
|
30
|
+
- **Correlating signals** — stamping `trace_id`/`span_id` onto log lines, configuring trace-to-logs in Grafana, enabling exemplars, and querying across traces, logs, and metrics.
|
|
31
|
+
|
|
32
|
+
Do NOT reach here for app-side observability code (that is **observability-and-logging**) or LLM tracing (that is **langfuse-llm-tracing**).
|
|
33
|
+
|
|
34
|
+
## Boundary vs siblings
|
|
35
|
+
|
|
36
|
+
| Skill | Owns | Scope |
|
|
37
|
+
|-------|------|-------|
|
|
38
|
+
| **otel-tracing** (this) | OTel data model, OTLP/Collector/Tempo pipeline, sampling, W3C propagation, TraceQL, signal correlation | Language-neutral, backend-focused |
|
|
39
|
+
| **observability-and-logging** | App-side instrumentation: framework/library auto-instrumentation wiring, structured logging, PII/secret redaction, error tracking, application RED metrics, health checks | Stack-specific, app-focused |
|
|
40
|
+
| **langfuse-llm-tracing** | LLM observability: prompt/completion/token/cost tracking, model-call hierarchies | Model-call-focused |
|
|
41
|
+
|
|
42
|
+
When a task crosses the line — for example "add tracing to a service" — **observability-and-logging** wires the app-side auto-instrumentation and sets `OTEL_EXPORTER_OTLP_ENDPOINT`; **otel-tracing** designs the Collector pipeline and Tempo backend that receive the spans. The policy governing all three lives in `.claude/rules/devops-observability.md` (honesty, fail-safe init, reuse-first cluster integration, PII redaction).
|
|
43
|
+
|
|
44
|
+
## Related
|
|
45
|
+
|
|
46
|
+
- **Agent:** `observability-engineer` (owns the tracing pipeline, sampling, Tempo, correlation).
|
|
47
|
+
- **Rules:** `.claude/rules/devops-observability.md` (policy), `.claude/rules/agent-resilience.md` (fail-safe init).
|
|
48
|
+
- **Sibling skills:** `observability-and-logging` (app-side), `langfuse-llm-tracing` (LLM-specific).
|
|
49
|
+
- **Deep dive:** `SKILL.md` — the overview, with the six `references/` files above.
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: otel-tracing
|
|
3
|
+
description: >-
|
|
4
|
+
Vendor-neutral distributed tracing with OpenTelemetry exported to Grafana Tempo. Covers the
|
|
5
|
+
OTel trace data model, the OTLP/Collector/Tempo pipeline, the standard env-var contract,
|
|
6
|
+
context propagation, sampling, TraceQL, service graphs, trace-to-logs/metrics correlation.
|
|
7
|
+
Do NOT use for app-side observability setup (structured logging, PII redaction, error tracking,
|
|
8
|
+
RED metrics, liveness/readiness, framework auto-instrumentation wiring) — that is
|
|
9
|
+
'observability-and-logging'. Do NOT use for LLM call tracing (prompts, tokens, cost) — that is
|
|
10
|
+
'langfuse-llm-tracing'. The neutral policy lives in .claude/rules/devops-observability.md; the
|
|
11
|
+
role is the observability-engineer agent.
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# Distributed Tracing with OpenTelemetry and Grafana Tempo
|
|
15
|
+
|
|
16
|
+
Vendor-neutral distributed tracing instruments requests across service boundaries, correlates them with logs and metrics, and exports trace data to Grafana Tempo for querying with TraceQL. The OpenTelemetry SDK captures spans in your service, exports OTLP to an optional Collector for sampling and enrichment, and lands traces in Tempo's object-storage backend. Tempo derives service-graph metrics, links traces to logs via shared identifiers, and surfaces exemplars that pivot from metric spikes to representative traces. This skill covers the OTel data model, the standard env-var contract, the pipeline topology, instrumentation principles, sampling, TraceQL, and the correlation patterns that bind traces to logs and metrics.
|
|
17
|
+
|
|
18
|
+
> **Sibling boundary:** This skill covers the language-neutral OTLP/Collector/Tempo pipeline and the OTel data model. For app-side observability (structured logging, PII/secret redaction, error tracking, RED metrics, liveness/readiness probes, framework auto-instrumentation wiring), see `observability-and-logging`. For LLM call tracing (prompts, tokens, cost), see `langfuse-llm-tracing`.
|
|
19
|
+
|
|
20
|
+
## When to use
|
|
21
|
+
|
|
22
|
+
- You need to trace requests across multiple services and see the full call graph.
|
|
23
|
+
- You want to correlate logs with traces by stamping trace IDs onto structured log lines.
|
|
24
|
+
- You are adopting OpenTelemetry and need to configure the SDK, Collector, and Tempo backend.
|
|
25
|
+
- You need to derive RED metrics (service graphs) from trace spans without instrumenting metrics in application code.
|
|
26
|
+
- You want to sample traces intelligently (retain all errors and slow requests, probabilistic sampling for normal traffic) to control ingestion cost.
|
|
27
|
+
- You need to query traces by service name, span attributes, duration, or status using TraceQL.
|
|
28
|
+
- You are joining a framework or orchestration-engine OTel interceptor with HTTP/RPC auto-instrumentation to build a single trace tree.
|
|
29
|
+
|
|
30
|
+
## The signal pipeline
|
|
31
|
+
|
|
32
|
+
```
|
|
33
|
+
┌────────────────┐
|
|
34
|
+
│ Instrumented │ service.name, deployment.environment
|
|
35
|
+
│ Service │ (OTel SDK: auto + manual instrumentation)
|
|
36
|
+
└────────┬───────┘
|
|
37
|
+
│ OTLP (gRPC :4317 or HTTP :4318)
|
|
38
|
+
▼
|
|
39
|
+
┌────────────────┐ optional but recommended in production
|
|
40
|
+
│ OTel Collector │ (batch, tail_sampling, enrichment, redaction)
|
|
41
|
+
└────────┬───────┘
|
|
42
|
+
│ OTLP
|
|
43
|
+
▼
|
|
44
|
+
┌────────────────┐ native OTLP receiver (:4317/:4318)
|
|
45
|
+
│ Grafana Tempo │ (distributor → ingester → object storage)
|
|
46
|
+
│ (Backend) │ (metrics-generator → Prometheus, querier, compactor)
|
|
47
|
+
└────────┬───────┘
|
|
48
|
+
│ HTTP/gRPC API + TraceQL
|
|
49
|
+
▼
|
|
50
|
+
┌────────────────┐
|
|
51
|
+
│ Grafana │ (Explore, dashboards, trace-to-logs, trace-to-metrics)
|
|
52
|
+
└────────────────┘
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
The service exports OTLP either directly to Tempo's distributor or through a Collector. The Collector is optional for simple setups but recommended for buffering, tail sampling, attribute redaction, and fan-out to multiple backends. Tempo's distributor validates spans and shards a trace by hashing its TraceId; the ingester batches spans into blocks and flushes them to object storage (S3/GCS/Azure); the compactor merges blocks and enforces retention; the querier (behind a query-frontend) serves TraceQL. The optional metrics-generator derives RED metrics, and Grafana queries it all.
|
|
56
|
+
|
|
57
|
+
## The OTel trace data model
|
|
58
|
+
|
|
59
|
+
| Concept | Definition |
|
|
60
|
+
|---------|-----------|
|
|
61
|
+
| **Trace** | The full lifecycle of a request as it flows through a distributed system, identified by a 16-byte TraceId. |
|
|
62
|
+
| **Span** | A single operation within a trace (an HTTP request, a database query, a function call), identified by an 8-byte SpanId. Child spans record their parent's SpanId to form hierarchies. |
|
|
63
|
+
| **SpanContext** | The propagated, immutable identifiers: TraceId, SpanId, and TraceFlags (a 1-byte bitmap carrying the sampling decision). W3C Trace Context carries it in the `traceparent` header. |
|
|
64
|
+
| **Attributes** | Key-value pairs describing the span (`http.request.method`, `db.system`, `rpc.service`). Use semantic conventions for cross-vendor portability. |
|
|
65
|
+
| **Events** | Timestamped annotations attached to a span (exceptions, state transitions). Capped by `OTEL_SPAN_EVENT_COUNT_LIMIT` (default 128). |
|
|
66
|
+
| **Status** | Span outcome: Unset, Ok, or Error. Tail sampling uses status to retain all errors. |
|
|
67
|
+
| **Resource** | The entity producing telemetry (service, host, container). Must include `service.name`; if unset, SDKs fall back to `unknown_service:<executable>`. The value should be identical across all instances of a horizontally-scaled service. |
|
|
68
|
+
| **Semantic Conventions** | Standard attribute names (`http.response.status_code`, `db.query.text`, `server.address`) that enable cross-backend queries and automatic dashboards. |
|
|
69
|
+
|
|
70
|
+
## The standard OTel env-var contract
|
|
71
|
+
|
|
72
|
+
Configure the SDK via environment variables to keep application code endpoint-agnostic. The same binary points at a local collector, a cluster collector, or Tempo's OTLP receiver just by changing the environment.
|
|
73
|
+
|
|
74
|
+
| Variable | Purpose | Default / Notes |
|
|
75
|
+
|----------|---------|-----------------|
|
|
76
|
+
| `OTEL_EXPORTER_OTLP_ENDPOINT` | Base endpoint URL for all signals (e.g. `http://collector:4318`). OTLP/HTTP appends `/v1/traces`. | `http://localhost:4317` (gRPC) |
|
|
77
|
+
| `OTEL_EXPORTER_OTLP_TRACES_ENDPOINT` | Signal-specific traces endpoint; overrides the base endpoint for traces. Use when routing signals to different backends. | Unset |
|
|
78
|
+
| `OTEL_EXPORTER_OTLP_PROTOCOL` | Transport: `grpc`, `http/protobuf` (recommended), `http/json`. Verify backend support. | SDK-dependent |
|
|
79
|
+
| `OTEL_TRACES_EXPORTER` | Exporter to use: `otlp` (default), `jaeger`, `zipkin`, `none`. Set `none` to disable trace export. | `otlp` |
|
|
80
|
+
| `OTEL_SERVICE_NAME` | Sets the `service.name` resource attribute. **Required to find traces in Tempo.** Takes precedence over `OTEL_RESOURCE_ATTRIBUTES`. Use the same value for all instances of one service. | `unknown_service:<executable>` |
|
|
81
|
+
| `OTEL_RESOURCE_ATTRIBUTES` | Comma-separated key=value pairs (e.g. `service.namespace=checkout,deployment.environment=production,service.version=1.2.3`). | Empty |
|
|
82
|
+
| `OTEL_EXPORTER_OTLP_HEADERS` | Headers sent with OTLP requests (e.g. `Authorization=Bearer token`). For signal-specific headers, use `OTEL_EXPORTER_OTLP_TRACES_HEADERS`. | Empty |
|
|
83
|
+
| `OTEL_EXPORTER_OTLP_COMPRESSION` | Compression: `gzip`, `none`. Use `gzip` over public networks to reduce egress. | `none` |
|
|
84
|
+
| `OTEL_PROPAGATORS` | Propagators: `tracecontext`, `baggage`, `b3`, `b3multi`, `jaeger`, `xray`, `ottrace`. Comma-separated. | `tracecontext,baggage` (W3C) |
|
|
85
|
+
| `OTEL_TRACES_SAMPLER` | Sampler: `always_on`, `always_off`, `traceidratio`, `parentbased_always_on`, `parentbased_always_off`, `parentbased_traceidratio`. | `parentbased_always_on` |
|
|
86
|
+
| `OTEL_TRACES_SAMPLER_ARG` | For ratio samplers, a decimal 0.0–1.0 sampling probability (e.g. `0.1` for 10%). | Unset |
|
|
87
|
+
| `OTEL_LOG_LEVEL` | SDK log level: `debug`, `info`, `warn`, `error`. Use `debug` to troubleshoot init or export. | `info` |
|
|
88
|
+
| `OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT` | Max length of span attribute values (e.g. `4096`). Prevents unbounded attribute sizes. | Unlimited |
|
|
89
|
+
| `OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT` | Max attributes per span. | `128` |
|
|
90
|
+
|
|
91
|
+
**Endpoint pitfall:** Port 4317 is gRPC, 4318 is HTTP. OTLP/HTTP requires `/v1/traces` appended to the endpoint (some libraries append it, some require it in `OTEL_EXPORTER_OTLP_TRACES_ENDPOINT`); OTLP/gRPC uses no path suffix. Verify protocol-port alignment — 4317 with `http/protobuf`, or 4318 with `grpc`, is a common misconfiguration.
|
|
92
|
+
|
|
93
|
+
**Resource pitfall:** Missing `service.name` is the most common "I can't find my traces" cause. Always set `OTEL_SERVICE_NAME` or include `service.name=your-service` in `OTEL_RESOURCE_ATTRIBUTES`. Setting both can confuse debugging, since `OTEL_SERVICE_NAME` wins.
|
|
94
|
+
|
|
95
|
+
## Instrumentation principle
|
|
96
|
+
|
|
97
|
+
**Env-gated + fail-safe + idempotent:**
|
|
98
|
+
|
|
99
|
+
- Enable tracing only when a standard OTLP endpoint/exporter env var is present (`OTEL_EXPORTER_OTLP_ENDPOINT`, `OTEL_EXPORTER_OTLP_TRACES_ENDPOINT`, or `OTEL_TRACES_EXPORTER` set to a non-`none` value). Otherwise, no-op and log.
|
|
100
|
+
- Tracing setup must never crash or block service startup. Wrap initialization in the language's error guard and continue untraced on failure (`.claude/rules/agent-resilience.md`).
|
|
101
|
+
- Make initialization idempotent. Flush and shut down the tracer provider on graceful shutdown, or you lose the last batch.
|
|
102
|
+
|
|
103
|
+
**Auto + manual + framework interceptors:**
|
|
104
|
+
|
|
105
|
+
- **Auto-instrumentation** uses language mechanisms (Java bytecode manipulation, runtime monkey patching, .NET runtime hooks) to intercept library/framework calls (HTTP, database, RPC). It gives immediate visibility; its limitation is no business-logic awareness.
|
|
106
|
+
- **Manual instrumentation** provides precision for custom spans, business operations, and enriched attributes. Production pattern: auto-instrumentation baseline plus manual spans for business-critical flows.
|
|
107
|
+
- **Framework interceptors** (web-framework and workflow/orchestration-engine OTel interceptors) emit deeper semantic spans than generic HTTP instrumentation and propagate context to child operations.
|
|
108
|
+
|
|
109
|
+
**One trace tree via propagation:**
|
|
110
|
+
|
|
111
|
+
- W3C Trace Context propagation uses the `traceparent` header (version, trace-id, parent span-id, trace-flags). Configure a composite propagator with the W3C trace-context and baggage propagators.
|
|
112
|
+
- Context propagation across async boundaries requires the language's context mechanism (e.g. `AsyncLocalStorage` in Node.js, `contextvars` in Python). At queue boundaries, manually inject context into message headers before enqueue and extract it after dequeue to maintain trace continuity.
|
|
113
|
+
- Baggage propagates key-value pairs across service boundaries alongside trace context. It is visible to the entire request path; validate at system boundaries, keep it small, and use it only for non-sensitive identifiers (never PII or credentials).
|
|
114
|
+
|
|
115
|
+
**Initialization order:**
|
|
116
|
+
|
|
117
|
+
Configure Resource → Exporter → SpanProcessor → TracerProvider, then register the global provider **before** any instrumentation or application code runs. Instrumentation libraries cache the global TracerProvider at import/load time, so late initialization yields no-op tracers and zero spans.
|
|
118
|
+
|
|
119
|
+
**Span processors:**
|
|
120
|
+
|
|
121
|
+
- Production deployments use `BatchSpanProcessor` (batches spans before export; OTel spec defaults: 5s schedule delay, 512 max export batch size, 2048 max queue size, 30s export timeout). High-throughput services raise the queue and batch sizes so spans are not dropped under load.
|
|
122
|
+
- `SimpleSpanProcessor` (synchronous export per span) is for testing only; it blocks application threads and degrades latency.
|
|
123
|
+
|
|
124
|
+
See `references/instrumentation.md` for auto-instrumentation setup, manual span creation, and context propagation patterns. See `references/collector.md` for Collector topology and processor pipelines.
|
|
125
|
+
|
|
126
|
+
## Sampling
|
|
127
|
+
|
|
128
|
+
**Head-based sampling** makes the decision at span creation time. It is stateless and gives predictable cost control but cannot guarantee capture of errors or latency outliers. SDKs use `parentbased_always_on` (preserve trace context) or `parentbased_traceidratio` (probabilistic).
|
|
129
|
+
|
|
130
|
+
**Tail-based sampling** defers the decision until the trace completes, enabling outcome-driven selection (errors, high latency, specific attributes). It requires buffering spans in Collector memory, routing all spans of a trace to one instance via the loadbalancing exporter (keyed by TraceId), and careful capacity planning. A missing or misconfigured loadbalancing exporter fragments traces and produces wrong decisions.
|
|
131
|
+
|
|
132
|
+
**Hybrid sampling pattern (production standard):**
|
|
133
|
+
|
|
134
|
+
- SDKs use `parentbased_always_on` to preserve trace context across services.
|
|
135
|
+
- The Collector applies `tail_sampling` with policies: 100% errors, 100% latency outliers, a low probabilistic rate (e.g. ~5%) for normal traffic.
|
|
136
|
+
- Result: every critical trace retained for debugging, normal traffic sampled for cost control.
|
|
137
|
+
|
|
138
|
+
**Tail sampling pitfalls:** Set `decision_wait` to 2–3× p99 trace duration; if it is shorter, the sampler decides on incomplete traces. Tail sampling buffers whole traces in memory, so monitor Collector memory and always pair `tail_sampling` with the `memory_limiter` processor (first in the pipeline, `batch` last).
|
|
139
|
+
|
|
140
|
+
See `references/sampling.md` for sampler configuration, tail-sampling policies, and the loadbalancing exporter topology.
|
|
141
|
+
|
|
142
|
+
## Tempo essentials
|
|
143
|
+
|
|
144
|
+
Grafana Tempo is a cost-efficient, object-storage-backed trace backend that natively accepts OTLP on the default ports 4317 (gRPC) and 4318 (HTTP) — no special exporter is needed, since the app and Collector already speak OTLP. The **distributor** validates spans and shards a trace by hashing its TraceId. The **ingester** batches spans into blocks and flushes them to object storage (S3/GCS/Azure); recent, not-yet-flushed traces are served from the ingesters. The **querier** (behind a **query-frontend**) reads bloom filters and indexes from object storage to locate traces for TraceQL. The **compactor** merges smaller blocks, deduplicates, and expires data after the retention period (the `compactor.block_retention` default is 336h / 14 days). Tempo runs as a single binary (monolithic) or as independently-scaled microservices; newer versions add an optional Kafka-based ingest path — check your version's docs before assuming it.
|
|
145
|
+
|
|
146
|
+
**TraceQL:** Tempo's trace query language. It addresses resource attributes (`resource.service.name`, `resource.deployment.environment`), span attributes (`span.http.request.method`, `span.db.system`), and intrinsics (`span:duration`, `span:status`, `span:kind`, `trace:duration`, `trace:rootService`). It supports comparison operators (`=`, `!=`, `>`, `>=`, `<`, `<=`, `=~` regex, `!~` negated regex), logical operators (`&&`, `||`), aggregators (`count`, `avg`, `max`, `min`, `sum`), and structural operators (`>>` descendant, `<<` ancestor, `>` child, `<` parent, `~` sibling). Regex operators are anchored by default — use `.*pattern.*` for unanchored matching. **Trace-level intrinsics** (`trace:duration`, `trace:rootService`) are generally more performant than span-level scans; prefer them when possible.
|
|
147
|
+
|
|
148
|
+
**Metrics-generator:** Derives RED metrics from spans via the `span-metrics` processor (counter `traces_spanmetrics_calls_total`, histogram `traces_spanmetrics_latency`) and the `service-graphs` processor (request/failed counters and latency histograms per client-server pair). It writes to a Prometheus-compatible `remote_write` endpoint. Enabling many span-metric dimensions sharply increases cardinality and cost — keep the dimension set bounded.
|
|
149
|
+
|
|
150
|
+
See `references/tempo.md` for deployment modes, retention configuration, and TraceQL query patterns.
|
|
151
|
+
|
|
152
|
+
## Correlation
|
|
153
|
+
|
|
154
|
+
**Trace-to-logs:** Stamp the active `trace_id` and `span_id` onto every structured log line. In Grafana, configure the Tempo datasource's trace-to-logs feature pointing at your log store (Loki, Elasticsearch, and others). This lets you pivot a log line to its full trace and back. Use consistent resource attributes (`service.name`, `deployment.environment`) across logs, metrics, and traces so they join.
|
|
155
|
+
|
|
156
|
+
**Trace-to-metrics:** Grafana's trace-to-metrics links spans to metric queries using span/trace variables (e.g. span name, duration, trace ID), so you can jump from a span to the RED metrics around it.
|
|
157
|
+
|
|
158
|
+
**Metrics-to-traces (exemplars):** The metrics-generator's span metrics can embed trace IDs as exemplars on Prometheus histograms. In Grafana, clicking an exemplar on a graph jumps to the corresponding trace — the reverse link from a metric spike to a representative trace.
|
|
159
|
+
|
|
160
|
+
**Service graphs:** The `service-graphs` processor analyzes traces for edges (parent-child span relationships representing requests between services) and produces metrics labelled by `client`, `server`, and connection type. Grafana's Service Graph view renders these edges as a directed graph with RED metrics per edge.
|
|
161
|
+
|
|
162
|
+
**Cardinality pitfall:** Raw IDs and paths used as span-derived metric labels explode cardinality. Normalize (replace IDs/UUIDs with placeholders) before they become labels. Span attributes in Tempo are cheaper than metric labels, but keep them bounded too.
|
|
163
|
+
|
|
164
|
+
See `references/correlation.md` for trace_id log injection, exemplar configuration, and service-graph setup.
|
|
165
|
+
|
|
166
|
+
## References
|
|
167
|
+
|
|
168
|
+
- `references/instrumentation.md` — Auto-instrumentation setup, manual span creation, context propagation across async/queue boundaries, the standard env-var contract, and TracerProvider initialization order.
|
|
169
|
+
- `references/collector.md` — Collector agent-gateway topology, processor pipelines (memory_limiter, batch, tail_sampling, attributes, filter), OTLP exporter configuration, and the loadbalancing exporter for tail sampling.
|
|
170
|
+
- `references/sampling.md` — Head-based vs tail-based sampling, sampler configuration (SDK and Collector), tail-sampling policies (error, latency, probabilistic), and the hybrid sampling pattern.
|
|
171
|
+
- `references/tempo.md` — Tempo architecture (distributor, ingester, querier, compactor), deployment modes (monolithic vs microservices), retention/compaction configuration, TraceQL query patterns, and metrics-generator setup.
|
|
172
|
+
- `references/correlation.md` — Trace-to-logs (trace_id injection, Grafana datasource config), trace-to-metrics, metrics-to-traces (exemplars), and service graphs.
|
|
173
|
+
- `references/gotchas.md` — The highest-leverage failure modes and fixes: endpoint/port/path traps, lost context propagation, missing `service.name`, over-sampling cost, batch-queue overflow, cardinality blowups, and double-tracing.
|
|
174
|
+
|
|
175
|
+
## Provenance
|
|
176
|
+
|
|
177
|
+
Re-derived from public OpenTelemetry documentation (opentelemetry.io), the W3C Trace Context specification (w3.org/TR/trace-context), and Grafana Tempo documentation (grafana.com/docs/tempo). When upstream documentation disagrees with this skill, trust upstream and update the skill.
|
|
178
|
+
|
|
179
|
+
## Related
|
|
180
|
+
|
|
181
|
+
- `.claude/rules/devops-observability.md` — The neutral policy for observability, logging, metrics, and tracing across all stacks.
|
|
182
|
+
- `observability-engineer` agent — The role responsible for instrumenting services, configuring the Collector and Tempo, and maintaining correlation patterns.
|
|
183
|
+
- `.claude/rules/agent-resilience.md` — Fail-safe principles for instrumentation (never crash, degrade gracefully).
|
|
184
|
+
- `observability-and-logging` — App-side observability: structured logging, PII/secret redaction, error tracking, RED metrics, liveness/readiness probes, and framework auto-instrumentation wiring.
|
|
185
|
+
- `langfuse-llm-tracing` — LLM call tracing (prompts, tokens, cost) for model observability.
|