Summary
Evotown is the system of record for runs, artifacts, and scoring signals across independent engines (OpenClaw-style runners, Hermes, SkillLite, etc.).
A draft v0.1 ingest HTTP contract is defined in docs/en/EVOTOWN-ENGINE-INGEST-V0.1.md (mirrored from the Evotown repo). SkillLite currently interoperates with OpenClaw-style skill trees via CLI (import-openclaw-skills, claw migrate) but does not yet push run results to Evotown over HTTP.
This issue tracks building a SkillLite → Evotown ingest adapter so engine runs can be scored, compared, and audited in a central arena.
Scope (v0.1 MVP)
Implement a SkillLite-side adapter that calls Evotown's required endpoints:
| Endpoint |
Priority |
Purpose |
POST /runs/{run_id}/complete |
Required |
Finalize run status, log excerpt, artifact manifest, scoring signals |
POST /engines/register |
Optional |
Register engine provenance + optional dispatch URL |
POST /runs/{run_id}/artifacts |
Optional |
Upload large blobs when manifest-only is insufficient |
Proposed integration points
- CLI hook — e.g.
skilllite evotown push --run-id … --evotown-url … (or env-driven post-run callback)
- Evolution / agent run completion — emit
signals such as task_completed, new_skill_paths, latency_ms from existing run metadata
- Artifact bundle — reuse
skilllite-artifact store to build artifact_manifest (path + sha256 + bytes)
- Auth — support Bearer token and HMAC signature headers per spec
Acceptance criteria
Out of scope (v0.1)
- Evotown → engine dispatch (
RunJob push to engine dispatch_url) — described as optional pairing pattern only
- Replacing local evolution audit trail with Evotown as sole storage
References
Summary
Evotown is the system of record for runs, artifacts, and scoring signals across independent engines (OpenClaw-style runners, Hermes, SkillLite, etc.).
A draft v0.1 ingest HTTP contract is defined in
docs/en/EVOTOWN-ENGINE-INGEST-V0.1.md(mirrored from the Evotown repo). SkillLite currently interoperates with OpenClaw-style skill trees via CLI (import-openclaw-skills,claw migrate) but does not yet push run results to Evotown over HTTP.This issue tracks building a SkillLite → Evotown ingest adapter so engine runs can be scored, compared, and audited in a central arena.
Scope (v0.1 MVP)
Implement a SkillLite-side adapter that calls Evotown's required endpoints:
POST /runs/{run_id}/completesignalsPOST /engines/registerPOST /runs/{run_id}/artifactsProposed integration points
skilllite evotown push --run-id … --evotown-url …(or env-driven post-run callback)signalssuch astask_completed,new_skill_paths,latency_msfrom existing run metadataskilllite-artifactstore to buildartifact_manifest(path + sha256 + bytes)Acceptance criteria
POST /runs/{run_id}/completewith schema validation and idempotent retry on 409SKILLLITE_EVOTOWN_URL,SKILLLITE_EVOTOWN_TOKEN, etc.) documented in ENV_REFERENCEOut of scope (v0.1)
RunJobpush to enginedispatch_url) — described as optional pairing pattern onlyReferences
docs/en/EVOTOWN-ENGINE-INGEST-V0.1.mddocs/openapi/evotown-engine-ingest-v0.1.yaml