1 điểm bởi GN⁺ 2 giờ trước | 1 bình luận | Chia sẻ qua WhatsApp
  • Obsidian Community đã ra mắt như một thư mụcbảng điều khiển dành cho nhà phát triển mới cho plugin và theme, hợp nhất quy trình gửi, quản lý, khám phá và sử dụng
  • Kể từ khi Obsidian API được công bố vào năm 2020, cộng đồng đã tạo ra hơn 4.000 plugin và theme, và số lượt tải plugin đã vượt 120 triệu
  • Thư mục mới cung cấp khả năng duyệt, tìm kiếm, lọc và sắp xếp, đồng thời hiển thị ảnh chụp màn hình, thông tin chi tiết và bảng điểm an toàn trên trang dự án
  • Đánh giá tự động được áp dụng cho mọi phiên bản để kiểm tra việc tuân thủ chính sách nhà phát triển, chất lượng mã, các lỗ hổng đã biết và khả năng có mã độc
  • Các dự án hiện có sẽ được chuyển sang hệ thống mới, và những plugin hoặc theme không vượt qua tiêu chuẩn mới nhất sẽ được miễn trừ tạm thời trước khi dần bị loại khỏi thư mục chính thức

Ra mắt Obsidian Community

  • Obsidian Community đã ra mắt như một thư mụcbảng điều khiển dành cho nhà phát triển mới cho plugin và theme của Obsidian
  • Kể từ khi Obsidian API được công bố vào năm 2020, cộng đồng đã tạo ra hơn 4.000 plugin và theme, và tổng số lượt tải plugin Obsidian đã vượt 120 triệu
  • Mục tiêu là giúp bất kỳ ai cũng có thể tạo, phát hành, khám phá và sử dụng plugin và theme dễ dàng hơn và an toàn hơn
  • Đợt ra mắt này là khởi đầu của một kế hoạch lớn hơn, trong đó cùng lúc giới thiệu website Community, bảng điều khiển nhà phát triển, đánh giá tự động, an toàn plugin và các công cụ cho nhóm

Website Community và bảng điều khiển nhà phát triển

  • Website Community mới cung cấp duyệt, tìm kiếm, lọc và sắp xếp để khám phá plugin và theme
  • Có thể tìm plugin qua hàng chục danh mục như Integrations, Bases, Chartsnhiều danh mục khác
  • Dự án có thể được sắp xếp theo tên, số lượt tải, mức độ phổ biến, ngày phát hành và ngày cập nhật
  • Mỗi trang chi tiết dự án bao gồm ảnh chụp màn hình, thông tin chi tiết và bảng điểm an toàn
  • Plugin trả phí và các tích hợp chính thức sẽ hiển thị nhãn mới
  • Tác giả có thể thêm tùy chọn tài trợ, liên kết website và liên kết mạng xã hội vào trang hồ sơ
  • Website Obsidian Community cung cấp bảng điều khiển nhà phát triển mới để tác giả gửi, quản lý và theo dõi trạng thái dự án
  • Tất cả plugin, theme và bài gửi đang chờ xử lý trước đây được thêm qua GitHub sẽ tự động được chuyển sang website mới
  • Để nhận quyền sở hữu các dự án hiện có, cần đăng nhập vào website Community và kết nối tài khoản GitHub
  • Sau khi kết nối tài khoản GitHub, có thể quản lý dự án hiện có, gửi dự án mới và chỉnh sửa trang hồ sơ

