Ferret का इस्तेमाल
प्रोजेक्ट और URL
प्रोजेक्ट एक फ़ोल्डर होता है (आम तौर पर आपकी repository का root)। हर प्रोजेक्ट के अपने सेव किए गए URL होते हैं, इसलिए local, dev और production के बीच सिर्फ़ एक क्लिक का फ़ासला रहता है।
#प्रोजेक्ट जोड़ें
- फ़ाइल → प्रोजेक्ट फ़ोल्डर खोलें… (⌘O / CtrlO), साइडबार में प्रोजेक्ट जोड़ें, या टाइटल बार के प्रोजेक्ट मेन्यू में प्रोजेक्ट जोड़ें… चुनें।
- चुनें कि प्रोजेक्ट कहाँ से आएगा:
- इस कंप्यूटर पर: एक फ़ोल्डर चुनें।
- GitHub / GitLab से clone करें: अपनी repositories में से एक चुनें (जो आपके
ghयाglablogin से सूची में आती हैं) या URL paste करें, parent फ़ोल्डर चुनें, और Ferret उसे clone करके खोल देता है। - SSH से खोलें:
~/.ssh/configसे एक host चुनें। टर्मिनल और agents remote मशीन पर चलते हैं; reviews इसी कंप्यूटर पर रहते हैं।
डिफ़ॉल्ट नाम फ़ोल्डर का नाम होता है। पहले से रजिस्टर किया गया फ़ोल्डर जोड़ने पर वही खुल जाता है (macOS और Windows पर paths की तुलना बड़े-छोटे अक्षरों का फ़र्क किए बिना होती है)। साइडबार मेन्यू से आप किसी प्रोजेक्ट का नाम बदलें या उसे सूची से हटाएँ कर सकते हैं। हटाने से फ़ोल्डर कभी डिलीट नहीं होता।
टर्मिनल प्रोजेक्ट फ़ोल्डर में खुलते हैं, और reviews <project>/.ferret/ के अंदर सेव होते हैं।
#URL सेव करें
- बिल्ट-इन ब्राउज़र में पेज खोलें।
- ब्राउज़र टूलबार में + (मौजूदा URL सेव करें) पर क्लिक करें। मौजूदा URL पहले से भरा होता है।
- नाम डालें और सेव करें पर क्लिक करें।
हर सेव किए गए URL का क्या review कर रहे हैं में एक प्रकार होता है: ऐप (जो ऐप आप बना रहे हैं), डिज़ाइन (Figma, Penpot, Canva, कोई prototype) या दस्तावेज़ / spec (Google Docs, Notion, Confluence, GitHub पर Markdown spec, PDF)। प्रकार URL से अनुमान लगाया जाता है और आप उसे बदल सकते हैं। सिर्फ़ code नहीं, design और दस्तावेज़ों का भी review करें देखें।
सिर्फ़ http:// और https:// URL स्वीकार किए जाते हैं। ऐप वाले URL के लिए, अगर आप सुझाया गया नाम ही रहने दें, तो नाम host से अनुमान लगाया जाता है:
| Host | नाम |
|---|---|
localhost, 127.*, ::1, 0.0.0.0, *.localhost | local |
dev, develop, development शामिल हो | dev |
stg, stage, staging शामिल हो | stg |
| बाकी सब | prd |

