Ensures Claude verifies both local tests AND remote CI before claiming completion. Use BEFORE any completion claims, commits, or pull requests. Mandatory verification with evidence.
/plugin marketplace add ANcpLua/ancplua-claude-plugins/plugin install autonomous-ci@ancplua-claude-pluginsThis skill inherits all available tools. When active, it can use any tool Claude has access to.
Never claim success without CI verification. This skill ensures Claude automatically verifies both local tests AND remote CI before declaring work complete.
Core Principle: Evidence before claims. Always.
This skill is MANDATORY before:
BEFORE claiming any completion:
1. RUN LOCAL VERIFICATION
└─> Execute project-specific test command
└─> Check exit code
└─> If fails: Fix and repeat
2. COMMIT AND PUSH
└─> Only if local tests pass
└─> Push to remote repository
3. MONITOR CI (BLOCKING)
└─> Find workflow run for commit
└─> WAIT for completion (do not proceed)
└─> Check all workflows in .github/workflows/
4. IF CI FAILS
└─> Download failure logs
└─> Analyze root cause
└─> Fix the issue
└─> REPEAT from step 1
5. ONLY WHEN ALL CI PASSES
└─> Report success with evidence
This skill uses scripts from the plugin directory:
The plugin provides a generic test runner that auto-detects your project type:
# For .NET projects
dotnet test --configuration Release
# For Node.js projects
npm test
# For Python projects
pytest
# For Go projects
go test ./...
Claude will automatically detect your project type and run the appropriate command.
After pushing, Claude will use GitHub CLI to monitor CI:
# Find and watch workflow run
gh run list --limit 1 --commit <sha>
gh run watch <run-id>
# Check final status
gh run view <run-id> --json conclusion
If Claude catches itself thinking or about to say:
STOP. Run the verification protocol instead.
# ALWAYS verify locally first
# For .NET:
dotnet build --configuration Release
dotnet test --no-build --configuration Release
# For Node.js:
npm run build
npm test
# For Python:
pytest
# ONLY proceed if exit code = 0
# Only after local tests pass
git add .
git commit -m "Fix: issue description"
git push
# Get commit SHA
COMMIT_SHA=$(git rev-parse HEAD)
# Find workflow run
RUN_ID=$(gh run list --commit "$COMMIT_SHA" --limit 1 --json databaseId -q '.[0].databaseId')
# Watch workflow (BLOCKS until complete)
gh run watch "$RUN_ID"
# Check conclusion
CONCLUSION=$(gh run view "$RUN_ID" --json conclusion -q .conclusion)
if [ "$CONCLUSION" = "success" ]; then
echo "✅ CI passed"
else
echo "❌ CI failed - analyzing logs"
gh run view "$RUN_ID" --log-failed
fi
When CI fails:
gh run view <run-id> --log-failed| Excuse | Reality |
|---|---|
| "Tests passed locally" | CI environment may differ |
| "It's a small change" | Small changes break CI too |
| "I'm confident" | Confidence ≠ verification |
| "CI takes too long" | Waiting is mandatory |
| "I'll check later" | No. Check now. |
| "Just this once" | No exceptions. Ever. |
# Local verification
dotnet test --configuration Release
# This runs ALL target frameworks
# Example: net8.0, net9.0, net10.0
For projects with multiple CI workflows (tests.yml, lint.yml, build.yml):
# Monitor ALL workflows
gh run list --commit <sha> --json databaseId,name,conclusion
# All must pass:
# ✅ tests.yml: success
# ✅ lint.yml: success
# ✅ build.yml: success
Some projects upload test results to services like Codecov:
# Wait for primary workflow
gh run watch <run-id>
# Verify uploads completed
# Check workflow logs for "Upload complete" messages
Claude may ONLY claim completion when:
When all checks pass, report with evidence:
✅ Verification Complete
Local Tests: 159/159 passed
CI Status: All checks passed
Workflows:
- tests.yml: ✅ success
https://github.com/user/repo/actions/runs/12345
- lint.yml: ✅ success
https://github.com/user/repo/actions/runs/12346
Commit: abc123def
Timestamp: 2025-11-21 15:30:45
Work is verified complete.
From painful experience:
gh) installed and authenticatedNo shortcuts. No exceptions. No rationalizations.
This is non-negotiable.
Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.
Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.
Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.