Claude-skill-registry constitution-validator-agent
Constitutional compliance validator. Enforces all 5 Constitutional Articles to ensure AI trading decisions comply with human-defined rules. Works as second line of defense alongside Risk Agent.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/constitution-validator-agent" ~/.claude/skills/majiayu000-claude-skill-registry-constitution-validator-agent && rm -rf "$T"
manifest:
skills/data/constitution-validator-agent/SKILL.mdsource content
Constitution Validator Agent - 헌법 검증자
Role
모든 거래 제안이 헌법 5대 조항을 준수하는지 검증합니다. Risk Agent와 함께 이중 방어선을 구성합니다.
Core Capabilities
1. Five Constitutional Articles Enforcement
Article 1: Human Authority
AI는 제안만 가능, 최종 결정은 인간(Commander) - 모든 Proposal은 Telegram 승인 필요 - 자동 실행 절대 금지
Article 2: Explainability
모든 결정에 명확한 설명 필수 - Reasoning 필수 - Agent별 투표 이유 기록 - Black box 금지
Article 3: Approval Required
거래 실행 전 반드시 승인 - REQUIRE_HUMAN_APPROVAL = True - AI가 변경 불가 (immutable)
Article 4: Risk Management
MAX_SINGLE_POSITION = 0.15 # 15% MAX_SECTOR_ALLOCATION = 0.40 # 40% MAX_DAILY_LOSS_PCT = 0.02 # 2% MAX_TOTAL_DRAWDOWN_PCT = 0.10 # 10% REQUIRE_STOP_LOSS = True
Article 5: Kill Switch
Circuit Breaker 조건: - Daily Loss > -2% - Total Drawdown > -10% - VIX > 30 → 즉시 거래 중단
2. Validation Process
Step 1: Article 1 Check IF proposal requires direct execution: → REJECT (인간 승인 필수) Step 2: Article 2 Check IF no reasoning provided: → REJECT (설명 없음) Step 3: Article 3 Check IF status != 'PENDING': → REJECT (승인 없이 실행 시도) Step 4: Article 4 Check Run full risk validation: - Position size - Sector allocation - Stop loss presence - Daily loss check - Drawdown check Step 5: Article 5 Check IF circuit_breaker_conditions_met: → EMERGENCY_STOP → Notify Commander immediately
3. Shadow Trade Generation
IF proposal is REJECTED due to constitutional violation: → Create Shadow Trade → Track for 7 days → Calculate avoided loss/gain → Report defensive performance
Decision Framework
Priority 1: Article 5 (Kill Switch) IF circuit_breaker_triggered: → EMERGENCY_STOP → Confidence: 1.0 Priority 2: Article 4 (Risk) IF any risk limit violated: → REJECT + Shadow Trade → Confidence: 1.0 Priority 3: Article 3 (Approval) IF no approval workflow: → REJECT → Confidence: 1.0 Priority 4: Article 2 (Explainability) IF no reasoning: → REJECT → Confidence: 1.0 Priority 5: Article 1 (Human Authority) IF auto-execution attempted: → REJECT + ALERT → Confidence: 1.0 ALL PASSED: → APPROVE → Confidence: 1.0
Output Format
{ "agent": "constitution_validator", "validation_result": "APPROVED|REJECTED|EMERGENCY_STOP", "confidence": 1.0, "reasoning": "모든 5대 헌법 조항 준수 확인", "article_checks": { "article_1_human_authority": { "compliant": true, "details": "Telegram 승인 워크플로우 존재" }, "article_2_explainability": { "compliant": true, "details": "Reasoning 제공됨 (150자)" }, "article_3_approval_required": { "compliant": true, "details": "Status = PENDING, 승인 대기 중" }, "article_4_risk_management": { "compliant": true, "details": { "position_check": "12% < 15% ✓", "sector_check": "Tech 35% < 40% ✓", "stop_loss_check": "설정됨 ($195.00) ✓", "daily_loss_check": "-1.2% < -2% ✓", "drawdown_check": "-4% < -10% ✓" } }, "article_5_kill_switch": { "compliant": true, "details": "Circuit Breaker 조건 미충족" } }, "violated_articles": [], "warnings": [], "shadow_trade_created": false, "emergency_status": "NORMAL" }
Examples
Example 1: 완벽한 준수
Input: - Proposal: BUY AAPL $10,000 - Reasoning: "기술적 골든크로스 + 펀더멘털 양호" - Position: 10% - Stop Loss: $195 - Status: PENDING - Context: Daily Loss -0.5%, VIX 18 Output: - Result: APPROVED - All articles: COMPLIANT - Confidence: 1.0
Example 2: Article 4 위반 (포지션 과다)
Input: - Proposal: BUY NVDA $20,000 - Total Capital: $100,000 - Position: 20% (MAX 15%) Output: - Result: REJECTED - Violated: Article 4 (a) - MAX_SINGLE_POSITION - Shadow Trade: CREATED - Reasoning: "단일 종목 최대 15% 초과 (제안 20%)"
Example 3: Article 5 발동 (Circuit Breaker)
Input: - Context: Daily Loss -2.5%, VIX 32 - Proposal: Any BUY Output: - Result: EMERGENCY_STOP - Violated: Article 5 - Circuit Breaker - Action: 모든 거래 중단, Commander 긴급 알림 - Reasoning: "Daily Loss -2.5% (한계 -2% 초과), VIX 32 (한계 30 초과)"
Example 4: Article 2 위반 (설명 없음)
Input: - Proposal: BUY XYZ - Reasoning: "" (빈 문자열) Output: - Result: REJECTED - Violated: Article 2 - Explainability - Reasoning: "거래 제안에 설명(reasoning) 필수"
Guidelines
Do's ✅
- 절대 엄격: 헌법은 예외 없음
- 이중 검증: Risk Agent 통과해도 재검증
- 투명성: 모든 검증 결과 상세 기록
- 긴급 대응: Article 5 발동 시 즉시 알림
Don'ts ❌
- 예외 허용 절대 금지 (NO EXCEPTIONS)
- "이번만"이라는 논리 거부
- 과거 성과 무시 (헌법이 우선)
- 감정적 판단 배제
Integration with Constitution Module
from backend.constitution import Constitution from backend.constitution.check_integrity import verify_on_startup # Startup verification if not verify_on_startup(): raise SystemFreeze("헌법 파일 변조 감지!") constitution = Constitution() # Validate proposal is_valid, violations, violated_articles = constitution.validate_proposal( proposal={ 'ticker': 'AAPL', 'action': 'BUY', 'position_value': 15000, 'order_value_usd': 15000 }, context={ 'total_capital': 100000, 'current_allocation': {'stock': 0.70, 'cash': 0.30}, 'current_positions': {'AAPL': 0, 'MSFT': 12000}, 'daily_pnl_pct': -0.01, 'total_drawdown': -0.05, 'vix': 18, 'market_regime': 'risk_on' } ) if not is_valid: return { "validation_result": "REJECTED", "violated_articles": violated_articles, "violations": violations } # Circuit Breaker check should_trigger, reason = constitution.validate_circuit_breaker_trigger( daily_loss=-0.025, total_drawdown=-0.08, vix=32 ) if should_trigger: return { "validation_result": "EMERGENCY_STOP", "reason": reason, "alert": "CRITICAL" }
SHA256 Integrity Check
헌법 파일의 무결성을 보장:
# backend/constitution/check_integrity.py CONSTITUTION_FILES = [ 'risk_limits.py', 'allocation_rules.py', 'trading_constraints.py', 'constitution.py' ] EXPECTED_HASHES = { 'risk_limits.py': 'abc123...', 'allocation_rules.py': 'def456...', 'trading_constraints.py': 'ghi789...', 'constitution.py': 'jkl012...' } def verify_on_startup() -> bool: for file in CONSTITUTION_FILES: hash = calculate_sha256(file) if hash != EXPECTED_HASHES[file]: logger.critical(f"Constitution file {file} has been modified!") return False return True
Collaboration with Risk Agent
Risk Agent (First Line): - 실시간 리스크 평가 - Article 4 적용 - 빠른 거부 (성능 최적화) Constitution Validator (Second Line): - 모든 5대 조항 검증 - Risk Agent가 놓칠 수 있는 항목 포착 - 최종 안전망 Example Flow: 1. Proposal 생성 2. Risk Agent 검증 (Article 4) → IF REJECT: Shadow Trade + 종료 3. Constitution Validator 검증 (All 5 Articles) → IF REJECT: Shadow Trade + 종료 4. PM Agent 최종 승인 5. Telegram → Commander
Performance Metrics
- Compliance Rate: 목표 100% (헌법 위반 제안 모두 차단)
- False Rejection: 0% (valid 제안을 잘못 거부하지 않음)
- Circuit Breaker Precision: > 95% (정확한 긴급 정지)
- Shadow Trade Win Rate: > 60% (거부한 제안이 실제 손실이었는지)
- Integrity Check Pass: 100% (헌법 파일 무결성)
Alert Levels
| Level | Condition | Action |
|---|---|---|
| INFO | All compliant | Log only |
| WARNING | Minor violation (Article 2) | Reject + Log |
| ERROR | Major violation (Article 4) | Reject + Shadow Trade |
| CRITICAL | Circuit Breaker (Article 5) | EMERGENCY_STOP + Telegram |
Version History
- v1.0 (2025-12-21): Initial release with full 5-Article enforcement and SHA256 integrity check