Agent harness platform and meta framework.
Find a file
tegwick d3130162b1
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Formalize the CLI as the first Channel extension (GLAS-WP-0003)
channels/base.py: GatewayInvocation dataclass + Channel ABC
(parse_invocation/render_result), mirroring Rein one layer up -- a
channel turns an external invocation into what run_task_through_rein
needs, and turns its result back into whatever the invocation medium
expects.

channels/cli_channel.py: CLIChannel, a pure refactor of what cli.py did
inline -- argparse Namespace -> GatewayInvocation, result dict ->
json.dumps(..., indent=2). cli.py's run handler is now a thin
construct-parse-invoke-render wrapper.

docs/channel-contract.md documents the pattern and sketches (without
building) a second channel.

Found and fixed a real bug while live-testing this refactor:
ReinAharness's default cli_bin was still "agent-harness", stale from
before HARNESS-WP-0002-T02's rename.

4 new tests (27/27 passing), plus a real live run through
python3 -m glas_harness.cli against rein-aharness/real Claude Code
confirming identical output shape and a real commit.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-26 22:41:51 +02:00
.forgejo/workflows Add Forgejo CI smoke workflow for migration pilot 2026-07-04 00:58:20 +02:00
docs Formalize the CLI as the first Channel extension (GLAS-WP-0003) 2026-07-26 22:41:51 +02:00
profiles Implement the harness contract and prove it against rein-aharness (GLAS-WP-0001-T02/T03/T04) 2026-07-26 13:02:59 +02:00
registry Add ReinOpenWeights adapter, closing GLAS-WP-0001-T05 2026-07-26 13:42:29 +02:00
src/glas_harness Formalize the CLI as the first Channel extension (GLAS-WP-0003) 2026-07-26 22:41:51 +02:00
tests Formalize the CLI as the first Channel extension (GLAS-WP-0003) 2026-07-26 22:41:51 +02:00
workplans Formalize the CLI as the first Channel extension (GLAS-WP-0003) 2026-07-26 22:41:51 +02:00
.custodian-brief.md chore(consistency): sync task status from DB [auto] 2026-07-26 20:24:01 +02:00
.gitignore Implement the harness contract and prove it against rein-aharness (GLAS-WP-0001-T02/T03/T04) 2026-07-26 13:02:59 +02:00
.repo-classification.yaml Initial commit 2026-06-22 19:22:49 +00:00
AGENTS.md Close out statehub-register bootstrap housekeeping (GLAS-0001) 2026-07-26 19:45:47 +02:00
INTENT.md Seeded INTENT.md 2026-06-22 21:41:12 +02:00
LICENSE Initial commit 2026-06-22 19:22:49 +00:00
pyproject.toml Implement the harness contract and prove it against rein-aharness (GLAS-WP-0001-T02/T03/T04) 2026-07-26 13:02:59 +02:00
README.md Update README.md 2026-06-22 19:23:45 +00:00
SCOPE.md Close out statehub-register bootstrap housekeeping (GLAS-0001) 2026-07-26 19:45:47 +02:00
WORK-RECORDS.md Formalize the CLI as the first Channel extension (GLAS-WP-0003) 2026-07-26 22:41:51 +02:00

Agent harness platform and meta framework.