@ edgespark/ cli
EdgeSpark CLI - 创建和管理您的EdgeSpark项目.
安装
npm install -g @edgespark/cli
使用量
启动新项目
# With specific AI agent (--agent is required)
edgespark init my-project --agent claude # Creates CLAUDE.md
edgespark init my-project --agent gemini # Creates GEMINI.md
edgespark init my-project --agent codex # Creates AGENTS.md
代理选项 : claude, (中文(简体) ), codex, (中文(简体) ), gemini (其他则回到 AGENTS.md(中文(简体) )
从 EdgeSpark 平台拉出
edgespark pull
提取您 EdgeSpark 工程的最新生成的文物 :
- 计划文件输入
src/__generated__/ - 输入 SDK 类型
src/__generated__/edgespark.d.ts财务报告和审定财务报表src/__generated__/server-types.d.ts
导入生成项目中的边界 :
src/defs/**可能从@sdk/server-typessrc/defs/**不得从"edgespark"- 路由和应用程序代码应导入运行时间 SDK 值
"edgespark"
你也可以有选择地拉:
edgespark pull schema
edgespark pull types
管理自定义域
自定义域仅为生产。 不支持显示自定义域 .
# Start domain setup and get the required DNS records
edgespark domain add app.example.com
# Poll verification and activate routing once DNS is in place
edgespark domain verify app.example.com
# Inspect current status, DNS records, and any warnings
edgespark domain status app.example.com
# List all custom domains for the current project
edgespark domain list
# Remove a custom domain and release the claim
edgespark domain remove app.example.com
domain add 财务报告和审定财务报表 domain status 总是返回设置所需的手工 DNS 记录 .
当EdgeSpark可以构建一个被支持的域连接设置 URL时,它作为方便被返回,但人工DNS仍然是真理的来源.
帮助
# General help
edgespark --help
# Command-specific help
edgespark init --help
edgespark pull --help
图标
| 命令 | 说明 |
|---|---|
edgespark init <name> --agent <name> | 启动一个新的 EdgeSpark 项目 |
edgespark db generate | 生成来自 src/defs/db_schema.ts |
edgespark db migrate | 将待处理的迁移到项目数据库 |
edgespark db studio | 打开项目数据库的数据库浏览器 |
edgespark db check | 验证当地移徙的一致性 |
edgespark db sql | 在项目数据库中运行 SQL |
edgespark domain add <hostname> | 启动自定义域设置并打印 DNS 记录 |
edgespark domain verify <hostname> | 检查自定义域是否活动 |
edgespark domain status <hostname> | 显示当前自定义域名状态和 DNS 指导 |
edgespark domain list | 列出当前工程的自定义域 |
edgespark domain remove <hostname> | 从工程中删除自定义域 |
edgespark pull | 从 EdgeSpark 调取计划和类型 |
edgespark pull schema | 拉动平台管理系统 DB schema |
edgespark pull types | 拉出生成的 SDK 类型声明 |
项目结构
运行后 edgespark init,您的项目将:
my-project/
├── src/
│ ├── index.ts # Your API routes (Hono)
│ ├── __generated__/ # Generated artifacts (pulled from platform)
│ │ ├── index.ts # Barrel exports
│ │ ├── sys_schema.ts # System database schema (Drizzle ORM)
│ │ ├── sys_relations.ts # System relation definitions (if any)
│ │ ├── storage_schema.ts # Storage bucket definitions
│ │ ├── edgespark.d.ts # What user code can import from "edgespark" and "edgespark/*"
│ │ └── server-types.d.ts # Shared SDK type definitions
├── edgespark.toml # Project configuration
├── package.json
├── tsconfig.json
└── AGENTS.md # AI coding agent instructions (or CLAUDE.md / GEMINI.md)
发展
npm run build:dev # tsc (for development/tests)
npm run dev # tsc --watch
npm test # run tests
npm run link # build bundle + npm link for local testing
出版
prepublishOnly 在发布前自动运行 esbuild + 复制模板.
1. 贝塔发布
npm version <version>-beta.0 # first beta for a new version (manual)
npm publish --tag beta # publish to "beta" tag (latest untouched)
2. β上的斜体
npm version prerelease # auto-bumps beta.0 → beta.1 → beta.2
npm publish --tag beta
3. 测试β
npm install -g @edgespark/cli@beta # install globally
edgespark --version # verify
npx @edgespark/cli@beta --version # or test without global install
4. 毕业释放
npm version patch # 0.0.X-beta.N → 0.0.X (clean version)
npm publish # publishes to "latest" tag
版本命令欺骗工作表
| 命令 | 示例 |
|---|---|
npm version <version>-beta.0 | 第一个β( 人工) |
npm version prerelease | beta.0 → beta.1 |
npm version patch | 0.0.10-beta.2 → 0.0.10 |
npm version minor | → 0.1.0 |
npm version major | → 1.0.0 |
许可证
麻省理工学院