Loading files
710fbeaaeThis file is pinned to the selected release. Download the original to open it in your design tool.
Files from this revision, including CAD and LFS contents. Git history is not included.
Or in GitHub Desktop, choose File → Clone repository → URL and paste this address.
Public repositories can be cloned without signing in. For pushing, use your ThingAtlas username and a Git access token as the password.
git lfs install git clone https://thingatlas.com/git/-unclaimed/openharness-1322671404.git
Includes Git history, branches, and Git LFS files. Clones the repository’s default branch, regardless of the version shown here.
// What a machine accepts as a harness's first task (`prompt` on
// `agent_create`), so New Harness can say so before Create rather than after.
/// The engines that can be opened with a first message: the non-null entries of
/// the CLI's `FIRST_PROMPT_ARGS` (cli/src/lib/engineLaunch.ts). A machine refuses
/// a first message for any other engine (`PROMPT_UNSUPPORTED`).
/// test/first_task_test.dart holds the two lists to the same answer.
const kFirstTaskEngines = {'claude', 'codex', 'opencode'};
/// Whether a harness on [engine] — its base engine, for a Store harness — can
/// start on a first task.
bool takesFirstTask(String engine) => kFirstTaskEngines.contains(engine);
/// The longest first task a machine accepts, counted after trimming: the CLI's
/// `MAX_FIRST_PROMPT_CHARS`. Longer is refused (`PROMPT_TOO_LONG`), never cut.
const kFirstTaskMaxLength = 2000;
710fbeaaeThis file is pinned to the selected release. Download the original to open it in your design tool.