Bỏ qua đến nội dung chính

Agents on the Canvas in tldraw — Steve Ruiz, tldraw

TL;DR

  • Teildra cung cấp một SDK bảng trắng có thể tùy chỉnh cao, đang dẫn đầu trong việc tích hợp các khả năng AI để biến ý tưởng trực quan thành sản phẩm tương tác hoặc đồ họa có cấu trúc.
  • AI trên Teildra Canvas đã phát triển từ các bản vẽ một lần thành nguyên mẫu (Make Real) đến các tác nhân AI cộng tác và cuối cùng là điều phối nhiều tác nhân có khả năng tự động tạo và lặp lại công việc.
  • Để tối đa hóa quyền tự chủ của tác nhân AI, Teildra đã khám phá việc cung cấp cho chúng quyền truy cập sâu vào các ứng dụng máy tính để bàn cục bộ, cho phép các khả năng mạnh mẽ nhưng tiềm ẩn rủi ro như "script injection".

Điểm chính

  • Teildra SDK: Teildra là một bảng trắng trực tuyến và một SDK (Bộ công cụ phát triển phần mềm) dựa trên React, cho phép các nhà phát triển xây dựng các sản phẩm khác với một "hackable Canvas runtime".
  • Chuyển đổi từ bản vẽ sang nguyên mẫu: Dự án "Make Real" ban đầu của Teildra đã chứng minh cách sử dụng các mô hình thị giác để biến bản vẽ trên Canvas thành nguyên mẫu hoạt động, cho phép người không chuyên về kỹ thuật tạo ra các sản phẩm kỹ thuật.
  • AI như một cộng tác viên Canvas: AI có thể hoạt động như một cộng tác viên trực tiếp trên Canvas, tạo ra các đầu ra có cấu trúc dạng văn bản (không phải hình ảnh) để vẽ sơ đồ, hoàn thành trang trình bày hoặc tạo các đối tượng đồ họa dựa trên lời nhắc của người dùng.
  • Vòng lặp tác nhân (Agent Loop): Teildra đã triển khai khái niệm vòng lặp tác nhân, nơi AI tạo ra một đầu ra, xem xét nó và lặp lại cho đến khi tác nhân xác định rằng nhiệm vụ đã hoàn thành.
  • Điều phối nhiều tác nhân (Fairies): Dự án "Fairies" cho phép nhiều tác nhân AI hoạt động đồng thời trên Canvas. Chúng có thể nhìn thấy công việc của nhau, phân công nhiệm vụ (theo mô hình lãnh đạo-theo dõi) và cùng nhau xây dựng các dự án phức tạp như wireframe sách điện tử.
  • Mở rộng khả năng qua ứng dụng máy tính để bàn: Để vượt qua các rào cản an toàn và cung cấp cho tác nhân quyền truy cập sâu hơn vào Canvas, Teildra đã khám phá việc sử dụng một ứng dụng máy tính để bàn (Electron wrapper) để cho phép tác nhân chạy JavaScript và tương tác trực tiếp hơn với môi trường.
  • Rủi ro và tiềm năng của "Script Injection": Việc cho phép các tác nhân AI chạy mã trực tiếp trong một ứng dụng máy tính để bàn mang lại khả năng biến đổi và tương tác mạnh mẽ (như sửa đổi ứng dụng khác), nhưng cũng đi kèm với rủi ro cao về an toàn và bảo mật.
  • Ứng dụng ưu tiên cục bộ cho tự chủ tác nhân: Việc tối đa hóa khả năng tự chủ của tác nhân AI có thể dẫn đến việc ưu tiên các ứng dụng cục bộ, dựa trên tệp, nơi người dùng chấp nhận rủi ro và trách nhiệm để tác nhân có thể tương tác sâu sắc với hệ thống.

Từ vựng

  • SDK — Bộ công cụ phát triển phần mềm
  • Canvas — Bảng vẽ/Canvas
  • Prototype — Nguyên mẫu
  • Vision models — Mô hình thị giác
  • Prompt — Lời nhắc
  • Agent Loop — Vòng lặp tác nhân
  • Orchestration — Điều phối
  • Script injection — Chèn mã độc (hoặc chèn script)
  • Desktop app — Ứng dụng máy tính để bàn
  • Local-first apps — Ứng dụng ưu tiên cục bộ

