Tham chiếu cho đối tượngDocumentation Index
Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
api.runtime được chèn vào mọi Plugin trong quá trình đăng ký. Dùng các helper này thay vì nhập trực tiếp các phần nội bộ của máy chủ.
Channel plugins
Hướng dẫn từng bước sử dụng các helper này trong ngữ cảnh cho Plugin kênh.
Provider plugins
Hướng dẫn từng bước sử dụng các helper này trong ngữ cảnh cho Plugin nhà cung cấp.
Tải và ghi cấu hình
Ưu tiên cấu hình đã được truyền vào đường dẫn lệnh gọi đang hoạt động, ví dụapi.config trong quá trình đăng ký hoặc đối số cfg trên các callback kênh/nhà cung cấp. Việc này giữ cho một snapshot quy trình duy nhất chảy xuyên suốt công việc thay vì phân tích lại cấu hình trên các đường dẫn nóng.
Chỉ dùng api.runtime.config.current() khi một handler sống lâu cần snapshot quy trình hiện tại và không có cấu hình nào được truyền vào hàm đó. Giá trị trả về là chỉ đọc; hãy sao chép hoặc dùng helper đột biến trước khi chỉnh sửa.
Các factory công cụ nhận ctx.runtimeConfig cùng với ctx.getRuntimeConfig(). Dùng getter bên trong callback execute của một công cụ sống lâu khi cấu hình có thể thay đổi sau khi định nghĩa công cụ đã được tạo.
Duy trì thay đổi bằng api.runtime.config.mutateConfigFile(...) hoặc api.runtime.config.replaceConfigFile(...). Mỗi lần ghi phải chọn một chính sách afterWrite rõ ràng:
afterWrite: { mode: "auto" }để trình quyết định tải lại Gateway xử lý.afterWrite: { mode: "restart", reason: "..." }buộc khởi động lại sạch khi thành phần ghi biết rằng tải lại nóng là không an toàn.afterWrite: { mode: "none", reason: "..." }chỉ chặn tải lại/khởi động lại tự động khi bên gọi sở hữu bước theo dõi.
afterWrite cùng với bản tóm tắt followUp có kiểu để bên gọi có thể ghi log hoặc kiểm thử xem họ đã yêu cầu khởi động lại hay chưa. Gateway vẫn sở hữu thời điểm việc khởi động lại đó thực sự diễn ra.
api.runtime.config.loadConfig() và api.runtime.config.writeConfigFile(...) là các helper tương thích đã lỗi thời trong runtime-config-load-write. Chúng cảnh báo một lần khi chạy, và vẫn có sẵn cho các Plugin bên ngoài cũ trong thời gian chuyển đổi. Các Plugin đi kèm không được dùng chúng; các guard ranh giới cấu hình sẽ lỗi nếu mã Plugin gọi chúng hoặc nhập các helper đó từ các đường dẫn con của Plugin SDK.
Đối với các import SDK trực tiếp, hãy dùng các đường dẫn con cấu hình tập trung thay vì barrel tương thích rộng
openclaw/plugin-sdk/config-runtime: config-contracts cho
kiểu, plugin-config-runtime cho các assertion cấu hình đã tải và tra cứu mục nhập Plugin,
runtime-config-snapshot cho snapshot quy trình hiện tại, và
config-mutation cho ghi. Kiểm thử Plugin đi kèm nên mock trực tiếp các
đường dẫn con tập trung này thay vì mock barrel tương thích rộng.
Mã thời gian chạy nội bộ của OpenClaw cũng đi theo hướng đó: tải cấu hình một lần tại ranh giới CLI, Gateway, hoặc quy trình, rồi truyền giá trị đó xuyên suốt. Các lần ghi đột biến thành công làm mới snapshot thời gian chạy của quy trình và tăng revision nội bộ của nó; cache sống lâu nên dùng khóa cache do thời gian chạy sở hữu thay vì tuần tự hóa cấu hình cục bộ. Các mô-đun thời gian chạy sống lâu có trình quét không khoan nhượng với các lệnh gọi loadConfig() môi trường xung quanh; hãy dùng cfg đã truyền vào, context.getRuntimeConfig() của yêu cầu, hoặc getRuntimeConfig() tại một ranh giới quy trình rõ ràng.
Các đường dẫn thực thi nhà cung cấp và kênh phải dùng snapshot cấu hình thời gian chạy đang hoạt động, không phải snapshot tệp được trả về để đọc lại hoặc chỉnh sửa cấu hình. Snapshot tệp giữ nguyên các giá trị nguồn như marker SecretRef cho UI và ghi; callback nhà cung cấp cần chế độ xem thời gian chạy đã được phân giải. Khi một helper có thể được gọi bằng snapshot nguồn đang hoạt động hoặc snapshot thời gian chạy đang hoạt động, hãy định tuyến qua selectApplicableRuntimeConfig() trước khi đọc thông tin xác thực.
Không gian tên thời gian chạy
api.runtime.agent
api.runtime.agent
Danh tính agent, thư mục, và quản lý phiên.Ưu tiên
runEmbeddedAgent(...) là helper trung lập để bắt đầu một lượt agent OpenClaw bình thường từ mã Plugin. Nó dùng cùng quy trình phân giải nhà cung cấp/mô hình và lựa chọn agent-harness như các câu trả lời được kích hoạt bởi kênh.runEmbeddedPiAgent(...) vẫn là alias tương thích.resolveThinkingPolicy(...) trả về các mức suy nghĩ được hỗ trợ của nhà cung cấp/mô hình và mặc định tùy chọn. Plugin nhà cung cấp sở hữu hồ sơ theo mô hình thông qua các hook suy nghĩ của chúng, vì vậy Plugin công cụ nên gọi helper thời gian chạy này thay vì nhập hoặc sao chép danh sách nhà cung cấp.normalizeThinkingLevel(...) chuyển văn bản người dùng như on, x-high, hoặc extra high thành mức lưu trữ chuẩn trước khi kiểm tra nó với chính sách đã phân giải.Các helper kho phiên nằm dưới api.runtime.agent.session:updateSessionStore(...) hoặc updateSessionStoreEntry(...) cho các lần ghi thời gian chạy. Chúng định tuyến qua trình ghi kho phiên do Gateway sở hữu, giữ lại các cập nhật đồng thời, và tái sử dụng cache nóng. saveSessionStore(...) vẫn có sẵn cho khả năng tương thích và các lần ghi lại kiểu bảo trì ngoại tuyến.api.runtime.agent.defaults
api.runtime.agent.defaults
Các hằng số mô hình và nhà cung cấp mặc định:
api.runtime.llm
api.runtime.llm
Chạy một hoàn tất văn bản do máy chủ sở hữu mà không nhập nội bộ nhà cung cấp hoặc
sao chép phần chuẩn bị mô hình/xác thực/base URL của OpenClaw.Helper này dùng cùng đường dẫn chuẩn bị hoàn tất đơn giản như thời gian chạy
tích hợp sẵn của OpenClaw và snapshot cấu hình thời gian chạy do máy chủ sở hữu. Các engine ngữ cảnh
nhận capability
llm.complete gắn với phiên, vì vậy các lệnh gọi mô hình dùng
agent của phiên đang hoạt động và không âm thầm rơi về agent mặc định. Kết quả
bao gồm quy thuộc nhà cung cấp/mô hình/agent cùng với mức sử dụng token,
cache, và chi phí ước tính đã chuẩn hóa khi có sẵn.api.runtime.subagent
api.runtime.subagent
Khởi chạy và quản lý các lần chạy subagent nền.
deleteSession(...) có thể xóa các phiên được tạo bởi cùng Plugin thông qua api.runtime.subagent.run(...). Việc xóa các phiên người dùng hoặc người vận hành tùy ý vẫn yêu cầu một yêu cầu Gateway phạm vi quản trị viên.api.runtime.nodes
api.runtime.nodes
Liệt kê các Node đã kết nối và gọi một lệnh do Node lưu trữ từ mã Plugin được Gateway tải hoặc từ các lệnh CLI của Plugin. Dùng cơ chế này khi Plugin sở hữu công việc cục bộ trên một thiết bị đã ghép cặp, ví dụ cầu nối trình duyệt hoặc âm thanh trên một máy Mac khác.Bên trong Gateway, thời gian chạy này là trong quy trình. Trong các lệnh CLI của Plugin, nó gọi Gateway đã cấu hình qua RPC, vì vậy các lệnh như
openclaw googlemeet recover-tab có thể kiểm tra các Node đã ghép cặp từ terminal. Các lệnh Node vẫn đi qua quy trình ghép cặp Node Gateway bình thường, danh sách cho phép lệnh, chính sách gọi Node của Plugin, và xử lý lệnh cục bộ trên Node.Các Plugin phơi bày lệnh do Node lưu trữ nguy hiểm nên đăng ký chính sách gọi Node bằng api.registerNodeInvokePolicy(...). Chính sách chạy trong Gateway sau các kiểm tra danh sách cho phép lệnh và trước khi lệnh được chuyển tiếp đến Node, vì vậy các lệnh gọi node.invoke trực tiếp và các công cụ Plugin cấp cao hơn dùng chung cùng một đường dẫn thực thi.api.runtime.tasks.managedFlows
api.runtime.tasks.managedFlows
Gắn một thời gian chạy Task Flow vào khóa phiên OpenClaw hiện có hoặc ngữ cảnh công cụ tin cậy, rồi tạo và quản lý Task Flow mà không truyền chủ sở hữu trên mọi lệnh gọi.Task Flow theo dõi trạng thái quy trình làm việc nhiều bước bền vững. Nó không phải là bộ lập lịch:
dùng Cron hoặc Sử dụng
api.session.workflow.scheduleSessionTurn(...) cho các lần đánh thức
trong tương lai, rồi dùng managedFlows từ lượt đã lập lịch khi công việc đó
cần trạng thái flow, tác vụ con, chờ, hoặc hủy.bindSession({ sessionKey, requesterOrigin }) khi bạn đã có khóa phiên OpenClaw đáng tin cậy từ lớp ràng buộc riêng của mình. Không ràng buộc từ đầu vào thô của người dùng.api.runtime.tts
api.runtime.tts
Tổng hợp văn bản thành giọng nói.Sử dụng cấu hình lõi
messages.tts và lựa chọn nhà cung cấp. Trả về bộ đệm âm thanh PCM + tốc độ lấy mẫu.api.runtime.mediaUnderstanding
api.runtime.mediaUnderstanding
Phân tích hình ảnh, âm thanh và video.Trả về
{ text: undefined } khi không tạo ra đầu ra nào (ví dụ: đầu vào bị bỏ qua).api.runtime.stt.transcribeAudioFile(...) vẫn là bí danh tương thích cho api.runtime.mediaUnderstanding.transcribeAudioFile(...).api.runtime.imageGeneration
api.runtime.imageGeneration
Tạo hình ảnh.
api.runtime.webSearch
api.runtime.webSearch
Tìm kiếm web.
api.runtime.media
api.runtime.media
Tiện ích phương tiện cấp thấp.
api.runtime.config
api.runtime.config
Ảnh chụp cấu hình runtime hiện tại và các thao tác ghi cấu hình theo giao dịch. Ưu tiên
cấu hình đã được truyền vào đường dẫn gọi đang hoạt động; chỉ sử dụng
current() khi trình xử lý cần trực tiếp ảnh chụp của tiến trình.mutateConfigFile(...) và replaceConfigFile(...) trả về một giá trị followUp,
ví dụ { mode: "restart", requiresRestart: true, reason },
ghi lại ý định của trình ghi mà không lấy quyền điều khiển khởi động lại khỏi
Gateway.api.runtime.system
api.runtime.system
Tiện ích cấp hệ thống.
api.runtime.events
api.runtime.events
Đăng ký sự kiện.
api.runtime.logging
api.runtime.logging
Ghi log.
api.runtime.modelAuth
api.runtime.modelAuth
Phân giải xác thực mô hình và nhà cung cấp.
api.runtime.state
api.runtime.state
Phân giải thư mục trạng thái và lưu trữ theo khóa dựa trên SQLite.Kho lưu trữ theo khóa tồn tại qua các lần khởi động lại và được cô lập theo id Plugin được ràng buộc với runtime. Sử dụng
registerIfAbsent(...) cho các yêu cầu khử trùng lặp nguyên tử: hàm này trả về true khi khóa bị thiếu hoặc đã hết hạn và được đăng ký, hoặc false khi một giá trị còn hiệu lực đã tồn tại mà không ghi đè giá trị, thời gian tạo hoặc TTL của nó. Giới hạn: maxEntries cho mỗi namespace, 1.000 hàng còn hiệu lực cho mỗi Plugin, giá trị JSON dưới 64KB và tùy chọn hết hạn TTL.api.runtime.tools
api.runtime.tools
Factory công cụ bộ nhớ và CLI.
api.runtime.channel
api.runtime.channel
Trình trợ giúp runtime dành riêng cho kênh (có sẵn khi một Plugin kênh được tải).Các trình trợ giúp nhắc đến có sẵn:
api.runtime.channel.mentions là bề mặt chính sách nhắc đến đầu vào dùng chung cho các Plugin kênh đi kèm sử dụng tiêm runtime:buildMentionRegexesmatchesMentionPatternsmatchesMentionWithExplicitimplicitMentionKindWhenresolveInboundMentionDecision
api.runtime.channel.mentions cố ý không phơi bày các trình trợ giúp tương thích resolveMentionGating* cũ hơn. Ưu tiên đường dẫn { facts, policy } đã chuẩn hóa.Lưu trữ tham chiếu runtime
Sử dụngcreatePluginRuntimeStore để lưu trữ tham chiếu runtime nhằm dùng bên ngoài callback register:
Ưu tiên
pluginId cho danh tính runtime-store. Dạng key cấp thấp hơn dành cho các trường hợp không phổ biến khi một Plugin cố ý cần nhiều hơn một vị trí runtime.Các trường api cấp cao nhất khác
Ngoài api.runtime, đối tượng API cũng cung cấp:
ID Plugin.
Tên hiển thị của Plugin.
Ảnh chụp nhanh cấu hình hiện tại (ảnh chụp nhanh thời gian chạy trong bộ nhớ đang hoạt động khi có sẵn).
Cấu hình dành riêng cho Plugin từ
plugins.entries.<id>.config.Trình ghi nhật ký theo phạm vi (
debug, info, warn, error).Chế độ tải hiện tại;
"setup-runtime" là cửa sổ khởi động/thiết lập nhẹ trước mục nhập đầy đủ.Phân giải đường dẫn tương đối so với thư mục gốc của Plugin.
Liên quan
- Nội bộ Plugin — mô hình năng lực và registry
- Điểm vào SDK — tùy chọn
definePluginEntry - Tổng quan SDK — tham chiếu đường dẫn con