DEV Community

Cover image for osFoundry में कैसे देखें कि कौन-सा Claude Code session आपकी permission का इंतज़ार कर रहा है
BBT for BBT हिन्दी

Posted on

osFoundry में कैसे देखें कि कौन-सा Claude Code session आपकी permission का इंतज़ार कर रहा है

इस guide के अंत तक आपके पास एक terminal pane में Claude Code चल रहा होगा, दूसरे में Codex, और साथ में कुछ chats और agents भी। osFoundry का एक ही board इन सबको दिखाता है। जब Claude Code "Do you want to make this edit?" पर रुकता है, तो उसका card एक सेकंड के अंदर Needs you (आपकी ज़रूरत) column में चला जाता है। एक click से वही pane उसी prompt पर खुल जाता है। आप जवाब देते हैं, और card वापस Running (चल रहा) में आ जाता है।

कौन क्या करता है

Claude Code osFoundry डेस्कटॉप ऐप
Login अपना Claude login, अपने process में उसमें से कुछ भी नहीं रखता। जिस agent को ऐप ने ख़ुद launch किया है, उससे inherited ANTHROPIC_API_KEY हटा देता है ताकि subscription वाला run API के रूप में bill न हो
कहाँ चलता है Terminal screen में एक असली PTY, आपके project folder में PTY का मालिक है और screen की एक emulated copy रखता है
कौन approve करता है आप, Claude Code के अपने permission prompt में कभी आपकी जगह जवाब नहीं देता। सिर्फ़ card को हिलाता है और pane खोलता है
state कैसे पता चलती है Claude Code हमेशा की तरह अपना UI दिखाता है हर 700 ms में screen को published rules से मिलाकर पढ़ता है, और जब agent उसने launch किया हो तो hook reports भी लेता है
data कहाँ रहता है आपकी files, आपका terminal screen का text आपके Mac पर ऐप की memory में ही रहता है। agent session ख़त्म करने पर एक summary आपकी knowledge files में लिखी जाती है

Setup

  1. Terminal screen खोलें (sidebar में Main → Terminal, /terminal) और agents को वैसे ही शुरू करें जैसे आप आमतौर पर करते हैं। हर pane अपना अलग PTY है।
   ~/code/shop-api (fix/checkout-retry) $ claude
   ~/code/shop-web $ codex
Enter fullscreen mode Exit fullscreen mode

osFoundry Claude Code को उस program से पहचानता है जो terminal को पकड़े हुए है, या अगर आपने उसे किसी wrapper script से शुरू किया है तो उसकी screen से। कुछ भी configure करने की ज़रूरत नहीं।

  1. Sessions खोलें (sidebar में Main → Sessions, /sessions)। हर chat, single agent, team, loop और terminal session एक card है। Columns हैं Running, Needs you, Paused (रुका हुआ), Idle (खाली), Done (पूरा) और Failed (विफल)। आप किसी card को किसी column में drag करके उसकी state तय नहीं कर सकते; column इस पर निर्भर करता है कि runtime क्या report करता है।

osFoundry का Sessions board, जिसमें Running, Needs you, Paused, Idle और Done columns हैं; Claude Code का shop-api, Needs you में है (example data)

  1. Filter पर click करें (filter लगते ही यह Filtered दिखाता है) और Needs me only (सिर्फ़ जिन्हें मेरी ज़रूरत है) पर tick करें। Kinds (Chat, Agent, Team, Loop, Terminal) और time window जैसे थे वैसे ही रहते हैं।

Sessions board का Filter menu, जिसमें Mine only के नीचे Needs me only है (example data)

दो cards बचते हैं: एक chat जिसने सवाल पूछा है, और shop-api में Claude Code का terminal।

Needs me only पर filter किया गया board: shop-api का Claude Code card और Pricing page layout chat (example data)

कोई chat यहाँ तब आता है जब उसका सबसे नया message किसी ऐसे सवाल पर ख़त्म होता है जिसके जवाब का वह अभी भी इंतज़ार कर रहा है। कोई terminal यहाँ तब आता है जब उसकी state blocked हो, और अगला step यही दिखाता है।

  1. shop-api card पर click करें। Terminal screen उसी pane पर खुलती है और prompt अभी भी वहीं है। बाईं ओर की rail Claude Code को "Needs you · shop-api" और Codex को "Working · shop-web" दिखाती है।

osFoundry के terminal pane में Claude Code, "Do you want to make this edit to charge.ts?" पर रुका हुआ (example data)

कई panes खुले हों तो Mod+. (Mac पर ⌘.) अगले उस agent पर ले जाता है जिसे आपकी ज़रूरत है। Status bar में भी यही लिखा है: "⌘. to jump to what needs you"।

  1. Pane में वैसे ही जवाब दें जैसे कहीं और देते: 1. Yes पर Enter। Claude Code काम जारी रखता है, और अगले sweep पर rail और board उसे फिर से Working / Running दिखाते हैं।

