google-deepmind / google-deepmind/concordia

Support transport-neutral human-controlled entities

Open
#301 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
1.7k
Forks
367
PR merge metrics
No merged PRs in 30d

Description

## Need

Concordia entities currently delegate their final action to programmed or model-backed acting policies. Applications also need a reusable human acting policy for a player or game master while other entities keep their normal behavior.

## Proposed contribution

- A transport-neutral `HumanInputRequest` / `HumanInput` boundary and `HumanActComponent`; no browser, server, session manager or web dependencies in core.
- Supply the controlled entity's full pre-act context as one ordered string, retaining the exact `ConcatActComponent` ordering, whitespace and error semantics through shared library assembly.
- Validate prose, exact choices, finite numbers and sequential-game-master contracts, including next-action specifications; return invalid-input feedback without repeating the context lifecycle or inventing an action.
- Preserve logging, serialization of order, cancellation and per-entity input routing. Keep transport wiring runtime-only.

## Acceptance checks

Player and GM action-spec tests, exact Concat/Human ordering parity (default, explicit, empty, partial, duplicate and missing keys), retry behavior and standard sequential-engine compatibility.

This is a broadly reusable component contribution. Prefab injection and a small human-play tutorial will be separate changes.

Contributor guide

Open the contributing guide

Research direction

Start by tracing the existing ConcatActComponent and the player/GM action-spec tests, then inspect the sequential engine entry points and current acting-policy interfaces. Define the transport-neutral boundaries around the stated context ordering, validation and retry behavior; done means the listed parity, routing, cancellation, serialization and compatibility checks pass without runtime transport dependencies.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend-api-design
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.