Đánh giá tự động và an toàn

  • Đánh giá tự động được áp dụng cho tất cả dự án cộng đồng
  • Hệ thống đánh giá tự động mới quét mọi phiên bản, không chỉ lần gửi đầu tiên, theo các tiêu chuẩn bảo mật và chất lượng mã
  • Trước đây, một nhóm nhỏ sẽ xem xét thủ công các bài gửi ban đầu để xác minh việc tuân thủ Developer Policies, nhưng khi Obsidian trở nên phổ biến hơn, việc theo kịp tốc độ bài gửi trở nên khó khăn và các phiên bản sau đó không còn được đánh giá
  • Khi các coding agent đẩy nhanh việc tạo plugin, hàng chờ đánh giá càng dài hơn, còn các công cụ như Obsidian CLI khiến việc tạo plugin trở nên dễ dàng hơn
  • Khi plugin hoặc theme được gửi, hệ thống đánh giá tự động sẽ kiểm tra việc tuân thủ chính sách nhà phát triển, việc tuân theo các thông lệ tốt nhất của mã nguồn và sự vắng mặt của các lỗ hổng đã biết
  • Các bài kiểm tra tự động có thể được cải thiện liên tục, tạo nền tảng để nâng cao chất lượng và độ an toàn của hệ sinh thái Obsidian một cách toàn diện hơn
  • Đánh giá thủ công vẫn sẽ tiếp tục. Nhờ hệ thống mới, nguồn lực có thể được tập trung vào những plugin cần xem xét sâu hơn, như plugin phổ biến, plugin được đề xuất hoặc các vấn đề do cộng đồng gắn cờ
  • Các plugin và theme hiện có đã được đánh giá lại bằng hệ thống mới, và đã phát hiện những plugin và theme cũ không đáp ứng hướng dẫn mới nhất
  • Các dự án hiện có không vượt qua tiêu chuẩn mới nhất sẽ được cấp miễn trừ tạm thời, nhưng mọi plugin và theme không vượt qua quy trình đánh giá mới cuối cùng sẽ dần bị loại khỏi thư mục chính thức
  • Trong vài ngày gần đây, hệ thống mới đã xử lý hơn 2.300 bài gửi đang chờ xử lý, và các nhà phát triển đang chờ đánh giá plugin có thể đăng nhập vào website Community để kiểm tra trạng thái hiện tại
  • Quét tự động

    • Mọi phiên bản đều tự động được kiểm tra chất lượng mã và lỗ hổng bảo mật
    • Cũng bao gồm quét mã độc để phát hiện các bổ sung có khả năng độc hại trong plugin
    • Nhà phát triển có thể xem các đề xuất chi tiết, cảnh báo và cờ thất bại cho từng dự án trong bảng điều khiển nhà phát triển
  • Bảng điểm

    • Người dùng và nhà phát triển có thể kiểm tra trạng thái kiểm tra tự động trong bảng điểm của mọi dự án
    • Bảng điểm sẽ tiếp tục được cải thiện, tích hợp thông tin công khai, nhãn quyền riêng tư, chứng thực artifact, kết quả đánh giá thủ công và việc áp dụng các tính năng của ứng dụng
  • Công bố phạm vi truy cập

    • Trong vài tháng tới, mức độ minh bạch về plugin và tác giả sẽ còn tăng lên
    • Plugin sẽ phải khai báo chúng truy cập vào những gì như mạng, hệ thống tệp, clipboard và các tính năng khác
    • Người dùng sẽ có thể xem các thông tin công bố này trước khi cài đặt plugin
  • Tác giả đã xác minh

    • Một nhãn sẽ được thêm cho các nhà phát triển đáng tin cậy đã vượt qua các bước xác minh bổ sung và duy trì trạng thái tốt
    • Người dùng có thể báo cáo trực tiếp mọi vấn đề bảo mật cho đội ngũ Obsidian bất cứ lúc nào

Thay đổi ở cấp độ nhóm và ứng dụng

  • Các nhóm sử dụng Obsidian đã có thể triển khai kiểm soát an toàn cho người dùng
  • Trong vài tháng tới, các nhóm sẽ có thể quản lý dễ dàng hơn những plugin cộng đồng được phép dùng và phân phối plugin riêng tư cho thành viên nhóm
  • Các nhóm phát hành plugin Obsidian chính thức có thể đăng ký huy hiệu Official trong thư mục Community
  • Nếu plugin đủ điều kiện, có thể liên hệ
  • Cùng với việc cải thiện thư mục Community và hệ thống đánh giá tự động, ứng dụng Obsidian và API cũng sẽ có những thay đổi để tăng khả năng khám phá và độ an toàn
  • Hệ sinh thái cộng đồng là một trong những yếu tố thú vị và mạnh mẽ của Obsidian, và định hướng là cung cấp nền tảng cần thiết để nó tiếp tục phát triển
  • Sẽ tiếp nhận phản hồi tại Obsidian Community

