with one click
test-pr
// Test pull requests with comprehensive validation and generate structured test results
// Test pull requests with comprehensive validation and generate structured test results
Add a new self-contained example agent under examples/. Use when asked to "create an example for <framework>", "add a tutorial agent", "demo integration with <LLM provider>", or when showcasing a new pattern users should copy.
Diagnose gRPC connection issues between the Bindu core and a language SDK. Use when an SDK fails to register, HandleMessages calls time out, "connection refused" on :3774, heartbeats stop arriving, or the core logs "agent silently died".
Regenerate Python + TypeScript gRPC stubs after editing proto files. Use when proto/*.proto changes, imports from bindu.grpc.generated fail, CI reports generated-code drift, or HandleMessages calls fail with proto mismatch.
Create releases with proper versioning, release notes, and Git tags
Deploy Bindu agents to various environments with safety checks and verification
| name | test-pr |
| description | Test pull requests with comprehensive validation and generate structured test results |
Test a pull request to ensure code quality, functionality, and compatibility before merging.
.local/ directory# Get PR metadata
PR_NUMBER=$1
gh pr view $PR_NUMBER --json number,title,author,headRefName,baseRefName > .local/pr-meta.json
# Create isolated worktree
git worktree add .worktrees/pr-$PR_NUMBER origin/main
cd .worktrees/pr-$PR_NUMBER
# Fetch PR branch
git fetch origin pull/$PR_NUMBER/head:pr-$PR_NUMBER
git checkout pr-$PR_NUMBER
# Install with frozen lockfile
uv sync --frozen
# Verify installation
uv run python -c "import bindu; print(bindu.__version__)"
# Run all tests with coverage
uv run pytest --cov=bindu --cov-report=json --json-report --json-report-file=.local/test-results.json
# Extract coverage percentage
COVERAGE=$(jq -r '.totals.percent_covered' coverage.json)
echo "Coverage: $COVERAGE%"
# Run all hooks
uv run pre-commit run --all-files > .local/precommit-results.txt 2>&1
# Check exit code
if [ $? -eq 0 ]; then
echo "ā
All pre-commit hooks passed"
else
echo "ā Some pre-commit hooks failed"
fi
# Check for print statements (should use logger)
grep -r "print(" bindu/ --include="*.py" | grep -v "# noqa" || echo "ā
No print statements"
# Check for TODO comments
grep -r "TODO\|FIXME\|XXX" bindu/ --include="*.py" || echo "ā
No TODO comments"
# Check for hardcoded credentials
uv run detect-secrets scan bindu/ || echo "ā ļø Potential secrets detected"
# Check for type hints
grep -r "def.*->.*:" bindu/ --include="*.py" | wc -l
Create .local/test-report.json:
{
"pr_number": 123,
"recommendation": "READY FOR MERGE",
"findings": [
{
"id": "F1",
"severity": "INFO",
"title": "All tests passing",
"area": "tests",
"details": "100% test pass rate with 68% coverage"
}
],
"tests": {
"total": 150,
"passed": 150,
"failed": 0,
"skipped": 0,
"coverage": 68.5,
"result": "pass"
},
"precommit": {
"hooks_passed": 8,
"hooks_failed": 0,
"result": "pass"
},
"quality": {
"print_statements": 0,
"todo_comments": 2,
"type_coverage": 85
}
}
Based on findings:
# PR #123 Test Results
## Summary
ā
All tests passing (150/150)
ā
Coverage: 68.5% (above 66% threshold)
ā
All pre-commit hooks passing
ā ļø 2 TODO comments found
## Recommendation
READY FOR MERGE
## Test Details
- Unit tests: 120 passed
- Integration tests: 30 passed
- Coverage: 68.5%
## Quality Checks
- ā
No print statements
- ā ļø 2 TODO comments
- ā
Type hints: 85% coverage
## Next Steps
1. Review TODO comments
2. Proceed with merge
.local/pr-meta.json - PR metadata.local/test-results.json - Test execution results.local/test-report.json - Structured findings.local/precommit-results.txt - Pre-commit output# Test PR #123
/skill test-pr 123
# Test with specific pattern
/skill test-pr 123 --pattern "test_applications"