Repository navigation
Releases: cloudflare/computer
Release list
@cloudflare/computer@0.8.0
@cloudflare/computer@0.8.0
@cloudflare/computer@0.7.1
Patch Changes
- #252 The Git entrypoint hashes with
node:cryptoinstead of bundlingsha.jsand its Buffer polyfills, which trims about 120 KB from a Worker that uses it, and the worker-shell modules are minified, shrinking them by 28%.@cloudflare/computer/toolsand itsai-sdk,pi-aiandtanstack-aivariants also no longer reference the bundled isomorphic-git, which unbundled loaders such as Node and Vite's dev server used to fetch for them. (56dd6ab) - Thanks @mattzcarey
@cloudflare/computer@0.7.0
Minor Changes
-
#238 Add experimental
onInterrupt: "restart" | "replay"toWorkerJavaScriptBackend, so runs interrupted by a deploy or crash can resume. (22368fc) - Thanks @scuffi -
#251 Add experimental
ctx.interrupt()for host module functions, withruntime.pending()andruntime.respond(), so a replayable run can wait for an answer such as an approval. (5db8dd4) - Thanks @scuffi
Patch Changes
- #263
WorkspaceFileStoreandWORKSPACE_ROOTare exported from@cloudflare/computer, so code outside the tools can read and write workspace files without its own helper. (a730798) - Thanks @mattzcarey
@cloudflare/computer@0.6.0
Minor Changes
-
#255
getWorkspace()now returns a lazy client immediately which resolves on the first call.useThinkand the Think compatibility methods are removed;@cloudflare/think0.21 and later take aWorkspaceas it is. (9cc3119) - Thanks @mattzcarey -
#237
WorkerJavaScriptBackendkeeps its Durable Object alive while executions run, and adds amaxCpuMsoption. (7415a44) - Thanks @scuffi -
#239
just-bashis now an optional peer dependency and should be installed manually when using@cloudflare/computer/backends/worker-shell. (5980264) - Thanks @mattzcarey
Patch Changes
-
#257
getWorkspace()accepts any Durable Object stub whose class has__getWorkspaceStub(), without a cast. (777097a) - Thanks @mattzcarey -
#244
WorkspaceProxyandWorkspaceServiceProxywake their host Durable Object by name, soctx.id.namesurvives a wake caused by a container or Dynamic Worker callback.WorkspaceRef,WorkspaceProxyPropsandWorkspaceServiceProxyPropsaccept an optionalname, filled in fromctx.id.namewhen the backend runs in the host object itself. (b629117) - Thanks @aron-cf -
#241
Workspace, its filesystem, the worker-javascript backend, mounts, agent tools, Git, Assets, and Artifacts are now stable;LegacyContainerBackendis deprecated in favor ofContainerBackend; the container and worker-shell backends,ws:container, sync, andcomputerdstay experimental. (d950ffe) - Thanks @aron-cf
@cloudflare/computer@0.5.1
Patch Changes
-
#229 Add
forAISDKTools()in@cloudflare/computer/tools/ai-sdkto serve an AI SDK tool set to isolate JavaScript asws:tools; seews:toolsdocumentation. (8e50de6) - Thanks @mattzcarey -
#214 The
edittool bounds its diff withmaxDiffLinesandmaxDiffBytesand reportsdiffTruncated; seeedittool documentation. (f1ac4ce) - Thanks @aron-cf -
#216 Fix issue when creating a host module with no functions in the JavaScriptWorkerBackend; see host module documentation. (
c798c11) - Thanks @aron-cf -
#214 The
exectool'sinputis an object rather than any JSON value; seeexectool documentation. (f1ac4ce) - Thanks @aron-cf -
#214 The
exectool parses aninputobject sent as a string of JSON; seeexectool documentation. (f1ac4ce) - Thanks @aron-cf -
#214 Tool sets take
execOutput: { maxLines, maxBytes }for theexectool's output limits; see tool option documentation. (f1ac4ce) - Thanks @aron-cf -
#214 Host module factories receive the Workspace's assets client as
host.assets; see host module documentation. (f1ac4ce) - Thanks @aron-cf -
#214
WorkerJavaScriptBackendnow lazily reads each host module's description; see module documentation. (f1ac4ce) - Thanks @aron-cf -
#215 Mounts can now declare a
versionto support schema migrations; see mount version documentation. (50a80cc) - Thanks @aron-cf -
#214
createPiToolsresults carry each tool's own output asdetails; see pi documentation. (f1ac4ce) - Thanks @aron-cf -
#216 Add
ws:toolsto provide the JavaScript worker backend programmatic access to tools; seews:toolsdocumentation. (c798c11) - Thanks @aron-cf -
#214 The
greptool'sincludeandexclude, and thefindtool'sexclude, take one glob or a list; seegreptool documentation. (f1ac4ce) - Thanks @aron-cf -
#214 Add
@cloudflare/computer/tools/core, which exportsdefineExecwithout an agent library; see tool documentation. (f1ac4ce) - Thanks @aron-cf -
#214 Tool sets take
rootto confine the file tools to one directory; see root documentation. (f1ac4ce) - Thanks @aron-cf -
#215 Add
WorkerBundle, a read-only mount that copies files from the deployed bundle or an imported file tree; see mount documentation. (50a80cc) - Thanks @aron-cf -
#215 Add
@cloudflare/computer/vitewith acomputerBundle()plugin that bundles a directory into a Vite-built worker forWorkerBundle; see mount documentation. (50a80cc) - Thanks @aron-cf -
#214
ws:artifactsaddscreateTokenandsharefor minting git tokens and clone URLs; seews:artifactsdocumentation. (f1ac4ce) - Thanks @aron-cf -
#214 Add
ws:assetsso isolate JavaScript can publish a Workspace file to a time-limited URL; seews:assetsdocumentation. (f1ac4ce) - Thanks @aron-cf -
#214
createContainerModule({ maxOutputLines })limits eachws:containerstream by lines as well as bytes; seews:containerdocumentation. (f1ac4ce) - Thanks @aron-cf -
#214
createContainerModule({ prelude })runs shell text such asset -o pipefailbefore eachws:containercommand; seews:containerdocumentation. (f1ac4ce) - Thanks @aron-cf -
#214
ws:containernow keeps the end of each stream for a Workspace withoutput: false; seews:containerdocumentation. (f1ac4ce) - Thanks @aron-cf -
#214
ws:toolslists the tools code can import in its description; seews:toolsdocumentation. (f1ac4ce) - Thanks @aron-cf
@cloudflare/computer@0.5.0
Minor Changes
-
#210
createAIToolsmoves to@cloudflare/computer/tools/ai-sdk; see tool wiring documentation. (154ca10) - Thanks @aron-cf -
#210 The
execoption (nowExecBackendOptions) has been refactored to useruntime.backends(); see tool option documentation. (154ca10) - Thanks @aron-cf -
#210 The
exectool shows the lastmaxLines(2000) lines ormaxBytesof each stream with a pointer to the full output on disk; seeexectool documentation. (154ca10) - Thanks @aron-cf -
#210
ws:gitandws:artifactsare no longer installed by default: addcreateGitModule()andcreateArtifactsModule(); seews:gitdocumentation. (154ca10) - Thanks @aron-cf -
#172 Remove
WorkerJavaScriptBackend'smaxConcurrentExecutionsoption, leaving the platform's own limit on concurrent Dynamic Workers; see execution limit documentation. (0ecfff4) - Thanks @mattzcarey -
#210 Consolidate
trustedModuleswithmodulesinWorkerJavaScriptBackend; see module documentation. (154ca10) - Thanks @aron-cf -
#210
runtime.execresults keep only the last 2000 lines or 64 KiB of each stream and save the full output to a Workspace file, configured withnew Workspace({ output })or turned off withoutput: false; see long output documentation. (154ca10) - Thanks @aron-cf -
#210 Fix an issue in
JavaScriptWorkerBackendwhere a source module could import a Workspace file; see source module documentation. (154ca10) - Thanks @aron-cf
Patch Changes
-
#210 JavaScriptWorkerBackend now supports absolute imports e.g.
/workspace/lib/util.js; see import documentation. (154ca10) - Thanks @aron-cf -
#210 Improve
WorkerShellBackendandContainerBackendtool descriptions including egress information; seeexectool documentation. (154ca10) - Thanks @aron-cf -
#210 Add
runtime.backends()toWorkspaceClientallowing tools to be created from workspace stubs; see tool wiring documentation. (154ca10) - Thanks @aron-cf -
#213 The
exectool now tells the model to put module code in anexport default async function (input)shape. (3249dce) - Thanks @scuffi -
#171 The
exectool only documentsbackendandinputwhen needed; seeexectool documentation. (c40642e) - Thanks @mattzcarey -
#210 A cyclic argument to a
node:fsor host module call fails with a "must be acyclic" error; see execution limit documentation. (154ca10) - Thanks @aron-cf -
#213 Isolate JavaScript modules now need a default export, and fail before running without one. (
3249dce) - Thanks @scuffi -
#213 Isolate JavaScript code can now import Node.js built-ins such as
node:path,node:crypto, andnode:zlib. (3249dce) - Thanks @scuffi -
#213 The JavaScript backend now creates its root directory (
/workspace) if the Workspace doesn't have one. (3249dce) - Thanks @scuffi -
#210 The JavaScriptWorkerBackend now strips non-serializable return values matching JSON.stringify(); see isolate JavaScript documentation. (
154ca10) - Thanks @aron-cf -
#213 Isolate JavaScript runs now fail on I/O at module scope or an unhandled rejection, instead of completing silently, with no output. (
3249dce) - Thanks @scuffi -
#172
JavaScriptWorkerBackendnow uses native RPC formodulesbindings; see execution limit documentation. (0ecfff4) - Thanks @mattzcarey -
#210 Imports of
ws:*and other configured modules work whencompatibilityFlagsincludesnew_module_registry; see module documentation. (154ca10) - Thanks @aron-cf -
#172 Tools built from a remote
getWorkspace()client of a Workspace without an assets publisher no longer offer apublishtool; see tool wiring documentation. (0ecfff4) - Thanks @mattzcarey -
#210 Add
workspace.runtime.backends(), which lists each backend's id, protocol, whether it is callable, and its description for a model, including the modules aWorkerJavaScriptBackendcan import; see backend routing documentation. (154ca10) - Thanks @aron-cf -
#210 Each
JavaScriptWorkerBackendnow only stores each module once, so a large bundle counts once; see module documentation. (154ca10) - Tha...
@cloudflare/computer@0.4.1
@cloudflare/computer@0.4.0
Minor Changes
-
#161 Rename the platform-scheduled container backend to
LegacyContainerBackend; see container backend documentation. (736fcdd) - Thanks @aron-cf -
#191 Add Workspace tool sets for pi (
createPiToolsfrom@cloudflare/computer/tools/pi-ai) and TanStack AI (createTanStackToolsfrom@cloudflare/computer/tools/tanstack-ai); see the tool interface docs. (960d85b) - Thanks @aron-cf
Patch Changes
-
#187 Keep configured paths local to the container instead of syncing them with the Durable Object using
ContainerBackend.ignore; see local-only path documentation. (f15437c) - Thanks @aron-cf -
#162 Add
ContainerBackendfor durable-object-scheduled containers; see container backend documentation. (390fd7b) - Thanks @aron-cf -
#141 Expand
ws:gitwith full-history clones by default and additionalcat-file,log, and command-specifichelpoptions; see Git interface documentation. (4bc1028) - Thanks @aron-cf
@cloudflare/computer@0.3.2
@cloudflare/computer@0.3.1
Patch Changes
-
#124 Document the symbolic-link filesystem surface under
docs/04_filesystem_interface.md. (e6a92c5) - Thanks @aron-cf -
#124 Extend
Workspace.fsto includerename(oldPath, newPath). (e6a92c5) - Thanks @aron-cf -
#124
findnow acceptsexcludee.g.ws.fs.find("/workspace", "**/*.ts", { exclude: ["node_modules/**"], }). (e6a92c5) - Thanks @aron-cf -
#145 Improve performance of git diff when given named paths. (
a495760) - Thanks @aron-cf