Nội dung chi tiết

Giới thiệu về Teildra và SDK của nó

Xin chào, tôi sẽ bắt đầu ngay đây. Xin lỗi vì chúng ta hơi muộn một chút. Tôi là Steve Ruiz đến từ Teildra. Có ai biết Teildra không? Vâng, được rồi, có khán giả hâm mộ trong phòng. Nếu bạn chưa biết Teildra, Teildra là một vài thứ. Teildra là một bảng trắng trực tuyến. Bạn có thể truy cập nó, nó thực sự rất tuyệt. Tôi sẽ dùng nó cho các trang trình bày của mình. Teildra cũng là một công ty khởi nghiệp. Chúng tôi có trụ sở tại London. Và Teildra cũng là một SDK (Bộ công cụ phát triển phần mềm). Một thứ mà bạn có thể dùng để xây dựng các sản phẩm khác. Vì vậy, nếu bạn đã sử dụng Agent Canvas mới của Replit thì nó được xây dựng bằng Canvas của chúng tôi. Nếu bạn đã sử dụng Canvas mới của Luba AI, thì đó cũng là Canvas của chúng tôi. Nếu bạn đã sử dụng Canvas mới của Stitches, thì cái đó không được xây dựng bằng Canvas của chúng tôi. Nhưng nếu bạn vào chế độ chú thích này, thì đây chính là Canvas của chúng tôi. Chúng tôi đang ở đâu đó trong đó. Nó là một ứng dụng Angular.

Vậy thì, Teildra, một lần nữa, là một công ty tạo ra bảng trắng, tạo ra một SDK bảng trắng. Một phần ý tưởng với SDK là bạn có thể xây dựng những điều thú vị với SDK, nghĩa là một phần công việc của tôi là xây dựng những điều thú vị với SDK để cải thiện nó. Và rất nhiều trong số những điều đó gần đây đã liên quan đến AI. Một runtime Canvas có thể tùy chỉnh (hackable Canvas runtime), được xây dựng bằng React. Trên thực tế, Canvas cũng chỉ là các component của React, vì vậy component này, component kia, nghĩa là bạn có thể làm được một số điều khá thú vị.

Giới thiệu Make Real: Từ bản vẽ đến nguyên mẫu tương tác

Đầu tiên, tôi sẽ phải phụ thuộc vào "thần demo" ở đây, mạng internet và những thứ khác. Vì vậy, hãy kiên nhẫn với tôi nhé. Có ai còn nhớ ứng dụng Make Real này không? Có thể là bài đăng (tweet) này về Make Real? Có ai còn nhớ đã thấy bài đăng này vào năm 2023 khi các mô hình thị giác ra đời không? Được rồi, tuyệt vời. Đây là một trong những dự án đầu tiên phá vỡ giới hạn trong AI. Chúng ta sẽ chuyển sang điện thoại của tôi, điều này có thể tự nó là một thảm họa.

Vì vậy, ý tưởng cơ bản với Make Real là bạn có thể sử dụng Canvas, vẽ cái này, sau đó gửi nó đến một mô hình và yêu cầu nó biến thành một nguyên mẫu (prototype) hoạt động, điều nghe có vẻ rất lỗi thời vào năm 2026. Nhưng vào năm 2023, nó đã rất thịnh hành, bởi vì không có khái niệm "levelable" (mức độ khả năng), không có vibe coding nào được đặt tên hoặc được định nghĩa là một thuật ngữ. Và đây là một trong những dự án đầu tiên mà những người không chuyên về kỹ thuật có thể tạo ra những thứ kỹ thuật mà không cần phải viết hoặc xem . Và một lần nữa, chúng ta lại phải phụ thuộc vào các vị "thần internet" khác nhau. Vì vậy, chúng ta sẽ xem. Tôi sẽ để nó xử lý một phút. Nhưng có nguy cơ rò rỉ Khóa API (API keys) của tôi, tôi sẽ thử chuyển sang một mô hình nhanh hơn. Ồ không, nó đang đến. Được rồi. Vậy thì, có vẻ hơi khó để làm việc với nó. Chúng ta sẽ xem. Tôi đang nói đây. Ý tưởng cơ bản. Đại loại thế. Vâng, đây là Khóa API của tôi. Tôi luôn phải xoay vòng chúng. Thật đáng buồn, mỗi lần tôi làm demo này. Chúng ta sẽ xem có bao nhiêu tài nguyên tốt được tiêu tốn trước khi tôi kết thúc buổi nói chuyện. Nhưng đó là một vấn đề rất đơn giản. Nó chỉ là, hãy làm cho cái này trở nên tương tác. Đây không phải là điều tôi yêu cầu, nhưng chúng ta sẽ xem. Làm tốt lắm. Tuyệt vời.

