feat: add landing page + builtins Worker + BETA_TEST guide + README

- landing/: Next.js 15 app for arcrun.dev (dashboard, integrations,
  API docs, login). Deploys via Cloudflare Pages — CI scan skips
  this via pages_build_output_dir marker.
- builtins/: minimal Hono Worker at arcrun-builtins (/init for
  one-shot component registry seeding). initComponents logic is
  flagged stale in src/index.ts for future rewrite.
- BETA_TEST.md: pre-launch validation playbook.
- README.md: updated to match current arcrun.dev / acr CLI flow.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-04-20 17:52:41 +08:00
parent 13b01328c1
commit 4516cdee4b
34 changed files with 5203 additions and 23 deletions
+45 -23
View File
@@ -56,47 +56,54 @@ acr init --local
```yaml
name: hello
flow:
- "start >> 完成後 >> transform"
- "transform >> 完成後 >> output"
- "input >> 完成後 >> transform"
config:
transform:
input: "{{start.text}}"
component: string_ops
operation: upper
```
執行:
```bash
acr run hello --input text="Hello, world"
acr run hello --input input="Hello, world"
```
結果:`HELLO WORLD`
不需要帳號、不需要部署、不需要 API Key。直接感受 workflow 跑起來是什麼感覺。
---
### 玩法二:把 Workflow 推到 Cloudflare 雲端執行
workflow 放到 Cloudflare KV,任何地方都能觸發(Webhook、cron、前端按鈕)。
workflow 部署到 arcrun.dev,任何地方都能觸發(Webhook、cron、前端按鈕)。
**你需要的只是一個免費的 Cloudflare 帳號和一個 KV namespace。**
**你需要一個 email。** 不需要 Cloudflare 帳號、不需要 API Token。
```bash
acr init
```
互動式問答引導你完成設定:Cloudflare Account ID、KV Namespace ID、API Token、Email取得 API Key 後,credential 和 workflow 都只存在你自己的 CF KVarcrun.dev 不儲存任何東西
互動式設定,輸入 email 自動取得 API Keyworkflow 和 credential 以 API Key 隔離,多租戶安全
設定 credential
上傳 credential(加密後才送出,arcrun.dev 只存密文)
```yaml
# credentials.yaml — 不要提交至 git(已自動加入 .gitignore
gmail_token: "ya29.your-google-oauth-token"
telegram_bot_token: "1234567890:ABCxxx"
```bash
# 查看某服務需要哪些 credential(以 Notion 為例)
acr auth-recipe scaffold notion
# 建立 credentials.yaml,填入取得的 token
# 查看所有支援的服務
acr auth-recipe list
```
```bash
acr creds push credentials.yaml # AES-GCM 加密後存入你的 KV
acr creds push credentials.yaml # AES-GCM 加密後上傳,token 不離開你的機器
```
加密金鑰在 `acr init` 時已自動取得並存入 config,不需要手動設定。
部署並執行:
```bash
@@ -196,6 +203,17 @@ acr parts scaffold http_request
| `line_notify` | LINE Notify 發訊息 | `line_token` |
| `http_request` | 任意 HTTP 請求 | — |
**第三方服務整合(Auth Recipe20 個)**
除了以上核心零件,arcrun 平台預建了 20 個常用服務的認證 recipe,使用方式與一般零件相同,只需上傳對應 credential
```bash
acr auth-recipe list # 列出所有支援服務
acr auth-recipe scaffold notion # 取得 credentials.yaml 範本 + workflow 範例
```
支援:Notion、Slack、GitHub、OpenAI、Anthropic、Airtable、Discord、Stripe、Twilio、SendGrid、HubSpot、Linear、Shopify、Resend、Supabase、Typeform、Jira、Google Sheets SA、Gmail SA、Google Drive SA
**控制流**
| 零件 | 說明 |
@@ -268,16 +286,20 @@ acr parts publish ./my-component/
## CLI 指令
```
acr init 互動式初始化(local / cloud / self-hosted
acr creds push [file] 加密並上傳 credentials
acr push <workflow.yaml> 部署 workflow
acr run <name> [--input k=v] 執行 workflow
acr validate <workflow.yaml> 執行前驗證(零件存在、credential 已上傳)
acr parts 列出所有零件(含執行統計)
acr parts scaffold <comp> 取得零件的 workflow config 範本
acr parts publish <dir> 提交零件至公眾庫
acr list 列出已部署的 workflow
acr logs <name> 查看執行記錄
acr init 互動式初始化(local / cloud / self-hosted
acr creds push [file] 加密並上傳 credentials
acr push <workflow.yaml> 部署 workflow
acr run <name> [--input k=v] 執行 workflow
acr validate <workflow.yaml> 執行前驗證(零件存在、credential 已上傳)
acr parts 列出所有內建零件
acr parts scaffold <comp> 取得零件的 workflow config 範本
acr parts publish <dir> 提交零件至公眾庫
acr auth-recipe list 列出所有第三方服務整合(Notion、Slack 等)
acr auth-recipe info <service> 查看服務需要哪些 credential
acr auth-recipe scaffold <service> 取得 credentials.yaml 範本 + workflow 範例
acr recipe push <file> 上傳自訂 API recipe
acr list 列出已部署的 workflow
acr logs <name> 查看執行記錄
```
---