OpenHands / OpenHands/software-agent-sdk
[Feature]: Add acp_isolate_data_dir to ACP_SETTINGS_KEYS in the TypeScript client
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 1.1k
- Forks
- 539
- Avg merge
- 1d 19h
- Merged PRs (30d)
- 137
Description
Context
ACPAgent in the SDK supports acp_isolate_data_dir (added in software-agent-sdk#3492): when set, it gives each ACP conversation its own CLI data root (CODEX_HOME / CLAUDE_CONFIG_DIR / HOME) so concurrent conversations on the same machine don't race on shared auth/config/lock files under HOME.
The field is present in the generated agent-server-schema.ts types, but it is missing from ACP_SETTINGS_KEYS in clients/typescript/src/models/acp.ts:
export const ACP_SETTINGS_KEYS: readonly string[] = [
'acp_command',
'acp_args',
'acp_env',
'acp_model',
'acp_session_mode',
'acp_prompt_timeout',
'acp_server',
// 'acp_isolate_data_dir' is missing
];
Agent Canvas uses this array to decide which ACP settings to forward in the StartConversationRequest. Without it in the list, acp_isolate_data_dir is never sent even if a caller sets it.
Desired Behavior
acp_isolate_data_dir should be included in ACP_SETTINGS_KEYS so that downstream consumers (e.g. Agent Canvas) can forward it in StartConversationRequest payloads. The field is already on ACPAgentSettings in the Agent Server and accepted by the SDK — this is purely a missing entry in the allowlist.
Acceptance Criteria
-
'acp_isolate_data_dir'is added toACP_SETTINGS_KEYSinclients/typescript/src/models/acp.ts - A
StartConversationRequestbuilt by Agent Canvas withacp_isolate_data_dir: trueincludes the field in the serialized payload
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Open clients/typescript/src/models/acp.ts and inspect ACP_SETTINGS_KEYS. Add the missing acp_isolate_data_dir entry, then verify that an Agent Canvas StartConversationRequest with acp_isolate_data_dir: true includes the field in its serialized payload.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- api
- Issue type
- Feature
- Difficulty
- 1/5
- Estimated time
- Under an hour
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 88/100