मुख्य सामग्री पर जाएं

title: डैशबोर्ड description: “एजेंट सेशन की निगरानी करें, टूल कॉल की समीक्षा करें, और नीतियों को प्रबंधित करें” icon: chart-line

failproofai डैशबोर्ड आपके AI एजेंट सेशन की निगरानी और नीतियों को प्रबंधित करने के लिए एक स्थानीय वेब एप्लिकेशन है। देखें कि आपके एजेंट आपके दूर रहते हुए क्या कर रहे थे।

डैशबोर्ड शुरू करना

http://localhost:8020 पर खुलता है। डैशबोर्ड सीधे फाइलसिस्टम से पढ़ता है - आपके Claude Code प्रोजेक्ट फोल्डर और failproofai कॉन्फ़िग फाइलें। कुछ भी दूरस्थ सेवा में नहीं लिखा जाता है।

पृष्ठ

प्रोजेक्ट्स

आपकी मशीन पर मिले सभी Claude Code, OpenAI Codex, GitHub Copilot CLI (बीटा), Cursor Agent (बीटा), OpenCode (बीटा), Pi (बीटा), और Gemini CLI (बीटा) प्रोजेक्ट की सूची। Claude प्रोजेक्ट ~/.claude/projects/ से खोजे जाते हैं (या CLAUDE_PROJECTS_PATH द्वारा सेट किए गए पथ से); Codex प्रोजेक्ट ~/.codex/sessions/<YYYY>/<MM>/<DD>/*.jsonl के तहत प्रत्येक ट्रांस्क्रिप्ट को स्कैन करके और प्रत्येक सेशन के पहले रिकॉर्ड में दर्ज cwd द्वारा समूहीकृत करके खोजे जाते हैं; Copilot CLI प्रोजेक्ट प्रत्येक ~/.copilot/session-state/<sessionId>/workspace.yaml को स्कैन करके (COPILOT_HOME के माध्यम से कॉन्फ़िगर करने योग्य) और इसके cwd फ़ील्ड द्वारा समूहीकृत करके खोजे जाते हैं; Cursor Agent प्रोजेक्ट ~/.cursor/agent-sessions/<sessionId>/ के तहत प्रति-सेशन मेटाडेटा को स्कैन करके खोजे जाते हैं (CURSOR_HOME के माध्यम से कॉन्फ़िगर करने योग्य, conversations/ और sessions/ फॉलबैक के रूप में जांचे जाते हैं) meta.json / session.json / workspace.yaml में एक cwd स्केलर के लिए; OpenCode प्रोजेक्ट ~/.local/share/opencode/opencode.db पर इसके SQLite DB को opencode db --format json के माध्यम से क्वेरी करके खोजे जाते हैं (हम session और project टेबल पढ़ते हैं और project_id द्वारा समूहीकृत करते हैं); Pi प्रोजेक्ट ~/.pi/agent/sessions/<encoded-cwd>/<timestamp>_<uuid>.jsonl के तहत प्रति-सेशन JSONL ट्रांस्क्रिप्ट को स्कैन करके खोजे जाते हैं (PI_SESSIONS_DIR के माध्यम से कॉन्फ़िगर करने योग्य) और प्रत्येक सेशन के पहले रिकॉर्ड से cwd खींचते हैं; Gemini CLI प्रोजेक्ट ~/.gemini/tmp/<basename>/chats/session-<timestamp>-<uuid-prefix>.jsonl को स्कैन करके खोजे जाते हैं (GEMINI_SESSIONS_DIR के माध्यम से कॉन्फ़िगर करने योग्य) और सहोदर .project_root टेक्स्ट मार्कर से विहित cwd को पुनः प्राप्त करते हैं। एक प्रोजेक्ट जो कई CLIs द्वारा उपयोग किया गया है एक एकल पंक्ति के रूप में सभी मिलान बैज के साथ प्रदर्शित होता है। एक विशिष्ट एजेंट CLI द्वारा फ़िल्टर करने के लिए तालिका के ऊपर CLI ड्रॉपडाउन का उपयोग करें; URL आपकी चयन को ?cli=claude|codex|copilot|cursor|opencode|pi|gemini के रूप में सहेजता है। प्रत्येक प्रोजेक्ट दिखाता है:
  • प्रोजेक्ट नाम (फोल्डर पथ से प्राप्त)
  • एक CLI बैज — Claude Code (नारंगी), OpenAI Codex (बैंगनी), GitHub Copilot (नीला), Cursor Agent (पन्ना), OpenCode (एम्बर), Pi (गुलाबी), और/या Gemini CLI (आकाश)
  • सबसे हाल की सेशन गतिविधि की तारीख
इसके सेशन देखने के लिए एक प्रोजेक्ट पर क्लिक करें।

सेशन

एक प्रोजेक्ट के भीतर सभी सेशन की सूची। प्रत्येक सेशन दिखाता है:
  • सेशन ID
  • शुरुआत और अंत का समय
  • टूल कॉल की संख्या
  • हुक गतिविधि की गिनती (नीतियां जो सक्रिय हुईं)
सूची को कम करने के लिए दिनांक सीमा फ़िल्टर और सेशन ID खोज का उपयोग करें। सेशन पृष्ठांकित हैं। सेशन दर्शक को खोलने के लिए एक सेशन पर क्लिक करें।

सेशन दर्शक

सेशन दर्शक स्वायत्त एजेंटों के लिए मुख्य प्रश्न का उत्तर देता है: एजेंट ने क्या किया, और क्या यह ट्रैक पर रहा? हेडर के बगल में एक CLI बैज यह दर्शाता है कि सेशन Claude Code, OpenAI Codex, GitHub Copilot CLI, Cursor Agent, OpenCode, Pi, या Gemini CLI ट्रांस्क्रिप्ट है। यह एक सेशन में हुई सभी चीजों की एक समयरेखा दिखाता है:
  • संदेश - Claude के पाठ प्रतिक्रियाएं और उपयोगकर्ता संकेत
  • टूल कॉल - हर टूल जिसे Claude ने आह्वान किया, इसके इनपुट और आउटपुट के साथ
  • नीति गतिविधि - प्रत्येक टूल कॉल के लिए, कौन सी नीतियां सक्रिय हुईं और उन्होंने क्या निर्णय लौटाया
शीर्ष पर सांख्यिकी पट्टी सेशन की अवधि, कुल टूल कॉल, और हुक निर्णयों का सारांश दिखाती है (allow / deny / instruct गिनती)। सेशन को निर्यात करने के लिए डाउनलोड लॉग्स बटन पर क्लिक करें। Claude Code, Codex, Copilot, Cursor, Pi, और Gemini सेशन के लिए आप मूल ऑन-डिस्क JSONL ट्रांस्क्रिप्ट बाइट-फॉर-बाइट प्राप्त करते हैं; OpenCode के लिए (जिसके सेशन SQLite में रहते हैं, डिस्क पर नहीं) आप एक JSON दस्तावेज़ प्राप्त करते हैं जो अंतर्निहित session / messages / parts तालिकाओं को प्रतिबिंबित करता है।

ऑडिट

आपके एजेंट के व्यक्तित्व-संचालित रिपोर्ट कि वह वास्तव में अतीत के सेशन में कैसे व्यवहार कर रहा है। failproofai audit CLI के समान स्कैन चलाता है लेकिन इसे एक एकल-स्क्रीन शेयरयोग्य पोस्टर + चार नीचे-के-गुना अनुभागों के रूप में प्रदर्शित करता है:
  1. पोस्टर — पहला व्यूपोर्ट भरता है। Self-contained PNG-capture क्षेत्र failproof_ai शब्दचिन्ह + ऑडिट लेबल के साथ · आर्केटाइप इंडेक्स (№ NN of 08) + ऑडिट तारीख · संख्यात्मक स्कोर (0–100) + प्रतिशतांक रैंक गोली (top 15%) · आर्केटाइप नाम (एक the optimist, the cowboy, the explorer, the goldfish, the paranoid architect, the precision builder, the hammer, the ghost में) + 3-कीवर्ड पट्टी · // only N% of agents are this archetype दुर्लभता पंक्ति · 8×8 पिक्सल sigil टाइल · audit yours → failproof.ai पाद लेख। कैप्चर बॉक्स के ठीक बाहर तीन साझा बटन बैठते हैं: post your archetype (X intent), share on linkedin, download poster। कैप्चर html-to-image के माध्यम से चलता है इसलिए PNG ऑन-स्क्रीन रेंडर पिक्सल-फॉर-पिक्सल से मेल खाता है (डैशेड सीमाएं, SVG लोगो मास्क, ग्रेडिएंट, फॉन्ट मेट्रिक्स — सभी संरक्षित)।
  2. शक्तियां — शांत ✓ पंक्ति सूची के आचरण जो आपका एजेंट पहले से सही कर रहा है, लाइव ऑडिट डेटा से प्राप्त (स्वच्छ टूल-कॉल दर, मुख्य में कोई प्रत्यक्ष पुश नहीं, शून्य क्रेडेंशियल रिसाव, शून्य रीट्राई तूफान) — प्रत्येक केवल तब सामने आता है जब प्रासंगिक नीति के पास ऑडिट विंडो भर में एक स्वच्छ रिकॉर्ड हो।
  3. विलक्षणताएं — जो फिसल गया उसकी तालिका, गंभीरता द्वारा क्रमबद्ध: when · what slipped + the policy that would've caught it · severity pill · seen, जहां पुनरावृत्ति new (एक बार), N× seen (2–9 बार), या recurring (10+) पढ़ता है।
  4. सुधार कैसे करें — शांत पंक्ति सूची, प्रत्येक निर्धारित नीति के लिए एक: नीति नाम सफेद में, एक-पंक्ति विवरण, स्थापना आदेश + दाहिनी ओर कॉपी बटन। अनुभाग शीर्षक enable all N → projected <score> · <tier> पढ़ता है (वह स्कोर जो आप हर सुधार लागू करके प्राप्त करेंगे), और इसका [install all] बटन हर निर्धारित नीति के लिए संयुक्त failproofai policy add a b c … कमांड की प्रतिलिपि बनाता है।
  5. बेहतर रूप से वापस आएं — दो साथ-साथ कार्ड। बाएं: एक अनुस्मारक सेट करें (3d / 7d / 14d / 30d कैडेंस पिकर; /api/auth/reminder के माध्यम से प्रमाणीकृत होने के बाद आगे बढ़ता है)। दाएं: failproof लाभ अनलॉक करें — invite a friend एक मोडल खोलता है जो अल्पविराम/स्पेस/न्यूलाइन-अलग सूची लेता है (प्रति भेजने के लिए अधिकतम 10) मित्र ईमेल, उन्हें /api/audit/invite में पोस्ट करते हैं, जो api-server के POST /v0/invite को अग्रेषित करते हैं। api-server प्रत्येक प्राप्तकर्ता को invite@failproof.ai से एक ईमेल भेजता है प्रेषक को Cc किया गया है और Reply-To सेट के साथ, इसलिए प्राप्तकर्ता देखता है कि उन्हें किसने आमंत्रित किया और प्रेषक को उनके इनबॉक्स में एक प्रति मिलती है। गुमनाम उपयोगकर्ता AuthDialog के माध्यम से रूट किए जाते हैं इसलिए आमंत्रण बाहर जाने से पहले प्रेषक का ईमेल ज्ञात हो। पात्रता / लाभ पूर्ति एक फॉलो-अप है।
failproofai audit रनटाइम द्वारा संचालित — अंतर्निहित स्कैन इंजन, समर्थित फ़्लैग, और प्रति-ट्रांस्क्रिप्ट कैश अपरिवर्तनीय के लिए ऑडिट CLI देखें। डैशबोर्ड सबसे हाल का परिणाम ~/.failproofai/audit-dashboard.json पर कैश करता है (मोड 0600, एकल स्लॉट, नए रन ओवरराइट करते हैं) इसलिए पुनः विजिट तत्काल हैं; प्रति-ट्रांस्क्रिप्ट और संपूर्ण-परिणाम दोनों कैश को पढ़ने पर अस्वीकार कर दिया जाता है एक बार वे 7 दिन से अधिक पुराने हो जाते हैं इसलिए डैशबोर्ड कभी भी एक सप्ताह पुराना परिणाम मौन रूप से परोसता नहीं है — TTL के बाद /audit खाली अवस्था में गिर जाता है और एक ताजा रन का संकेत देता है। रिपोर्ट के नीचे [ re-audit now ] पर क्लिक करना /api/audit/run को noCache: true के साथ पोस्ट करता है — पुनः-ऑडिट प्रति-ट्रांस्क्रिप्ट कैश को बायपास करता है और हर ट्रांस्क्रिप्ट को शुरुआत से फिर से स्कैन करता है मौन रूप से कैश किए गए परिणाम को लौटाने के बजाय — और डैशबोर्ड 1Hz पर /api/audit/status को पोल करता है जब तक रन समाप्त नहीं हो जाता; एक चिपचिपा गुलाबी प्रगति पट्टी चलाने के दौरान व्यूपोर्ट के शीर्ष पर पिन करता है एक बीते हुए टाइमर के साथ, और ताजा परिणाम सफलता पर स्थान में स्वैप करता है (कोई पूर्ण-पृष्ठ पुनः लोड नहीं; एक विफल पुनः-ऑडिट पूर्व रिपोर्ट को बरकरार छोड़ता है)। विफलता पर पट्टी RerunError.kind (timeout / network / post_failed) के आधार पर लाल हो जाती है। खाली अवस्था (कोई कैश या समाप्त नहीं) और शून्य-सेशन अवस्था (कैश मौजूद है लेकिन स्कैन ने कोई ट्रांस्क्रिप्ट नहीं पाया) अलग से सामने आते हैं।

नीतियां

नीतियों को प्रबंधित करने और गतिविधि की समीक्षा करने के लिए एक दो-टैब पृष्ठ।
  • एक पैनल से failproofai जो एजेंट CLIs की सुरक्षा करता है उसे बहु-चयन करें — Claude Code, OpenAI Codex, GitHub Copilot, Cursor Agent, OpenCode, Pi, और Gemini CLI सभी के पास स्थापना स्थिति (Active / Detected / Inactive), उपयोगकर्ता-स्कोप सेटिंग्स पथ, और ब्रांड-रंगीन उच्चारण के साथ एक पंक्ति है। उन CLIs को चेक या अनचेक करें जिन्हें आप चाहते हैं और एक ही चरण में स्थापित/अनस्थापित के अंतर को लागू करने के लिए Apply changes पर क्लिक करें। CLIs जिनके बाइनरी PATH पर पाए जाते हैं पूर्व-चेक किए जाते हैं।
  • एक एकल क्लिक के साथ व्यक्तिगत नीतियों को चालू या बंद करें (~/.failproofai/policies-config.json में लिखता है — हर स्थापित CLI के बीच साझा किया जाता है)
  • एक नीति का विस्तार करें इसके पैरामीटर को कॉन्फ़िगर करने के लिए (जो नीतियां policyParams का समर्थन करती हैं)
  • एक कस्टम नीति फाइल पथ सेट करें

स्वचालित रीफ्रेश

डैशबोर्ड में शीर्ष नेविगेशन में एक स्वचालित-रीफ्रेश टॉगल है। जब सक्षम होता है, तो वर्तमान पृष्ठ नई सेशन और नीति गतिविधि दिखाने के लिए समय-समय पर ताज़ा होता है जैसे ही वे दिखाई देते हैं। दीर्घकालीन स्वायत्त एजेंट सेशन की निगरानी के लिए आवश्यक।

पृष्ठों को अक्षम करना

यदि आपको केवल डैशबोर्ड के कुछ भाग की आवश्यकता है, तो FAILPROOFAI_DISABLE_PAGES को पृष्ठ नामों की अल्पविराम-सीमांकित सूची पर सेट करें:
मान्य मान: policies, projects, audit

प्रोजेक्ट पथ को कॉन्फ़िगर करना

डिफ़ॉल्ट रूप से, डैशबोर्ड मानक Claude Code प्रोजेक्ट निर्देशिका से पढ़ता है। कस्टम सेटअप के लिए इसे ओवरराइड करें:

एक गैर-localhost होस्ट से एक्सेस करना

जब dev mode (npm run dev) में डैशबोर्ड चल रहा हो और localhost के अलावा किसी अन्य होस्टनाम से इसे एक्सेस किया जा रहा हो - उदाहरण के लिए, एक कस्टम डोमेन, एक दूरस्थ IP, या एक टनल किया हुआ URL — आपको एक चेतावनी जैसी दिख सकती है:
यह Next.js अपने HMR (hot module reload) websocket के क्रॉस-ऑरिजिन एक्सेस को ब्लॉक कर रहा है, जो एक dev-only सुविधा है। अपने होस्ट को अनुमति देने के लिए, --allowed-origins फ़्लैग का उपयोग करें:
कई होस्ट या IP के लिए, अल्पविराम-सीमांकित सूची पास करें:
आप इसके बजाय FAILPROOFAI_ALLOWED_DEV_ORIGINS पर्यावरण चर भी सेट कर सकते हैं:
यह केवल dev mode पर लागू होता है। जब failproofai चलाया जाता है (production mode), कोई HMR websocket और कोई क्रॉस-ऑरिजिन dev संसाधन समस्या नहीं है।