Và đây là một thứ hoạt động được, điều này thật tuyệt. Nó giống như một chút HTML thực sự. Nhưng bạn cũng có thể chú thích (annotate) lên trên nó. Bạn có thể nói, này, thực ra, hãy làm cho cái này màu xanh lá cây. Và tại sao chúng ta không dùng những màu này? Tôi sẽ làm cho cái này màu đỏ và đen. Dùng những màu này. Vậy là bạn đang xây dựng một lời nhắc (prompt) ở đây. Ngay cả lời nhắc đó cũng bao gồm trang web cũ. Và không có nhiều ứng dụng thực sự đã sử dụng điều này. Chỉ bây giờ, chỉ những ứng dụng như Google Stitch mà tôi đã đề cập trước đây. Ý tưởng này, ồ, nó không làm bất cứ điều gì tôi yêu cầu. Demo tệ hại. Chúng ta sẽ tiếp tục. Mọi thứ đã thay đổi trong vài năm qua.

AI như một cộng tác viên trên Canvas

Dù sao, còn có một cái khác trong tldraw computer, mà tôi thực sự sẽ không đi sâu vào, nhưng đây là một vài chuỗi và lời nhắc. Nhưng cuối cùng, chúng tôi nghĩ, này, AI trên phần Canvas có thể khá tuyệt. Có lẽ chúng ta nên để AI hoạt động như một cộng tác viên, giống như làm việc với bạn trên Canvas. Vì vậy, ý tưởng đầu tiên, một trong số đó khá đơn giản, là bạn có thể nói, ví dụ, vẽ một con mèo. Bạn có thể làm bất cứ điều gì. Bạn có thể nói, vẽ cho tôi một sơ đồ. Hoàn thành các trang trình bày của tôi, hoàn thành biểu đồ tôi đang làm, những thứ như vậy.

Và không giống như các mô hình hình ảnh (image models), như mô hình khuếch tán (diffusion models), và những thứ tương tự, nó không xây dựng một hình ảnh. Nó đang sử dụng các đầu ra có cấu trúc dạng văn bản (text structured outputs) để tạo ra những thứ tương tự mà tôi có thể tạo ra, phải không? Vì vậy, tôi có các công cụ. Tôi có các hình tròn và hình dạng như thế này. Và thật buồn cười khi thấy những thứ này đã thay đổi như thế nào, ồ, thật buồn. Nhưng điều thú vị của việc này là, như một cách để khám phá mô hình, và những gì mô hình biết và cách nó có thể thể hiện tất cả những thứ đó, hãy làm cho con mèo thổi tắt cây nến. Nó khá tuyệt. Bạn cũng có thể làm một điều gì đó như vẽ nhà của tôi, tức là nhiều lời nhắc cùng lúc trên các phần khác nhau. Và mặc dù tôi không nói cho nó biết nến là gì, và tôi chắc chắn, ứng dụng không biết nến là gì, và tôi thậm chí không chắc mèo có thể thổi. Nhưng nó đã diễn giải đúng điều đó và kết hợp vào thiết kế. Với chi tiết đáng kinh ngạc nữa, vẫn được nói.

