गोपनीयता-सचेत कोडिंग सत्रों के लिए ClineCore कॉन्फ़िगर करें
ClineCore सत्र कॉन्फ़िगर करने, संवेदनशील डेटा का खुलासा सीमित रखने और सेटअप की आम समस्याएँ सुलझाने के लिए एक व्यावहारिक मार्गदर्शिका।
सारांश · TL;DR
ClineCore साझा runtime विकल्पों को सत्र के model कॉन्फ़िगरेशन से अलग रखता है। इस अंतर का उपयोग करके credentials को prompts और logs से दूर रखें, सहेजे जाने वाले डेटा को सीमित करें, और यह मानकर चले बिना कॉन्फ़िगरेशन की समस्याएँ सुलझाएँ कि हर provider एक जैसे parameters का समर्थन करता है।
मुख्य बातें
- Backend, tool policies और runtime capabilities को साझा ClineCore विकल्पों के रूप में सेट करें; model और credential सेटिंग हर सत्र में दें।
- API keys को server-side environment variables में रखें और credentials को prompts, metadata या पहले से लोड किए गए messages में कभी न डालें।
- सत्र के messages, identifiers और usage records को संभावित रूप से संवेदनशील डेटा मानें; तय करें कि उन तक किसकी पहुँच होगी और उन्हें कितने समय तक रखा जाएगा।
- Provider-विशिष्ट fields और endpoint compatibility की पुष्टि provider के दस्तावेज़ों से करें; उपलब्ध ClineCore संदर्भ सभी providers के लिए सार्वभौमिक समर्थन की पुष्टि नहीं करता।
इस पृष्ठ पर (6)
निजी कोड भेजने से पहले सत्र कॉन्फ़िगर करें
ClineCore की मदद से कोई application runtime बना सकता है और model तथा runtime कॉन्फ़िगरेशन के साथ सत्र शुरू कर सकता है। गोपनीयता से जुड़ा व्यावहारिक फ़ैसला सिर्फ़ यह चुनना नहीं है कि कौन-सा provider इस्तेमाल करना है: इसमें यह भी शामिल है कि सत्र को कौन-सा डेटा मिलता है, कौन-से tools उस पर काम कर सकते हैं और बाद में आपका application क्या सहेजता या उजागर करता है।
नीचे दिए गए उदाहरण केवल समझाने के लिए हैं; इनका परीक्षण किए गए integrations के रूप में उपयोग न करें। ClineCore संदर्भ API का स्वरूप बताता है, लेकिन यह पुष्टि नहीं करता कि हर provider एक जैसे model parameters या endpoint settings स्वीकार करता है। Provider-विशिष्ट विकल्पों पर निर्भर होने से पहले अपने provider के दस्तावेज़ देखें।
साझा सेटिंग और सत्र सेटिंग अलग रखें
ClineCore.create के विकल्पों में client name, backend mode, tool policies, capabilities और automation सक्षम है या नहीं, जैसे फ़ैसले शामिल होते हैं। start कॉल में session model/runtime सेटिंग वाला config देना ज़रूरी है। दस्तावेज़ में दिए गए उदाहरण में providerId, modelId, apiKey, systemPrompt, cwd, workspaceRoot और tool तथा agent flags शामिल हैं।
Server-side का एक न्यूनतम तरीका इस तरह दिखता है:
import { ClineCore } from "@cline/sdk"
const cline = await ClineCore.create({
clientName: "private-code-review",
backendMode: "auto",
toolPolicies: {
// Set policies for the tools your application exposes.
},
})
const session = await cline.start({
prompt: "Review the selected files for risky input handling.",
config: {
providerId: process.env.CLINE_PROVIDER_ID!,
modelId: process.env.CLINE_MODEL_ID!,
apiKey: process.env.CLINE_API_KEY!,
systemPrompt: "Review only the supplied code. Do not request secrets.",
cwd: process.cwd(),
workspaceRoot: process.cwd(),
enableTools: false,
enableSpawnAgent: false,
enableAgentTeams: false,
},
})
इस उदाहरण में credentials संभालने के तरीके के रूप में environment variables का उपयोग किया गया है; संदर्भ किसी secrets manager की अनुशंसा नहीं करता और न ही इन environment variable names को परिभाषित करता है। Key को भरोसेमंद server पर रखें, उसे browser code में न भेजें और session configuration को application logs में लिखने से बचें। अगर provider को endpoint या अतिरिक्त parameters चाहिए, तो उन्हें केवल उसके दस्तावेज़ों के निर्देशों के अनुसार कॉन्फ़िगर करें और पुष्टि करें कि ClineCore ज़रूरी fields का समर्थन करता है।
गोपनीयता से जुड़े फ़ैसले स्पष्ट रूप से लें
सत्र शुरू करने से पहले तय करें कि agent को वास्तव में किस चीज़ की ज़रूरत है। जहाँ काम के लिए संभव हो, पूरी repository के बजाय सीमित workspace या चुनी हुई files दें। Agent को दी जाने वाली सामग्री से secrets, निजी जानकारी और असंबंधित files हटा दें। System prompt में डेटा संभालने की अपेक्षाएँ बताई जा सकती हैं, लेकिन यह access controls या data minimization का विकल्प नहीं है।
Tool access की समीक्षा prompt की सामग्री जितनी ही सावधानी से करें। ClineCore default और per-session tool policies स्वीकार करता है; runtime capabilities में client के स्वामित्व वाले tool executors और approval callbacks शामिल हो सकते हैं। जिन कामों के लिए tools की ज़रूरत न हो, उनमें उन्हें बंद रखें; जहाँ tools ज़रूरी हों, वहाँ उनके प्रभावों के अनुरूप policies और approvals इस्तेमाल करें। संदर्भ इन configuration hooks का दस्तावेज़ देता है, लेकिन हर tool का व्यवहार परिभाषित नहीं करता और न ही यह गारंटी देता है कि कोई विशेष policy हर संवेदनशील कार्रवाई को रोक देगी।
सत्र के records को संभावित रूप से संवेदनशील मानें। API सत्रों की सूची दिखा सकता है, metadata और messages प्राप्त कर सकता है, संचित usage पढ़ सकता है, records अपडेट कर सकता है और सत्र हटा सकता है। इन क्षमताओं के कारण आपके application को तय करना चाहिए कि इन methods का उपयोग कौन कर सकता है और कौन-से retention नियम लागू होंगे। sessionMetadata, शुरुआती messages या prompts में secrets या गैरज़रूरी निजी जानकारी न डालें: metadata और messages सत्र का डेटा हैं, सुरक्षित secret storage नहीं।
distinctId विकल्प को स्थिर telemetry/user identifier के रूप में वर्णित किया गया है। अगर आप इसका उपयोग करते हैं, तो विचार करें कि क्या आपके application के लिए स्थिर identifier ज़रूरी है और क्या इससे किसी व्यक्ति की पहचान हो सकती है। संदर्भ telemetry collection, retention या anonymization के बारे में जानकारी नहीं देता; इसलिए यह न मानें कि identifier anonymous है या इसे सेट करने से सारी telemetry नियंत्रित होती है।
सेटअप की आम समस्याएँ सुलझाएँ
- सत्र बनाते समय configuration अस्वीकार हो जाता है: पुष्टि करें कि
configमौजूद है और provider तथा model identifiers, provider द्वारा स्वीकार किए गए मानों से मेल खाते हैं। दिए गए संदर्भ में एक उदाहरण है, providers की पूरी सूची नहीं। - Authentication विफल होता है: जाँचें कि key server process में उपलब्ध है, चुने गए provider के लिए है और गलती से trim या बदल नहीं दी गई है। Diagnostic prompt में key कभी शामिल न करें और उसे किसी ticket में paste न करें।
- Provider-विशिष्ट विकल्प नज़रअंदाज़ या अस्वीकार किया जाता है: ClineCore संदर्भ हर endpoint या parameter के साथ सार्वभौमिक compatibility की पुष्टि नहीं करता। यह न मानें कि एक provider की settings दूसरे provider पर भी लागू होंगी; provider और SDK के दस्तावेज़ देखें।
- सत्र अपेक्षा से ज़्यादा कार्रवाइयाँ कर सकता है:
enableTools, tool policies और दी गई capabilities की समीक्षा करें। जब tools ज़रूरी न हों, तो उन्हें बंद रखकर शुरू करें; फिर workflow की ज़रूरत के अनुसार ही सक्षम करें। - इतिहास में संवेदनशील सामग्री दिखाई देती है: जाँचें कि application के कौन-से हिस्से
readMessages,listऔर संबंधित session APIs को कॉल करते हैं; फिर उचित authorization और retention controls लागू करें। संदर्भ इन APIs को उपलब्ध कराता है, लेकिन आपके application की storage या access protections के बारे में नहीं बताता। - काम अप्रत्याशित रूप से जारी रहता है: सत्र के लिए दस्तावेज़ में दिया गया
abortयाstopmethod इस्तेमाल करें और application के काम पूरा होने पर runtime resources को dispose करें।
दोबारा इस्तेमाल की जा सकने वाली शुरुआती जाँच-सूची
ClineCore workflow सक्षम करने से पहले पुष्टि करें कि credential server-side ही रहता है; workspace में केवल ज़रूरी files हैं; prompts और metadata में secrets नहीं हैं; tool access सीमित है और उसकी समीक्षा की गई है; session history के लिए ज़िम्मेदार व्यक्ति और retention policy तय हैं; और provider-विशिष्ट settings को provider के मौजूदा दस्तावेज़ों से मिलाकर देखा गया है। Debugging के लिए गैर-संवेदनशील जानकारी log करें—जैसे सत्र शुरू हुआ या नहीं और कौन-सा internal request ID लागू है—न कि credentials, पूरे prompts या source files।
ClineCore संदर्भ configuration और session-management hooks का समर्थन करता है, गोपनीयता की कोई व्यापक गारंटी नहीं। गोपनीयता-सचेत संचालन इस पर निर्भर करता है कि आपका application डेटा कैसे देता है, tools पर नियंत्रण कैसे रखता है, session records की सुरक्षा कैसे करता है और credentials को कैसे संभालता है।
स्रोत
- ClineCore API reference — API विकल्प, सत्र कॉन्फ़िगरेशन, session-management methods और automation का परिचय।
सामान्य प्रश्न
ClineCore की कौन-सी सेटिंग provider से स्वतंत्र हैं?
संदर्भ साझा runtime विकल्पों का दस्तावेज़ देता है, जैसे `clientName`, `backendMode`, tool policies, capabilities और automation। सत्र कॉन्फ़िगरेशन में provider और model identifiers, credentials तथा runtime fields भी शामिल हैं। संदर्भ provider-विशिष्ट endpoint और parameter compatibility की पुष्टि नहीं करता, इसलिए इसकी अलग से जाँच करें।
क्या Cline prompt में API key डालना सुरक्षित है?
नहीं। Credentials को भरोसेमंद server-side configuration में रखें और दस्तावेज़ में दिए गए session configuration mechanism के ज़रिए दें। Keys को prompts, messages, metadata या logs में शामिल न करें।
क्या ClineCore session data को अपने-आप anonymize करता है?
दिए गए API संदर्भ में anonymization, telemetry retention या session-data protections का उल्लेख नहीं है। Messages, metadata, identifiers और usage records को संभावित रूप से संवेदनशील मानें और अपने access तथा retention controls लागू करें।
कोडिंग agent की पहुँच कैसे सीमित कर सकते हैं?
काम के लिए केवल ज़रूरी files दें, जहाँ व्यावहारिक हो वहाँ सीमित workspace इस्तेमाल करें और tool policies तथा capabilities की समीक्षा करें। ज़रूरत न होने पर tools बंद रखें; हर tool का सटीक प्रभाव आपके implementation पर निर्भर करता है।
संबंधित लेख
Guides
JSON Schema एक्सट्रैक्शन के लिए Cline को OpenAI-Compatible Provider के साथ कॉन्फ़िगर करें
Cline में OpenAI-compatible provider सेट अप करें, फिर coding-agent workflow की मदद से structured extraction बनाएं और JSON Schema से उसे validate करें।
Guides
स्रोत संदर्भों के साथ दस्तावेज़ों पर प्रश्नोत्तर के लिए Cline में OpenAI-संगत Provider कॉन्फ़िगर करें
Cline के SDK में OpenAI-संगत provider कॉन्फ़िगर करें, फिर ऐसा दस्तावेज़ प्रश्नोत्तर वर्कफ़्लो बनाएँ जो सत्यापित किए जा सकने वाले स्रोत संदर्भ लौटाए।
Guides
मानव-अनुमोदित सपोर्ट ट्रायेज के लिए OpenAI-संगत Provider के साथ Cline
ग्राहक सहायता ट्रायेज के लिए Cline को OpenAI-संगत provider और OneMux के साथ कॉन्फ़िगर करें, जबकि ग्राहक के सामने होने वाली हर कार्रवाई को मानव अनुमोदन के पीछे रखें।
Guides
सत्यापित रिपॉज़िटरी बदलावों के लिए Cline को OpenAI-Compatible Provider के साथ कॉन्फ़िगर करने का तरीका
Cline को OpenAI-compatible provider के साथ कॉन्फ़िगर करें, उसे coding workflow से जोड़ें और tests के ज़रिए रिपॉज़िटरी बदलावों को सत्यापित करें। इसमें prerequisites, TypeScript configuration, limitations और troubleshooting शामिल हैं।