ObjectOS

快速開始

從零到一個執行中的 ObjectOS —— 安裝一個 CLI,執行一條命令,你就有了一個應用。

根據你正在做的事情,有兩種啟動方式。

你是……從這裡開始
第一次試用 ObjectOS,或在生產環境執行它路徑 A —— os start
用程式碼構建或定製應用路徑 B —— os init

兩者都會得到一個執行中的伺服器,包含 Console + Account。區別在於是否生成原始碼檔案。

先決條件

  • Node.js 20 或更新 —— node --version
  • 一個終端

僅此而已。無需 Docker。無需資料庫。無需註冊賬號。


路徑 A —— os start(運維 / 首次評估者)

全域性安裝 CLI,然後執行:

npm i -g @objectstack/cli
os start

你會看到:

◆ ObjectStack
────────────────────────────────────────
🏠 Home: ~/.objectstack
📦 Artifact: none (empty kernel — install apps via Console marketplace)
🗄️ Database: file:~/.objectstack/data/objectstack.db

  ✓ Server is ready

  ➜  API:       http://localhost:3000/
  ➜  Console:    http://localhost:3000/_console/
  ➜  Account:   http://localhost:3000/_account/
  ➜  Console:   http://localhost:3000/_console/

  Plugins: 23 loaded

就這樣。你已經在執行 ObjectOS 了。

都在執行什麼

URL是什麼
http://localhost:3000/_account/register建立你的第一個賬號
http://localhost:3000/_console/管理 UI —— 以及應用市場
http://localhost:3000/_console/使用者、角色、審計日誌、設定
http://localhost:3000/health存活探針

執行時以空核心啟動 —— 沒有物件,沒有應用 —— 並暴露市場,讓你能在幾秒內安裝現成應用。

用對話構建 —— AI Builder

登入後,開啟 Console 中的 AI 助手(右上角閃光圖示),描述你要的東西:

"我需要追蹤客戶支援工單。每張工單都有主題、描述、優先順序(低/中/高/緊急)、狀態和負責人。再加一個按狀態分組的看板檢視。"

AI 提出一份計劃,你批准,後設資料就立刻生效 —— REST 端點、Console 檢視、審計日誌、許可權閘門。無需編輯檔案,無需重啟。完整詞彙請見 Build → AI Builder

在 IDE 中手寫程式碼? 執行 npx skills add objectstack-ai/objectstack/skills,讓 Claude Code / Cursor / Copilot / Codex 學會根據真實的 Zod schema 編寫 ObjectOS 後設資料。參見 Build → IDE Skills

從市場安裝應用

開啟 **http://localhost:3000/_console/**,登入,選一個應用:

應用你能得到什麼
Todo通用任務與專案追蹤
Contracts合同生命週期 + AI 資訊抽取
Procurement供應商、採購單、三向匹配
ComplianceSOC 2 / ISO 27001 控制項與證據
HelpdeskAI 優先的客戶支援
Content編輯日曆 + 渠道 ROI
HR通訊錄、組織架構、休假

安裝 → 重新整理 → 它就在那裡了,帶著物件、檢視、許可權和種子資料。無需重啟。

常用引數

os start --port 3200                       # 不同端口
os start --database postgres://...         # 外部数据库
os start --auth-secret "$(openssl rand -hex 32)"  # 启用 /api/v1/auth/* 认证
os start --home /var/lib/objectos          # 持久化主目录(生产环境)

完整選項見 Runtime Configuration;生產形態請見 Docker


路徑 B —— os init(開發者)

當你要用 TypeScript 定義自己的資料模型、檢視和流程時使用。

npx @objectstack/cli init my-app -t app --install
cd my-app
pnpm dev

你會看到:

✓ Project initialized!

◆ Compile
  ✓ Build complete (462ms)
  Data: 1 Objects  3 Fields

◆ Development Mode
  ✓ Server is ready

  ➜  API:       http://localhost:3002/
  ➜  Console:    http://localhost:3002/_console/
  ➜  Account:   http://localhost:3002/_account/
  ➜  Console:   http://localhost:3002/_console/

注意 dev 伺服器使用 3002 埠,避免與執行在 3000 的 os start 衝突。

新增你自己的物件

編輯 src/objects/task.ts

// src/objects/task.ts
import { ObjectSchema, Field } from '@objectstack/spec/data';

export const Task = ObjectSchema.create({
  name: 'task',
  label: 'Task',
  fields: {
    subject:   Field.text({ label: 'Subject', required: true, maxLength: 200 }),
    done:      Field.boolean({ label: 'Done', defaultValue: false }),
    due:       Field.date({ label: 'Due' }),
    assignee:  Field.lookup({ label: 'Assignee', reference: 'sys_user' }),
  },
});

儲存。dev 伺服器重新編譯,你立刻就有了:

  • /api/v1/data/task —— 支援過濾/排序/分頁的完整 CRUD
  • Console 中的 "Task" 檢視 —— 列表、表單、詳情,全部生成
  • Console 中的許可權行 —— 按角色授予讀/寫
  • 審計日誌條目 —— 每次建立/更新/刪除都被記錄

無需遷移。無需程式碼生成。無需重啟。

專案佈局

my-app/
├── objectstack.config.ts    # Stack 定义(清单 + 对象)
├── src/
│   └── objects/             # 你的数据模型 —— 在这里加文件
├── dist/
│   └── objectstack.json     # 编译产物(保存时重新生成)
├── package.json
└── tsconfig.json

dist/objectstack.json 就是你部署到生產的產物 —— 把它掛到執行中的 ObjectOS 容器上,它就成為你的應用。

或者從模板開始

生產形態的模板位於 github.com/objectstack-ai/templates

git clone https://github.com/objectstack-ai/templates.git
cd templates/packages/todo
pnpm install
pnpm dev    # http://localhost:4002

每個模板小於 2500 行程式碼,一次能讀完,可獨立執行。


開箱啟用的能力

無論哪條路徑,都自動啟用這 23 個外掛:

Auth、Security(RBAC + RLS + FLS)、Audit、REST API、Console UI、Account UI、AI Service、Queue、Jobs、Cache、Settings、Email、Storage、Marketplace、Metadata、ObjectQL,外加 SQL 驅動。

你無需 import 或接線任何一個 —— 當某處宣告需要時它們就會啟用。

接下來

想要……閱讀
在 Docker 中執行(生產形態)Docker
用 Postgres 替代 SQLiteRuntime Configuration
加入 Google / Okta / Entra 登入Authentication
鎖定誰能做什麼Permissions
把事件傳送到 Slack / Zapier / 你的服務Webhooks
部署到生產Production Readiness

On this page