The Agent Rendering Framework is ARF's live terminal dashboard. Watch every request in real time. Inspect governance decisions as they happen. Flip circuit breakers by hand. Diff what the agent changed. Know exactly what's happening in a terminal, the way it should be.
[+] Launch New Session Start a new prompt/chat ⠦ [claude] refactor auth module Tokens: 28.4k running anthropic · grade: A ✓ [codex] write test suite Tokens: 12.1k done
[claude] claude-opus-4-7 [claude] claude-sonnet-4-6 [claude] claude-haiku-4-5 [codex] gpt-4.1 [gemini] gemini-2.5-pro [ollama] qwen3-coder:30b [ollama] llama3.2:3b
Selected Model: claude-opus-4-7 Engine: claude Type: Cloud Frontier Connection Mode: CLI Subscription Sandbox Level: Workspace (Dir scoped) System Prompt instructions (Optional): <Default standard system instructions>
rules │ governance rules & policy configuration │ 8 active │ standard
► block-credential-leak block req stream-credential-leak block stream rewrite-credential-output rewrite stream no-destructive-commands block req scope-boundary warn req sandbox-escape-detection block req prompt-injection-detection block req clamp-high-temperature modify req
Rule: block-credential-leak Severity: block Trigger: request Patterns: 12 patterns OWASP: A3 Injection · A6 Security Misconfig Last matched: 14:23:09.112 (ANVIL-2 req #89)
CLOSED token_budget 0 / 50000 tokens CLOSED repeated_failure 0 / 3 consecutive failures CLOSED stall no stall detected
activity │ live event stream │ 1 agent │ 142 events │ streaming 14:23:08.441 proxy req → anthropic claude 1.2k tok 14:23:08.904 proxy res ← anthropic 211ms 0.8k tok 14:23:09.112 governance EVAL tool_use: write_file /src/auth/session.ts 14:23:09.114 governance HOLD require_approval match: Write 14:23:11.340 governance APPROVED daniel@hyperwolf.ai write_file 14:23:11.341 proxy req → anthropic claude 0.9k tok 14:23:11.819 proxy res ← anthropic 478ms 1.4k tok 14:23:12.001 proxy req → anthropic claude 2.1k tok 14:23:12.445 proxy res ← anthropic 444ms 1.8k tok ────────────────────────────────────────────────────────────────────────── filter: all | governance | proxy | agent | git | vault | evidence | deny | uia | af /:search · f:filter · Enter:detail · e:export · ↑↓:scroll · Esc:back
src/auth/session.ts · record #141 · approved: daniel@hyperwolf.ai ─────────────────────────────────────────────────────────────────────────── 1 import { createClient } from 'redis'; 2 import { SessionData } from './types'; 3 - 4 const SESSION_TTL = 3600; // 1 hour + 4 const SESSION_TTL_SECONDS = 3600; // 1 hour renamed for clarity 5 - 6 export async function createSession(userId: string): Promise<string> { - 7 const token = Math.random().toString(36); + 6 export async function createSession(userId: string): Promise<string> { + 7 const token = crypto.randomUUID(); // cryptographically secure 8 await redis.setex(`sess:${token}`, SESSION_TTL_SECONDS, userId); 9 return token; 10 } ─────────────────────────────────────────────────────────────────────────── n:next-hunk p:prev-hunk ]/[:next/prev-file ↑↓:scroll Esc:close