Open
Conversation
Closes openclaw#15 Adds a `disableExec` boolean config field (global + project) that prevents the `exec` subcommand from running. When set to `true`, `acpx <agent> exec` and `acpx exec` exit with a clear error message directing users to use persistent sessions instead. Config precedence follows existing patterns: project .acpxrc.json overrides global ~/.acpx/config.json. Default is `false` (exec enabled). Changes: - src/config.ts: add disableExec to ConfigFileShape, ResolvedAcpxConfig, parsing, merging, and config display - src/cli.ts: check config.disableExec at the top of handleExec - test/config.test.ts: 4 new tests (default, global, project override, invalid type rejection) All 134 tests pass.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #15
Summary
Adds a
disableExecboolean config field (global + project) that prevents theexecsubcommand from running.Usage
Global (
~/.acpx/config.json):{ "disableExec": true }Per-project (
.acpxrc.json):{ "disableExec": true }When enabled:
Changes
src/config.ts: adddisableExecto config schema, parsing, merging, and displaysrc/cli.ts: checkconfig.disableExecat the top ofhandleExectest/config.test.ts: 4 new tests (default false, global read, project override, invalid type rejection)Checklist
npm run typecheck✅npm run lint✅npm run format:check✅npm run build✅npm test— 134/134 pass ✅Project override takes priority over global, matching existing config precedence. Default is
false(exec stays enabled).