Repository Readiness Skill
Automatically prepare repositories for new work by analyzing configuration, structure, mission, and establishing complete work context.
Quick Start
Manual trigger
/repo-readiness
Auto-triggers before:
- New task execution
- Feature development
- SPARC workflow initiation
- Agent assignment
Direct check
./scripts/check_repo_readiness.sh <repo-name>
When to Use
AUTO-EXECUTES (via hook):
-
Before starting any new task in a repository
-
When switching to a different repository
-
Before SPARC specification phase
-
Before agent assignment for new work
MANUAL TRIGGER:
-
When repository context is unclear
-
Before major refactoring
-
After long breaks from a repository
-
When onboarding to an existing project
-
Before cross-repo coordination
Prerequisites
-
Repository is cloned locally
-
Git is initialized
-
Read access to repository files
-
(Optional) Internet for external documentation lookup
Overview
The repo-readiness skill performs comprehensive analysis of a repository to establish complete work context before executing any new tasks. It replaces manual context gathering with automated, systematic preparation.
What It Analyzes
-
Configuration: CLAUDE.md, .claude/, .agent-os/
-
Structure: Directory organization, module architecture
-
Mission: Product vision, objectives, technical decisions
-
State: Git status, dependencies, environment setup
-
Standards: Compliance with workspace-hub standards
-
Context: Historical decisions, conventions, patterns
Output
Generates a comprehensive readiness report with:
-
Configuration summary
-
Structure analysis
-
Mission & objectives extraction
-
Readiness assessment (✅ Ready / ⚠️ Needs Attention / ❌ Not Ready)
-
Recommended actions
-
Context for AI agents
Core Operations
- Configuration Analysis
Analyzes:
✓ Root CLAUDE.md ✓ .claude/CLAUDE.md (extended config) ✓ .claude.json (MCP settings) ✓ .mcp.json (MCP servers) ✓ .agent-os/ configuration ✓ Repository-specific rules
Extracts:
-
Critical rules and constraints
-
File organization standards
-
Testing requirements
-
AI agent guidelines
-
Tool preferences (UV, pytest, etc.)
-
Integration points
Example Output:
Configuration Summary
CLAUDE.md Status: ✅ Found
- Location: /root/CLAUDE.md
- Critical Rules:
- TDD mandatory
- YAGNI principle
- UV environment required
- File Organization: Modular structure enforced
- Testing: pytest with 80% coverage minimum
- AI Guidelines: Question before implementation
Extended Config: ✅ Found (.claude/CLAUDE.md)
- SPARC methodology enabled
- MCP integration configured
- HTML reporting standards defined
MCP Configuration: ✅ Found
- Tools available: 47 MCP tools
- Structure Assessment
Analyzes:
✓ Directory organization ✓ Module architecture ✓ File naming conventions ✓ Test structure ✓ Documentation presence ✓ Script organization
Checks Against:
-
FILE_ORGANIZATION_STANDARDS.md
-
Repository best practices
-
Module patterns
-
Naming conventions
Example Output:
Structure Assessment
Directory Organization: ✅ Compliant
repo/ ├── src/ ✅ Present │ └── modules/ ✅ Modular structure ├── tests/ ✅ Present │ ├── unit/ ✅ Organized │ └── integration/ ✅ Organized ├── docs/ ✅ Present ├── config/ ✅ Present ├── scripts/ ✅ Present ├── data/ ✅ Present └── reports/ ✅ Present
Module Architecture: ✅ Well-Organized
- Modules Found: 5
- data_processor/
- visualization/
- analysis/
- reporting/
- utilities/
Naming Conventions: ⚠️ Minor Issues
- ✅ Python files use snake_case
- ✅ Modules use lowercase
- ⚠️ 2 files need organization (see details)
Test Coverage: ✅ Good
- Unit tests: 45 files
- Integration tests: 12 files
- Test coverage: 85% (target: 80%)
- Mission & Objectives Extraction
Sources:
✓ .agent-os/product/mission.md ✓ .agent-os/product/tech-stack.md ✓ .agent-os/product/roadmap.md ✓ .agent-os/product/decisions.md ✓ README.md ✓ docs/OVERVIEW.md
Extracts:
-
Project purpose and vision
-
Key objectives
-
Technical stack
-
Architecture decisions
-
Current roadmap
-
Recent decisions
Example Output:
Mission & Objectives
Project Purpose
Energy data analysis and visualization platform for offshore oil & gas operations.
Key Objectives
- Process BSEE production data with 99.9% accuracy
- Generate interactive HTML reports with Plotly
- NPV analysis for economic evaluation
- Marine safety incident tracking
- Support 10+ concurrent analysis workflows
Technical Stack
- Language: Python 3.11+
- Environment: UV package manager
- Testing: pytest with 85% coverage
- Visualization: Plotly (interactive only)
- Data: Pandas, Polars
- Reporting: HTML with embedded plots
Recent Decisions (Last 30 Days)
-
Migrated to UV from pip (2024-12-15)
-
Standardized on Plotly for all visualizations (2024-12-10)
-
Implemented SPARC workflow (2024-12-01)
-
State Assessment
Checks:
✓ Git status (clean/dirty) ✓ Branch information ✓ Remote status ✓ Dependencies installed ✓ Environment setup ✓ Recent commits ✓ Open issues/PRs
Example Output:
Repository State
Git Status: ✅ Clean
- Branch: main
- Commits ahead: 0
- Commits behind: 0
- Uncommitted changes: None
- Last commit: 2024-12-20 14:23 - "Update NPV calculation logic"
Environment: ✅ Ready
- UV environment: ✅ Detected (.venv/)
- Dependencies: ✅ Synchronized (pyproject.toml == uv.lock)
- Python version: ✅ 3.11.7
Dependencies Status: ⚠️ 2 Updates Available
- plotly: 5.17.0 → 5.18.0 (minor)
- pandas: 2.1.3 → 2.1.4 (patch)
- Standards Compliance
Validates:
✓ Logging standards ✓ Testing framework standards ✓ HTML reporting standards ✓ File organization standards ✓ Development workflow compliance
Example Output:
Standards Compliance
Logging Standards: ✅ Compliant
- Standard format implemented
- Five log levels configured
- Rotation configured (10MB, 5 backups)
Testing Standards: ✅ Compliant
- pytest configured
- Coverage threshold: 80% (current: 85%)
- Unit + integration tests present
HTML Reporting: ✅ Compliant
- Interactive plots only (Plotly)
- CSV data with relative paths
- Reports in reports/ directory
File Organization: ✅ Compliant
- Modular src/ structure
- Tests mirror source
- Documentation organized
- Context Preparation
Generates:
✓ AI agent context summary ✓ Key conventions to follow ✓ Common patterns ✓ Recent changes ✓ Known issues ✓ Quick reference
Example Output:
AI Agent Context
Key Conventions
- Imports: Use absolute imports from src/
- Testing: Write tests before implementation (TDD)
- Data Loading: Use relative paths from reports/
- Error Handling: Use custom exceptions in src/exceptions.py
- Logging: Use module-level logger = logging.getLogger(name)
Common Patterns
- Data Pipeline: load → validate → process → visualize → report
- Configuration: YAML files in config/input/ directory
- Execution: Bash scripts in scripts/ directory
- Reporting: HTML with Plotly in reports/ directory
Recent Changes (Last 7 Days)
- Refactored NPV calculation to support multiple discount rates
- Added new marine safety incident categorization
- Updated BSEE data extractor for 2024 format
- Enhanced error handling in data validation
Known Issues
- Issue #42: Slow performance on files >100MB (workaround documented)
- Issue #38: Timezone handling in date parsing (fix in progress)
Quick Reference
- Main entry point:
scripts/run_analysis.sh - Configuration:
config/input/<feature>.yaml - Documentation:
docs/README.md - Examples:
examples/
Readiness Assessment
Overall Readiness Score
Calculated from:
-
Configuration completeness (25%)
-
Structure compliance (20%)
-
Mission clarity (15%)
-
State health (20%)
-
Standards adherence (20%)
Readiness Levels:
✅ READY (90-100%)
- All critical checks passed
- Minor issues documented
- Safe to proceed with new work
⚠️ NEEDS ATTENTION (70-89%)
- Some issues need addressing
- Can proceed with caution
- Fix issues before major work
❌ NOT READY (<70%)
- Critical issues present
- Must resolve before proceeding
- Blocks new work
Example Assessment
Overall Readiness: ✅ READY (95%)
Breakdown
- Configuration: ✅ 100% (All configs present and valid)
- Structure: ✅ 95% (2 minor file organization issues)
- Mission: ✅ 100% (Clear objectives and roadmap)
- State: ✅ 90% (2 dependency updates available)
- Standards: ✅ 95% (Full compliance, minor logging improvement)
Recommended Actions
- 📦 Update plotly to 5.18.0 (optional, minor version)
- 📁 Organize 2 files in src/utilities/ into subfolders
- 📝 Add logging to new marine_safety module (standard practice)
Safe to Proceed: ✅ YES
All critical requirements met. Recommended actions can be addressed incrementally.
Execution Checklist
Pre-Check:
-
Repository path is valid
-
Git repository initialized
-
Read access to all files
Analysis Phase:
-
Read CLAUDE.md (root and .claude/)
-
Analyze directory structure
-
Extract mission from .agent-os/
-
Check git status
-
Verify environment setup
-
Validate standards compliance
Reporting Phase:
-
Generate configuration summary
-
Create structure assessment
-
Extract mission & objectives
-
Report repository state
-
Calculate readiness score
-
Provide recommended actions
Post-Check:
-
Save readiness report to .claude/readiness-report.md
-
Update repository context cache
-
Provide summary to user or agent
Hook Integration
Pre-Task Hook
This skill auto-executes as a pre-task hook:
Hook Configuration:
.claude/hooks/pre-task.sh
#!/bin/bash
Auto-execute repo-readiness before any task
REPO_PATH="$(pwd)" SKILL_PATH="$HOME/.claude/skills/workspace-hub/repo-readiness"
Execute readiness check
"$SKILL_PATH/check_readiness.sh" "$REPO_PATH"
Exit code determines if task can proceed
0 = Ready, 1 = Not ready (blocks task)
exit $?
Trigger Conditions:
-
/create-spec command
-
/execute-tasks command
-
/plan-product command
-
Any SPARC workflow phase
-
Agent assignment via orchestrator
Bypass Hook (when needed):
Force task execution even if not ready
SKIP_READINESS_CHECK=1 /execute-tasks "task description"
Post-Task Hook (Optional)
Update readiness state after work:
.claude/hooks/post-task.sh
#!/bin/bash
Update readiness cache after task completion
REPO_PATH="$(pwd)" TASK_ID="$1"
Re-run readiness to update cache
"$HOME/.claude/skills/workspace-hub/repo-readiness/check_readiness.sh" "$REPO_PATH" --update-cache
Log task completion
echo "$(date): Task $TASK_ID completed" >> .claude/task-history.log
Automation Scripts
- Check Readiness Script
Location: .claude/skills/workspace-hub/repo-readiness/check_readiness.sh
#!/bin/bash
Repository Readiness Check Script
REPO_PATH="${1:-.}" OUTPUT_FILE="${REPO_PATH}/.claude/readiness-report.md"
Function: Check configuration
check_configuration() { local score=0
# Check CLAUDE.md
if [ -f "${REPO_PATH}/CLAUDE.md" ]; then
echo "✅ Root CLAUDE.md found"
((score += 25))
else
echo "❌ Root CLAUDE.md missing"
fi
# Check extended config
if [ -f "${REPO_PATH}/.claude/CLAUDE.md" ]; then
echo "✅ Extended CLAUDE.md found"
((score += 25))
fi
# Check .agent-os
if [ -d "${REPO_PATH}/.agent-os" ]; then
echo "✅ Agent OS configuration found"
((score += 25))
fi
# Check MCP config
if [ -f "${REPO_PATH}/.claude.json" ] || [ -f "${REPO_PATH}/.mcp.json" ]; then
echo "✅ MCP configuration found"
((score += 25))
fi
echo "Configuration Score: ${score}/100"
return $score
}
Function: Check structure
check_structure() { local score=0 local required_dirs=("src" "tests" "docs" "config" "scripts")
for dir in "${required_dirs[@]}"; do
if [ -d "${REPO_PATH}/${dir}" ]; then
echo "✅ ${dir}/ present"
((score += 20))
else
echo "⚠️ ${dir}/ missing"
fi
done
echo "Structure Score: ${score}/100"
return $score
}
Function: Check mission
check_mission() { local score=0
if [ -f "${REPO_PATH}/.agent-os/product/mission.md" ]; then
echo "✅ Mission defined"
((score += 50))
fi
if [ -f "${REPO_PATH}/.agent-os/product/roadmap.md" ]; then
echo "✅ Roadmap defined"
((score += 50))
fi
echo "Mission Score: ${score}/100"
return $score
}
Function: Check state
check_state() { local score=0
cd "$REPO_PATH" || exit 1
# Check git status
if git diff-index --quiet HEAD -- 2>/dev/null; then
echo "✅ Git working directory clean"
((score += 50))
else
echo "⚠️ Uncommitted changes present"
((score += 25))
fi
# Check environment
if [ -d ".venv" ] || [ -d "venv" ]; then
echo "✅ Virtual environment detected"
((score += 50))
fi
echo "State Score: ${score}/100"
return $score
}
Main execution
main() { echo "========================================" echo "Repository Readiness Check" echo "Repository: ${REPO_PATH}" echo "Timestamp: $(date)" echo "========================================" echo ""
# Run all checks
check_configuration
local config_score=$?
check_structure
local struct_score=$?
check_mission
local mission_score=$?
check_state
local state_score=$?
# Calculate overall score
local overall_score=$(( (config_score*25 + struct_score*20 + mission_score*15 + state_score*20) / 80 ))
echo ""
echo "========================================"
echo "Overall Readiness: ${overall_score}%"
if [ $overall_score -ge 90 ]; then
echo "Status: ✅ READY"
echo "========================================"
return 0
elif [ $overall_score -ge 70 ]; then
echo "Status: ⚠️ NEEDS ATTENTION"
echo "========================================"
return 1
else
echo "Status: ❌ NOT READY"
echo "========================================"
return 2
fi
}
main "$@"
- Bulk Readiness Check
Check all repos in workspace:
#!/bin/bash
Check readiness of all repositories in workspace-hub
WORKSPACE_ROOT="/mnt/github/workspace-hub" READINESS_SCRIPT="$HOME/.claude/skills/workspace-hub/repo-readiness/check_readiness.sh"
Get all repos from .gitignore
repos=$(grep -E "^[a-z].*/$" "${WORKSPACE_ROOT}/.gitignore" | sed 's////')
echo "Checking readiness of all repositories..." echo ""
Track results
ready_count=0 attention_count=0 not_ready_count=0
for repo in $repos; do repo_path="${WORKSPACE_ROOT}/${repo}"
if [ -d "$repo_path" ]; then
echo "Checking: $repo"
if "$READINESS_SCRIPT" "$repo_path" > /dev/null 2>&1; then
echo " ✅ READY"
((ready_count++))
else
exit_code=$?
if [ $exit_code -eq 1 ]; then
echo " ⚠️ NEEDS ATTENTION"
((attention_count++))
else
echo " ❌ NOT READY"
((not_ready_count++))
fi
fi
fi
done
echo "" echo "Summary:" echo " Ready: $ready_count" echo " Needs Attention: $attention_count" echo " Not Ready: $not_ready_count"
Error Handling
Missing Configuration
Error: CLAUDE.md not found
❌ Critical: No CLAUDE.md found in repository root
Action Required:
- Create CLAUDE.md with repository configuration
- Use template from workspace-hub/templates/CLAUDE.md
- Re-run readiness check
Quick Fix: cp ~/workspace-hub/templates/CLAUDE.md ./CLAUDE.md
Incomplete Structure
Error: Required directories missing
⚠️ Warning: Required directories missing Missing: tests/, docs/
Action Required:
- Create missing directories
- Follow FILE_ORGANIZATION_STANDARDS.md
- Re-run readiness check
Quick Fix: mkdir -p tests/{unit,integration} docs config scripts
Unclear Mission
Error: No mission.md found
⚠️ Warning: Project mission not defined Missing: .agent-os/product/mission.md
Action Required:
- Create .agent-os/product/mission.md
- Define project purpose and objectives
- Document technical decisions
Quick Fix: mkdir -p .agent-os/product cp ~/workspace-hub/templates/mission.md .agent-os/product/
Dirty Git State
Error: Uncommitted changes present
⚠️ Warning: Repository has uncommitted changes Files modified: 5
Action Required:
- Review uncommitted changes: git status
- Commit changes: git add . && git commit -m "message"
- Or stash: git stash
- Re-run readiness check
Environment Issues
Error: Virtual environment not found
⚠️ Warning: No virtual environment detected
Action Required:
- Create UV environment: uv venv
- Install dependencies: uv pip install -r requirements.txt
- Activate environment: source .venv/bin/activate
- Re-run readiness check
Metrics & Success Criteria
Performance Metrics
Metric Target Measurement
Check Time < 5 seconds Time to complete all checks
Accuracy
95% Correct readiness assessment
False Positives < 5% Incorrectly marked as ready
False Negatives < 2% Incorrectly marked as not ready
Cache Hit Rate
80% Using cached readiness data
Coverage Metrics
Metric Target Current
Repos with CLAUDE.md 100% Track per repo
Repos with mission.md 100% Track per repo
Structure compliance
95% Average across repos
Standards adherence
90% Average compliance score
Adoption Metrics
Metric Target Measurement
Hook installation 100% repos Pre-task hook installed
Auto-execution rate
95% Tasks with readiness check
Manual check usage
10/week Explicit readiness checks
Issue detection
50% Issues caught before work
Integration Points
With SPARC Workflow
Readiness check before each SPARC phase:
Before Specification
/repo-readiness → Analyze context → /create-spec
Before Architecture
/repo-readiness → Verify structure → /sparc-architecture
Before Implementation
/repo-readiness → Check environment → /execute-tasks
With Compliance Check
Combined health validation:
Readiness + compliance
/repo-readiness && /compliance-check
Report both
./scripts/health-check.sh --full
With Agent Orchestration
Provide context to agents:
// Agent receives readiness report { "task": "implement-feature-X", "repository": "digitalmodel", "readiness": { "status": "ready", "score": 95, "context": { "conventions": [...], "patterns": [...], "recent_changes": [...] } } }
With Repo Sync
Ensure readiness before bulk operations:
Check readiness before sync
./scripts/repository_sync sync all --check-readiness
Best Practices
- Run Before Every New Task
Always start with readiness check
/repo-readiness
Then proceed with work
/create-spec "new feature"
- Keep Configuration Updated
Update CLAUDE.md when rules change
Update mission.md when objectives change
Update roadmap.md when priorities shift
- Address Issues Promptly
Don't ignore warnings
Fix structural issues immediately
Keep environment synchronized
- Use Cache Wisely
Cache valid for 1 hour by default
Force refresh when configuration changes
/repo-readiness --force-refresh
- Monitor Across All Repos
Weekly bulk check
./scripts/bulk_readiness_check.sh > reports/readiness-$(date +%Y-%m-%d).txt
Track trends
Maintain >95% readiness across all repos
Related Skills
-
compliance-check - Standards validation
-
repo-sync - Multi-repo management
-
sparc-workflow - Development methodology
-
session-start-routine - Session initialization
References
-
FILE_ORGANIZATION_STANDARDS.md
-
AI_AGENT_GUIDELINES.md
-
DEVELOPMENT_WORKFLOW.md
-
CLAUDE.md - Root configuration template
Version History
- 1.0.0 (2026-01-07): Initial release - comprehensive repository readiness skill with configuration analysis, structure assessment, mission extraction, state checking, standards compliance, auto-hook integration, bulk checking capabilities, error handling, and metrics tracking