Những thay đổi chính dành cho người dùng và nhà phát triển

  • Ảnh hưởng tới người dùng

    • Có thể khám phá plugin và theme trên website Community mới
    • Thời gian đánh giá được rút ngắn đáng kể, nên có thể sẽ ít cần cài thủ công plugin truy cập sớm hơn
  • Gửi plugin hoặc theme mới

    • Đăng nhập vào website Community để truy cập bảng điều khiển nhà phát triển mới
    • Kết nối tài khoản GitHub, chọn repository cần gửi rồi hoàn tất các bước trong bảng điều khiển
    • Việc đánh giá dự án bắt đầu ngay sau khi gửi, và thông thường có thể xem kết quả trong vài phút
    • Nếu dự án vượt qua, nó sẽ có thể được tìm kiếm và tải về trong ứng dụng trong vòng 24 giờ
  • Nhận quyền sở hữu plugin và theme hiện có

    • Đăng nhập vào website Community để truy cập bảng điều khiển nhà phát triển mới
    • Khi kết nối tài khoản GitHub, có thể nhận quyền sở hữu plugin và cập nhật tiêu đề, mô tả và ảnh chụp màn hình
  • Có thể cập nhật mà không cần bảng điều khiển nhà phát triển hay không

    • Vẫn có thể tiếp tục phát hành phiên bản mới qua GitHub
    • Các bản phát hành mới sẽ được đánh giá tự động, và nếu không vượt qua đánh giá thì cần xem chi tiết trong bảng điều khiển nhà phát triển
  • Plugin và theme không vượt qua đánh giá tự động

    • Plugin và theme mới phải vượt qua đánh giá tự động trước khi được thêm vào thư mục và có thể tìm kiếm
    • Mỗi phiên bản mới đều được quét, và nếu không vượt qua đánh giá thì sẽ bị gỡ khỏi kết quả tìm kiếm trong vòng 24 giờ
    • Các plugin và theme đã được phê duyệt trước đây vẫn có thể tiếp tục được sử dụng trong thời gian tới ngay cả khi không vượt qua đánh giá tự động
    • Cuối cùng các plugin cũ cũng sẽ được yêu cầu đáp ứng tiêu chuẩn mới, nhưng hiện chưa có thời hạn và quá trình chuyển đổi sẽ được quyết định cùng với các nhà phát triển trong cộng đồng
  • Chạy đánh giá tự động mà không cần gửi bản phát hành

    • Có thể dùng eslint plugin để kiểm tra plugin Obsidian cục bộ theo hướng dẫn chính thức dành cho nhà phát triển
    • Có thể chạy quét xem trước trên bất kỳ branch, tag hoặc commit nào trong bảng điều khiển nhà phát triển
  • Đồng bảo trì và repository của tổ chức

    • Hiện tại trong Obsidian Community, chỉ chủ sở hữu repository GitHub mới có thể chỉnh sửa dự án tương ứng
    • Repository của tổ chức có thể được nhận quyền sở hữu và chỉnh sửa nếu tư cách thành viên trong tổ chức được để công khai
    • Hỗ trợ nhiều cộng tác viên sẽ được bổ sung trong tương lai gần
  • Plugin mã nguồn riêng tư

    • Hiện tại chưa nhận plugin mã nguồn riêng tư mới vào thư mục
    • Các plugin mã nguồn riêng tư hiện có vẫn có thể tiếp tục được sử dụng cho tới khi có thông báo thêm
    • Trong tương lai sẽ xem xét cách điều chỉnh hệ thống đánh giá mới để phù hợp với plugin mã nguồn riêng tư
  • Yêu cầu về tài khoản và GitHub

    • Cần có tài khoản Obsidian để truy cập bảng điều khiển nhà phát triển mới
    • Hiện tại bắt buộc phải dùng GitHub, và trong tương lai sẽ xem xét bổ sung các nền tảng lưu trữ phần mềm khác
    • Đăng nhập GitHub sẽ chia sẻ tên người dùng và danh sách repository công khai, và thông tin này chỉ được dùng để xác minh quyền sở hữu repository
  • Nhãn Paid và Optional payments

    • Obsidian Community không phải là cửa hàng và không cung cấp giải pháp thanh toán tích hợp
    • Nhà phát triển vẫn có thể tiếp tục sử dụng các cơ chế thanh toán bên ngoài như license key, API key hoặc cổng đăng nhập
    • Nhà phát triển phải gắn nhãn chính xác plugin vào một trong ba danh mục
    • Free là plugin không có bất kỳ hình thức thanh toán nào và cũng hoàn toàn không liên kết với dịch vụ trả phí, nhưng vẫn cho phép liên kết quyên góp và tài trợ
    • Optional payments là trường hợp người dùng có thể chọn trả tiền để mở thêm tính năng, hoặc plugin kết nối với dịch vụ trả phí
    • Nếu plugin kết nối với dịch vụ hoặc API trả phí thì phải được gắn nhãn Optional payments, ngay cả khi dịch vụ đó có gói miễn phí
    • Paid là trường hợp người dùng bắt buộc phải trả tiền để dùng các tính năng chính, ngay cả khi có cung cấp bản dùng thử miễn phí
    • Các nhãn này không biểu thị việc nhà phát triển có thu tiền hay không, mà cho biết người dùng nên kỳ vọng loại thanh toán nào
  • Lỗi bảng điểm và liên hệ

    • Bảng điểm là tính năng mới nên có thể có lỗi, và có thể xảy ra false positive hoặc false negative
    • Nếu phát hiện nội dung không chính xác, cần liên hệ qua kênh #plugin-dev trên máy chủ Discord của Obsidian
    • Nếu có câu hỏi hoặc lo ngại, có thể liên hệ qua kênh #plugin-dev trên máy chủ Discord của Obsidian

