Best use case
completion-check is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Completion Check: Verify Infrastructure Is Wired
Teams using completion-check should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/completion-check/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How completion-check Compares
| Feature / Agent | completion-check | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Completion Check: Verify Infrastructure Is Wired
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Completion Check: Verify Infrastructure Is Wired
When building infrastructure, verify it's actually connected to the system before marking as complete.
## Pattern
Infrastructure is not done when the code is written - it's done when it's wired into the system and actively used. Dead code (built but never called) is wasted effort.
## DO
1. **Trace the execution path** - Follow from user intent to actual code execution:
```bash
# Example: Verify Task tool spawns correctly
grep -r "claude -p" src/
grep -r "Task(" src/
```
2. **Check hooks are registered**, not just implemented:
```bash
# Hook exists?
ls -la .claude/hooks/my-hook.sh
# Hook registered in settings?
grep "my-hook" .claude/settings.json
```
3. **Verify database connections** - Ensure infrastructure uses the right backend:
```bash
# Check connection strings
grep -r "postgresql://" src/
grep -r "sqlite:" src/ # Should NOT find if PostgreSQL expected
```
4. **Test end-to-end** - Run the feature and verify infrastructure is invoked:
```bash
# Add debug logging
echo "DEBUG: DAG spawn invoked" >> /tmp/debug.log
# Trigger feature
uv run python -m my_feature
# Verify infrastructure was called
cat /tmp/debug.log
```
5. **Search for orphaned implementations**:
```bash
# Find functions defined but never called
ast-grep --pattern 'async function $NAME() { $$$ }' | \
xargs -I {} grep -r "{}" src/
```
## DON'T
- Mark infrastructure "complete" without testing execution path
- Assume code is wired just because it exists
- Build parallel systems (Task tool vs claude -p spawn)
- Use wrong backends (SQLite when PostgreSQL is architected)
- Skip end-to-end testing ("it compiles" ≠ "it runs")
## Completion Checklist
Before declaring infrastructure complete:
- [ ] Traced execution path from entry point to infrastructure
- [ ] Verified hooks are registered in .claude/settings.json
- [ ] Confirmed correct database/backend in use
- [ ] Ran end-to-end test showing infrastructure invoked
- [ ] Searched for dead code or parallel implementations
- [ ] Checked configuration files match implementation
## Example: DAG Task Graph
**Wrong approach:**
```
✓ Built BeadsTaskGraph class
✓ Implemented DAG dependencies
✓ Added spawn logic
✗ Never wired - Task tool still runs instead
✗ Used SQLite instead of PostgreSQL
```
**Right approach:**
```
✓ Built BeadsTaskGraph class
✓ Wired into Task tool execution path
✓ Verified claude -p spawn is called
✓ Confirmed PostgreSQL backend in use
✓ Tested: user calls Task() → DAG spawns → beads execute
✓ No parallel implementations found
```
## Source Sessions
- This session: Architecture gap discovery - DAG built but not wired, Task tool runs instead of spawn, SQLite used instead of PostgreSQLRelated Skills
saas-launch-checklist
Pre-launch verification across infrastructure, security, legal, payment, email, analytics, and performance. Day-1 monitoring, rollback plan, incident response skeleton, and post-launch week-1 checklist.
qlty-check
Code quality checks, formatting, and metrics via qlty CLI
fp-check
Systematic false positive verification for security findings. Provides structured methodology to confirm or dismiss scanner results, manual audit findings, and automated alerts. Adapted from Trail of Bits. Use when triaging security scan results or verifying audit findings.
factcheck-guard
Use this skill when making any factual claim about the codebase — existence, absence, or behavior. Converts the claim-verification rule into a systematic action protocol that prevents false assertions from grep-only results.
workflow-router
Goal-based workflow orchestration - routes tasks to specialist agents based on user goals
wiring
Wiring Verification
websocket-patterns
Connection management, room patterns, reconnection strategies, message buffering, and binary protocol design.
visual-verdict
Screenshot comparison QA for frontend development. Takes a screenshot of the current implementation, scores it across multiple visual dimensions, and returns a structured PASS/REVISE/FAIL verdict with concrete fixes. Use when implementing UI from a design reference or verifying visual correctness.
verification-loop
Comprehensive verification system covering build, types, lint, tests, security, and diff review before a PR.
vector-db-patterns
Embedding strategies, ANN algorithms, hybrid search, RAG chunking strategies, and reranking for semantic search and retrieval.
variant-analysis
Find similar vulnerabilities across a codebase after discovering one instance. Uses pattern matching, AST search, Semgrep/CodeQL queries, and manual tracing to propagate findings. Adapted from Trail of Bits. Use after finding a bug to check if the same pattern exists elsewhere.
validate-agent
Validation agent that validates plan tech choices against current best practices