create-claude-context 1.0.0

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.
Files changed (88) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +146 -0
  3. package/bin/create-claude-context.js +61 -0
  4. package/lib/detector.js +373 -0
  5. package/lib/index.js +170 -0
  6. package/lib/installer.js +362 -0
  7. package/lib/placeholder.js +208 -0
  8. package/lib/prompts.js +287 -0
  9. package/lib/spinner.js +60 -0
  10. package/lib/validate.js +147 -0
  11. package/package.json +59 -0
  12. package/templates/CLAUDE.md.template +235 -0
  13. package/templates/base/README.md +257 -0
  14. package/templates/base/RPI_WORKFLOW_PLAN.md +320 -0
  15. package/templates/base/agents/api-developer.md +76 -0
  16. package/templates/base/agents/context-engineer.md +525 -0
  17. package/templates/base/agents/core-architect.md +76 -0
  18. package/templates/base/agents/database-ops.md +76 -0
  19. package/templates/base/agents/deployment-ops.md +76 -0
  20. package/templates/base/agents/integration-hub.md +76 -0
  21. package/templates/base/analytics/README.md +114 -0
  22. package/templates/base/ci-templates/README.md +108 -0
  23. package/templates/base/ci-templates/github-actions/context-check.yml +144 -0
  24. package/templates/base/ci-templates/github-actions/validate-docs.yml +105 -0
  25. package/templates/base/commands/analytics.md +238 -0
  26. package/templates/base/commands/collab.md +194 -0
  27. package/templates/base/commands/help.md +450 -0
  28. package/templates/base/commands/rpi-implement.md +115 -0
  29. package/templates/base/commands/rpi-plan.md +93 -0
  30. package/templates/base/commands/rpi-research.md +88 -0
  31. package/templates/base/commands/validate-all.md +77 -0
  32. package/templates/base/commands/verify-docs-current.md +86 -0
  33. package/templates/base/config/base.json +57 -0
  34. package/templates/base/config/environments/development.json +13 -0
  35. package/templates/base/config/environments/production.json +17 -0
  36. package/templates/base/config/environments/staging.json +13 -0
  37. package/templates/base/config/local.json.example +21 -0
  38. package/templates/base/context/ARCHITECTURE_SNAPSHOT.md +156 -0
  39. package/templates/base/context/CODE_TO_WORKFLOW_MAP.md +94 -0
  40. package/templates/base/context/KNOWN_GOTCHAS.md +195 -0
  41. package/templates/base/context/WORKFLOW_INDEX.md +129 -0
  42. package/templates/base/context/workflows/WORKFLOW_TEMPLATE.md +294 -0
  43. package/templates/base/indexes/agents/CAPABILITY_MATRIX.md +255 -0
  44. package/templates/base/indexes/agents/CATEGORY_INDEX.md +44 -0
  45. package/templates/base/indexes/code/CATEGORY_INDEX.md +38 -0
  46. package/templates/base/indexes/routing/CATEGORY_INDEX.md +39 -0
  47. package/templates/base/indexes/search/CATEGORY_INDEX.md +39 -0
  48. package/templates/base/indexes/workflows/CATEGORY_INDEX.md +38 -0
  49. package/templates/base/knowledge/README.md +98 -0
  50. package/templates/base/knowledge/sessions/README.md +88 -0
  51. package/templates/base/knowledge/sessions/TEMPLATE.md +150 -0
  52. package/templates/base/knowledge/shared/decisions/0001-adopt-context-engineering.md +144 -0
  53. package/templates/base/knowledge/shared/decisions/README.md +49 -0
  54. package/templates/base/knowledge/shared/decisions/TEMPLATE.md +123 -0
  55. package/templates/base/knowledge/shared/patterns/README.md +62 -0
  56. package/templates/base/knowledge/shared/patterns/TEMPLATE.md +120 -0
  57. package/templates/base/plans/PLAN_TEMPLATE.md +250 -0
  58. package/templates/base/plans/active/.gitkeep +0 -0
  59. package/templates/base/plans/completed/.gitkeep +0 -0
  60. package/templates/base/research/RESEARCH_TEMPLATE.md +153 -0
  61. package/templates/base/research/active/.gitkeep +0 -0
  62. package/templates/base/research/completed/.gitkeep +0 -0
  63. package/templates/base/schemas/agent.schema.json +141 -0
  64. package/templates/base/schemas/command.schema.json +134 -0
  65. package/templates/base/schemas/manifest.schema.json +117 -0
  66. package/templates/base/schemas/plan.schema.json +136 -0
  67. package/templates/base/schemas/research.schema.json +115 -0
  68. package/templates/base/schemas/settings.schema.json +244 -0
  69. package/templates/base/schemas/workflow.schema.json +126 -0
  70. package/templates/base/settings.json +57 -0
  71. package/templates/base/standards/COMPATIBILITY.md +219 -0
  72. package/templates/base/standards/EXTENSION_GUIDELINES.md +280 -0
  73. package/templates/base/standards/QUALITY_CHECKLIST.md +211 -0
  74. package/templates/base/standards/README.md +66 -0
  75. package/templates/base/team/README.md +168 -0
  76. package/templates/base/team/config.json +79 -0
  77. package/templates/base/team/roles.json +145 -0
  78. package/templates/base/tools/bin/claude-context.js +151 -0
  79. package/templates/base/tools/lib/config-loader.js +363 -0
  80. package/templates/base/tools/lib/detector.js +350 -0
  81. package/templates/base/tools/lib/diagnose.js +206 -0
  82. package/templates/base/tools/lib/errors.js +199 -0
  83. package/templates/base/tools/lib/index.js +24 -0
  84. package/templates/base/tools/lib/init.js +192 -0
  85. package/templates/base/tools/lib/logger.js +230 -0
  86. package/templates/base/tools/lib/placeholder.js +201 -0
  87. package/templates/base/tools/lib/validate.js +521 -0
  88. package/templates/base/tools/package.json +49 -0
