- Protocol: 10 context categories (apps, system, network, bitcoin, media, files, notes, search, ai-local, wallet) - ContextBroker: real data wiring for all categories with sanitization - Permissions: user toggles for all categories in Settings - Nginx: Claude API, OpenRouter, SearXNG proxy pass-through - Actions: launch-app, search-web, install-app handlers - Chat.vue: loading state + connection indicator - Integration test page: test-aiui.html Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
26 lines
657 B
Vue
26 lines
657 B
Vue
<template>
|
|
<button
|
|
type="button"
|
|
data-controller-ignore
|
|
class="w-full flex items-center gap-2 text-white/80 hover:text-white transition-colors"
|
|
title="Open CLI (⌘C / Ctrl+C)"
|
|
@click="openCLI"
|
|
>
|
|
<div class="relative shrink-0">
|
|
<div class="w-2 h-2 rounded-full bg-green-400"></div>
|
|
<div class="absolute inset-0 w-2 h-2 rounded-full bg-green-400 animate-ping opacity-50"></div>
|
|
</div>
|
|
<span class="text-xs font-medium">Online</span>
|
|
</button>
|
|
</template>
|
|
|
|
<script setup lang="ts">
|
|
import { useCLIStore } from '@/stores/cli'
|
|
|
|
const cliStore = useCLIStore()
|
|
|
|
function openCLI() {
|
|
cliStore.open()
|
|
}
|
|
</script>
|