Vì vậy, điều này thực sự thú vị vì nó đang giải quyết rất nhiều vấn đề mà có thể không rõ ràng. Ví dụ như các mô hình thị giác, khi nói đến dữ liệu có cấu trúc, thứ nhất, có ít dữ liệu huấn luyện thị giác (vision training data) hơn so với văn bản. Và thứ hai, rất nhiều dữ liệu huấn luyện đó xung đột theo những cách mà văn bản không xung đột. Và các loại khác cũng không. Chẳng hạn, trục y trên một biểu đồ Cartesian, khi bạn đi lên, số đó tăng lên, phải không? Ví dụ: 0, 1, 2, 3, 4, 5. Trên web, trục y đi lên theo hướng này, phải không? Góc trên cùng bên trái là 0. Góc trên cùng bên trái của bạn ở đây. Nhưng khi bạn đi xuống, y tăng lên. Có bên trái, phải không? Giống như đó là bên trái của bạn. Đó là sân khấu bên trái. Có đủ loại thứ xung đột trong ngôn ngữ và với hình ảnh. Vì vậy, việc huấn luyện mô hình để hành xử một cách dễ đoán và tạo ra những thứ như thế này thực sự, à, tôi đã sử dụng huấn luyện, kỹ thuật lời nhắc (prompt engineering) mô hình để làm điều đó. Nó thực sự khó khăn. Nhưng điều này thật thú vị.

Từ One-shot đến Agent Loop: Tác nhân tự động

Nhưng chúng tôi cảm thấy rằng nó vẫn chưa đủ vì nó chỉ là one-shot (một lần), phải không? Tôi muốn tạo ra một tác nhân. Vậy đây là giao diện của Cursor vào khoảng năm 2025 hoặc tương tự khi tôi làm điều này. Vẽ một sơ đồ về vòng đời (life cycle) của một con bướm. Vì vậy, điều này đã đưa nó vào một dạng Agent Loop (vòng lặp tác nhân). Tôi chắc chắn bạn đã tương tác với hàng tá lần mỗi ngày cho đối tượng này. Nơi bạn yêu cầu nó tạo ra một đầu ra và sau đó xem xét đầu ra và lặp lại (iterate) cho đến khi nó nghĩ rằng nó đã hoàn thành. Và chúng tôi thực sự đã cố gắng tuân thủ các quy ước tại thời điểm phát triển các tác nhân mã hóa (coding agents) – nơi các tác nhân này, Agent Loop được nhìn thấy thường xuyên nhất. Nơi có rất nhiều tính năng phụ như từ chối, bạn biết đấy, thấy nó đang suy nghĩ, thấy nó hoạt động như thế nào. Tuyệt vời. Và bây giờ chúng ta có vòng đời của bướm trên Canvas. Khá tuyệt.

Tác nhân trên Canvas: Từ cộng tác đơn lẻ đến orchestration nhiều tác nhân

Tuy nhiên, điều này vẫn chưa thực sự đủ, bởi vì dù nó có tuyệt vời đến đâu, tôi vẫn cảm thấy như, tôi không biết, cảm giác như tôi đang trao bàn phím của mình cho một AI khác chứ không phải ai đó đang cộng tác với tôi. Mặc dù mô hình này đã được sử dụng rất tốt trong nhiều ứng dụng thiết kế sử dụng tldraw, như Love Art hay Magic Path, và trong giáo dục, đặc biệt là khi bạn có một gia sư kiểu như, "hãy giúp tôi làm bài tập về nhà" và "hãy giúp tôi điền vào..." ồ, tôi sẽ xem liệu tôi có thể làm điều này ngay tại chỗ không. "Steve Ruiz, lớp, tuổi," v.v. Và bạn có thể yêu cầu nó hoàn thành bảng nhân vật D&D của mình. Được chứ? Và nó sẽ nắm bắt những gì bạn đang làm, điền vào các biểu mẫu và làm những điều thú vị như thế này. Có thể tôi sẽ quay lại điều đó khi nó tiến triển.

Nhưng điều tôi thực sự muốn là đưa tác nhân ra khỏi thanh bên (sidebar) và vào chính Canvas. Ồ, tôi là một chiến binh. Hay đấy. Được rồi, tôi sẽ nhận nó. Và chúng tôi đã làm vậy. Chúng tôi đã làm điều đó với Fairies, có thể bạn đã thấy, có thể không. Đây là những "người nhỏ bé" trên Canvas. Bạn có thể ném chúng xung quanh. Chúng không thích bị giữ lâu lắm. Chúng sẽ bắt đầu hoảng loạn. Vâng, được rồi. Nhưng bạn có thể làm điều tương tự như vẽ một con mèo hoặc đại loại vậy.

