Local-first knowledge management system with BYO API keys. Features: - 3-panel UI (Nodes | Focus | Helpers) - SQLite + sqlite-vec for vector search - Agent system (Easy/Hard mode orchestrators) - Content extraction (YouTube, PDF, web) - Integrate workflow for connection discovery - Dimension system with auto-assignment Tech stack: - Next.js 15 + TypeScript + Tailwind CSS - Anthropic (Claude) + OpenAI (GPT) via Vercel AI SDK Setup: npm install && npm rebuild better-sqlite3 scripts/dev/bootstrap-local.sh npm run dev MIT License
37 lines
940 B
TypeScript
37 lines
940 B
TypeScript
import type { AgentDelegation } from '@/services/agents/delegation';
|
|
|
|
interface DelegationIndicatorProps {
|
|
delegations: AgentDelegation[];
|
|
}
|
|
|
|
export default function DelegationIndicator({ delegations }: DelegationIndicatorProps) {
|
|
if (!delegations.length) return null;
|
|
|
|
const activeCount = delegations.filter((d) => d.status === 'queued' || d.status === 'in_progress').length;
|
|
|
|
if (activeCount === 0) return null;
|
|
|
|
return (
|
|
<div style={{
|
|
display: 'flex',
|
|
alignItems: 'center',
|
|
gap: '6px',
|
|
padding: '4px 8px',
|
|
borderRadius: '4px',
|
|
background: '#0f0f0f',
|
|
border: '1px solid #1a1a1a',
|
|
fontSize: '10px',
|
|
fontFamily: "'JetBrains Mono', ui-monospace",
|
|
color: '#6b6b6b'
|
|
}}>
|
|
<span style={{
|
|
width: '6px',
|
|
height: '6px',
|
|
borderRadius: '50%',
|
|
background: '#22c55e'
|
|
}} />
|
|
<span>{activeCount} active</span>
|
|
</div>
|
|
);
|
|
}
|