协作头脑风暴
brainstorming
在实现前澄清需求、探索设计选择,并形成清晰的开发方向。
auri-core【开发与工程】Implements intelligent auri core with multi-factor skill selection, fallback chains, and adherence to the 5 Laws of Elegant Defense
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
name: auri-core compatibility: opencode completeness: 95 content-types:
Orchestrates intelligent skill selection and execution for auri core workflows. Applies the 5 Laws of Elegant Defense to guide data naturally through the orchestration pipeline, preventing errors before they occur. Selects optimal skills based on multi-factor scoring including text similarity, historical performance, and system availability.
┌───────────────────────────────────────────────────────────────────────────────┐ │ Orchestration Flow │ └───────────────────────────────────────────────────────────────────────────────┘
User Request ↓ ┌─────────────────┐ │ Parse Request │ │ & Extract │ │ Features │ └────────┬────────┘ ↓ ┌─────────────────────────────────────────────────────────────────────┐ │ Evaluate Available Skills │ │ │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ │ │ Skill A │ │ Skill B │ │ Skill C │ │ │ │ - Match Score│ │ - Match Score│ │ - Match Score│ │ │ │ - Confidence │ │ - Confidence │ │ - Confidence │ │ │ │ - History │ │ - History │ │ - History │ │ │ └──────┬───────┘ └──────┬───────┘ └──────┬───────┘ │ │ │ │ │ │ │ └─────────────────┴─────────────────┘ │ │ ↓ │ │ Select Best Skill │ └─────────────────────────────────────────────────────────────────────┘ ↓ ┌─────────────────┐ │ Execute Skill │ └────────┬────────┘ ↓ ┌─────────────────┐ │ Handle Result │ └────────┬────────┘ ↓ ┌─────────────────────────────────────────────────────────────────────┐ │ Error Handling & Fallback │ │ │ │ Success? ────────► Return Result │ │ │ │ Fail? ────────┐ │ │ ↓ │ │ ┌──────────────────────────────────────────────────────────┐ │ │ │ Fallback Chain │ │ │ │ │ │ │ │ 1. Retry with adjusted parameters │ │ │ │ 2. Try Alternative Skill (if available) │ │ │ │ 3. Defer to Human Operator (if critical) │ │ │ │ 4. Log & Return Error │ │ │ └──────────────────────────────────────────────────────────┘ │ └─────────────────────────────────────────────────────────────────────┘
Use this skill when:
Avoid this skill for:
Parse and Analyze Request - Extract intent, entities, and constraints from user input. Checkpoint: All required parameters must be present and in valid format before proceeding.
Score Available Skills - Calculate match scores using multi-factor algorithm:
Checkpoint: Skip to fallback if no skill scores above threshold.
Select Optimal Skill - Choose skill with highest score that meets minimum confidence. Checkpoint: Verify skill has not been disabled or deprecated.
Execute with Fallback - Run skill execution wrapped in retry and fallback logic. Checkpoint: Log all execution attempts for audit trail.
Return or Fallback - Either return successful result or apply fallback chain:
related-skillsCheckpoint: Record outcome with timing and confidence metadata.
def evaluate_skill_candidates(
request: AuriRequest,
registry: SkillRegistry,
metrics: PerformanceMetrics
) -> Optional[SkillCandidate]:
"""Evaluate available skills against the incoming request using multi-factor scoring.
Implements Law 2 (Parse at boundary) by validating request structure first.
Implements Law 3 (Atomic Predictability) by returning a fresh candidate object.
"""
if not request.intent or not request.entities:
raise ValueError("Request must contain parsed intent and entities")
candidates = []
for skill in registry.get_active_skills():
# Multi-factor scoring: text match + historical success + system health
text_score = _compute_semantic_match(request.query, skill.triggers)
history_score = metrics.get_success_rate(skill.name, window_days=30)
health_score = registry.get_health_status(skill.name)
weighted_score = (text_score * 0.5) + (history_score * 0.3) + (health_score * 0.2)
if weighted_score >= registry.min_confidence_threshold:
candidates.append(SkillCandidate(
name=skill.name,
confidence=weighted_score,
dependencies=skill.dependencies,
fallback_chain=skill.fallback_targets
))
if not candidates:
return None
candidates.sort(key=lambda c: c.confidence, reverse=True)
return candidates[0]
def execute_with_auri_fallback(
candidate: SkillCandidate,
context: ExecutionContext,
audit_logger: AuditLogger
) -> ExecutionResult:
"""Execute the selected skill with auri-core's adaptive fallback chain.
Implements Law 4 (Fail Fast, Fail Loud) by halting on invalid states.
Implements Law 1 (Early Exit) for edge cases and dependency checks.
"""
if not candidate or not context.validated_inputs:
raise ExecutionError("Missing candidate or validated context for execution")
# Check dependency availability before execution
if not registry.verify_dependencies(candidate.dependencies):
audit_logger.log("Dependency check failed", level="WARN")
return _trigger_fallback(candidate, context, audit_logger)
attempts = 0
max_attempts = 2
while attempts <= max_attempts:
try:
result = registry.invoke_skill(candidate.name, context.validated_inputs)
# Update historical performance for adaptive routing
metrics.record_success(candidate.name, latency=result.latency_ms)
audit_logger.log(f"Success: {candidate.name}", level="INFO")
return ExecutionResult(success=True, data=result, confidence=candidate.confidence)
except TransientNetworkError:
attempts += 1
if attempts > max_attempts:
break
audit_logger.log(f"Retry {attempts}/{max_attempts} for {candidate.name}", level="DEBUG")
except InvalidStateError as e:
audit_logger.log(f"Invalid state in {candidate.name}: {e}", level="ERROR")
raise ExecutionError(f"Fatal state violation in {candidate.name}") from e
# Exhausted retries - trigger fallback chain
return _trigger_fallback(candidate, context, audit_logger)
code-philosophy (5 Laws of Elegant Defense) in all logicWhen applying this skill, produce:
Authoritative documentation links for this skill's domain. The model follows markdown links at load time to resolve external references and inline content.
| Skill | Purpose | |