Bây giờ, việc đưa các tác nhân lên Canvas có rất nhiều điều thú vị. Bạn có thể thấy trạng thái (state) của tác nhân, phải không? Đây là nhiều tác nhân mà tôi đang chạy. Theo thuật ngữ lập trình (coding terms), đây sẽ là nhiều cửa sổ terminal hoặc đại loại vậy. Hoặc điều này sẽ ở trong composer composer. Nhưng bạn có thể thấy chúng đang làm gì theo cách mà, và phóng to ra xa. Tôi đã tự làm tất cả các sprite. Và bạn biết đấy, bạn không chỉ có thể thấy nó đang suy nghĩ, mà bạn còn có thể thấy hành động của nó. Bạn có thể thấy nó đang hoạt động ở đâu trong dự án so với các tác nhân khác. Và bạn biết đấy, các tác nhân khác này có thể nhìn thấy nhau đang làm gì.

Vì vậy, nếu tôi yêu cầu tác nhân này vẽ một cái mũ trên con mèo. Và tôi yêu cầu tác nhân này vẽ cổ con mèo. Chúng ta đã bỏ lỡ cái cổ. Chúng sẽ bắt đầu làm việc, phải không? Và chúng có thể làm việc với những thứ của nhau cùng một lúc. Nhưng chúng tôi cũng có thể yêu cầu chúng làm việc cùng nhau. Vì vậy, nếu tôi lấy cả ba Fairies này, Fairies Helen và Joan, và yêu cầu chúng vẽ thêm một số con vật. Một trong số chúng sẽ được bầu làm lãnh đạo. Vì vậy, đây là người lãnh đạo. Và nó sẽ đi trinh sát những gì đang diễn ra trên Canvas. Và sau đó nó sẽ tạo một danh sách việc cần làm (to-do list). Và sau đó chúng tôi sẽ ủy quyền (delegate) danh sách việc cần làm đó cho các tác nhân khác, phải không? Tất cả điều này giống như chúng tôi đang làm vào tháng 12, tháng 10 năm ngoái. Và chúng tôi đang tìm hiểu những điều này cùng lúc với rất nhiều người khác đang tìm hiểu về (kiểu điều phối) orchestration tác nhân (agent orchestration). Vì vậy, tôi có, được rồi, làm thế nào để chúng ta cung cấp cho chúng trạng thái chia sẻ (shared state)? Làm thế nào để chúng ta có mô hình lãnh đạo-theo dõi (leader follower)? Làm thế nào để chúng ta quản lý việc những thứ này về cơ bản là "mù" khi chúng đang hoạt động? Và ngăn chúng chồng chéo lên nhau về những gì chúng đang làm? Và vì vậy bạn có thể thấy người lãnh đạo ở đây không làm bất kỳ công việc nào. Nhưng nó sẽ quan sát (observe), ồ không, đó là người lãnh đạo. Đó là người lãnh đạo. Nó đang quan sát và đánh giá, và xác định xem điều này đã hoàn thành hay chưa, và liệu nó đã được thực hiện đúng cách hay chưa. Vẫn chưa đủ, phải không?

Mở rộng khả năng của tác nhân và các thách thức về an toàn

Fairies rất thú vị. Nhân tiện, nếu bạn muốn chơi với nó, hãy truy cập fairies.tldraw.com. Tương tự như cách Make Real là một giới thiệu rất tốt cho AI nói chung, phải không? Hãy vẽ một cái gì đó, nhấp vào một nút. Fairies là một cách tuyệt vời để nói về nhiều tác nhân cùng nhau làm việc. Và chúng có thể làm công việc thực sự. Hãy để tôi thử lấy một cái, ví dụ đây là một mô tả lớn về một sách điện tử (ebook) hoặc đại loại vậy. Và nếu tôi triệu tập các Fairies của mình, hãy tạo, tạo các wireframe cho cái này. Tuyệt vời. Và tôi sẽ để chúng làm việc. Nhưng chúng ta vẫn tiếp tục nói chuyện.