@@ -0,0 +1,76 @@
1
+ ---
2
+ name: deployment-ops
3
+ version: "1.0.0"
4
+ displayName: "Deployment Operations"
5
+ description: "CI/CD pipeline management, infrastructure as code, and deployment automation specialist"
6
+ category: "deployment"
7
+ complexity: "high"
8
+ context_budget: "~45K tokens"
9
+ capabilities:
10
+ - "ci-cd-pipeline-design"
11
+ - "infrastructure-as-code"
12
+ - "deployment-strategies"
13
+ - "environment-management"
14
+ - "monitoring-and-rollback"
15
+ workflows:
16
+ - "deployment"
17
+ - "infrastructure"
18
+ - "ci-cd"
19
+ commands: ["/rpi-research", "/rpi-plan", "/rpi-implement", "/validate-all"]
20
+ dependencies:
21
+ agents: []
22
+ commands: []
23
+ hooks:
24
+ pre_invoke: null
25
+ post_invoke: "verify-docs-current"
26
+ examples:
27
+ - invocation: '@deployment-ops "Document deployment pipeline"'
28
+ description: "Create CI/CD documentation"
29
+ - invocation: '@deployment-ops "Review infrastructure configuration"'
30
+ description: "Audit IaC files and configurations"
31
+ - invocation: '@deployment-ops "Plan rollback strategy"'
32
+ description: "Design safe rollback procedures"
33
+ ---
34
+
35
+ # Deployment Ops Agent
36
+
37
+ **Purpose:** CI/CD pipeline management, infrastructure as code, and deployment automation
38
+
39
+ ## Capabilities
40
+
41
+ This agent specializes in:
42
+ - **Pipeline design and optimization** - Creating and optimizing CI/CD pipelines
43
+ - **Infrastructure as code** - Managing cloud infrastructure with Terraform, CloudFormation, etc.
44
+ - **Deployment strategies** - Implementing blue-green, canary, rolling deployments
45
+ - **Environment management** - Managing development, staging, and production environments
46
+ - **Monitoring and rollback** - Implementing monitoring and automatic rollback strategies
47
+
48
+ ## Usage
49
+
50
+ After template initialization, this agent will be generated based on your deployment requirements. It will:
51
+ 1. Analyze your existing deployment pipelines
52
+ 2. Create comprehensive deployment documentation
53
+ 3. Identify potential reliability issues
54
+ 4. Provide recommendations for deployment optimization
55
+
56
+ ## Example Commands
57
+
58
+ ```bash
59
+ @deployment-ops "Document deployment pipeline for [environment]"
60
+ @deployment-ops "Validate infrastructure as code for [service]"
61
+ @deployment-ops "Generate rollback strategy for [deployment]"
62
+ ```
63
+
64
+ ## Integration Points
65
+
66
+ This agent integrates with:
67
+ - Workflow documentation
68
+ - API design (for deployment endpoints)
69
+ - Monitoring and alerting
70
+ - Security validation
71
+
72
+ ## Validation
73
+
74
+ - Pipeline reliability checks
75
+ - Infrastructure consistency validation
76
+ - Deployment strategy verification
@@ -0,0 +1,76 @@
1
+ ---
2
+ name: integration-hub
3
+ version: "1.0.0"
4
+ displayName: "Integration Hub"
5
+ description: "External service integration, third-party API management, and webhook handling specialist"
6
+ category: "integration"
7
+ complexity: "medium-high"
8
+ context_budget: "~40K tokens"
9
+ capabilities:
10
+ - "third-party-api-integration"
11
+ - "webhook-handling"
12
+ - "authentication-management"
13
+ - "rate-limiting-implementation"
14
+ - "error-handling-patterns"
15
+ workflows:
16
+ - "external-services"
17
+ - "webhooks"
18
+ - "integrations"
19
+ commands: ["/rpi-research", "/rpi-plan", "/rpi-implement"]
20
+ dependencies:
21
+ agents: []
22
+ commands: []
23
+ hooks:
24
+ pre_invoke: null
25
+ post_invoke: "verify-docs-current"
26
+ examples:
27
+ - invocation: '@integration-hub "Document integration with [service]"'
28
+ description: "Create integration documentation"
29
+ - invocation: '@integration-hub "Analyze webhook endpoints"'
30
+ description: "Review webhook security and reliability"
31
+ - invocation: '@integration-hub "Review authentication flows"'
32
+ description: "Audit third-party auth mechanisms"
33
+ ---
34
+
35
+ # Integration Hub Agent
36
+
37
+ **Purpose:** External service integration, third-party API management, and webhook handling
38
+
39
+ ## Capabilities
40
+
41
+ This agent specializes in:
42
+ - **Third-party API integration** - Connecting with external services and APIs
43
+ - **Webhook handling** - Managing incoming and outgoing webhooks
44
+ - **Authentication management** - Handling API keys, OAuth, and other auth mechanisms
45
+ - **Rate limiting and retries** - Implementing robust integration patterns
46
+ - **Error handling** - Managing integration failures and retries
47
+
48
+ ## Usage
49
+
50
+ After template initialization, this agent will be generated based on your integration requirements. It will:
51
+ 1. Analyze your existing external integrations
52
+ 2. Create comprehensive integration documentation
53
+ 3. Identify potential security vulnerabilities
54
+ 4. Provide recommendations for integration optimization
55
+
56
+ ## Example Commands
57
+
58
+ ```bash
59
+ @integration-hub "Document integration with [service]"
60
+ @integration-hub "Validate webhook endpoints for [integration]"
61
+ @integration-hub "Generate authentication strategy for [service]"
62
+ ```
63
+
64
+ ## Integration Points
65
+
66
+ This agent integrates with:
67
+ - Workflow documentation
68
+ - API design (for integration endpoints)
69
+ - Testing strategies
70
+ - Monitoring and alerting
71
+
72
+ ## Validation
73
+
74
+ - Integration security checks
75
+ - Authentication mechanism validation
76
+ - Rate limiting configuration
@@ -0,0 +1,114 @@
1
+ # Analytics Data
2
+
3
+ Local storage for usage analytics and metrics.
4
+
5
+ ## Overview
6
+
7
+ This directory stores local analytics data collected during Claude Code sessions. All data is stored locally and never sent externally unless explicitly configured.
8
+
9
+ ## Files
10
+
11
+ | File | Description |
12
+ |------|-------------|
13
+ | `sessions.json` | Session history and metadata |
14
+ | `commands.json` | Command usage statistics |
15
+ | `agents.json` | Agent invocation tracking |
16
+ | `context.json` | Context budget metrics over time |
17
+ | `exports/` | Exported analytics files |
18
+
19
+ ## Data Schema
20
+
21
+ ### sessions.json
22
+
23
+ ```json
24
+ {
25
+ "sessions": [
26
+ {
27
+ "id": "uuid",
28
+ "started": "ISO-timestamp",
29
+ "ended": "ISO-timestamp",
30
+ "duration_minutes": 45,
31
+ "files_modified": 12,
32
+ "commits": 3,
33
+ "member_id": "dev-1"
34
+ }
35
+ ]
36
+ }
37
+ ```
38
+
39
+ ### commands.json
40
+
41
+ ```json
42
+ {
43
+ "commands": {
44
+ "/rpi-research": {
45
+ "count": 23,
46
+ "last_used": "ISO-timestamp",
47
+ "success_rate": 0.95,
48
+ "history": [
49
+ {
50
+ "timestamp": "ISO-timestamp",
51
+ "duration_seconds": 120,
52
+ "success": true
53
+ }
54
+ ]
55
+ }
56
+ }
57
+ }
58
+ ```
59
+
60
+ ### agents.json
61
+
62
+ ```json
63
+ {
64
+ "agents": {
65
+ "@core-architect": {
66
+ "invocations": 18,
67
+ "last_used": "ISO-timestamp",
68
+ "avg_context_tokens": 35000,
69
+ "tasks_completed": 15
70
+ }
71
+ }
72
+ }
73
+ ```
74
+
75
+ ### context.json
76
+
77
+ ```json
78
+ {
79
+ "snapshots": [
80
+ {
81
+ "timestamp": "ISO-timestamp",
82
+ "total_tokens": 45000,
83
+ "breakdown": {
84
+ "indexes": 12400,
85
+ "workflows": 18200,
86
+ "agents": 8600,
87
+ "commands": 5800
88
+ },
89
+ "budget_percentage": 22.5
90
+ }
91
+ ]
92
+ }
93
+ ```
94
+
95
+ ## Retention
96
+
97
+ Data is retained according to `telemetry.retention_days` in settings (default: 90 days). Older data is automatically pruned.
98
+
99
+ ## Clearing Data
100
+
101
+ To clear all analytics data:
102
+
103
+ ```
104
+ /analytics clear
105
+ ```
106
+
107
+ Or manually delete files in this directory (except README.md).
108
+
109
+ ## Privacy
110
+
111
+ - All data stored locally
112
+ - No external transmission
113
+ - User has full control
114
+ - Can be disabled in settings
@@ -0,0 +1,108 @@
1
+ # CI/CD Templates
2
+
3
+ Pre-built CI/CD workflows for Claude Context Engineering validation.
4
+
5
+ ## Available Templates
6
+
7
+ ### GitHub Actions
8
+
9
+ | Template | Purpose | Trigger |
10
+ |----------|---------|---------|
11
+ | `validate-docs.yml` | Validate documentation on PRs | Pull requests |
12
+ | `context-check.yml` | Monitor context budget health | Push, weekly, manual |
13
+
14
+ ## Installation
15
+
16
+ ### GitHub Actions
17
+
18
+ Copy templates to your `.github/workflows/` directory:
19
+
20
+ ```bash
21
+ # From project root
22
+ mkdir -p .github/workflows
23
+ cp .claude/ci-templates/github-actions/*.yml .github/workflows/
24
+ ```
25
+
26
+ ### Prerequisites
27
+
28
+ 1. Node.js 18+ available in CI environment
29
+ 2. `.claude/tools/` dependencies installed:
30
+ ```bash
31
+ cd .claude/tools && npm ci
32
+ ```
33
+
34
+ ## Customization
35
+
36
+ ### Adjust Validation Strictness
37
+
38
+ Edit the workflow files to change thresholds:
39
+
40
+ ```yaml
41
+ # In validate-docs.yml
42
+ - name: Check Line Number Accuracy
43
+ run: |
44
+ npx claude-context validate --lines --threshold 70 # Stricter
45
+ ```
46
+
47
+ ### Add Notifications
48
+
49
+ Add Slack/Discord notifications on failure:
50
+
51
+ ```yaml
52
+ - name: Notify on Failure
53
+ if: failure()
54
+ uses: 8398a7/action-slack@v3
55
+ with:
56
+ status: ${{ job.status }}
57
+ webhook_url: ${{ secrets.SLACK_WEBHOOK }}
58
+ ```
59
+
60
+ ### Skip on Specific Files
61
+
62
+ Modify the `paths` filter:
63
+
64
+ ```yaml
65
+ on:
66
+ pull_request:
67
+ paths:
68
+ - '.claude/**'
69
+ - 'src/**'
70
+ - '!src/**/*.test.js' # Exclude test files
71
+ ```
72
+
73
+ ## Workflow Outputs
74
+
75
+ ### validate-docs.yml
76
+
77
+ - **validation-report.md** - Detailed validation results
78
+ - PR comment on failure with specific issues
79
+
80
+ ### context-check.yml
81
+
82
+ - **metrics.json** - Documentation metrics
83
+ - **diagnostics.txt** - System diagnostics
84
+ - **validation.txt** - Full validation output
85
+ - Auto-creates issue on weekly failure
86
+
87
+ ## Troubleshooting
88
+
89
+ ### "CLI tools not found"
90
+
91
+ Ensure tools are installed:
92
+ ```bash
93
+ cd .claude/tools && npm ci
94
+ ```
95
+
96
+ ### "Validation always fails on line numbers"
97
+
98
+ Line number drift is expected. Adjust threshold:
99
+ ```yaml
100
+ --threshold 50 # More lenient
101
+ ```
102
+
103
+ ### "Context budget exceeded"
104
+
105
+ Review documentation and consider:
106
+ 1. Splitting large workflow files
107
+ 2. Moving rarely-used content to separate files
108
+ 3. Compacting verbose sections
@@ -0,0 +1,144 @@
1
+ # Claude Context Engineering - Context Budget Check
2
+ #
3
+ # This workflow monitors context budget and documentation health.
4
+ # Copy this file to .github/workflows/context-check.yml to enable.
5
+ #
6
+ # Runs on:
7
+ # - Push to main/master branches
8
+ # - Weekly schedule
9
+ # - Manual trigger
10
+
11
+ name: Context Budget Check
12
+
13
+ on:
14
+ push:
15
+ branches:
16
+ - main
17
+ - master
18
+ paths:
19
+ - '.claude/**'
20
+ schedule:
21
+ # Run weekly on Monday at 9am UTC
22
+ - cron: '0 9 * * 1'
23
+ workflow_dispatch:
24
+
25
+ jobs:
26
+ context-health:
27
+ name: Check Context Engineering Health
28
+ runs-on: ubuntu-latest
29
+
30
+ steps:
31
+ - name: Checkout repository
32
+ uses: actions/checkout@v4
33
+
34
+ - name: Setup Node.js
35
+ uses: actions/setup-node@v4
36
+ with:
37
+ node-version: '18'
38
+ cache: 'npm'
39
+ cache-dependency-path: '.claude/tools/package-lock.json'
40
+
41
+ - name: Install CLI tools
42
+ run: |
43
+ cd .claude/tools
44
+ npm ci
45
+
46
+ - name: Run Full Diagnostics
47
+ id: diagnose
48
+ run: |
49
+ echo "🔬 Running diagnostics..."
50
+ npx .claude/tools/bin/claude-context.js diagnose --verbose > diagnostics.txt 2>&1
51
+ cat diagnostics.txt
52
+ continue-on-error: true
53
+
54
+ - name: Calculate Documentation Metrics
55
+ run: |
56
+ echo "📊 Calculating metrics..."
57
+
58
+ # Count workflow files
59
+ WORKFLOW_COUNT=$(find .claude/context/workflows -name "*.md" 2>/dev/null | wc -l || echo "0")
60
+ echo "Workflow files: $WORKFLOW_COUNT"
61
+
62
+ # Count agent files
63
+ AGENT_COUNT=$(find .claude/agents -name "*.md" 2>/dev/null | wc -l || echo "0")
64
+ echo "Agent files: $AGENT_COUNT"
65
+
66
+ # Count command files
67
+ COMMAND_COUNT=$(find .claude/commands -name "*.md" 2>/dev/null | wc -l || echo "0")
68
+ echo "Command files: $COMMAND_COUNT"
69
+
70
+ # Estimate total documentation tokens (rough: 1 token ≈ 4 chars)
71
+ TOTAL_CHARS=$(find .claude -name "*.md" -exec cat {} \; 2>/dev/null | wc -c || echo "0")
72
+ ESTIMATED_TOKENS=$((TOTAL_CHARS / 4))
73
+ echo "Estimated documentation tokens: $ESTIMATED_TOKENS"
74
+
75
+ # Calculate as percentage of budget
76
+ MAX_TOKENS=200000
77
+ PERCENTAGE=$((ESTIMATED_TOKENS * 100 / MAX_TOKENS))
78
+ echo "Context budget usage: ${PERCENTAGE}%"
79
+
80
+ # Save metrics
81
+ cat > metrics.json << EOF
82
+ {
83
+ "workflow_count": $WORKFLOW_COUNT,
84
+ "agent_count": $AGENT_COUNT,
85
+ "command_count": $COMMAND_COUNT,
86
+ "estimated_tokens": $ESTIMATED_TOKENS,
87
+ "budget_percentage": $PERCENTAGE,
88
+ "timestamp": "$(date -u +%Y-%m-%dT%H:%M:%SZ)"
89
+ }
90
+ EOF
91
+
92
+ cat metrics.json
93
+
94
+ - name: Check Budget Threshold
95
+ run: |
96
+ PERCENTAGE=$(jq '.budget_percentage' metrics.json)
97
+ echo "Current usage: ${PERCENTAGE}%"
98
+
99
+ if [ "$PERCENTAGE" -gt 60 ]; then
100
+ echo "⚠️ WARNING: Documentation exceeds 60% of context budget!"
101
+ echo "Consider compacting or splitting documentation."
102
+ exit 1
103
+ elif [ "$PERCENTAGE" -gt 40 ]; then
104
+ echo "📊 Documentation is at ${PERCENTAGE}% - approaching target limit"
105
+ else
106
+ echo "✅ Documentation is within healthy range (${PERCENTAGE}%)"
107
+ fi
108
+
109
+ - name: Run Validation Suite
110
+ run: |
111
+ echo "🔍 Running validation..."
112
+ npx .claude/tools/bin/claude-context.js validate --all > validation.txt 2>&1 || true
113
+ cat validation.txt
114
+
115
+ - name: Upload Metrics
116
+ uses: actions/upload-artifact@v4
117
+ with:
118
+ name: context-metrics
119
+ path: |
120
+ metrics.json
121
+ diagnostics.txt
122
+ validation.txt
123
+ retention-days: 30
124
+
125
+ - name: Create Issue on Failure
126
+ if: failure() && github.event_name == 'schedule'
127
+ uses: actions/github-script@v7
128
+ with:
129
+ script: |
130
+ const fs = require('fs');
131
+ let metrics = {};
132
+ try {
133
+ metrics = JSON.parse(fs.readFileSync('metrics.json', 'utf8'));
134
+ } catch (e) {
135
+ metrics = { error: 'Could not read metrics' };
136
+ }
137
+
138
+ github.rest.issues.create({
139
+ owner: context.repo.owner,
140
+ repo: context.repo.repo,
141
+ title: '⚠️ Claude Context Engineering Health Check Failed',
142
+ body: `## Weekly Health Check Failed\n\n**Metrics:**\n\`\`\`json\n${JSON.stringify(metrics, null, 2)}\n\`\`\`\n\n**Action Required:**\n- Review documentation health\n- Run \`npx claude-context diagnose\` locally\n- Consider documentation compaction if over budget\n\n---\n*Generated by Claude Context Engineering CI*`,
143
+ labels: ['documentation', 'maintenance']
144
+ });
@@ -0,0 +1,105 @@
1
+ # Claude Context Engineering - Documentation Validation
2
+ #
3
+ # This workflow validates that documentation is accurate and up-to-date.
4
+ # Copy this file to .github/workflows/validate-docs.yml to enable.
5
+ #
6
+ # Runs on:
7
+ # - Pull requests that modify .claude/ or source files
8
+ # - Manual trigger
9
+
10
+ name: Validate Documentation
11
+
12
+ on:
13
+ pull_request:
14
+ paths:
15
+ - '.claude/**'
16
+ - 'src/**'
17
+ - 'lib/**'
18
+ - 'app/**'
19
+ workflow_dispatch:
20
+
21
+ jobs:
22
+ validate:
23
+ name: Validate Claude Context Documentation
24
+ runs-on: ubuntu-latest
25
+
26
+ steps:
27
+ - name: Checkout repository
28
+ uses: actions/checkout@v4
29
+
30
+ - name: Setup Node.js
31
+ uses: actions/setup-node@v4
32
+ with:
33
+ node-version: '18'
34
+ cache: 'npm'
35
+ cache-dependency-path: '.claude/tools/package-lock.json'
36
+
37
+ - name: Install CLI tools
38
+ run: |
39
+ cd .claude/tools
40
+ npm ci
41
+
42
+ - name: Validate JSON Schemas
43
+ run: |
44
+ echo "🔍 Validating JSON schemas..."
45
+ npx .claude/tools/bin/claude-context.js validate --schema
46
+ continue-on-error: false
47
+
48
+ - name: Validate Markdown Links
49
+ run: |
50
+ echo "🔗 Checking markdown links..."
51
+ npx .claude/tools/bin/claude-context.js validate --links
52
+ continue-on-error: false
53
+
54
+ - name: Check for Unresolved Placeholders
55
+ run: |
56
+ echo "📝 Checking for placeholders..."
57
+ npx .claude/tools/bin/claude-context.js validate --placeholders
58
+ continue-on-error: true # Warning only
59
+
60
+ - name: Validate Directory Structure
61
+ run: |
62
+ echo "📁 Validating structure..."
63
+ npx .claude/tools/bin/claude-context.js validate --structure
64
+ continue-on-error: false
65
+
66
+ - name: Check Line Number Accuracy
67
+ run: |
68
+ echo "📍 Checking line number accuracy..."
69
+ npx .claude/tools/bin/claude-context.js validate --lines --threshold 60
70
+ continue-on-error: true # Warning only for line drift
71
+
72
+ - name: Generate Validation Report
73
+ if: always()
74
+ run: |
75
+ echo "📊 Generating full validation report..."
76
+ npx .claude/tools/bin/claude-context.js validate --all --output markdown > validation-report.md
77
+ cat validation-report.md
78
+
79
+ - name: Upload Validation Report
80
+ if: always()
81
+ uses: actions/upload-artifact@v4
82
+ with:
83
+ name: validation-report
84
+ path: validation-report.md
85
+ retention-days: 7
86
+
87
+ - name: Comment on PR
88
+ if: github.event_name == 'pull_request' && failure()
89
+ uses: actions/github-script@v7
90
+ with:
91
+ script: |
92
+ const fs = require('fs');
93
+ let report = '';
94
+ try {
95
+ report = fs.readFileSync('validation-report.md', 'utf8');
96
+ } catch (e) {
97
+ report = 'Validation report not available.';
98
+ }
99
+
100
+ github.rest.issues.createComment({
101
+ issue_number: context.issue.number,
102
+ owner: context.repo.owner,
103
+ repo: context.repo.repo,
104
+ body: `## 🔍 Documentation Validation Failed\n\n${report}\n\n---\n*Generated by Claude Context Engineering CI*`
105
+ });