OpenHands / OpenHands/software-agent-sdk
Allow trusted orchestrators to provision only a selected runtime session credential
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 1.1k
- Forks
- 539
- Avg merge
- 1d 19h
- Merged PRs (30d)
- 137
Description
Desired Behavior
Docker automation bundles need to start and inspect their own conversation on the inner agent-server. The command environment correctly strips session keys, and forwarding the outer key would grant access to every runtime. There is currently no authenticated control-plane endpoint to obtain only the selected runtime credential.
Acceptance Criteria
- A host-authenticated endpoint returns only the selected Docker runtime session key, never the outer server key, encryption key, or broker token.
- Responses prohibit caching and unknown conversations are rejected without provisioning.
- Automation dispatch injects this per-runtime credential explicitly into its private environment upload.
- Unauthenticated requests are denied; tests verify isolation and unknown-ID behavior.
Readiness
ready-for-dev. Depends on the per-conversation runtime provisioning in #3403.
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
Start by reading the per-conversation runtime provisioning work in #3403, then locate the control-plane endpoint and automation dispatch path described here. Verify the endpoint's authentication, response isolation, cache prevention, and unknown-conversation rejection, then run or add tests covering unauthenticated access, credential isolation, and unknown IDs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, python
- Domain
- api, authentication, backend, security
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100