#Review targets पैनल
Feedback मोड में, दाईं ओर का Review targets पैनल मौजूदा प्रोजेक्ट में review की जा सकने वाली हर चीज़ की सूची दिखाता है। Target बदलने से रिकॉर्डिंग नहीं रुकती। पैनल को दृश्य → Review targets टॉगल करें (⌘⇧K / CtrlShiftK) या पैनल छिपाएँ से टॉगल करें।
- Targets: प्रोजेक्ट के सेव किए गए URL। हर एक के नीचे उस साइट पर आपके देखे गए पेजों का ट्री होता है। जिन देखी गई साइटों को सेव नहीं किया गया, वे अपने अलग समूहों में दिखती हैं।
- फ़ाइलें: प्रोजेक्ट फ़ोल्डर। फ़ाइल प्रीव्यू के रूप में खुलती है (Markdown और Mermaid render होकर, बाकी टेक्स्ट सिर्फ़ पढ़ने के लिए), ताकि आप दस्तावेज़ों का भी review कर सकें। पेंसिल (editor में खोलें) उसे editor में खोलती है।
targets फ़िल्टर करें targets, पेज और फ़ाइलें, तीनों को एक साथ फ़िल्टर करता है, फ़ाइल पर जाएँ… जैसी ही fuzzy matching के साथ। सूची में ↑ ↓ Enter या 1–9 से targets बदलते हैं। URL खोलें… एक बार के लिए कोई URL खोलता है, और प्रोजेक्ट URL में सहेजें उसे रख लेता है।
Targets settings.json के projects[].urls से आते हैं (उदाहरण देखें)। हर entry में एक url, एक launchCommand (टर्मिनल में चलता है, जैसे कोई डेस्कटॉप ऐप शुरू करने के लिए), या एक windowMatch (रिकॉर्ड की जाने वाली विंडो) होना चाहिए, और उसमें एक purpose (app, design या doc) भी हो सकता है। विंडो वाला target चुनने पर वह रिकॉर्डिंग का source बन जाता है, इसलिए यह रिकॉर्डिंग के दौरान नहीं किया जा सकता। देखे गए पेज हर प्रोजेक्ट के लिए सिर्फ़ इसी मशीन पर याद रखे जाते हैं (अधिकतम 200)।
#Environments खोलें और बदलें
सेव किए गए URL को खोलने के लिए उस पर क्लिक करें। अगर मौजूदा पेज किसी दूसरे सेव किए गए URL के अंतर्गत है, तो Ferret path, query और hash वैसे ही रखता है और सिर्फ़ origin बदलता है। उदाहरण के लिए, http://localhost:3000/pricing?plan=pro पर prd क्लिक करने से https://example.com/pricing?plan=pro खुलता है।
मौजूदा पेज से मेल खाने वाला chip (सबसे लंबा prefix) हाइलाइट होता है। किसी chip को संपादित करने या हटाएँ के लिए उस पर right-click करें या उसका पेंसिल आइकन इस्तेमाल करें। जब कोई प्रोजेक्ट खुलता है और पिछला कोई URL नहीं होता, तो उसका पहला सेव किया गया URL लोड होता है।
Chips प्रकार के हिसाब से समूहों में दिखते हैं: पहले ऐप URL, फिर design, फिर दस्तावेज़, हर प्रकार के लिए एक divider और एक आइकन के साथ। किसी design या दस्तावेज़ पर जाने या वहाँ से लौटने पर उसका सेव किया गया URL जैसा है वैसा ही खुलता है, path साथ नहीं ले जाया जाता।
#सिर्फ़ code नहीं, design और दस्तावेज़ों का भी review करें
Feedback का code के बारे में होना ज़रूरी नहीं है। बिल्ट-इन ब्राउज़र में खुलने वाली हर चीज़ को इसी तरह रिकॉर्ड किया जा सकता है और pen से चिह्नित किया जा सकता है: Figma या Penpot का design, कोई prototype, Google Docs या Notion में कोई spec, GitHub पर कोई design doc, कोई PDF। Review से पहले इन URLs को local और dev के साथ प्रोजेक्ट में सेव करें।
- साइडबार मेन्यू से प्रोजेक्ट संपादित करें… खोलें (या ब्राउज़र टूलबार में + पर क्लिक करें) और Target जोड़ें चुनें।
- URL paste करें।
figma.comका link डिज़ाइन बनता है औरdocs.google.comयाnotion.soका link दस्तावेज़ / spec, जिनके नामFigmaयाSpecहोते हैं। अगर अनुमान गलत हो (जैसे आपके अपने server पर कोई prototype), तो क्या review कर रहे हैं में प्रकार बदलें। - Target खोलें और अगर साइट को ज़रूरत हो तो बिल्ट-इन ब्राउज़र में एक बार साइन इन करें। ब्राउज़र launches के बीच अपनी cookies रखता है, इसलिए आप साइन इन रहते हैं।
- हमेशा की तरह रिकॉर्ड करें: बोलें, इशारा करें, design या दस्तावेज़ पर draw करें।
किसी design या दस्तावेज़ पर रिकॉर्ड किए गए findings पर Findings और feedback.md में उसी प्रकार का label लगता है, और agent को भेजा गया निर्देश भी यह बताता है। तब agent code के बजाय design या दस्तावेज़ बदलता है:
- अगर दस्तावेज़ प्रोजेक्ट में है (कोई Markdown spec, कोई ADR), तो agent उस फ़ाइल को संपादित करता है।
- अगर वह उसे संपादित नहीं कर सकता (कोई Figma फ़ाइल, कोई Google Doc), तो agent उस finding को करने वाले सटीक बदलाव के साथ Agent का सवाल के रूप में चिह्नित करता है, ताकि आप उसे लागू कर सकें या आगे भेज सकें।
उदाहरण: Google Docs में pricing spec पढ़ते हुए आप plan table पर गोला बनाते हैं और कहते हैं "Pro plan अब 8,800 नहीं, 9,800 yen है"। feedback.md उस finding को Spec target के अंतर्गत Kind: document के साथ सूचीबद्ध करता है, और agent pricing पेज के code को छूने के बजाय spec के लिए सुधरा हुआ वाक्य देता है। Spec और चलते हुए ऐप को एक ही रिकॉर्डिंग में रिकॉर्ड करें, तो findings target के हिसाब से बँट जाते हैं, ताकि agent पहले spec और फिर उसे लागू करने वाला code अपडेट कर सके।
figma.com, docs.google.com, notion.so और ऐसे ही hosts के बिना सेव किए पेज भी पहचाने जाते हैं। प्रोजेक्ट फ़ोल्डर की फ़ाइलों (Markdown, Mermaid) का review Review targets पैनल की फ़ाइलें सूची से होता है।
GitHub पर इस पेज के अनुवाद में मदद करें (नए टैब में खुलता है)