Tôi bắt đầu muộn 10 phút, tôi sẽ dành thêm 5 phút nữa trước khi tôi dừng lại. Bước tiếp theo cho điều này là cung cấp thêm quyền truy cập vào Canvas cho các tác nhân. Và thực sự, chúng tôi bắt đầu gặp phải các rào cản về an toàn. Như việc gì thực sự an toàn để làm với thứ có thể tùy chỉnh (hackable thing) của chúng tôi cho người dùng. Bởi vì chúng tôi có một API môi trường chạy (runtime API), bạn chỉ cần viết chống lại nó, phải không? Và AI rất giỏi viết . Vì vậy, có lẽ chúng tôi có thể làm một số thứ trong môi trường biệt lập (sandbox). Nhưng không, vì chúng tôi cần DOM, chúng tôi cần trình duyệt như một cách để xem điều gì đang xảy ra. Chúng tôi cần có khả năng tạo ảnh chụp màn hình (screenshots) tất cả những thứ này.

Vì vậy, chúng tôi quyết định sử dụng ứng dụng máy tính để bàn (desktop app) của mình thay thế. Vì vậy, trong các kỳ nghỉ, tôi đã tạo ra một ứng dụng là một trình bao Electron (Electron wrapper) bao quanh tldraw. Và tôi đã mở một cổng (port) về cơ bản. Tôi nói, bạn biết đấy, được rồi, giống như tạo một máy chủ HTTP nhỏ. Và, và mở một điểm cuối API (endpoint). Và bất cứ thứ gì được gửi (posted) đến điểm cuối đó, hãy coi nó là JavaScript và chạy nó. Đó là một ý tưởng tồi. Không tốt, đừng làm điều đó trên ứng dụng của bạn. Tuy nhiên, đối với một ứng dụng máy tính để bàn ngoại tuyến dựa trên tệp (file based), điều tồi tệ nhất có thể xảy ra là gì? Bạn có thể tự làm tổn thương mình, tôi đoán vậy, nhưng bạn sẽ không làm tổn thương phần còn lại của tôi. Và nhìn chúng, nhìn chúng đang đi. Nó đang xây dựng trình đọc sách điện tử (ebook reader) nhỏ của tôi. Thật tuyệt vời. Cảm ơn, Fairies.

Tối đa hóa Trừu tượng và Khả năng Tương tác

Vậy điều đó mang lại cho chúng ta điều gì? Tôi sẽ bỏ qua phần trình diễn, nơi bạn có thể hình dung rằng tôi có thể nói: "Này, hãy hình ảnh hóa đoạn mã này. Tạo một sơ đồ," rất tuyệt. "Được rồi, tôi sẽ thay đổi sơ đồ, cập nhật mã nguồn khớp với sơ đồ." Dễ dàng phải không? Bạn có thể có những kiểu như thế này, kiểu như: "Hãy nâng cấp độ trừu tượng mà chúng ta mong muốn."

Những Khả năng Đáng ngạc nhiên và Đáng lo ngại

Điều đáng ngạc nhiên thực sự là khi tôi nói: "Được rồi, hãy xem đây. Tôi sẽ vẽ một giao diện người dùng nhỏ hoặc bất cứ thứ gì, phải không? Và tôi muốn đây là một độ dài chân. Và tôi muốn đây là màu áo phông." Và mặc dù TLDRAW thực sự không có khả năng... chúng tôi không có các thành phần cơ bản cho sự kiện on hover (di chuột qua) hoặc on click (nhấp chuột), hoặc nó không phải là một thứ hoàn chỉnh. Tôi nghĩ nó có thể viết mã tương tác với trình soạn thảo. Vì vậy, hãy làm cho nó tương tác. Và chúng ta sẽ xem nó đi đến đâu. Cho đến nay, kết quả về điều này thực sự, thực sự rất tuyệt. Theo những cách cực kỳ kỳ lạ và đáng lo ngại. Bởi vì, khi hỏi, các AI giống như: "Chắc chắn, hãy thực hiện một số script injection," phải không? Cách nó tự tài liệu hóa chính là: "Đây là cách bạn nên làm điều này." Nó không hề ngần ngại, nhân tiện, thay đổi những thứ có trên máy tính để bàn, trên máy tính của bạn.

Tương tác với Ứng dụng Máy tính để bàn

