Configuration {#if modelCount > 0 || keyCount > 0} {modelCount} models {keyCount} keys {/if} {#if loading} {/if}
{#if error}
Failed to load config: {error}
{/if}
{#if configData?.agents && Object.keys(configData.agents).length > 0}
Agent Templates
{#each Object.entries(configData.agents) as [name, template]}
{name} {#if template.model_tag} {template.model_tag} {/if}
{#if template.description}

{template.description}

{/if} {#if template.tools && template.tools.length > 0}
{#each template.tools as tool} {tool} {/each}
{/if}
{/each}
{/if} {#if modelsData?.models && modelsData.models.length > 0}
Models
{#each modelsData.models as model}
{model.id} {#if model.provider} {model.provider} {/if} {#if model.tags && model.tags.length > 0} {#each model.tags as tag} {tag} {/each} {/if}
{/each}
{/if} {#if modelsData?.keys && modelsData.keys.length > 0}
API Keys
{#each modelsData.keys as key}
{key.id} {#if key.provider} {key.provider} {/if} {#if key.status === "exhausted"} exhausted {:else} active {/if}
{#if key.status === "exhausted" && key.lastError}

{key.lastError}

{/if} {#if key.exhaustedAt}

Since {formatDate(key.exhaustedAt)}

{/if}
{/each}
{/if} {#if configData?.fallback && configData.fallback.length > 0}
Fallback Order
    {#each configData.fallback as keyId, i}
  1. {i + 1} {keyId}
  2. {/each}
{/if} {#if configData?.permissions && Object.keys(configData.permissions).length > 0}
Permissions
{#each permissionEntries(configData.permissions) as entry}
{entry.name} {#if isSimpleRule(entry.value)} {entry.value.action} {:else if isPatternRule(entry.value)} {#each Object.entries(entry.value) as [pattern, rule]}
{pattern} {#if typeof rule === "object" && rule !== null && "action" in rule} {(rule as { action: string }).action} {/if}
{/each} {:else} {JSON.stringify(entry.value)} {/if}
{/each}
{/if} {#if !loading && !error && !configData && !modelsData}

No configuration loaded.

{/if}