ئاگېنت دېگىنى پەقەت سۆزلىشىدىغان مودېل ئەمەس. ئۇ ئىش قىلىدۇ: ھۆججەت ئوقۇيدۇ، بۇيرۇق ئىجرا قىلىدۇ، نەتىجىنى تەكشۈرۈپ داۋاملاشتۇرىدۇ. ئۇنىڭ ئۈچۈن ئاگېنتقا بىر كومپيۇتېر كېرەك.
ئۆز AI ئاگېنتىڭىزنى قانداق قۇرىسىز
Cloudflare 2026-يىلى 3-ئاۋغۇست «Your agent needs a computer, not a container» ناملىق ماقالىدە @cloudflare/computer ناملىق ئوچۇق كودلۇق كۇتۇپخانىنىڭ دەسلەپكى نۇسخىسى (early preview) نى ئېلان قىلدى. بۇ ماقالە شۇ مەنبەگە ئاساسلىنىپ، ئۆز ئاگېنتىڭىزنى قۇرۇشنىڭ قەدەملىرىنى ئۇيغۇرچە چۈشەندۈرىدۇ. كود مىساللىرى ئەسلى ماقالىدىن ئېلىندى.

ئاساسىي ئىدىيە: مېڭە ۋە قول
ئەڭ ئىقتىدارلىق ئاگېنتلارنىڭ ئورتاق نۇقتىسى ئاددىي: ئۇلارغا ئۆز كومپيۇتېرى بېرىلگەن. كود يازىدىغان ئاگېنتلار ھۆججەت سىستېمىسى، shell، قورال ۋە بوغچىلار بىلەن ئىشلەيدۇ: مۇھىتنى كۆزىتىدۇ، ئۆزگەرتىدۇ، سىنايدۇ، ئاندىن داۋاملاشتۇرىدۇ.
Cloudflare نىڭ تەسۋىرىچە، ھازىرقى يۈزلىنىش «مېڭە» (ئاگېنت دەۋرىيلىكى، agent loop) بىلەن «قول» (ئىش قىلىنىدىغان sandbox) نى ئايرىش. ھەر بىر ئاگېنتقا بىر container بېرىش مىليونلىغان ئاگېنتقا يەتمەيدۇ، شۇڭا ئۇلار يېنىك isolate نى ئاساس قىلىپ، ئېغىر container نى پەقەت لازىم بولغاندا چاقىرىدۇ.
| قىسىم | رولى | مىسال |
|---|---|---|
| مېڭە (Agent loop) | مودېل + كۆرسەتمە + قوراللار، قارار چىقىرىدۇ | Durable Object ئىچىدىكى Think ئاگېنتى |
| خىزمەت مۇھىتى (Workspace) | ئورتاق، داۋاملىق ھۆججەت سىستېمىسى | SQLite ئاساسىدىكى مەۋھۇم ھۆججەت سىستېمىسى |
| Isolate | تېز، ئەرزان؛ ھۆججەت، سانلىق مەلۇمات، git | just-bash ئارقىلىق dynamic worker |
| Container | تولۇق Linux؛ npm، native پروگرامما | Cloudflare Containers + FUSE |
1-قەدەم: كۇتۇپخانىنى ئورنىتىش
@cloudflare/computer نى npm ئارقىلىق ئورنىتىسىز. ئۇنى ھەرقانداق Durable Object ئۈستىدە قۇرۇپ، مەۋھۇم ھۆججەت سىستېمىسى ۋە ئىجرا مۇھىتى ئالالايسىز.
npm install @cloudflare/computer2-قەدەم: ئاگېنتنىڭ مېڭىسىنى يېزىش
ئاگېنت بىر سىنىپ. ئۇنىڭدا ئۈچ نەرسە بار: workspace (ھۆججەت سىستېمىسى)، getModel (قايسى مودېل)، ۋە getSystemPrompt (ئاگېنتنىڭ ۋەزىپىسى). تۆۋەندىكى مىسالدا خاتالىق دوكلاتلىرىنى رەتلەيدىغان (bug triage) ئاگېنت Workers AI ئارقىلىق مودېل ئىشلىتىدۇ.
import { Think } from "@cloudflare/think";
import { Workspace } from "@cloudflare/computer";
import { createWorkersAI } from "workers-ai-provider";
export class Agent extends Think {
override workspaceBash = false;
override workspace = new Workspace({
storage: this.ctx.storage,
useThink: true,
});
override getModel() {
return createWorkersAI({ binding: this.env.AI })("@cf/zai-org/glm-5.2");
}
override getSystemPrompt() {
return `You are a bug triage agent.
Use the project in /workspace/repo to reproduce the bug, inspect the
code, make a focused fix when it is safe, and run verification.`;
}
}كۆرسەتمىنى ئېنىق يېزىڭ: ئاگېنت نېمە قىلىدۇ، قەيەردە ئىشلەيدۇ، ئاخىرىدا نېمىنى دوكلات قىلىدۇ. ئەسلى مىسالدا ئاگېنتتىن نېمىنى ئۆزگەرتكەنلىكى، قايسى بۇيرۇقلارنى ئىجرا قىلغانلىقى ۋە تەكشۈرۈشنىڭ ئۆتكەن-ئۆتمىگەنلىكىنى يېزىش تەلەپ قىلىنىدۇ.
3-قەدەم: قول قوشۇش — ئىجرا مۇھىتى
بىر ئاددىي ئىش (ھۆججەت ئۆزگەرتىش، سانلىق مەلۇمات بىر تەرەپ قىلىش، git) isolate ئىچىدە ئىجرا بولالايدۇ. Linux، npm ياكى native پروگرامما كېرەك بولسا container ئىشلىتىلىدۇ. ئىككىلىسى ئوخشاش ھۆججەتلەر ئۈستىدە ئىشلەيدۇ. Container قوشۇش مۇنداق:
import { Workspace, WorkspaceProxy } from "@cloudflare/computer";
import {
CloudflareContainerBackend,
withWorkspaceContainer,
} from "@cloudflare/computer/backends/container";
export { WorkspaceProxy };
export class Agent extends withWorkspaceContainer(Think) {
override workspace = new Workspace({
storage: this.ctx.storage,
useThink: true,
backends: [
new CloudflareContainerBackend({
container: () => this,
workspace: { binding: "Agent", id: this.ctx.id.toString() },
}),
],
});
}4-قەدەم: قوراللارنى بېرىش
createAITools ئاگېنتقا ئەڭ كۆپ ئىشلىتىلىدىغان قوراللارنى بېرىدۇ: read، write، edit، ls ۋە exec. exec قورالى backend پارامېتىرى ئارقىلىق isolate ياكى container نى تاللايدۇ. قورال چۈشەندۈرۈشى ئاگېنتنى توغرا تاللاشقا يېتەكلەيدۇ. ئۇنىڭ يېنىغا ئۆز مەھسۇلاتىڭىزغا خاس قورال قوشالايسىز، مەسىلەن GitHub مەسىلىسىگە جاۋاب يازىدىغان replyToIssue.
import { createAITools } from "@cloudflare/computer/tools";
override getTools() {
return {
...createAITools({
workspace: this.workspace,
shell: {
defaultBackend: "container",
backends: {
container: {
description: "Full Linux userland: npm, node, test runners. " +
"Use it when a task needs more than file manipulation.",
},
},
},
}),
replyToIssue,
};
}Cloudflare نىڭ سىنىقىدا ئالدىنقى قاتاردىكى مودېللار توغرا مۇھىتنى ياخشى تاللايدىكەن ۋە container نى پەقەت لازىم بولغاندا ئىشلىتىدىكەن.
5-قەدەم: مۇھىتنى تەييارلاپ ۋەزىپە بېرىش
Workspace API نى ئاگېنتتىن بۇرۇن بىۋاسىتە ئىشلىتىپ مۇھىت تەييارلىيالايسىز: مۇندەرىجە قۇرۇش، دوكلات ھۆججىتى يېزىش، ئامبارنى clone قىلىش. ئاندىن ئاگېنتقا ۋەزىپە ئۇچۇرى ئەۋەتىسىز.
async startTriage(report) {
await this.workspace.fs.mkdir("/workspace", { recursive: true });
await this.workspace.fs.writeFile(
"/workspace/BUG_REPORT.md",
`# ${report.title}\n\n${report.body}\n`,
);
await this.workspace.git.clone({ url: report.repoUrl, dir: "/workspace/repo" });
return this.submitMessages([{
id: crypto.randomUUID(),
role: "user",
parts: [{ type: "text", text: `Triage this bug: ${report.title}` }],
}]);
}بىخەتەرلىك ۋە كونترول
ئاگېنتقا كومپيۇتېر بېرىش كۈچلۈك، شۇنداقلا خەتەرلىك. @cloudflare/computer دىكى بارلىق مەشغۇلاتلار تىزگىنلىنىدۇ، خاتىرىلىنىدۇ ۋە كۆزىتىلىدۇ (gated, audited, observed). شۇڭا ئاگېنتنىڭ نېمىنى ئۆزگەرتەلەيدىغانلىقىنى چەكلىيەلەيسىز ۋە ئۇنىڭ نېمە قىلغانلىقىنىڭ ئېنىق ئىزىنى كۆرەلەيسىز.
ئاگېنتقا پەقەت ۋەزىپىگە كېرەكلىك ھۆججەت ۋە قوراللارنى بېرىڭ.
ئاخىرقى جاۋابتا ئۆزگەرتىش ۋە ئىجرا قىلىنغان بۇيرۇقلارنى دوكلات قىلدۇرۇڭ.
ئېغىر container نى ئاخىرقى تاللاش قىلىڭ؛ كۆپىنچە ئىش isolate دا تېز ۋە ئەرزان پۈتىدۇ.
ئېسىڭىزدە بولسۇن
@cloudflare/computer ھازىر دەسلەپكى نۇسخا، API ئۆزگىرىشى مۇمكىن (مىسال كودتىكى useThink تاللانمىسى يېقىندا كېرەك بولماسلىقى مۇمكىن دېيىلگەن). Cloudflare نىڭ نىشانى: ئاگېنت ئىشىنىڭ 10% تىن ئازىدا container ئىشلىتىلسۇن، قالغىنى isolate دا پۈتسۇن. ئىشلىتىشتىن بۇرۇن رەسمىي ھۆججەت ۋە ئامباردىكى قەدەممۇقەدەم دەرسلىكنى كۆرۈڭ.
مەنبە: Cloudflare Blog — Your agent needs a computer, not a containerAI ئاگېنتلىرى نېمەMCP — Model Context Protocol