Nếu bạn đã từng muốn, ví dụ, một trong những thành viên nhóm của chúng tôi, Max, đã nói: "Bạn biết không? Tôi không thích podcast trong Spotify của mình. Tôi muốn loại bỏ podcast trong ứng dụng Spotify của mình. Claw, bạn có thể làm điều đó không?" Và nó giống như: "Chắc chắn rồi. Hãy để tôi xem qua mã nguồn đã được rút gọn hoặc gói (bundle) của ứng dụng đó. Để tôi cứ thế phân tích và thay đổi cấu trúc." Và nó rất vui vẻ làm điều đó. Nó làm cho chúng vui vẻ. Chúng thích nó. "Ôi trời ơi, tôi thậm chí không biết bạn đã làm gì. Bạn đã tạo ra một HTML? Cái quái gì vậy?" Kiểu như, nó đã tạo ra một trang HTML mới từ điều này. "Và đây là con trỏ? Nó thậm chí không phải là thanh trượt. Không, tôi muốn nó ở trong TLDRAW." Được rồi. Vâng, chúng tôi yêu thích nó. Nó cũng đang nhấp nháy nữa. Tôi không biết bạn có để ý không. "Thôi nào, làm đi." Vâng, nó đây rồi. Hãy xem liệu nó có thể... "Thôi nào, hãy bắt đầu."

Vậy đó, thực sự không có giới hạn nào cho những gì nó có thể làm với một ứng dụng máy tính để bàn. Và tôi rất vui khi làm điều đó theo một cách mà tôi gần như có thể biết rằng nó sẽ rất thích làm điều này với các trang web. Kiểu như, nó sẽ thích: "Hãy để tôi đưa móng vuốt của mình vào đó." Được rồi. Thôi nào. Vẫn đang thực hiện công việc đó. Và chúng ta sẽ, chúng ta sẽ thiết lập khả năng tương tác. Thôi nào. Điều này sẽ thực sự thú vị. Tôi nghĩ chúng ta sẽ chỉ phát hành cái này. Ý tôi là, nó đã được phát hành, nhưng cái ý tưởng mà bạn có thể sử dụng... Tôi yêu các ứng dụng ưu tiên cục bộ. Tôi yêu tệp tin trên ứng dụng. Tôi yêu... có tất cả những ý tưởng này mà cho đến nay chỉ là những điều tò mò và... (đợi một chút) Ồ, thôi nào. Ồ, thật là một sự thất vọng. Chúng ta sẽ phải gặp lại nhau sau. Tôi sẽ làm cho nó hoạt động.

Ứng dụng Ưu tiên Cục bộ và Khả năng Tác nhân

Nhưng bây giờ, thực sự, ý tưởng về một thứ dựa trên tệp tin cục bộ có khả năng tự phơi bày với đám mây và các tác nhân cục bộ để về cơ bản là chèn mã độc (script inject) — điều này thúc đẩy rất nhiều những ý tưởng đó, mà trước đây chỉ là lý tưởng, trở thành: "Chà, đó là cách duy nhất bạn có thể làm điều này." Nếu bạn thực sự muốn tối đa hóa khả năng tự chủ của tác nhân để tối đa hóa những gì nó có thể làm và chấp nhận rủi ro, thì bạn chỉ cần giao phó điều đó cho người dùng và nói: "Chúc may mắn." Tôi nghĩ OpenClaw làm điều này khá tốt. Kiểu như: "Đây là những công cụ sắc bén. Hãy tận hưởng đi nhé?"

Tổng kết và Lời mời Tham gia

Dù sao đi nữa, đó là bài nói chuyện "Các Tác nhân trên Canvas" của tôi. Công việc vẫn tiếp tục. Vì vậy, nếu bạn muốn khám phá những khả năng bất ngờ, tôi thực sự khuyên bạn nên làm điều đó vì nó cực kỳ thú vị và bạn sẽ tìm thấy những điều làm bạn ngạc nhiên, những điều đã làm tôi ngạc nhiên. Họ cũng có IRC. Để tôi xem. Vâng, dù sao đi nữa. Và nếu bạn muốn theo dõi TLDRAW, chúng tôi có mặt trên Twitter tại @TLDRAW, và sau đó tôi là @SteveRuiz. Tôi đăng tải rất nhiều về những điều này. Cảm ơn vì đã tham gia. Xin chào. Cảm ơn.

Góp ý / Báo lỗiPhát hiện sai sót hoặc có ý tưởng cải thiện?