Goon
17845305dc
feat(deploy): track zuey ops scripts in repo + CI auto-sync
...
- Move scripts/goclaw-upgrade-release.sh -> scripts/zuey/goclaw-upgrade-release.sh
- Add scripts/zuey/goclaw-deploy.sh (canonical source for /usr/local/bin/goclaw-deploy)
with self-loop symlink guard fix: readlink -f ... 2>/dev/null || true + warn
when previous resolves to empty. Without this, /opt/goclaw/current -> current
aborts set -euo pipefail before ln -sfn fixes the symlink (observed 2026-05-27,
silently failing every deploy_zuey_beta CI run).
- Wire Sync zuey ops scripts to VPS step in dev-beta-release.yaml:
scp + sudo install both scripts before triggering gateway upgrade endpoint.
Backup-if-changed via cmp -s; root:root 0755; bash -n syntax check; key shred.
Gracefully skips with warning if ZUEY_SSH_PRIVATE_KEY or ZUEY_SUDO_PASS unset.
- Document required secrets and manual sync recipe in docs/deployment-guide.md.
- Changelog entry 2026-05-27.
2026-05-27 15:18:08 +07:00
Duy /zuey/
d4463cde6f
fix(exec): surface real cwd error + auto-normalize stale workspace paths ( #77 )
...
* fix(exec): surface chdir error instead of misleading fork/exec
Linux Go forkAndExecInChild conflates chdir + execve failures into one
PathError naming only argv0. When agent workspace points to a stale
directory, exec reports "fork/exec /usr/bin/gh: no such file" even though
the binary exists — the real failure is chdir on cmd.Dir.
Two fixes:
- loop_context.go: fall back to l.workspace when per-user MkdirAll fails
(3 sites: user workspace, dispatched team, auto-resolved team)
- shell.go + credentialed_exec.go: preflight cwd via validateExecCwd
before exec.Command, so the error names the directory, not the binary
Regression test TestValidateExecCwd covers empty / existing / missing /
file-instead-of-dir.
* feat(upgrade): auto-normalize stale agent workspace paths
Detects non-portable workspace values left by deployment migrations
(Docker → bare-metal, host path drift) and rewrites them to the current
configured base. Registered as data hook 072_normalize_agent_workspaces;
runs automatically after `migrate up`.
Stale patterns:
- /app/workspace/* (Docker container path persisted on bare-metal)
- ~ prefix (Go doesn't expand tildes; MkdirAll creates literal ~ dir)
Base resolved with gateway precedence: GOCLAW_WORKSPACE env >
config.Agents.Defaults.Workspace > default ~/.goclaw/workspace.
Idempotent (skips rows already at proposed value). Conservative
(leaves absolute non-stale paths untouched as intentional custom config).
2026-05-27 11:52:25 +07:00
Duy /zuey/
93461e9863
Merge pull request #38 from digitopvn/codex/configurable-exec-timeout
...
feat(tools): make exec timeout configurable
2026-05-24 20:25:34 +07:00
Goon
87b9e296b1
Merge remote-tracking branch 'origin/dev' into codex/configurable-exec-timeout
...
# Conflicts:
# docs/project-changelog.md
2026-05-24 20:19:40 +07:00
Duy /zuey/
6825424001
Merge pull request #57 from digitopvn/codex/issue-48-google-workspace-cli
...
feat(runtime): add Google Workspace CLI support
2026-05-24 19:03:41 +07:00
Goon
3a749ff91c
Merge remote-tracking branch 'origin/dev' into codex/issue-48-google-workspace-cli
...
# Conflicts:
# docs/project-changelog.md
2026-05-24 18:57:47 +07:00
Duy /zuey/
34a2cb24da
Merge pull request #62 from digitopvn/codex/issue-21-slash-skill-commands
...
feat(skills): add slash command activation
2026-05-24 16:46:14 +07:00
Goon
c99f7e1fa4
feat(skills): add slash command activation
2026-05-24 16:39:44 +07:00
Duy /zuey/
14b32bd219
Merge pull request #61 from digitopvn/codex/issue-28-skill-upload-size
...
feat(skills): configure upload size limits
2026-05-24 16:03:56 +07:00
Goon
1296031d5a
feat(skills): configure upload size limits
2026-05-24 15:57:21 +07:00
Duy /zuey/
5d62877550
Merge pull request #60 from digitopvn/codex/issue-41-env-sensitive-values
...
feat(cli): split env visibility for credentials
2026-05-24 15:20:05 +07:00
Goon
3294fccbad
feat(cli): split env visibility for credentials
2026-05-24 15:14:43 +07:00
Duy /zuey/
2bb736cf18
feat(usage): add AI budget usage caps
...
Merge usage-cap budget controls with conflict resolution against dev.
2026-05-24 13:57:31 +07:00
Duy /zuey/
61fdcdcb81
feat(tools): add command keyword allowlist
...
Closes #42
2026-05-24 13:52:23 +07:00
Goon
7fee3073df
merge(dev): resolve usage cap conflicts
2026-05-24 13:49:40 +07:00
Duy /zuey/
5ae5815738
fix(telegram): preserve archive upload paths ( #58 )
2026-05-24 12:48:51 +07:00
Goon
12fb1baf79
feat(runtime): add Google Workspace CLI support
2026-05-24 12:12:16 +07:00
Duy /zuey/
68684e4859
feat(browser): add scoped cookie sync
...
Fixes #49
2026-05-24 11:27:02 +07:00
Goon
d64a31ebdb
fix(usage): enforce caps on auxiliary llm calls
2026-05-24 11:13:03 +07:00
Duy /zuey/
f9440baca2
fix(cron): preserve SecureCLI credential context
...
Closes #54
2026-05-24 09:42:44 +07:00
Duy /zuey/
501800743f
fix(telegram): use upload limit for outbound media ( #53 )
2026-05-24 08:16:41 +07:00
Duy /zuey/
2c699f31de
fix(chat): support zero debounce and agent overrides
2026-05-23 14:02:34 +07:00
Goon
e4acb147d6
feat(usage): edit cap policies and trace decisions
2026-05-23 09:34:29 +07:00
Goon
a9a6463f71
feat(usage): bridge agent monthly budget caps
2026-05-23 08:51:04 +07:00
Goon
3e29b4f019
Merge remote-tracking branch 'origin/dev' into codex/usage-cap-budget-controls
...
# Conflicts:
# docs/project-changelog.md
2026-05-23 08:23:52 +07:00
Duy /zuey/
8af0e4ae09
feat(chat): debounce rapid web messages
2026-05-23 07:47:05 +07:00
Goon
ade1c1b838
fix(store): avoid usage cap migration keyword
2026-05-23 00:39:14 +07:00
Goon
1f51f988a3
Merge remote-tracking branch 'origin/dev' into codex/usage-cap-budget-controls
2026-05-23 00:17:20 +07:00
Goon
9ff5a629d2
feat(usage): add AI budget usage caps
2026-05-23 00:16:03 +07:00
Duy /zuey/
8b661951c0
fix(deploy): detach gateway upgrades from service ( #45 )
2026-05-22 21:53:10 +07:00
Duy /zuey/
43049d3b3f
feat(http): unblock CLI P6 backend APIs ( #44 )
...
* feat(api): unblock trace follow and provider reconnect
* test(cron): stabilize run log execution test
* feat(http): add CLI P6 backend endpoints
2026-05-22 20:59:47 +07:00
Duy /zuey/
ef829c1ab4
fix(bitrix24): resolve PR 8-10 stack findings
...
Resolve the PR #8/#9/#10 stack on current dev, including Bitrix24 install callback hardening, migration renumbering, duplicate-domain fail-closed routing, UI textarea/mobile cleanup, and review hardening.
2026-05-22 20:53:01 +07:00
Duy /zuey/
faa195156e
feat(ci): deploy zuey beta releases ( #40 )
...
* feat(ci): deploy zuey beta releases
Add automatic zuey VPS deployment to the dev beta release workflow after prerelease assets are published. Publish beta checksums and make the host upgrade script tolerate beta asset naming and checksum fallback.
* fix(deploy): allow active beta release reruns
Treat an existing target release as success only when it is already the active release and still contains the expected binary and migrations. This keeps automated beta deploy reruns from failing after a prior successful deploy while preserving fail-closed behavior for stale or partial release directories.
2026-05-22 19:49:43 +07:00
Goon
04d2b4266e
feat(tools): make exec timeout configurable
2026-05-21 16:44:43 +07:00
Duy /zuey/
81d96ae014
feat(skills): clarify access modes and repair file paths ( #31 )
...
* feat(skills): add bulk management actions
* feat(skills): improve operations UX
* feat(skills): clarify access modes and repair file paths
2026-05-21 16:37:50 +07:00
Duy /zuey/
56e227c403
feat(api): unblock goclaw-cli P6 trace follow and provider reconnect ( #37 )
...
* feat(api): unblock trace follow and provider reconnect
* test(cron): stabilize run log execution test
2026-05-21 16:37:19 +07:00
Duy /zuey/
e51fe80212
fix(http): harden automation API contracts ( #36 )
2026-05-20 22:17:13 +07:00
Duy /zuey/
ce5ea10d46
fix(runtime): repair package installs, archives, logs, and telegram startup
...
Merge runtime/package install fixes, archive attachment handling, operator log access, and Telegram startup IPv4 fallback.
2026-05-20 21:26:10 +07:00
Duy /zuey/
532ff91d8e
fix(security): harden upstream critical surfaces ( #32 )
...
* fix(security): harden upstream critical surfaces
Refs #30
* fix(security): close pre-landing review gaps
Refs #30
* fix(security): close official release blockers
2026-05-20 16:33:49 +07:00
Duy /zuey/
2a48e62c6b
feat(skills): add bulk management actions
...
Adds Skills bulk actions, Grant all agents support, header-level skill version selector, and upload write validation.
2026-05-19 18:31:29 +07:00
Duy /zuey/
1858cebe9c
feat(skills): add management metadata and deeplinks
...
Closes #26
2026-05-19 16:35:56 +07:00
Duy /zuey/
328cbf3d61
Merge pull request #25 from digitopvn/codex/securecli-openrouter-alias
...
fix(secure-cli): resolve runtime npm binary aliases
2026-05-19 10:23:14 +07:00
Duy /zuey/
951733c136
Merge pull request #24 from digitopvn/codex/feat-wait-tool
...
feat(tools): add built-in wait tool
2026-05-19 09:57:42 +07:00
Goon
a08c626867
fix(secure-cli): resolve runtime npm binary aliases
2026-05-19 09:54:21 +07:00
Goon
f55ea3dc26
fix(pipeline): remove BOM from deps source
2026-05-19 09:45:50 +07:00
Goon
703c0b2df0
fix(config): remove BOM from channels config
2026-05-19 09:28:13 +07:00
Goon
ed558e6f89
merge: bring dev into wait tool branch
2026-05-19 09:18:29 +07:00
Duy Nguyen
d48ae43e4f
feat(tools): add built-in wait tool
2026-05-19 06:53:45 +07:00
Duy /zuey/
069f984f2f
Merge pull request #19 from digitopvn/fix/github-installer-runtime-bin
...
fix(packages): use runtime dir for GitHub binaries
2026-05-19 06:51:22 +07:00
Duy Nguyen
c174279e01
fix(packages): use runtime dir for GitHub binaries
2026-05-18 21:43:03 +07:00