Commit Graph
39 Commits
Author SHA1 Message Date
okxlin 904e28fa64 feat(codex-web-workstation): add Codex CLI web workstation builder
* feat(codex-web-workstation): add image builder with CI workflow

- Ubuntu 24.04 base with dev user, NodeSource 20.x, ttyd 1.7.7, code-server, @openai/codex
- 5 runtime scripts: entrypoint.sh, configure-provider.sh, healthcheck.sh, doctor.sh, smoke-test.sh
- Build parameter resolver and architecture allowlist
- GitHub Actions workflow: build-codex-web-workstation.yml (workflow_dispatch, docker/build-push-action@v6, ghcr.io)
- Image-only: no docker-compose, Caddyfile, or compose-time config

* fix(ci): use hyphenated input names (image-tag, push-latest)

* fix(health): replace curl -sf with tolerant HTTP status check

- healthcheck.sh: accept any 2xx/3xx/4xx response as proof of listening
  (code-server returns 302, ttyd returns 401 with basic auth)
- smoke-test.sh: same fix for HTTP probe tolerance
- Dockerfile: remove duplicate Runtime comment
- .env.example: remove unused USER_UID/USER_GID (not declared as ARG in Dockerfile)
2026-06-13 14:11:04 +08:00
okxlinandSisyphus cf41c01051 fix(opencode-workstation): remove stale oh-my-opencode MCP entry after install
oh-my-opencode >= v4.7 removed the 'mcp start' subcommand but the installer still writes a local MCP config entry pointing to it. Built-in MCP servers (websearch, context7, grep_app, lsp) are remote HTTP and registered by the plugin itself. After running the installer, clean up the MCP section so OpenCode doesn't try to start the nonexistent command.

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-06-07 05:33:32 +08:00
okxlinandSisyphus 820f3abda1 chore(opencode-workstation): remove stale .env.example entries
Remove leftover OMO_PACKAGE_AMD64 etc entries that survived earlier cleanup.

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-06-06 23:49:23 +08:00
okxlinandSisyphus 387d93d4d1 fix(opencode-workstation): don't skip avx2 detection when OMO_PACKAGE is set
When OMO_PACKAGE is explicitly set (e.g. via compose .env), the resolver was short-circuiting and outputting baseline=0, bypassing AVX2 detection. This meant Bun was never reinstalled as baseline and kept SIGILLing. Now the resolver always computes the baseline flag and only uses OMO_PACKAGE as the package name override.

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-06-06 23:47:59 +08:00
okxlinandSisyphus a354912d23 fix(opencode-workstation): reinstall baseline bun on non-avx2 hosts
When the resolver detects a non-AVX2 CPU, reinstall Bun via its own install script before running oh-my-opencode. Bun's installer reads /proc/cpuinfo and auto-selects the baseline variant, which runs on older x64 CPUs. Export BUN_VERSION as an ENV in the Dockerfile so the install script can target the same version at runtime.

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-06-06 22:14:40 +08:00
okxlinandSisyphus cd62e4fab9 fix(opencode-workstation): use meta-package with baseline env flag
Replace platform-specific npm package resolution with the meta-package oh-my-opencode and OH_MY_OPENCODE_FORCE_BASELINE=1 env export. The meta-package's JS wrapper handles baseline binary selection, avoiding npm exec binary-not-found errors with platform-specific packages while still supporting non-AVX2 hosts. Also works around the OMO_PACKAGE env var leakage issue by making resolver always output the meta-package name.

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-06-06 19:15:12 +08:00
okxlin 9453bc08c1 fix(opencode-workstation): avoid bun sigill during omo install
Run oh-my-opencode through npm exec instead of bunx so non-AVX2 hosts can install the baseline package without Bun crashing before the package entrypoint runs. Keep the existing package resolver in place so doctor, smoke, and auto-install all follow the same compatibility path.
2026-05-21 02:02:46 +08:00
okxlin 64a149c13b fix(opencode-workstation): harden runtime compatibility
Make the workstation image select architecture-appropriate oh-my-opencode packages and stop assuming AVX2-capable amd64 hosts. Also upgrade Bun and make the bundled Go download respect the target container architecture so the image builds and installs more reliably across supported platforms.
2026-05-21 00:52:05 +08:00
okxlin 6e66c3892d refactor(opencode-workstation): align runtime persistence with official home paths 2026-05-09 11:06:00 +08:00
okxlin b0d0301792 feat: auto-enable hashline_edit when installing oh-my-openagent
- add ensure_hashline_default() to set hashline_edit: true in oh-my-openagent.json
- called before user override merge so users can opt out via .user.json
2026-05-08 09:06:10 +08:00
okxlin fc0e57bea0 Merge pull request #12 from okxlin/refactor/rename-to-opencode-workstation
refactor: rename image to opencode-workstation
2026-05-08 08:39:26 +08:00
okxlin 0e089d3cc6 refactor: rename image from oh-my-opencode-runtime to opencode-workstation
- Rename directory: oh-my-opencode-builder/ → opencode-workstation-builder/
- Rename workflow: build-oh-my-opencode-runtime.yml → build-opencode-workstation.yml
- Update IMAGE_REPO default to opencode-workstation
- Update all path references in workflow and scripts
- Update OCI image title and description
- Preserve upstream npm package oh-my-opencode references
2026-05-08 00:21:22 +08:00
okxlin c1cdf71983 Merge pull request #11 from okxlin/feat/upgrade-tools
fix: remove ltrace (not available on arm64)
2026-05-04 01:20:47 +08:00
okxlin 2401363b81 fix: remove ltrace (not available on arm64) 2026-05-04 01:19:56 +08:00
okxlin 01103324ff Merge pull request #10 from okxlin/feat/upgrade-tools
feat: upgrade Go, Rust, TypeScript and add more dev tools
2026-05-04 01:16:18 +08:00
okxlin 2040378d5b feat: upgrade Go, Rust, TypeScript and add more dev tools
- Upgrade Go from 1.19 to 1.22.5 (official binary)
- Upgrade Rust from 1.63 to 1.77.0 (via rustup)
- Upgrade TypeScript from 4.x to 5.x
- Add additional tools: tig, zstd, mtr, iotop, nethogs, strace, ltrace, pigz, yq, tldr
- Update PATH to include Go and Rust binaries
- Update chown to include /usr/local/go
2026-05-04 01:14:50 +08:00
okxlin 5d5e476113 Merge pull request #9 from okxlin/feat/add-dev-tools
feat: add development tools to oh-my-opencode image
2026-05-04 01:04:50 +08:00
okxlin 0578f7ff03 feat: add development tools to oh-my-opencode image
Add essential development tools to improve the container development experience:

HIGH priority (already added):
- vim-tiny, wget, tree, zip, htop, net-tools, iproute2, iputils-ping, git-lfs

MEDIUM priority:
- postgresql-client, redis-tools, mariadb-client
- tmux, gettext-base, diffutils, patch, shellcheck

LOW priority:
- shfmt, bat, fzf, ncdu, httpie

Also add symlinks for vim.tiny→vim and batcat→bat for convenience.

Image size increase: ~160MB (2.37GB → 2.53GB)

🤖 Generated with opencode
Co-Authored-By: opencode <noreply@opencode.ai>
2026-05-04 01:01:14 +08:00
okxlin dcde5096c8 fix: sync oh-my-opencode runtime model config 2026-05-03 14:49:30 +08:00
okxlin 167c545966 feat: add persisted opencode user override layer 2026-05-02 14:52:45 +08:00
okxlin d0a4d27809 feat: add oh-my-opencode runtime image builder 2026-04-28 02:21:51 +08:00
okxlin 4cb0e9a3da Merge pull request #5 from okxlin/openclaw/fix-wrapped-chrome-user-data-dir
fix: harden runtime dir permissions for selkies startup
2026-04-23 12:42:46 +08:00
okxlin 6349a8d61a fix: harden runtime dir permissions for selkies startup 2026-04-23 04:40:00 +00:00
okxlin 605b18692f Merge pull request #4 from okxlin/openclaw/fix-wrapped-chrome-user-data-dir
fix: align daemon wayland env and browser-profile perms
2026-04-23 12:15:10 +08:00
okxlin fcc577c780 fix: align daemon wayland env and browser-profile perms 2026-04-23 04:02:47 +00:00
okxlin 7f4544d674 Merge pull request #3 from okxlin/openclaw/gemini-skill-browser
fix: merge latest wrapped-chrome user-data-dir fix
2026-04-23 11:24:25 +08:00
okxlin 9bf93461b2 fix: remove invalid --user-data-dir arg in wrapped-chrome 2026-04-23 03:23:32 +00:00
okxlin 9ef582dfa7 fix: remove invalid --user-data-dir arg in wrapped-chrome 2026-04-23 11:19:06 +08:00
okxlin dd4b2b7e2e Merge pull request #1 from okxlin/openclaw/gemini-skill-browser
feat: add gemini-skill-browser kasm and linuxserver build workflows
2026-04-22 15:43:14 +08:00
okxlin fa3067aa18 feat: add gemini-skill-browser build pipelines 2026-04-22 14:59:06 +08:00
okxlin b04c878634 feat:更新release页面显示 2026-03-10 19:48:06 +08:00
okxlin 62430e5873 feat:使用官方GeoIP.mmdb 2026-03-10 17:36:01 +08:00
okxlin 2f2e5a30fa feat:使用官方GeoIP.mmdb 2026-03-10 17:34:05 +08:00
okxlin 7088bbc884 feat:修正迁移适配 2026-03-10 16:33:59 +08:00
okxlin 2962894aa1 feat:修正迁移路径适配 1panel-okxlin-v2.1.3 2026-03-10 16:06:11 +08:00
okxlin d3a5a8ab6e feat:尝试修复错误 2026-03-10 15:50:07 +08:00
okxlin 7c9baab25f feat:去除push触发 2026-03-10 15:43:25 +08:00
okxlin 70e50f767c feat:添加1panel编译脚本 2026-03-10 15:33:49 +08:00
okxlin 5a1fe3d500 Create openclaw-upstream-docker.yml 2026-03-06 11:00:52 +08:00