rwxweb

  • 2024-10-28 (modified: 2025-08-19)

읽고 쓰고 실행할 수 있는 웹.

메모

공용 API:

  • 파일 I/O, HTTP, 이미지 생성, 텍스트 생성
  • 이벤트 구독, 이벤트 트리거링
  • 유틸리티 APIs

모든 것은 파일. 파일 타입은?

  • State machine (+Agent)
  • Key-value DB
  • Key-value DB per user
  • Other MIME-typed files

기타:

  • 각 에이전트는 공용 API를 호출하여 시스템 및 다른 에이전트와 인터랙션
  • Sandboxed code execution:
  • 각 에이전트에는 할당된 자원 예산이 있음(예: 소유 가능한 파일 수, 용량, 특정 API 호출 수 등)
  • 각 에이전트에는 권한 제한이 있음. 스스로를 정의하는 파일을 수정할 권한이 있으면 스스로 수정할 수 있음 (단 망가질 수도 있음)
  • 사용자도 에이전트와 동일
  • Transient state (for game?)
  • Versioning
  • 다른 서버와 federation 가능
  • Well-known file? Base URL + .rwx. Example: abc.com/.rwx

MVP

Cloudflare + Agent

  • SQLite (Durable Object SQL): path, owner, group, permission, resource, mime-type, cdate, mdate, http headers?, content (binary)

End-points:

  • GET /path/file?_ver=1
  • GET /path/file.meta
  • GET /path/file?_edit
  • GET /path/file?_raw
  • GET /path/file.meta?_edit
  • GET /path/file.meta?_raw
  • PUT /path/file
  • PUT /path/file.meta
  • DELETE /path/file
  • POST /path/file?_verb=blah (DB 등 특수한 파일인 경우)
  • GET /path/file?_verb=blah (DB 등 특수한 파일인 경우)

Type:

  • Text
  • State-machine

API:

  • TDB

유사한 개념