Jack Cloud
Deploy web services to the cloud with Jack. Use when: you need to create APIs, websites, or backends and deploy them live. Teaches: project creation, deploym...
技能说明
name: jack-cloud description: > Deploy web services to the cloud with Jack. Use when: you need to create APIs, websites, or backends and deploy them live. Teaches: project creation, deployment, databases, logs, and all Jack Cloud services. homepage: https://getjack.org metadata: {"clawdbot":{"emoji":"🃏","homepage":"https://github.com/getjack-org/skills","requires":{"bins":["node","npm"],"env":[]},"install":[{"id":"npm","kind":"npm","package":"@getjack/jack","bins":["jack"],"label":"Install Jack CLI (npm)"}]}} allowed-tools: Read, Edit, Grep, Glob
Jack Cloud — Deploy Anything from the Terminal
Jack deploys Cloudflare Workers projects in one command. Create an API, add a database, ship it live — all from the terminal.
Install
npm i -g @getjack/jack
jack login
External Endpoints
| Endpoint | Data Sent | Purpose |
|---|---|---|
auth.getjack.org | OAuth tokens (GitHub/Google via WorkOS) | Authentication |
control.getjack.org | Project metadata, source code during deploy | Project management and deployments |
Security & Privacy
jack loginauthenticates via browser OAuth (GitHub/Google via WorkOS). Auth token stored at~/.config/jack/auth.json- No environment variables required — authentication is interactive
- Source code is uploaded during
jack shipand deployed to Cloudflare Workers via Jack Cloud - Project metadata (name, slug, deploy history) is stored on Jack Cloud
- No telemetry is sent without user consent (
jack telemetryto configure) - npm package: @getjack/jack — open source CLI
MCP Tools
If your agent has mcp__jack__* tools available, prefer those over CLI commands. They return structured JSON and are tracked automatically. The CLI equivalents are noted below for agents without MCP.
Create & Deploy a Project
jack new my-api
This creates a project from a template, deploys it, and prints the live URL.
Pick a template when prompted (or pass --template):
| Template | What you get |
|---|---|
api | Hono API with example routes |
hello | Minimal hello-world starter |
miniapp | Full-stack app with frontend |
ai-chat | AI chat app with streaming |
nextjs | Next.js full-stack app |
Run jack new to see all available templates.
MCP: mcp__jack__create_project with name and template params.
After creation, your project is live at https://<slug>.runjack.xyz.
Deploy Changes
After editing code, push changes live:
jack ship
For machine-readable output (useful in scripts and agents):
jack ship --json
Builds the project and deploys to production. Takes a few seconds.
MCP: mcp__jack__deploy_project
Check Status
jack info
Shows: live URL, last deploy time, attached services (databases, storage, etc.).
MCP: mcp__jack__get_project_status
Database (D1)
jack services db create # Add D1 database (auto-configures wrangler.jsonc)
jack db execute "SELECT * FROM users" # Query data
jack db execute --json "SELECT ..." # JSON output
jack db execute --write "INSERT INTO users (name, email) VALUES ('Alice', 'alice@example.com')"
jack db execute --write "CREATE TABLE posts (id INTEGER PRIMARY KEY, title TEXT, body TEXT, created_at TEXT DEFAULT CURRENT_TIMESTAMP)"
jack db execute "SELECT name FROM sqlite_master WHERE type='table'" # View schema
jack db execute "PRAGMA table_info(users)"
After schema changes, redeploy with jack ship.
MCP: mcp__jack__create_database, mcp__jack__execute_sql (set allow_write: true for writes; DROP/TRUNCATE blocked by default).
Logs
Stream production logs to debug issues:
jack logs
Shows real-time request/response logs. Press Ctrl+C to stop.
MCP: mcp__jack__tail_logs with duration_ms and max_events params for a bounded sample.
Common Workflow: API with Database
# 1. Create project
jack new my-api --template api
# 2. Add database
jack services db create
# 3. Create tables
jack db execute --write "CREATE TABLE items (id INTEGER PRIMARY KEY, name TEXT, created_at TEXT DEFAULT CURRENT_TIMESTAMP)"
# 4. Edit src/index.ts — add routes that query the DB
# Access DB via: c.env.DB (the D1 binding)
# 5. Deploy
jack ship
# 6. Verify
curl https://my-api.runjack.xyz/api/items
Secrets
Store API keys and sensitive values:
# Set a secret (prompts for value)
jack secrets set STRIPE_SECRET_KEY
# Set multiple
jack secrets set API_KEY WEBHOOK_SECRET
# List secrets (names only, values hidden)
jack secrets list
Secrets are available in your worker as c.env.SECRET_NAME. Redeploy after adding secrets:
jack ship
Project Structure
my-project/
├── src/
│ └── index.ts # Worker entry point
├── wrangler.jsonc # Config: bindings, routes, compatibility
├── package.json
└── .jack/
└── project.json # Links to Jack Cloud
wrangler.jsoncdefines D1 bindings, environment vars, compatibility flags.jack/project.jsonlinks the local directory to your Jack Cloud projectsrc/index.tsis the main entry point — typically a Hono app
Advanced Services
Storage (R2)
jack services storage create # Create R2 bucket
jack services storage list # List buckets
jack services storage info # Bucket details
Access in worker via c.env.BUCKET binding. Use for file uploads, images, assets.
MCP: mcp__jack__create_storage_bucket, mcp__jack__list_storage_buckets, mcp__jack__get_storage_info
Vector Search (Vectorize)
jack services vectorize create # Create index (768 dims, cosine)
jack services vectorize create --dimensions 1536 # Custom dimensions
jack services vectorize list
jack services vectorize info
Access via c.env.VECTORIZE_INDEX binding. Use for semantic search, RAG, embeddings.
MCP: mcp__jack__create_vectorize_index, mcp__jack__list_vectorize_indexes, mcp__jack__get_vectorize_info
Cron Scheduling
jack services cron create "*/15 * * * *" # Every 15 minutes
jack services cron create "0 * * * *" # Every hour
jack services cron list
jack services cron test "0 9 * * MON" # Validate + show next runs
Your worker needs a scheduled() handler or POST /__scheduled route.
MCP: mcp__jack__create_cron, mcp__jack__list_crons, mcp__jack__test_cron
Custom Domains
jack domain connect app.example.com # Reserve domain
jack domain assign app.example.com # Assign to current project
jack domain unassign app.example.com # Unassign
jack domain disconnect app.example.com # Fully remove
Follow the DNS instructions printed after assign. Typically add a CNAME record.
List Projects
jack ls # List all your projects
jack info my-api # Details for a specific project
jack open my-api # Open in browser
MCP: mcp__jack__list_projects with optional filter (all, local, deployed, cloud).
Troubleshooting
| Problem | Fix |
|---|---|
| "Not authenticated" | Run jack login |
| "No wrangler config found" | Run from a jack project directory |
| "Database not found" | Run jack services db create |
| Deploy fails | Check jack logs for errors, fix code, jack ship again |
| Need to start over | jack new creates a fresh project |
Reference
- Services deep dive — detailed patterns for each service
- Jack documentation
如何使用「Jack Cloud」?
- 打开小龙虾AI(Web 或 iOS App)
- 点击上方「立即使用」按钮,或在对话框中输入任务描述
- 小龙虾AI 会自动匹配并调用「Jack Cloud」技能完成任务
- 结果即时呈现,支持继续对话优化