@extends('admin.layouts.app') @section('title', $agent->name . ' — ' . __('admin.nav.ai_agents')) @section('page_title', $agent->name) @push('styles') @endpush @section('content') @if (session('status'))
{{ session('status') }}
@endif
{{-- Overview --}}

Overview

Key
{{ $agent->agent_key }}
Description
{{ $agent->description ?? '—' }}
Environment
{{ $agent->environment }}
Version
{{ $agent->agent_version ?? '—' }}
Core skill
{{ $agent->core_skill_version ?? '—' }}
Stage skill
{{ $agent->stage_skill_version ?? '—' }}
{{-- Runtime Controls --}}

Runtime Controls

Effective: {{ ucfirst($effective['status']) }} @if ($effective['source']==='global') (forced by global pause) @endif

Pause mode
{{ $config?->pause_mode ?? 'pause_new_only' }}
Version
{{ $config?->version ?? '—' }}
Reason
{{ $config?->reason ?? '—' }}
Expires
{{ optional($config?->expires_at)->format('Y-m-d H:i') ?? '—' }}
@if ($effective['status']==='paused')
@csrf
@else
@csrf
@endif
{{-- Knowledge Cache (read-only) — per-environment active pointer + refresh + immutable history/rollback --}}

Knowledge

{{-- Active pointer per environment --}} @foreach ($knowledgeEnvironments as $e) @php $a = $knowledgeActive[$e] ?? null; @endphp @endforeach
EnvironmentActive version PackageFiles ChecksumLoaded
{{ $e }} @if ($a){{ $a->version }}@elsenot loaded@endif {{ $a?->package_version ?? '—' }}@if ($a && $a->registry_version) · reg {{ $a->registry_version }}@endif {{ $a?->file_count ?? '—' }} @if ($a){{ \Illuminate\Support\Str::limit((string) $a->checksum, 12) }}@endif {{ $a ? (optional($a->loaded_at)->format('Y-m-d H:i') ?? '—') : '—' }}
{{-- Refresh (environment-scoped) --}}
@csrf
@if ($knowledgeHistory->isNotEmpty())

Version history (immutable)

@foreach ($knowledgeHistory as $v) @endforeach
EnvVersionPackage FilesStatus ChecksumLoaded
{{ $v->environment }} {{ $v->version }} @if ($v->is_active)active@endif {{ $v->package_version ?? '—' }} {{ $v->file_count ?? '—' }} {{ $v->status }} {{ \Illuminate\Support\Str::limit((string) $v->checksum, 12) }} {{ optional($v->loaded_at)->format('Y-m-d H:i') ?? '—' }} @unless ($v->is_active)
@csrf
@endunless
@endif
{{-- Statistics --}}

Statistics

{{ $stats['total_runs'] }}
Total runs
{{ number_format($stats['success_rate']*100,1) }}%
Success rate
{{ $stats['executed_runs'] }}
Executed
{{ $stats['failed_runs'] }}
Failed
{{ $stats['blocked'] }}
Blocked
{{ $stats['approvals'] }}
Approvals
{{-- Assigned Actions — the source of truth for agent↔action assignment --}}

{{ __('admin.agents.assigned_actions.title') }}

{{-- add-action row --}}
{{ __('admin.action_details.action_name') }} {{ __('admin.agents.assigned_actions.policy') }} {{ __('admin.agents.assigned_actions.enabled') }}
{{ __('admin.agents.assigned_actions.empty') }}
{{-- Recent Runs --}}

Recent Runs

@forelse ($recentRuns as $r) @empty @endforelse
RunStartupTriggerAnalysisExecutionStarted
#{{ $r->id }}{{ $r->startup_id }}{{ $r->trigger_type }} {{ $r->analysis_status }}{{ $r->execution_status }} {{ optional($r->started_at)->format('Y-m-d H:i') }}
No runs yet.
@push('scripts') @endpush @endsection