जवाब के बाद वही pane: edit लागू हो गया, tests चले, और Claude Code fix की report देता है (example data)

  1. जब कोई agent session पूरा हो जाए और Idle में पड़ा हो, तो उसका card Done पर drag करें। ऐप पहले पूछता है।

Session ख़त्म करने का dialog: "It is summarised into your knowledge files first, then filed away. Nothing is deleted." (example data)

Confirm करने पर पहले summary लिखी जाती है, फिर session ख़त्म होता है। अगर summary fail हो जाए, तो session जहाँ था वहीं रहता है। चल रहे session को Done पर drop किया ही नहीं जा सकता: "This session is still running. Pause it first, then end it." (पहले pause करें, फिर ख़त्म करें)।

एक असली run

Example। Screenshots वाला pane, और हर screen से osFoundry क्या निष्कर्ष निकालता है। ये फ़ैसले Claude Code की rule file claude.toml से आते हैं, जो ऐप के साथ आती है और osfoundry.io/agent-detection/claude.toml पर भी उपलब्ध है।

~/code/shop-api (fix/checkout-retry) $ claude
● Retry now reuses the first charge. Updating the payment code.

Edit file  src/payments/charge.ts
  41 -  const intent = await stripe.paymentIntents.create(params)
  41 +  const intent = await stripe.paymentIntents.create(params, {
  42 +    idempotencyKey: `charge-${order.id}`,
  43 +  })

Do you want to make this edit to charge.ts?
❯ 1. Yes
  2. Yes, allow all edits during this session
  3. No, and tell Claude what to do differently
Enter fullscreen mode Exit fullscreen mode
screen पर                     state     जो rule लगा                                              card
spinner, "esc to interrupt"   working   esc to interrupt                                         Running
ऊपर वाला prompt               blocked   Do you want to (proceed|continue|make this edit|create)  Needs you
  ... आप "1. Yes" पर Enter दबाते हैं
फिर से spinner                working   esc to interrupt                                         Running
Enter fullscreen mode Exit fullscreen mode
● Update(src/payments/charge.ts)
  ⎿ Updated src/payments/charge.ts with 3 additions and 1 removal
● Bash(npm test -- payments)
  ⎿ Tests: 42 passed, 42 total
● Fixed. A second press of Pay now reuses the first charge.
Enter fullscreen mode Exit fullscreen mode

blocked rule को जानबूझकर working rule के ऊपर रखा गया है। जब तक prompt खुला है, Claude Code का footer अभी भी "esc to interrupt" दिखा सकता है, और जो rule सबसे पहले match होता है वही जीतता है।

सीमा कहाँ है

osFoundry कभी आपकी जगह किसी prompt का जवाब नहीं देता। दूसरे agents ऐप के runtime_send tool से किसी pane में type कर सकते हैं, लेकिन वह tool उस pane को मना कर देता है जो किसी फ़ैसले का इंतज़ार कर रहा हो। जवाब देने के लिए एक अलग नाम वाला tool, runtime_answer, इस्तेमाल होता है, और हर जवाब को आप confirm करते हैं। यह check पिछले sweep पर नहीं, बल्कि type करने के उसी पल screen को नए सिरे से पढ़कर होता है, ताकि अभी-अभी आया prompt उन keystrokes को न पकड़ ले जो सामान्य text के लिए थे।

जिस screen को osFoundry पढ़ नहीं पाता, उसे Idle report किया जाता है, कभी Needs you नहीं। detect.rs की comment इसकी वजह बताती है: एक भी false alarm हुआ तो लोग badge पर भरोसा करना छोड़ देते हैं, और उसके बाद सच्चे alarms भी बेकार हो जाते हैं। इसलिए जब कोई rule पक्का न हो, तो ऐप ज़्यादा नहीं, कम report करता है।

Rules data हैं, code नहीं। Download की गई rule file सिर्फ़ यह बदल सकती है कि कौन-से patterns match हों, इसके अलावा कुछ नहीं। वह यह नहीं बदल सकती कि कौन-सा program चलेगा। आपका अपना override ~/.osfoundry/agent-detection/claude.toml में जाता है।

Terminal का text डेस्कटॉप ऐप की memory में ही रहता है। Pane के बाहर निशान सिर्फ़ उस session का रहता है जिसे आप ख़त्म करते हैं: उसकी summary आपकी knowledge files में, जो कुछ भी archive होने से पहले लिखी जाती है।

आगे क्या

किसी दूसरे folder में एक और Claude Code शुरू करें, दोनों को ऐसा task दें जिसमें edit की ज़रूरत हो, और कुछ और करते समय Sessions board को Needs me only पर filter करके छोड़ दें। अगर आपके पास अभी डेस्कटॉप ऐप नहीं है, तो वह download page पर है।

Top comments (0)