Cấu hình ClineCore cho các phiên lập trình chú trọng quyền riêng tư
Hướng dẫn thực tế cách cấu hình phiên ClineCore, hạn chế lộ dữ liệu nhạy cảm và khắc phục các sự cố thiết lập thường gặp.
Tóm tắt · TL;DR
ClineCore tách biệt các lựa chọn môi trường chạy dùng chung với cấu hình mô hình cho từng phiên. Hãy tận dụng cách phân tách này để tránh đưa thông tin xác thực vào prompt và nhật ký, hạn chế dữ liệu được lưu lại, đồng thời khắc phục sự cố cấu hình mà không mặc định mọi nhà cung cấp đều hỗ trợ cùng một tham số.
Điểm chính
- Thiết lập backend, chính sách công cụ và khả năng của môi trường chạy dưới dạng tùy chọn ClineCore dùng chung; truyền cấu hình mô hình và thông tin xác thực cho từng phiên.
- Lưu API key trong biến môi trường phía máy chủ; không bao giờ đưa thông tin xác thực vào prompt, metadata hoặc tin nhắn tải sẵn.
- Coi tin nhắn, mã định danh và bản ghi mức sử dụng của phiên là dữ liệu có khả năng nhạy cảm; xác định ai được quyền truy cập và thời gian lưu giữ.
- Cần xác minh các trường riêng của nhà cung cấp và khả năng tương thích của endpoint trong tài liệu của nhà cung cấp; tài liệu tham khảo ClineCore được cung cấp không xác nhận khả năng hỗ trợ phổ quát.
Mục lục (6)
Cấu hình phiên trước khi gửi mã nguồn riêng tư
ClineCore cho phép ứng dụng tạo môi trường chạy và bắt đầu các phiên với cấu hình mô hình và môi trường chạy. Quyết định về quyền riêng tư trên thực tế không chỉ nằm ở việc chọn nhà cung cấp nào, mà còn ở dữ liệu phiên nhận được, công cụ nào có thể tác động đến dữ liệu đó và những gì ứng dụng lưu lại hoặc để lộ sau đó.
Các ví dụ dưới đây chỉ nhằm minh họa, không phải là các tích hợp đã được kiểm thử. Tài liệu tham khảo ClineCore mô tả cấu trúc API, nhưng không xác nhận rằng mọi nhà cung cấp đều chấp nhận cùng một tham số mô hình hoặc thiết lập endpoint. Hãy kiểm tra tài liệu của nhà cung cấp trước khi dựa vào các tùy chọn riêng của họ.
Tách biệt thiết lập dùng chung và thiết lập theo phiên
Các tùy chọn ClineCore.create bao gồm những lựa chọn như tên client, chế độ backend, chính sách công cụ, khả năng và việc có bật tự động hóa hay không. Lệnh gọi start yêu cầu có config với các thiết lập mô hình và môi trường chạy cho phiên. Ví dụ được tài liệu hóa bao gồm providerId, modelId, apiKey, systemPrompt, cwd, workspaceRoot, cùng các cờ về công cụ và agent.
Một mẫu tối giản chạy phía máy chủ như sau:
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,
},
})
Ví dụ này dùng biến môi trường như một biện pháp xử lý thông tin xác thực; tài liệu tham khảo không yêu cầu dùng trình quản lý secrets hay quy định tên các biến môi trường này. Hãy giữ key trên một máy chủ đáng tin cậy, không gửi key vào mã chạy trên trình duyệt và tránh ghi cấu hình phiên vào nhật ký ứng dụng. Nếu nhà cung cấp yêu cầu endpoint hoặc tham số bổ sung, chỉ cấu hình theo hướng dẫn trong tài liệu của họ và xác minh ClineCore hỗ trợ các trường cần thiết.
Đưa ra quyết định rõ ràng về quyền riêng tư
Trước khi bắt đầu phiên, hãy xác định agent thực sự cần những gì. Nếu tác vụ cho phép, ưu tiên một workspace giới hạn hoặc các tệp được chọn thay vì toàn bộ repository. Loại trừ secrets, dữ liệu cá nhân và các tệp không liên quan khỏi nội dung cung cấp cho agent. System prompt có thể nêu các yêu cầu xử lý dữ liệu, nhưng không thể thay thế biện pháp kiểm soát truy cập hoặc giảm thiểu dữ liệu.
Hãy xem xét quyền truy cập công cụ cẩn thận như nội dung prompt. ClineCore chấp nhận chính sách công cụ mặc định và chính sách theo từng phiên; các khả năng của môi trường chạy có thể bao gồm bộ thực thi công cụ do client sở hữu và callback phê duyệt. Khi tác vụ không cần công cụ, hãy tắt chúng; nếu cần dùng công cụ, hãy áp dụng chính sách và quy trình phê duyệt phù hợp với tác động của chúng. Tài liệu tham khảo mô tả các điểm cấu hình này, nhưng không định nghĩa hành vi của từng công cụ hoặc bảo đảm một chính sách cụ thể sẽ ngăn được mọi hành động nhạy cảm.
Hãy coi bản ghi phiên là dữ liệu có khả năng nhạy cảm. API có thể liệt kê phiên, lấy metadata và tin nhắn, đọc dữ liệu mức sử dụng tích lũy, cập nhật bản ghi và xóa phiên. Vì có những khả năng này, ứng dụng cần xác định ai được gọi các phương thức đó và áp dụng quy tắc lưu giữ nào. Tránh đưa secrets hoặc thông tin cá nhân không cần thiết vào sessionMetadata, tin nhắn ban đầu hoặc prompt: metadata và tin nhắn là dữ liệu phiên, không phải nơi lưu trữ bí mật an toàn.
Tùy chọn distinctId được mô tả là mã định danh ổn định cho telemetry/người dùng. Nếu sử dụng, hãy cân nhắc ứng dụng của bạn có thực sự cần mã định danh ổn định hay không và liệu mã này có thể nhận diện một người hay không. Tài liệu tham khảo không giải thích việc thu thập, lưu giữ hay ẩn danh telemetry, vì vậy đừng mặc định mã định danh này là ẩn danh hoặc việc thiết lập nó sẽ kiểm soát toàn bộ telemetry.
Khắc phục các lỗi thiết lập thường gặp
- Không tạo được phiên với cấu hình đã cho: Xác nhận
confighiện diện và mã định danh nhà cung cấp, mô hình khớp với các giá trị được nhà cung cấp chấp nhận. Tài liệu tham khảo được cung cấp chỉ đưa ra ví dụ, không phải danh mục đầy đủ các nhà cung cấp. - Xác thực thất bại: Kiểm tra key có sẵn trong tiến trình máy chủ, khớp với nhà cung cấp đã chọn và không bị cắt khoảng trắng hoặc thay thế ngoài ý muốn. Không bao giờ đưa key vào prompt chẩn đoán hoặc dán vào phiếu hỗ trợ.
- Tùy chọn riêng của nhà cung cấp bị bỏ qua hoặc bị từ chối: Tài liệu tham khảo ClineCore không nêu khả năng tương thích phổ quát của endpoint hay tham số. Hãy kiểm tra tài liệu của nhà cung cấp và SDK, thay vì mặc định rằng thiết lập của nhà cung cấp này dùng được cho nhà cung cấp khác.
- Phiên có thể thực hiện nhiều hành động hơn dự kiến: Rà soát
enableTools, chính sách công cụ và các khả năng được cung cấp. Nếu không cần công cụ, hãy bắt đầu với trạng thái tắt rồi chỉ bật những gì quy trình cần. - Nội dung nhạy cảm xuất hiện trong lịch sử: Kiểm tra các luồng xử lý của ứng dụng gọi
readMessages,listvà các API phiên liên quan, sau đó áp dụng biện pháp kiểm soát phù hợp về phân quyền và lưu giữ. Tài liệu tham khảo cung cấp các API này nhưng không quy định biện pháp bảo vệ lưu trữ hoặc truy cập của ứng dụng bạn. - Công việc tiếp tục ngoài dự kiến: Dùng phương thức
aborthoặcstopđã được tài liệu hóa cho phiên và giải phóng tài nguyên môi trường chạy khi ứng dụng không còn cần đến chúng.
Danh sách kiểm tra trước khi chạy có thể tái sử dụng
Trước khi bật quy trình ClineCore, hãy xác nhận thông tin xác thực vẫn ở phía máy chủ; workspace chỉ chứa các tệp cần thiết; prompt và metadata không có secrets; quyền truy cập công cụ được giới hạn và rà soát; có người chịu trách nhiệm về lịch sử phiên cùng chính sách lưu giữ; và các thiết lập riêng của nhà cung cấp đã được đối chiếu với tài liệu hiện hành của họ. Khi gỡ lỗi, chỉ ghi lại thông tin không nhạy cảm, chẳng hạn phiên có bắt đầu hay không và mã yêu cầu nội bộ nào áp dụng — không ghi thông tin xác thực, toàn bộ prompt hoặc tệp mã nguồn.
Tài liệu tham khảo ClineCore cung cấp các điểm cấu hình và quản lý phiên, chứ không bảo đảm quyền riêng tư toàn diện. Việc vận hành chú trọng quyền riêng tư phụ thuộc vào cách ứng dụng cung cấp dữ liệu, kiểm soát công cụ, bảo vệ bản ghi phiên và xử lý thông tin xác thực.
Nguồn
- Tài liệu tham khảo API ClineCore — các tùy chọn API, cấu hình phiên, phương thức quản lý phiên và phần tổng quan về tự động hóa.
FAQ
Những thiết lập ClineCore nào không phụ thuộc vào nhà cung cấp?
Tài liệu tham khảo mô tả các tùy chọn môi trường chạy dùng chung như `clientName`, `backendMode`, chính sách công cụ, khả năng và tự động hóa. Cấu hình phiên cũng bao gồm mã định danh nhà cung cấp và mô hình, thông tin xác thực cùng các trường môi trường chạy. Tài liệu không xác nhận khả năng tương thích endpoint và tham số riêng của từng nhà cung cấp, vì vậy hãy xác minh riêng.
Đưa API key vào prompt của Cline có an toàn không?
Không. Hãy lưu thông tin xác thực trong cấu hình phía máy chủ đáng tin cậy và truyền qua cơ chế cấu hình phiên được tài liệu hóa. Không đưa key vào prompt, tin nhắn, metadata hoặc nhật ký.
ClineCore có tự động ẩn danh dữ liệu phiên không?
Tài liệu tham khảo API được cung cấp không quy định việc ẩn danh, thời gian lưu giữ telemetry hoặc biện pháp bảo vệ dữ liệu phiên. Hãy coi tin nhắn, metadata, mã định danh và bản ghi mức sử dụng là dữ liệu có khả năng nhạy cảm, đồng thời tự áp dụng các biện pháp kiểm soát truy cập và lưu giữ.
Làm thế nào để giới hạn nội dung mà coding agent có thể truy cập?
Chỉ cung cấp các tệp cần cho tác vụ, sử dụng workspace bị giới hạn khi phù hợp và rà soát chính sách công cụ cũng như các khả năng. Tắt công cụ khi không cần; tác động chính xác của từng công cụ phụ thuộc vào cách bạn triển khai.
Bài viết liên quan
Guides
Cấu hình Cline với nhà cung cấp tương thích OpenAI để trích xuất theo JSON Schema
Thiết lập nhà cung cấp tương thích OpenAI trong Cline, sau đó dùng quy trình làm việc với coding agent để xây dựng và kiểm tra tính hợp lệ của dữ liệu trích xuất có cấu trúc bằng JSON Schema.
Guides
Cline-д OpenAI-тай нийцтэй provider тохируулж, эх сурвалжтай баримт бичгийн асуулт-хариулт хийх нь
Cline SDK-д OpenAI-тай нийцтэй provider тохируулж, баримт бичгийн асуултад шалгаж баталгаажуулах боломжтой эх сурвалжийн ишлэлтэй хариулдаг workflow бүтээнэ.
Guides
Cline với Provider Tương thích OpenAI cho Phân loại Yêu cầu Hỗ trợ có Phê duyệt của Con người
Cấu hình Cline với provider tương thích OpenAI và OneMux để phân loại yêu cầu hỗ trợ khách hàng, đồng thời bảo đảm mọi hành động hướng tới khách hàng đều phải qua phê duyệt của con người.
Guides
Cách cấu hình Cline với Provider tương thích OpenAI để xác minh thay đổi trong Repository
Cấu hình Cline với một provider tương thích OpenAI, kết nối với quy trình lập trình và xác minh các thay đổi trong repository bằng test. Bao gồm điều kiện tiên quyết, cấu hình TypeScript, giới hạn và cách khắc phục sự cố.