1 bình luận

 
Ý kiến trên Hacker News
  • Tôi là CEO của Obsidian. Chúng tôi đã làm việc gần 1 năm để ra mắt trang Community và hệ thống đánh giá mới, và dù rất háo hức với phiên bản đầu tiên này, vẫn còn nhiều điều cần cải thiện về sau
    Tôi đã cố gắng viết đầy đủ nhất có thể về bài blog, FAQ và các bước tiếp theo trong lộ trình, nhưng chắc vẫn có chỗ sót nên mọi người cứ hỏi
    Với một đội chỉ có 7 người mà phải phục vụ hàng nghìn nhà phát triển plugin và hàng triệu người dùng, việc cân bằng các ưu tiên xung đột lẫn nhau thực sự rất khó
    Hệ thống mới phải dễ áp dụng, giữ tính tương thích ngược, cải thiện đáng kể so với cách cũ mà không phá vỡ hoàn toàn quy trình làm việc hiện có, đồng thời có thể nâng dần mức độ an toàn và khả năng khám phá plugin
    Mong mọi người xem đây là công việc vẫn đang tiếp diễn; tôi sẽ lắng nghe ý tưởng và phàn nàn rồi tiếp tục lặp lại để cải thiện
    • Tôi từng gắn plugin vào nhiều dự án và đã từng nghĩ đến việc đưa vào một cấu trúc để dự án có thể đánh dấu một phiên bản cụ thể là đã được kiểm tra/xác minh và đáng tin cậy
      Một trong những lý do khiến tôi chần chừ, ngoài khoản thời gian đầu tư khổng lồ, là nỗi lo rằng nếu sau khi mọi người bắt đầu dựa vào quy trình review đó mà mã độc bị làm rối vẫn lọt qua, thì trách nhiệm cho một cuộc tấn công về sau sẽ đổ lên dự án
      Tôi tò mò đội ngũ nhìn nhận chuyện này như thế nào
      Với tôi, nó giống khác biệt giữa cách Debian/Ubuntu kiểm tra nghiêm ngặt mọi thứ trong kho phần mềm và cách PyPI/npm không đưa ra bất kỳ bảo đảm review nào
    • Tôi thích việc khi bấm vào thông tin công khai kiểu “plugin có thể gửi yêu cầu đến 1 miền bên ngoài”, ta sẽ thấy miền thực tế là github.com
      Có thể xem ví dụ tại https://community.obsidian.md/plugins/zotlit
    • Tôi muốn biết liệu hệ thống quét tự động có đánh dấu các thay đổi như mở rộng phạm vi quyền hạn hoặc thay đổi truy cập miền mạng để đưa vào diện review nội bộ/bởi con người hay không
      Ví dụ, nếu một plugin tóm tắt AI ban đầu truy cập url="api.openai.com"+path bằng khóa OpenAI do người dùng cung cấp thì đó sẽ là dạng rất phổ biến, và tôi khá mong đợi những thứ cộng đồng sẽ làm từ đây
      Nhưng nếu sau một bản cập nhật, người dùng có thể chọn endpoint tùy ý cho API tương thích OpenAI, thì làm sao có thể bảo đảm đó không phải là một bản cập nhật âm thầm cài sẵn endpoint độc hại để tạo kênh rò rỉ dữ liệu qua mạng và lợi dụng chính sự linh hoạt đó để lách việc quét?
    • Đội Obsidian đã làm rất tốt. Tôi định sẽ tiếp tục là người dùng Obsidian Sync và mong có thể dùng plugin cộng đồng với cảm giác yên tâm hơn
    • Cuối cùng thì cũng ra mắt
      Khi tôi thử dùng Obsidian, tôi đã xóa ngay sau khi biết tính năng bảng dữ liệu không phải tích hợp sẵn mà là một plugin có toàn quyền truy cập
      Mà đội chỉ có 7 người thì thật bất ngờ
  • Nói cho những ai chưa rõ, từ trước tới nay việc gửi plugin mới gần như bất khả thi vì khâu review thủ công. Việc AI khiến viết plugin trở nên dễ và thú vị hơn cũng có tác động
    Sự bất mãn trong cộng đồng nhà phát triển ngày một tăng, còn đội ngũ thì cũng đang kiệt sức vì quá tải
    Vì vậy xin chúc mừng đội ngũ. Đây gần như là đã gỡ được một nút thắt mở rộng quy mô rất lớn, và việc theo dõi cách họ xây dựng rồi mở rộng nó khá là ấn tượng
    • Có plugin nào hay mà đáng giới thiệu không? Tôi mới chuyển từ OneNote sang, cài cả đồng bộ rồi, giờ mới bắt đầu thấy quen hơn
  • Tôi không dùng Obsidian, nhưng khi đọc tiêu đề thì ban đầu cứ tưởng đây là chuyện họ muốn giới hạn vào một số ít plugin được công ty phê duyệt
    Khi công ty phần mềm dùng tiêu đề kiểu “tương lai của XYZ”, tôi thường mặc định đó là dấu hiệu họ sắp siết XYZ rất mạnh hoặc chuẩn bị khai tử nó
    • Tôi cứ chờ xem đến đoạn nào thì enshittification lộ diện
  • Tôi không chắc chỉ quét tự động thôi có đủ để xác định ổn định rằng plugin là độc hại hay không
    Theo tôi, cách tốt nhất, thậm chí có lẽ là duy nhất, để giải quyết vấn đề bảo mật plugin là sandbox với API và hệ thống quyền rõ ràng
    • Ngoài ý “cần sandbox với API và hệ thống quyền rõ ràng”, tôi còn muốn nói thêm rằng đặc biệt phải ngăn chúng chạm vào dữ liệu cá nhân của tôi. Có điều cốt lõi của plugin Obsidian lại là đọc và ghi tài liệu
      Nhưng nếu nó không thể giao tiếp với Internet thì có lẽ cũng không phải vấn đề quá lớn
      Xem thêm thì với kiến trúc JavaScript và Electron, plugin Obsidian có vẻ là những khối JavaScript chạy ở phạm vi toàn cục, có thể đọc/ghi toàn bộ hệ thống tệp trong phạm vi quyền của người dùng và cũng có thể tạo yêu cầu HTTP; có ai xác nhận giúp tôi điều này không?
    • Nó không ngăn được mã độc do chính plugin tự mang theo, nhưng khá hữu ích để đánh giá xem dependency có được cập nhật mới hay không, có chứa CVE đã biết hay không. Khá giống cách Trivy làm hoặc cách Artifacthub nhấn mạnh
      Tuy vậy tôi vẫn tò mò trong hệ sinh thái này nó sẽ hoạt động tốt đến đâu. Theo kinh nghiệm của tôi, quét trên diện rộng rất dễ tạo ra false positive, tức là có CVE nhưng thực tế lại không áp dụng cho ngữ cảnh sử dụng
      Vì thế cần kiến thức để diễn giải đúng kết quả quét, và điều đó có thể trở thành gánh nặng khá lớn cho maintainer
    • Cứ đọc bài blog là rõ. Ngoài quét tự động và các tính năng kiểm soát cho đội ngũ, họ còn có kế hoạch cho hệ thống quyền
      Chỉ quyền thôi thì không ngăn được một số hành vi độc hại nhất định, nên tất cả đều cần thiết
      Chỉ cần xem vài bảng điểm trên trang Community là sẽ nhanh chóng thấy có những cảnh báo mà hệ thống quyền hay sandboxing không thể xử lý
      Bài blog có chi tiết về cách phát hành, và vì cần thay đổi API plugin nên việc này sẽ được triển khai theo từng giai đoạn
    • Dĩ nhiên nó sẽ không tương thích với plugin cũ, nên có lẽ họ sẽ tách plugin legacy và plugin mới, tăng đáng kể độ ma sát khi cài plugin legacy rồi một lúc nào đó loại bỏ dần
    • Podman/Linux cũng có API và hệ thống quyền mà vẫn xảy ra Copy Fail: https://garrido.io/notes/podman-rootless-containers-copy-fai...
      Bảo mật và phân quyền vốn dĩ rất khó, và khi thiết kế nền tảng, đến một lúc nào đó bạn buộc phải tự hỏi liệu có đáng chấp nhận rủi ro đó để đổi lấy tính linh hoạt hay không
      Lập kế hoạch cho một hệ thống an toàn tuyệt đối là chuyện vô vọng
  • Rất thú vị. Đây là bằng chứng ngoài đời thực cho thấy review plugin tự động là thứ khả thi ngay cả với một đội nhỏ
    Có lẽ một ngày nào đó tôi cũng phải học cách triển khai hệ thống tương tự cho dự án của mình
    • Có thể cứ nên chờ xem mọi việc diễn ra thế nào đã. Đây là một trò chơi mèo vờn chuột, và lũ chuột ở đây còn thông minh hơn nhiều
      Rò rỉ dữ liệu xảy ra rất âm thầm
  • Ở góc nhìn người dùng, tôi không biết phải xem bảng điểm như thế nào và vì sao phải xem nó
    Nếu trước mặt tôi là cả đống lỗi và cảnh báo từ linter thì tôi phải làm gì?
    Tôi muốn hiểu luồng trải nghiệm lý tưởng phía người dùng. Bảng điểm có vẻ hợp với phía nhà phát triển hơn
  • Tôi rất mừng khi thấy kiểu cập nhật này
    Quản lý dạng đóng góp cộng đồng như thế này vốn khó, nên đây có vẻ là một bước tiến lớn
  • Miễn là tính sẵn có của plugin, đặc biệt trong trường hợp của tôi là selfhosted-livesync, không bị giảm đi thì mọi thứ có vẻ ổn
    Tôi cũng tò mò AI có thể đóng vai trò gì trong kiểu review tự động này. Có vẻ là một ca sử dụng khá hứa hẹn
  • Rất tuyệt. Chỉ tiếc là trang web chỉ có dark mode, khiến việc đọc còn khó hơn với người bị loạn thị
    • Chế độ đọc của Firefox chỉ cần một cú nhấp là sẽ hiện chữ tối trên nền trắng. Có lẽ các trình duyệt khác cũng có tính năng tương tự
    • Vì Obsidian là màu đen nên vậy thôi. Dù sao họ cũng có kế hoạch thêm light mode trong tương lai gần
    • Ý là một dạng loạn thị rất hiếm à? Tôi bị loạn thị hơn 30 năm rồi mà vẫn đọc trang này hoàn toàn bình thường, không cần cố gắng gì cả
  • Tôi muốn việc cài plugin cục bộ dễ hơn nữa. Thật sự nó chỉ nên là chuyện copy-paste vào thư mục là xong
    Nếu Obsidian không phải phần mềm độc quyền thì tôi đã tự sửa rồi
    Đã đến lúc ai đó làm một bản clone tương thích
    • Thực ra nó đã hoạt động đúng như vậy rồi. Plugin chỉ đơn giản là một thư mục có thể copy vào thư mục .obsidian/plugins trong vault
    • Nghĩa đen là chỉ cần dán vào thư mục .obsidian/plugins/ thôi