{
  "schemaVersion": "1.0",
  "item": {
    "slug": "magicbox-node-dev",
    "name": "魔盒node服务开发技能包",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/JinChunCheng123/magicbox-node-dev",
    "canonicalUrl": "https://clawhub.ai/JinChunCheng123/magicbox-node-dev",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/magicbox-node-dev",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=magicbox-node-dev",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "references/code-style.md",
      "references/directory-structure.md",
      "references/container-deployment.md",
      "references/config-management.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-07T17:22:31.273Z",
      "expiresAt": "2026-05-14T17:22:31.273Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
        "contentDisposition": "attachment; filename=\"afrexai-annual-report-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/magicbox-node-dev"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/magicbox-node-dev",
    "agentPageUrl": "https://openagent3.xyz/skills/magicbox-node-dev/agent",
    "manifestUrl": "https://openagent3.xyz/skills/magicbox-node-dev/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/magicbox-node-dev/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "目录结构",
        "body": "magicbox-node/\n├── src/             # 源代码目录\n│   ├── config/      # 配置文件\n│   ├── controllers/ # 控制器\n│   ├── middleware/  # 中间件\n│   ├── migrations/  # 数据库迁移\n│   ├── models/      # 数据模型\n│   ├── routes/      # 路由\n│   ├── services/    # 业务逻辑\n│   ├── utils/       # 工具函数\n│   └── app.ts       # 应用入口\n├── scripts/         # 脚本文件\n├── servers/         # 服务器配置\n├── .env.example     # 环境变量示例\n├── .eslintrc.js     # ESLint 配置\n├── .prettierrc      # Prettier 配置\n├── Dockerfile.base  # Docker 基础镜像\n├── package.json     # 项目配置\n└── tsconfig.json    # TypeScript 配置"
      },
      {
        "title": "TypeScript 规范",
        "body": "类型定义：使用强类型，避免 any 类型\n接口命名：使用 PascalCase，如 UserInterface\n类命名：使用 PascalCase，如 UserService\n函数命名：使用 camelCase，如 getUser\n变量命名：使用 camelCase，如 userName\n常量命名：使用 UPPER_CASE，如 MAX_RETRY_COUNT"
      },
      {
        "title": "ESLint 配置",
        "body": "项目使用 ESLint 进行代码质量检查，配置文件：.eslintrc.js"
      },
      {
        "title": "Prettier 配置",
        "body": "项目使用 Prettier 进行代码格式化，配置文件：.prettierrc"
      },
      {
        "title": "环境变量",
        "body": "开发环境：使用 .env.develop 文件\n生产环境：使用 /etc/magicbox-node/env.config.json 文件\n环境变量优先级：系统环境变量 > 配置文件 > 默认值"
      },
      {
        "title": "配置文件结构",
        "body": "{\n  \"NODE_ENV\": \"production\",\n  \"PORT\": \"3000\",\n  \"HOST\": \"0.0.0.0\",\n  \"DB_HOST\": \"database-host\",\n  \"DB_PORT\": \"3306\",\n  \"DB_DATABASE\": \"magicbox\",\n  \"DB_USERNAME\": \"username\",\n  \"DB_PASSWORD\": \"password\"\n}"
      },
      {
        "title": "数据模型",
        "body": "使用 TypeORM 进行数据库操作\n模型文件放在 src/models/ 目录\n实体命名使用 PascalCase，如 UserEntity.ts"
      },
      {
        "title": "数据库迁移",
        "body": "迁移文件放在 src/migrations/ 目录\n迁移文件命名格式：YYYYMMDDHHmmss-description.ts"
      },
      {
        "title": "Docker 配置",
        "body": "使用 Dockerfile.base 构建基础镜像\n容器运行时环境变量通过 Kubernetes 配置\n确保容器启动时目录存在：/export/Data"
      },
      {
        "title": "启动脚本",
        "body": "start.sh：容器启动脚本\nscripts/deploy-manual.sh：部署时版本管理脚本"
      },
      {
        "title": "版本管理",
        "body": "使用 version.json 文件管理版本信息\n版本号格式：major.minor.patch\n部署时自动更新版本信息"
      },
      {
        "title": "路由结构",
        "body": "健康检查：/health\nAPI 路由：/api/{resource}\n遵循 RESTful 设计原则"
      },
      {
        "title": "响应格式",
        "body": "{\n  \"success\": true,\n  \"data\": {},\n  \"message\": \"操作成功\"\n}"
      },
      {
        "title": "日志规范",
        "body": "使用 src/utils/logger.ts 进行日志记录\n日志级别：debug, info, warn, error\n生产环境使用 info 级别"
      },
      {
        "title": "错误处理",
        "body": "使用统一的错误处理中间件\n生产环境不返回详细错误信息\n记录错误日志"
      },
      {
        "title": "安全规范",
        "body": "敏感配置使用环境变量\n密码等敏感信息不硬编码\n使用 HTTPS 协议\n实现 CORS 配置"
      },
      {
        "title": "部署流程",
        "body": "代码提交到 Git 仓库\n运行 scripts/deploy-manual.sh 更新版本\n构建 Docker 镜像\n部署到 Kubernetes 集群\n验证服务健康状态"
      },
      {
        "title": "开发工具",
        "body": "IDE：推荐使用 VS Code\n插件：ESLint, Prettier, TypeScript\n包管理器：npm\n构建工具：TypeScript compiler (tsc)"
      },
      {
        "title": "代码审查",
        "body": "提交代码前运行 npm run lint\n提交代码前运行 npm run build\n代码审查关注：类型定义、错误处理、安全隐患"
      },
      {
        "title": "性能优化",
        "body": "使用 TypeScript 编译优化\n数据库查询优化\n缓存策略\n合理使用中间件"
      },
      {
        "title": "监控与告警",
        "body": "实现健康检查端点\n监控服务运行状态\n配置适当的告警机制"
      },
      {
        "title": "最佳实践",
        "body": "模块化：将功能拆分为小模块\n可测试性：编写可测试的代码\n文档：为关键功能添加注释\n一致性：保持代码风格一致\n安全性：优先考虑安全问题\n性能：关注代码性能\n可维护性：编写易于维护的代码"
      }
    ],
    "body": "MagicBox Node 项目开发规范\n项目结构\n目录结构\nmagicbox-node/\n├── src/             # 源代码目录\n│   ├── config/      # 配置文件\n│   ├── controllers/ # 控制器\n│   ├── middleware/  # 中间件\n│   ├── migrations/  # 数据库迁移\n│   ├── models/      # 数据模型\n│   ├── routes/      # 路由\n│   ├── services/    # 业务逻辑\n│   ├── utils/       # 工具函数\n│   └── app.ts       # 应用入口\n├── scripts/         # 脚本文件\n├── servers/         # 服务器配置\n├── .env.example     # 环境变量示例\n├── .eslintrc.js     # ESLint 配置\n├── .prettierrc      # Prettier 配置\n├── Dockerfile.base  # Docker 基础镜像\n├── package.json     # 项目配置\n└── tsconfig.json    # TypeScript 配置\n\n代码规范\nTypeScript 规范\n类型定义：使用强类型，避免 any 类型\n接口命名：使用 PascalCase，如 UserInterface\n类命名：使用 PascalCase，如 UserService\n函数命名：使用 camelCase，如 getUser\n变量命名：使用 camelCase，如 userName\n常量命名：使用 UPPER_CASE，如 MAX_RETRY_COUNT\nESLint 配置\n\n项目使用 ESLint 进行代码质量检查，配置文件：.eslintrc.js\n\nPrettier 配置\n\n项目使用 Prettier 进行代码格式化，配置文件：.prettierrc\n\n配置管理\n环境变量\n开发环境：使用 .env.develop 文件\n生产环境：使用 /etc/magicbox-node/env.config.json 文件\n环境变量优先级：系统环境变量 > 配置文件 > 默认值\n配置文件结构\n{\n  \"NODE_ENV\": \"production\",\n  \"PORT\": \"3000\",\n  \"HOST\": \"0.0.0.0\",\n  \"DB_HOST\": \"database-host\",\n  \"DB_PORT\": \"3306\",\n  \"DB_DATABASE\": \"magicbox\",\n  \"DB_USERNAME\": \"username\",\n  \"DB_PASSWORD\": \"password\"\n}\n\n数据库规范\n数据模型\n使用 TypeORM 进行数据库操作\n模型文件放在 src/models/ 目录\n实体命名使用 PascalCase，如 UserEntity.ts\n数据库迁移\n迁移文件放在 src/migrations/ 目录\n迁移文件命名格式：YYYYMMDDHHmmss-description.ts\n容器部署\nDocker 配置\n使用 Dockerfile.base 构建基础镜像\n容器运行时环境变量通过 Kubernetes 配置\n确保容器启动时目录存在：/export/Data\n启动脚本\nstart.sh：容器启动脚本\nscripts/deploy-manual.sh：部署时版本管理脚本\n版本管理\n使用 version.json 文件管理版本信息\n版本号格式：major.minor.patch\n部署时自动更新版本信息\nAPI 规范\n路由结构\n健康检查：/health\nAPI 路由：/api/{resource}\n遵循 RESTful 设计原则\n响应格式\n{\n  \"success\": true,\n  \"data\": {},\n  \"message\": \"操作成功\"\n}\n\n日志规范\n使用 src/utils/logger.ts 进行日志记录\n日志级别：debug, info, warn, error\n生产环境使用 info 级别\n错误处理\n使用统一的错误处理中间件\n生产环境不返回详细错误信息\n记录错误日志\n安全规范\n敏感配置使用环境变量\n密码等敏感信息不硬编码\n使用 HTTPS 协议\n实现 CORS 配置\n部署流程\n代码提交到 Git 仓库\n运行 scripts/deploy-manual.sh 更新版本\n构建 Docker 镜像\n部署到 Kubernetes 集群\n验证服务健康状态\n开发工具\nIDE：推荐使用 VS Code\n插件：ESLint, Prettier, TypeScript\n包管理器：npm\n构建工具：TypeScript compiler (tsc)\n代码审查\n提交代码前运行 npm run lint\n提交代码前运行 npm run build\n代码审查关注：类型定义、错误处理、安全隐患\n性能优化\n使用 TypeScript 编译优化\n数据库查询优化\n缓存策略\n合理使用中间件\n监控与告警\n实现健康检查端点\n监控服务运行状态\n配置适当的告警机制\n最佳实践\n模块化：将功能拆分为小模块\n可测试性：编写可测试的代码\n文档：为关键功能添加注释\n一致性：保持代码风格一致\n安全性：优先考虑安全问题\n性能：关注代码性能\n可维护性：编写易于维护的代码"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/JinChunCheng123/magicbox-node-dev",
    "publisherUrl": "https://clawhub.ai/JinChunCheng123/magicbox-node-dev",
    "owner": "JinChunCheng123",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/magicbox-node-dev",
    "downloadUrl": "https://openagent3.xyz/downloads/magicbox-node-dev",
    "agentUrl": "https://openagent3.xyz/skills/magicbox-node-dev/agent",
    "manifestUrl": "https://openagent3.xyz/skills/magicbox-node-dev/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/magicbox-node-dev/agent.md"
  }
}