{"id":46714187,"url":"https://github.com/hrygo/openclaw-devkit","last_synced_at":"2026-04-02T19:18:20.519Z","repository":{"id":340084556,"uuid":"1161766361","full_name":"hrygo/openclaw-devkit","owner":"hrygo","description":"OpenClaw DevKit - Containerized development toolkit for OpenClaw multi-channel AI productivity platform. Integrated development, debugging, and testing toolchain.","archived":false,"fork":false,"pushed_at":"2026-03-29T14:16:21.000Z","size":3693,"stargazers_count":9,"open_issues_count":2,"forks_count":10,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-29T17:32:25.157Z","etag":null,"topics":["ai","automation","claude","claude-code","container","devcontainer","development-environment","development-tools","devops","docker","docker-compose","productivity","toolkit"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"openclaw/openclaw","license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hrygo.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-19T13:50:02.000Z","updated_at":"2026-03-29T14:16:24.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/hrygo/openclaw-devkit","commit_stats":null,"previous_names":["hrygo/openclaw","hrygo/openclaw-devkit"],"tags_count":56,"template":false,"template_full_name":null,"purl":"pkg:github/hrygo/openclaw-devkit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrygo%2Fopenclaw-devkit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrygo%2Fopenclaw-devkit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrygo%2Fopenclaw-devkit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrygo%2Fopenclaw-devkit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hrygo","download_url":"https://codeload.github.com/hrygo/openclaw-devkit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hrygo%2Fopenclaw-devkit/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31314367,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-02T12:59:32.332Z","status":"ssl_error","status_checked_at":"2026-04-02T12:54:48.875Z","response_time":89,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","automation","claude","claude-code","container","devcontainer","development-environment","development-tools","devops","docker","docker-compose","productivity","toolkit"],"created_at":"2026-03-09T10:06:07.877Z","updated_at":"2026-04-02T19:18:20.510Z","avatar_url":"https://github.com/hrygo.png","language":"Shell","readme":"# 🛠️ OpenClaw 开发工具箱 (OpenClaw DevKit)\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"./README_en.md\"\u003eEnglish\u003c/a\u003e | \u003cb\u003e简体中文\u003c/b\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/openclaw/openclaw\"\u003e\u003cimg src=\"https://img.shields.io/badge/Powered%20By-OpenClaw-blue\" alt=\"OpenClaw\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://www.docker.com/\"\u003e\u003cimg src=\"https://img.shields.io/badge/Env-Docker-blue?logo=docker\" alt=\"Docker\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://claude.ai/code\"\u003e\u003cimg src=\"https://img.shields.io/badge/With-Claude%20Code-purple\" alt=\"Claude Code\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n---\n\n**OpenClaw 开发工具箱**是为 [OpenClaw](https://github.com/openclaw/openclaw) 量身定制的容器化开发环境。一键启动，秒级进入 AI 辅助编程与自动化工作状态。\n\n---\n\n## ✨ 核心特性\n\n- 📦 **一键就绪**：基于 Docker Compose，屏蔽繁琐依赖\n- 🧩 **1+3 阶梯架构**：采用高效的「1个基座 + 3类堆栈」设计，极致 DRY\n- 🧠 **AI 原生集成**：内置 Claude Code、OpenCode、Pi-Mono\n- 🔧 **开箱即用**：预配置开发环境，无需手动搭建\n- 🚀 **快速启动**：一键部署，分秒间启动完整开发栈\n- 🔒 **安全隔离**：容器化运行，环境隔离安全可控\n- 💾 **数据持久化**：会话、配置自动保存，重启不丢失\n- 🩹 **自愈引擎**：Entrypoint 自动修复路径泄露、清理失效 Secret，确保 100% 成功启动\n\n---\n\n## 前置条件\n\n### 通用要求\n- **Docker**: V2 (Docker Desktop for macOS/Windows, Docker Engine for Linux)\n- **Docker Compose**: V2 (内置于 Docker Desktop)\n- **Make**: macOS/Linux 自带，Windows 用户安装 [Git Bash](https://git-scm.com/download/win) 即可完美适配（内置 `Makefile` 已针对 Git Bash 进行了路径转换优化）。\n\n### Windows 用户特殊要求\n\n| 组件 | 要求 | 说明 |\n| :--- | :--- | :--- |\n| **操作系统** | Windows 10 21H2+ 或 Windows 11 | |\n| **后端引擎** | WSL2 (推荐) 或 Hyper-V | [安装指南](https://docs.microsoft.com/zh-cn/windows/wsl/install) |\n| **内存** | 推荐 8GB+ | Docker Desktop 最低 4GB |\n| **虚拟化** | 需在 BIOS/UEFI 中启用 | Intel VT-x / AMD-V |\n\n\u003e [!TIP]\n\u003e Windows 推荐使用 **Docker Desktop** 基于 WSL2 后端运行（性能更佳）。若使用 WSL2，需在 PowerShell 中执行以下命令启用：\n\u003e ```powershell\n\u003e wsl --install\n\u003e ```\n\u003e *(注：Windows 10/11 专业版及更高版本用户也可选择使用传统的 Hyper-V 后端，此时无需安装 WSL2。)*\n\n---\n\n## 🚀 快速开始\n\n### 1. 标准安装 ⭐（推荐 - 极速模式）\n\n适用于大多数用户，直接从 GitHub 注册表拉取经过优化的预构建镜像，**无需本地编译**。\n\n```bash\n# 1. 下载并安装 (极速模式)\ngit clone https://github.com/hrygo/openclaw-devkit.git \u0026\u0026 cd openclaw-devkit\nmake install\n\n# 2. 交互式配置 (初次使用)\nmake onboard\n\n# 3. 启动服务\nmake up\n\n# 4. 一键直达仪表盘 (自动带 token)\nmake dashboard\n\n# 5. 如显示 \"pairing required\"，批准配对\nmake approve\n```\n\n\u003e [!NOTE]\n\u003e `make install` 会自动完成：创建数据目录、生成 `.env` 配置、同步镜像以及修复宿主机权限。\n\u003e **注意**：`make install` 仅进行安装与准备，**不会自动启动服务**。请在安装完成后根据流程执行 `make onboard` 和 `make up`。\n\n### 首次访问 UI 认证流程\n\nOpenClaw 使用 token 认证保护 Gateway。首次访问 UI 时：\n\n| 步骤 | 命令 | 说明 |\n| :--- | :--- | :--- |\n| 1 | `make dashboard` | 生成带 token 的直通链接，自动打开浏览器 |\n| 2 | 刷新页面 | 如显示 \"pairing required\"，继续下一步 |\n| 3 | `make approve` | 批准配对请求 |\n| 4 | 刷新页面 | 完成认证，正常使用 |\n\n### 版本选择\n\n根据您的开发需求选择合适的版本：\n\n| 版本 | 镜像标签 | 适用场景 | 核心工具 |\n| :--- | :--- | :--- | :--- |\n| **标准版** | `latest` | 通用 Web 开发 | Node.js 22, Bun, Claude Code, Playwright, Python 3 |\n| **Go 版** | `go` | Go 后端开发 | 标准版 + Go 1.26, golangci-lint, gopls, dlv |\n| **Java 版** | `java` | Java 后端开发 | 标准版 + JDK 21, Gradle, Maven |\n| **Office 版** | `office` | 文档处理/RAG | 标准版 + LibreOffice, pandoc, LaTeX, Docling, Marker-PDF |\n\n```bash\n# 安装指定版本\nmake install go\nmake install java\nmake install office\n```\n\n首次安装后修改 `.env` 中的 `OPENCLAW_IMAGE`，然后执行 `make upgrade` 切换版本。\n\n### 日常运维\n\n| 场景 | 命令 |\n| :--- | :--- |\n| 启动服务 | `make up` |\n| 停止服务 | `make down` |\n| 重启服务 | `make restart` |\n| 查看状态 | `make status` |\n| 查看日志 | `make logs` |\n| 进入容器 | `make shell` |\n| 强制更新镜像 | `make upgrade` |\n\n---\n\n## 🔄 升级指南\n\n### 存量用户升级（重要）\n\n如果您之前使用过 `openclaw` 项目（旧目录名），升级到 `openclaw-devkit` 后可能会看到以下警告：\n\n```\nWARN[0000] volume \"openclaw-devkit-home\" already exists but was created for project \"openclaw\"\nWARN[0000] volume \"openclaw-claude-home\" already exists but was created for project \"openclaw\"\n```\n\n**这是正常现象，不影响使用**。如需消除警告，执行一次性迁移：\n\n### 跨平台迁移命令\n\n\u003cTabs\u003e\n\u003cTabItem value=\"bash\" label=\"macOS/Linux/Git Bash\"\u003e\n\n```bash\n# 自动备份 → 删除旧卷 → 重建新卷 → 恢复数据\n./scripts/migrate-volumes.sh\n\n# 或自动确认模式\n./scripts/migrate-volumes.sh -y\n\n# 或使用 Make 命令（自动检测平台）\nmake migrate-volumes\n```\n\n\u003c/TabItem\u003e\n\u003cTabItem value=\"powershell\" label=\"Windows PowerShell\"\u003e\n\n```powershell\n# PowerShell 版本\n.\\scripts\\migrate-volumes.ps1\n\n# 或自动确认模式\n.\\scripts\\migrate-volumes.ps1 -AutoConfirm\n```\n\n\u003c/TabItem\u003e\n\u003c/Tabs\u003e\n\n**迁移脚本特性：**\n- ✅ 自动检测是否需要迁移\n- ✅ 完整备份机制（数据安全）\n- ✅ 1-3 分钟完成（取决于数据量）\n- ✅ 迁移后警告永久消失\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e技术细节：为什么会有警告？\u003c/b\u003e\u003c/summary\u003e\n\nDocker Compose 使用项目标签追踪卷的归属。旧项目名 `openclaw` 与新项目名 `openclaw-devkit` 不匹配触发警告。`migrate-volumes.sh` 会重新创建带正确标签的卷。\n\n**安全保证：**\n- 备份文件保留在 `/tmp/openclaw-volume-backup-*/`\n- 可随时手动恢复\n- 迁移失败会中止并提示\n\n\u003c/details\u003e\n\n### 常规版本升级\n\n```bash\n# 检测并拉取最新镜像\nmake upgrade\n\n# 重启服务以应用更新\nmake restart\n```\n\n---\n\n## ❓ 常见问题\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eQ: 启动后显示\"无法连接\"？\u003c/b\u003e\u003c/summary\u003e\n\n确保代理开启「允许局域网」连接，运行 `make test-proxy` 诊断网络。\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eQ: 如何强制更新镜像到最新版本？\u003c/b\u003e\u003c/summary\u003e\n\n`make install` 默认使用本地缓存。若要检测并更新远程镜像，请运行：\n```bash\nmake upgrade\n```\n或手动执行 `docker pull ghcr.io/hrygo/openclaw-devkit:latest`。\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eQ: 如何切换版本？\u003c/b\u003e\u003c/summary\u003e\n\n修改 `.env` 中的 `OPENCLAW_IMAGE`，然后执行 `make upgrade \u003cvariant\u003e`。\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eQ: 配置文件在哪？如何从宿主机修改？\u003c/b\u003e\u003c/summary\u003e\n\nDevKit 采用**直接 Bind Mount 共享**设计：\n\n| 宿主机路径 | 容器路径 | 用途 |\n|:----------|:--------|:-----|\n| `~/.openclaw/` | `/home/node/.openclaw/` | 配置文件，双向实时同步 |\n\n**修改配置**：直接编辑宿主机的 `~/.openclaw/openclaw.json`，无需重启即可热加载。\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eQ: 宿主机已安装 OpenClaw，冲突怎么办？\u003c/b\u003e\u003c/summary\u003e\n\n容器与宿主机模式会争夺端口 18789。运行 `./docker-setup.sh` 时会自动检测并尝试停止宿主机服务。\n\n若需手动处理：\n```bash\n# 查看卸载指南\nmake uninstall-host\n\n# 推荐一键卸载\nnpx -y openclaw uninstall --all --yes --non-interactive\n```\n\u003c/details\u003e\n\n---\n\n## 📚 技术文档\n\n| 文档名称 | 描述 | 关键点 |\n| :--- | :--- | :--- |\n| [镜像变体指南](./docs/IMAGE_VARIANTS.md) | 详解 1+3 架构与各版本差异 | `latest`, `go`, `java`, `office` 区别 |\n| [Docker 工作流](./docs/DOCKER_WORKFLOW.md) | 本地开发与 CI/CD 流程 | `make` 命令、GitHub Actions 逻辑 |\n| [快速入门指南](./docs/USER_ONBOARDING.md) | 详细的配置与环境变量说明 | `.env` 配置、Claude API 设置 |\n| [飞书配置](./docs/FEISHU_SETUP.md) | 聊天应用与 AI Agent 联动 | 机器人创建、Webhook 配置 |\n| [Slack 配置](./docs/SLACK_SETUP_BEGINNER.md) | Slack 接入 OpenClaw | 机器人创建、Socket Mode 配置 |\n| [NotebookLM 技能](./docs/NOTEBOOKLM_SKILL.md) | NotebookLM CLI 集成指南 | 播客生成、来源管理、内容导出 |\n| [详细参考手册](./docs/REFERENCE.md) | 完整的 Makefile 命令参考 | 进阶运维指令、故障排查 |\n\n**外部资源**：[OpenClaw 官方文档](https://docs.openclaw.ai) | [Claude Code 文档](https://docs.anthropic.com/en/docs/claude-code) | [notebooklm-py GitHub](https://github.com/teng-lin/notebooklm-py)\n\n---\n\n## 📄 许可证\n\n基于 [OpenClaw](https://github.com/openclaw/openclaw) 原始许可。\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhrygo%2Fopenclaw-devkit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhrygo%2Fopenclaw-devkit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhrygo%2Fopenclaw-devkit/lists"}