Phase 6.4 - Modular Architecture: - Add lewooogo-brain adapters for LLM providers - Add lewooogo-data dual memory (Redis + PostgreSQL) - Implement consensus engine for multi-agent decisions - Add incident memory service for historical context Phase 9 - Agent Teams (Claude Agent SDK): - Add base agent class with Claude Sonnet 4 integration - Implement action planner, blast radius, and security agents - Add agent API endpoints and proposal workflow - Integrate ADR-009 OpenClaw Agent Teams architecture DevOps & CI/CD: - Add GitHub Actions CI/CD workflows (ci.yaml, cd.yaml) - Add pre-commit hooks and secrets baseline - Add docker-compose for local development - Update Kubernetes network policies Frontend Improvements: - Add auto-healing error boundary component - Update i18n messages for agent features - Enhance dual-state incident card with execution feedback Documentation: - Add 7 ADRs covering MCP, design system, architecture decisions - Update ARCHITECTURE_MEMORY.md with modular design - Add GLOBAL_RULES.md and SOUL.md for project identity Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
392 lines
12 KiB
JSON
392 lines
12 KiB
JSON
{
|
|
"metadata": {
|
|
"title": "AWOOOI - Zero-Touch Ops. Human-Centric Decisions.",
|
|
"description": "AI-Powered Intelligent Operations Platform"
|
|
},
|
|
"common": {
|
|
"loading": "Loading...",
|
|
"error": "An error occurred",
|
|
"success": "Success",
|
|
"cancel": "Cancel",
|
|
"confirm": "Confirm",
|
|
"close": "Close",
|
|
"save": "Save",
|
|
"delete": "Delete",
|
|
"edit": "Edit",
|
|
"back": "Back",
|
|
"clear": "Clear",
|
|
"refresh": "Refresh",
|
|
"viewDetails": "View Details",
|
|
"later": "Later"
|
|
},
|
|
"brand": {
|
|
"name": "AWOOOI",
|
|
"slogan": "Zero-Touch Ops. Human-Centric Decisions.",
|
|
"sloganAlt": "零干預維運,以人為本的決策。",
|
|
"tagline": "AI-Powered Intelligent Operations Platform",
|
|
"version": "v1.0.0",
|
|
"environment": "Production"
|
|
},
|
|
"nav": {
|
|
"home": "Home",
|
|
"dashboard": "Dashboard",
|
|
"approvals": "Approvals",
|
|
"actions": "Action Log",
|
|
"knowledge": "Knowledge Base",
|
|
"settings": "Settings"
|
|
},
|
|
"locale": {
|
|
"switch": "Switch Language",
|
|
"zhTW": "繁體中文",
|
|
"en": "English"
|
|
},
|
|
"demo": {
|
|
"title": "AWOOOI Demo",
|
|
"subtitle": "Visual Acceptance Test",
|
|
"mockMode": "MOCK MODE",
|
|
"spikeControls": "CPU Spike Demo Controls",
|
|
"spikeActive": "SPIKE ACTIVE",
|
|
"triggerSpike": "Spike {host}",
|
|
"clearSpike": "Clear Spike",
|
|
"liveDashboard": "Live Dashboard (SSE)",
|
|
"approvalCards": "HITL Approval Cards (CPO-107)",
|
|
"statusShowcase": "StatusOrb Showcase",
|
|
"lowRiskDemo": "LOW RISK - 1 second hold",
|
|
"highRiskDemo": "HIGH RISK - 1 second hold",
|
|
"criticalDemo": "CRITICAL + DESTRUCTIVE - 2 second hold + red glow",
|
|
"hitlRealApi": "HITL Multi-Sig (Real API)",
|
|
"addCritical": "+ Critical",
|
|
"addMedium": "+ Medium",
|
|
"creating": "Creating..."
|
|
},
|
|
"host": {
|
|
"devops": {
|
|
"name": "DevOps Vault",
|
|
"shortName": "DevOps"
|
|
},
|
|
"security": {
|
|
"name": "Kali Security Center",
|
|
"shortName": "Kali"
|
|
},
|
|
"k3s": {
|
|
"name": "K3s Master Node",
|
|
"shortName": "K3s"
|
|
},
|
|
"aiWeb": {
|
|
"name": "AI+Web Center",
|
|
"shortName": "AI+Web"
|
|
}
|
|
},
|
|
"dashboard": {
|
|
"title": "Command Center",
|
|
"subtitle": "AI-Powered Unified Operations View",
|
|
"liveStats": "Live Stats",
|
|
"activeNodes": "Active Nodes",
|
|
"pendingAlerts": "Pending Alerts",
|
|
"pendingApprovals": "Pending Approvals",
|
|
"overallStatus": "Overall Status",
|
|
"waitingData": "Waiting for data...",
|
|
"cpu": "CPU",
|
|
"memory": "MEM",
|
|
"baseline": "Baseline",
|
|
"baselineFormat": "(Baseline: {value}%)",
|
|
"criticality": "Criticality",
|
|
"systemStatus": "System Status",
|
|
"eventStream": "Event Stream",
|
|
"aiAgent": "AI Agent",
|
|
"globalPulse": "Global Pulse",
|
|
"liveUpdates": "Live Updates",
|
|
"loadingMetrics": "Loading metrics...",
|
|
"metricsError": "Failed to load metrics"
|
|
},
|
|
"openclaw": {
|
|
"name": "OpenClaw",
|
|
"monitoring": "Monitoring",
|
|
"statusOk": "OK",
|
|
"statusWarning": "WARNING",
|
|
"messageOk": "All systems operational. No action required.",
|
|
"messageWarning": "{host} status abnormal. Recommend checking related services."
|
|
},
|
|
"ai": {
|
|
"title": "AI Decision Engine",
|
|
"intercepting": "[SYS] Intercepting anomaly signals...",
|
|
"analyzing": "OpenClaw analyzing blast radius...",
|
|
"calculating": "Calculating risk matrix & approval threshold...",
|
|
"generating": "Generating remediation script...",
|
|
"complete": "Analysis complete. Approval card created.",
|
|
"processingAlert": "Processing alert...",
|
|
"analysisComplete": "Analysis complete",
|
|
"patrolling": "Patrolling...",
|
|
"standby": "STANDBY",
|
|
"processFlow": "AI Decision Flow",
|
|
"processing": "Processing"
|
|
},
|
|
"agent": {
|
|
"standby": "STANDBY",
|
|
"analyzing": "ANALYZING",
|
|
"executing": "EXECUTING",
|
|
"waitingApproval": "AWAITING APPROVAL",
|
|
"error": "ERROR"
|
|
},
|
|
"connection": {
|
|
"disconnected": "Disconnected",
|
|
"connecting": "Connecting...",
|
|
"connected": "Live",
|
|
"reconnecting": "Reconnecting...",
|
|
"error": "Connection Error",
|
|
"mockMode": "MOCK"
|
|
},
|
|
"terminal": {
|
|
"title": "AWOOOI Terminal",
|
|
"version": "Version",
|
|
"waiting": "Waiting for command...",
|
|
"initiate": "INITIATE SYNC",
|
|
"executing": "EXECUTING...",
|
|
"events": "events",
|
|
"stream": "STREAM",
|
|
"waitingForData": "Waiting for decision chain data...",
|
|
"steps": "Steps",
|
|
"streaming": "Streaming",
|
|
"paused": "Paused"
|
|
},
|
|
"incident": {
|
|
"title": "Incident Management",
|
|
"activeIncidents": "Active Incidents",
|
|
"noActiveIncidents": "No active incidents",
|
|
"signals": "signals",
|
|
"proposals": "proposals",
|
|
"affectedServices": "Affected Services",
|
|
"emptyState": "No active incidents",
|
|
"emptyStateDescription": "All systems operational",
|
|
"status": {
|
|
"investigating": "Investigating",
|
|
"mitigating": "Mitigating",
|
|
"resolved": "Resolved",
|
|
"closed": "Closed"
|
|
},
|
|
"severity": {
|
|
"P0": "P0 (Critical)",
|
|
"P1": "P1 (High)",
|
|
"P2": "P2 (Warning)",
|
|
"P3": "P3 (Info)"
|
|
},
|
|
"generateProposal": "Generate Proposal",
|
|
"viewDetails": "View Details",
|
|
"card": {
|
|
"executing": "Executing...",
|
|
"approved": "[ APPROVED ]",
|
|
"rejected": "[ REJECTED ]",
|
|
"error": "Error",
|
|
"timeout": "Timeout",
|
|
"retry": "Retry",
|
|
"timeoutMessage": "Execution timeout, please check API logs",
|
|
"checkApiLogs": "Please check API logs",
|
|
"analyzing": "Brain analyzing...",
|
|
"waitingDecision": "Waiting for decision",
|
|
"authorizeExecution": "Authorize execution",
|
|
"rejectProposal": "Reject proposal",
|
|
"aiExecuting": ">_ AI Executing (Tier 1)",
|
|
"brainAnalyzing": ">_ Brain analyzing...",
|
|
"decisionReady": ">_ Decision ready (Tier {tier})",
|
|
"waitingCommander": ">_ Awaiting commander approval (Tier {tier})",
|
|
"suggestedAction": "> Suggested action:"
|
|
}
|
|
},
|
|
"status": {
|
|
"idle": "Idle",
|
|
"thinking": "Thinking",
|
|
"syncing": "Syncing",
|
|
"executing": "Executing",
|
|
"waitingApproval": "Waiting Approval",
|
|
"error": "Error",
|
|
"healthy": "Healthy",
|
|
"warning": "Warning",
|
|
"critical": "Critical",
|
|
"degraded": "Degraded",
|
|
"unhealthy": "Unhealthy"
|
|
},
|
|
"approval": {
|
|
"title": "Approval Request",
|
|
"card": "Approval Card",
|
|
"approve": "APPROVE",
|
|
"reject": "REJECT",
|
|
"holdToApprove": "HOLD TO APPROVE",
|
|
"holdToConfirm": "HOLD TO CONFIRM",
|
|
"holdToSign": "HOLD TO SIGN",
|
|
"confirming": "CONFIRMING...",
|
|
"signing": "SIGNING...",
|
|
"needMore": "NEED {count} MORE",
|
|
"confirmDestructive": "CONFIRM DESTRUCTIVE",
|
|
"approveDestructive": "APPROVE (DESTRUCTIVE)",
|
|
"pendingApprovals": "Pending Approvals",
|
|
"riskLevel": "Risk Level",
|
|
"signatures": "SIGNATURES",
|
|
"requiredSignatures": "Required Signatures",
|
|
"currentSignatures": "Current Signatures",
|
|
"requestedBy": "Requested by",
|
|
"expiresAt": "Expires At",
|
|
"holdHint": "Hold button for {seconds}s to {action}",
|
|
"actionApprove": "approve",
|
|
"actionConfirm": "confirm destructive action",
|
|
"actionSign": "sign",
|
|
"waitingSecondSig": "Waiting for second approver",
|
|
"signedBy": "Signed by {name}",
|
|
"signedAt": "at {time}",
|
|
"signSuccess": "Signed successfully",
|
|
"executionTriggered": "Execution triggered",
|
|
"rejectSuccess": "Rejected",
|
|
"rejectReason": "Rejection reason",
|
|
"enterReason": "Enter rejection reason...",
|
|
"signComment": "Sign comment (optional)",
|
|
"enterComment": "Enter comment...",
|
|
"noApprovals": "No pending approvals",
|
|
"fetchError": "Failed to fetch approvals"
|
|
},
|
|
"risk": {
|
|
"low": "LOW RISK",
|
|
"medium": "MEDIUM RISK",
|
|
"high": "HIGH RISK",
|
|
"critical": "CRITICAL"
|
|
},
|
|
"dryRun": {
|
|
"title": "Dry-Run",
|
|
"validation": "DRY-RUN VALIDATION",
|
|
"passed": "Passed",
|
|
"failed": "Failed",
|
|
"checks": "Checks",
|
|
"rbac": "RBAC Check",
|
|
"syntax": "Syntax Check",
|
|
"resource": "Resource Check",
|
|
"replicaCount": "Replica Count",
|
|
"backupAvailable": "Backup Available",
|
|
"clusterAdmin": "cluster-admin",
|
|
"dbAdmin": "db-admin",
|
|
"deploymentAdmin": "deployment-admin",
|
|
"noRecentBackup": "No recent backup!",
|
|
"ok": "OK"
|
|
},
|
|
"blastRadius": {
|
|
"title": "BLAST RADIUS",
|
|
"affectedPods": "AFFECTED PODS",
|
|
"estimatedDowntime": "EST. DOWNTIME",
|
|
"relatedServices": "RELATED SERVICES",
|
|
"dataImpact": "DATA IMPACT",
|
|
"none": "NONE",
|
|
"readOnly": "READ ONLY",
|
|
"write": "WRITE",
|
|
"destructive": "DESTRUCTIVE"
|
|
},
|
|
"graphRag": {
|
|
"title": "Topology Analysis",
|
|
"blastRadius": "Blast Radius",
|
|
"rootCause": "Root Cause",
|
|
"upstreamImpact": "Upstream Impact",
|
|
"downstreamChain": "Downstream Chain",
|
|
"dependsOn": "depends on",
|
|
"calls": "calls",
|
|
"affectedCount": "Affected Count",
|
|
"probableRootCauses": "Probable Root Causes"
|
|
},
|
|
"finops": {
|
|
"title": "Cost Analysis",
|
|
"totalWasted": "Monthly Waste",
|
|
"realizableSavings": "Realizable Savings",
|
|
"freedResources": "Freed Resources",
|
|
"annualProjection": "Annual Projection",
|
|
"topActions": "Top Actions",
|
|
"orphanedPvc": "Orphaned PVC",
|
|
"zombiePod": "Zombie Pod",
|
|
"overProvisioned": "Over-provisioned"
|
|
},
|
|
"trustEngine": {
|
|
"title": "Trust Engine",
|
|
"trustScore": "Trust Score",
|
|
"progressive": "Progressive Autonomy",
|
|
"approved": "Approved",
|
|
"rejected": "Rejected",
|
|
"neverDowngrade": "Never Downgrade"
|
|
},
|
|
"multiSig": {
|
|
"title": "Multi-Sig",
|
|
"signature": "Signature",
|
|
"signedBy": "Signed By",
|
|
"signedAt": "Signed At",
|
|
"voided": "Voided",
|
|
"toctouWarning": "State Changed Warning"
|
|
},
|
|
"privacy": {
|
|
"title": "Privacy Shield",
|
|
"redacted": "Redacted",
|
|
"piiDetected": "PII Detected"
|
|
},
|
|
"mockData": {
|
|
"deletePod": "Delete Pod: nginx-frontend-7d4b8c9f5-xk2m3",
|
|
"deletePodDesc": "Clean up unresponsive frontend Pod, ReplicaSet will auto-rebuild",
|
|
"dropTable": "DROP TABLE: user_sessions",
|
|
"dropTableDesc": "Clear all user sessions, will force logout all users",
|
|
"scaleDeployment": "Scale Deployment: api-backend",
|
|
"scaleDeploymentDesc": "Scale from 3 to 5 replicas for increased traffic",
|
|
"testActions": {
|
|
"lowAction": "Scale deployment api-backend to 5 replicas",
|
|
"lowDesc": "Increase backend replicas to handle traffic growth",
|
|
"mediumAction": "kubectl delete pod nginx-ingress-7d6f8c9b5-abc12",
|
|
"mediumDesc": "Clean up unresponsive frontend Pod, ReplicaSet will auto-rebuild",
|
|
"criticalAction": "DROP TABLE user_sessions",
|
|
"criticalDesc": "Clear all user sessions to force re-login. This will affect all online users."
|
|
}
|
|
},
|
|
"actionLog": {
|
|
"title": "Action Log",
|
|
"subtitle": "K8s Operation Execution Audit Trail",
|
|
"noLogs": "No execution records",
|
|
"loading": "Loading...",
|
|
"fetchError": "Failed to fetch audit logs",
|
|
"columns": {
|
|
"time": "Execution Time",
|
|
"operation": "Operation Type",
|
|
"target": "Target Resource",
|
|
"namespace": "Namespace",
|
|
"status": "Status",
|
|
"duration": "Duration",
|
|
"executor": "Executor"
|
|
},
|
|
"operations": {
|
|
"DELETE_POD": "Delete Pod",
|
|
"RESTART_DEPLOYMENT": "Restart Deployment",
|
|
"SCALE_DEPLOYMENT": "Scale Deployment"
|
|
},
|
|
"status": {
|
|
"success": "Success",
|
|
"failure": "Failure"
|
|
},
|
|
"stats": {
|
|
"title": "Statistics",
|
|
"total": "Total Executions",
|
|
"successRate": "Success Rate",
|
|
"avgDuration": "Avg Duration",
|
|
"last24h": "Last 24 Hours"
|
|
},
|
|
"dryRun": {
|
|
"passed": "Dry-Run Passed",
|
|
"failed": "Dry-Run Failed"
|
|
},
|
|
"pagination": {
|
|
"page": "Page {current} of {total}",
|
|
"prev": "Previous",
|
|
"next": "Next"
|
|
}
|
|
},
|
|
"footer": {
|
|
"copyright": "© 2026 岑洋國際行銷有限公司",
|
|
"poweredBy": "Powered by leWOOOgo Engine"
|
|
},
|
|
"errorBoundary": {
|
|
"systemFailure": "[SYSTEM FAILURE]",
|
|
"criticalError": "Critical UI rendering error detected. Auto-healing attempts exhausted.",
|
|
"escalating": "Escalating to OpenClaw AIOps Agent...",
|
|
"forceRestart": "FORCE MANUAL RESTART",
|
|
"detectingAnomaly": "[ DETECTING ANOMALY ]",
|
|
"autoHealingAttempt": "Initiating Auto-Healing Protocol (Attempt {attempt}/3)"
|
|
}
|
|
}
|