Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
210 commits
Select commit Hold shift + click to select a range
2cb199f
merge latest wildclaw changed code
an2211 Jun 1, 2026
62f283c
Update email addresses to use the correct domain in various CSV files
soujanyagupta Jun 1, 2026
76839ac
merge latest wildclaw changed code
an2211 Jun 1, 2026
7997678
merge latest wildclaw changed code
an2211 Jun 1, 2026
0944cc8
Output artifacts + extra missing data fixes
akshatgharpure-kuberha Jun 1, 2026
d9bd595
Drift injector: mutable store + admin plane + drift director + 101-AP…
Jun 1, 2026
05d5062
Wire admin plane on intercom + mailchimp server.py
akshatgharpure-kuberha Jun 1, 2026
0110f2a
HTTP incorrect call errors
akshatgharpure-kuberha Jun 1, 2026
d29c280
Routing/file path issues fix
akshatgharpure-kuberha Jun 2, 2026
7590e86
sandbox config updates
akshatgharpure-kuberha Jun 2, 2026
5f7b6cb
exec tool config updates
akshatgharpure-kuberha Jun 2, 2026
528855e
Test gen over-write fix
akshatgharpure-kuberha Jun 2, 2026
b733ef6
Litellm unhealthy fix
akshatgharpure-kuberha Jun 2, 2026
e0adac0
Caching, score caluclation fix
akshatgharpure-kuberha Jun 2, 2026
9326867
Rubruc rating updates
akshatgharpure-kuberha Jun 2, 2026
2776480
Bash file and other fixes
akshatgharpure-kuberha Jun 3, 2026
0fcc0ec
added input data
an2211 Jun 3, 2026
65911c8
Add support for hand-authored test suites with weights
soujanyagupta Jun 3, 2026
9dcf49d
Merge branch 'main' of https://github.com/Ethara-Ai/WildClawBench
soujanyagupta Jun 3, 2026
d03b2cc
feat: Add output folder of the latest trajectory run
Jun 3, 2026
146ed09
Merge branch 'main' of https://github.com/Ethara-Ai/WildClawBench
Jun 3, 2026
2899a4e
feat: Add output folder of the latest trajectory run
Jun 3, 2026
196db87
Bedrock 400 error fix
akshatgharpure-kuberha Jun 3, 2026
8104865
Bedrock 400 error fix
akshatgharpure-kuberha Jun 3, 2026
214e20e
feat: Add the new another output for another task
Jun 3, 2026
ca95c59
Fix thinking persistence, council evidence parity, and amanda_hayes_0…
akshatgharpure-kuberha Jun 4, 2026
4a664ef
Re-verify CHECK 6 council parity on fresh post-fix GPT-5.5 run_2
akshatgharpure-kuberha Jun 4, 2026
226419c
Document GPT run_2 red-line test behavior confirming GAP-4 polarity f…
akshatgharpure-kuberha Jun 4, 2026
3a66228
Ignore benchmark output/ directory and untrack it from git
akshatgharpure-kuberha Jun 4, 2026
54b7dd6
Merge branch 'main' of github.com:Ethara-Ai/WildClawBench
akshatgharpure-kuberha Jun 4, 2026
552dcb3
Test generation parsing edge case handling
akshatgharpure-kuberha Jun 4, 2026
af882e3
Update requirements.txt
tabishkhan-ethara Jun 4, 2026
2d60abf
Whisper AI implementation
akshatgharpure-kuberha Jun 4, 2026
761db85
Merge branch 'main' of github.com:Ethara-Ai/WildClawBench
akshatgharpure-kuberha Jun 4, 2026
13da870
added code to log mock api health in logs
an2211 Jun 4, 2026
a0346db
Cost calculation fix + Whisper integration fix"
akshatgharpure-kuberha Jun 4, 2026
467eec4
Task Added
suchitnegi Jun 5, 2026
34bbf10
Added code to remove cost from trajectory
an2211 Jun 5, 2026
36d6354
Persona injections + Bedrock token count fix
akshatgharpure-kuberha Jun 5, 2026
6d2b0e6
add multiturn inject func
suchitnegi Jun 5, 2026
dbf7f95
resolve injection
suchitnegi Jun 5, 2026
dabd039
Add preflight usage tracking and extraction to usage logging also cor…
V1ibh1vsingh Jun 5, 2026
2b0ae56
Skills injection fix
akshatgharpure-kuberha Jun 5, 2026
512aab9
Fix LAYLA injection: FS copy hook, admin-op engine (patch/bulk/doc_se…
suchitnegi Jun 5, 2026
0956aa7
Add EC2 bootstrap script for one-command setup + injection smoke-test
suchitnegi Jun 5, 2026
3089849
Wheelhouse implementation for no network pip install
akshatgharpure-kuberha Jun 5, 2026
dccfc45
Task metadata loader fix
akshatgharpure-kuberha Jun 6, 2026
37d2cac
Debhouse setup
akshatgharpure-kuberha Jun 6, 2026
3b4e6c8
enviroment server logic fix
akshatgharpure-kuberha Jun 6, 2026
b86e1c1
reward re-work
akshatgharpure-kuberha Jun 6, 2026
2bb7b03
docker-compose.yaml build logic fix
akshatgharpure-kuberha Jun 7, 2026
570ce23
fix(env): scope mocks to task APIs, add Classroom turn-in + OpenAI im…
suchitnegi Jun 7, 2026
c85a454
fix(env): filter environment variables to only include active APIs fo…
suchitnegi Jun 7, 2026
ec949fc
fix(logging): enhance logging for mock stack and injected environment…
suchitnegi Jun 7, 2026
d3c84fe
Folder re-structure script
akshatgharpure-kuberha Jun 7, 2026
a3521a4
Enviroment update
akshatgharpure-kuberha Jun 7, 2026
5fec8a7
Connector missing data scripts
akshatgharpure-kuberha Jun 7, 2026
de7a6cb
Backfill script fix
akshatgharpure-kuberha Jun 7, 2026
3690c3d
Repackage script fix
akshatgharpure-kuberha Jun 7, 2026
53d52c5
AGENTS.md to AGENT.md renaming removed
akshatgharpure-kuberha Jun 8, 2026
b64087d
bedrock prefix fix
akshatgharpure-kuberha Jun 8, 2026
724e291
Add delivery pipeline (deliver.sh) + EC2 runbook
suchitnegi Jun 8, 2026
23b0fc7
Home directory update
akshatgharpure-kuberha Jun 8, 2026
21d9c45
Merge branch 'kensei-delivery-pipeline' of github.com:Ethara-Ai/WildC…
akshatgharpure-kuberha Jun 8, 2026
b75e54f
Home to data script
akshatgharpure-kuberha Jun 8, 2026
45321d2
Mock API fixes + Test name mismatch fix
akshatgharpure-kuberha Jun 10, 2026
9d95842
Merge branch 'main' of github.com:Ethara-Ai/WildClawBench
akshatgharpure-kuberha Jun 10, 2026
1c5f6dc
Drive download endpoint implementation
akshatgharpure-kuberha Jun 10, 2026
4b651ce
Add standalone repackager script for converting raw run output to pub…
suchitnegi Jun 10, 2026
c4451e8
feat(grading): port opt-in Headroom prompt-compression + litellm coun…
suchitnegi Jun 10, 2026
7973536
Bundle script update
akshatgharpure-kuberha Jun 10, 2026
dd61979
Enhance CTRF node ID normalization and update test name formatting
soujanyagupta Jun 10, 2026
d1bea2f
Remove CI workflow configuration file
soujanyagupta Jun 10, 2026
f576609
Refactor test name handling to strip qualifiers and improve output cl…
soujanyagupta Jun 11, 2026
79996bf
headroom chery pick
akshatgharpure-kuberha Jun 11, 2026
17d5ef6
Bedrock reconciliation
akshatgharpure-kuberha Jun 12, 2026
d002e31
Bedrock reconciliation
akshatgharpure-kuberha Jun 12, 2026
5b09696
Add deepcopy import to various API data modules for improved data han…
soujanyagupta Jun 12, 2026
12f3df7
Merge branch 'main' of https://github.com/Ethara-Ai/WildClawBench
soujanyagupta Jun 12, 2026
085e620
ENV Update
akshatgharpure-kuberha Jun 12, 2026
eac8df5
Headroom auto-build Update
akshatgharpure-kuberha Jun 12, 2026
aebb178
Bedrock config Update
akshatgharpure-kuberha Jun 12, 2026
de4b765
Enhance environment variable handling in Harbor bundle and compose ge…
soujanyagupta Jun 12, 2026
dc029ec
Bedrock config Update
akshatgharpure-kuberha Jun 12, 2026
e07ccda
Litellm config Update
akshatgharpure-kuberha Jun 13, 2026
90c9822
openclaw: use shipped strictInlineEval key instead of unmerged obfusc…
akshatgharpure-kuberha Jun 13, 2026
470c324
openclaw: version-gate strictInlineEval so config stays valid on 2026…
tabishkhan-ethara Jun 13, 2026
55b40ea
Added cache input output token in output.json
an2211 Jun 15, 2026
d3dfec8
Removed total test fields from score.json
an2211 Jun 15, 2026
3d41517
Chnages in llm sidecar
an2211 Jun 15, 2026
44d7652
Enhance input artifact handling and compression logic in OpenClaw
soujanyagupta Jun 15, 2026
a45b5ea
Added changes in hudge file to fix API key issue
an2211 Jun 15, 2026
5335a8d
Merge branch 'main' of https://github.com/Ethara-Ai/WildClawBench
an2211 Jun 15, 2026
634320c
Harness Review Feedback Fix
suchitnegi Jun 15, 2026
dcd4d51
fix(harness): working agent headroom + task-scoped mock APIs
suchitnegi Jun 16, 2026
6dcf57c
emit meta_info before messages in published output.json
mirza-anzar-baig Jun 16, 2026
354a305
Add CHECK_KEYS_PROMPT.md and SCHEMA.md to environment/
akshatgharpure-kuberha Jun 16, 2026
15a9cd6
Improve golden trajectory flow
suchitnegi Jun 17, 2026
8f5df6f
loud injection implement
suchitnegi Jun 17, 2026
3bc2342
fix run.sh for parallel calls
Jun 18, 2026
788a565
fix task bundle output
Jun 18, 2026
470af26
fix bundle structure
Jun 18, 2026
e7dcbcb
Security fixes: argv-flag injection (S-001), SSRF guard (S-002), tigh…
akshatgharpure-kuberha Jun 18, 2026
e763e25
Negative reward calculation update
akshatgharpure-kuberha Jun 19, 2026
7a385e0
Tests for overlay logic
akshatgharpure-kuberha Jun 19, 2026
8d77592
removed output folders
an2211 Jun 19, 2026
517b8ba
Add Env connectors
suchitnegi Jun 19, 2026
eb06141
Add source-tree AGENTS.md files and output_bundle/ to gitignore
akshatgharpure-kuberha Jun 19, 2026
67af103
Merge scripts/ into script/ and drop repo-root run.sh
akshatgharpure-kuberha Jun 19, 2026
3c47b98
Rewrite script/run.sh with structured flags, preflight phases, and sh…
akshatgharpure-kuberha Jun 19, 2026
c7fe1d4
Replace upstream prepare.sh with host and dataset bootstrap
akshatgharpure-kuberha Jun 19, 2026
cea663e
Refactor deliver.sh with structured delivery phases and shared log lib
akshatgharpure-kuberha Jun 19, 2026
94585ca
Add script/rerun_tests.py standalone testexec re-runner
akshatgharpure-kuberha Jun 19, 2026
170e905
Add read_json_with_ctx, read_seed_with_ctx, and guess_download_mime t…
akshatgharpure-kuberha Jun 19, 2026
9455c12
Wire extension-agnostic seed dispatcher into airtable and algolia mocks
akshatgharpure-kuberha Jun 19, 2026
8d7f368
Use composite synthetic _pk on 22 mock APIs to avoid PK collisions
akshatgharpure-kuberha Jun 19, 2026
1aaa225
Add new endpoints to amazon-seller, myfitnesspal, and quickbooks mocks
akshatgharpure-kuberha Jun 19, 2026
2a15c2c
Update grading docstring to reflect deprecated tests_* alias removal
akshatgharpure-kuberha Jun 19, 2026
39b1c06
Update operator docs and run_batch docstring to the script/ path
akshatgharpure-kuberha Jun 19, 2026
9f64139
Add patricia_waters multimodal reconciliation task
akshatgharpure-kuberha Jun 19, 2026
4323c14
Drop legacy amanda_hayes_01 generated output from tracking
akshatgharpure-kuberha Jun 19, 2026
227bf70
Merge origin/main (output folder cleanup)
akshatgharpure-kuberha Jun 19, 2026
0daa648
Migrate environment/ from kensei-delivery-pipeline
akshatgharpure-kuberha Jun 19, 2026
93edb5c
Add Fantasy genre to genres.json
GuptaSoujanya Jun 20, 2026
82a17bb
Persist mock data-module writes through the store (fix lost append/up…
suchitnegi Jun 22, 2026
6fe218b
Add opt-in multi-agent sub-agent spawning to the openclaw backend
suchitnegi Jun 22, 2026
23ce5e7
Implement parallel execution for task repetitions and enhance run dir…
GuptaSoujanya Jun 22, 2026
6842a1b
Judge unanimous decision change
akshatgharpure-kuberha Jun 24, 2026
c8d4dbb
Update record references from JSON to CSV format in Airtable and Algo…
GuptaSoujanya Jun 24, 2026
de5509a
Enhance seed file resolution logic to support fallback from CSV to JSON
GuptaSoujanya Jun 24, 2026
9d0f0be
Input re-creation script
akshatgharpure-kuberha Jun 24, 2026
f0e2267
Merge branch 'main' of github.com:Ethara-Ai/WildClawBench
akshatgharpure-kuberha Jun 24, 2026
4469416
fix: harness task run without header token
dineshkumar-ethara Jun 24, 2026
c1356cd
Run bash script fix
akshatgharpure-kuberha Jun 24, 2026
7f8c7ae
Parallelization fix without clean-up command step
akshatgharpure-kuberha Jun 24, 2026
9a17c06
Judge caching
akshatgharpure-kuberha Jun 25, 2026
cdb6eff
enable native multi-agent sub-agents
suchitnegi Jun 25, 2026
1d7804a
Parallel run safety to avoid entire batch failure
akshatgharpure-kuberha Jun 25, 2026
1b2d71d
Adding ground truth to the final output_bundle
akshatgharpure-kuberha Jun 25, 2026
1d1529f
Test cases for new bundle feature
akshatgharpure-kuberha Jun 25, 2026
dd13697
Golden truth MD file addition in output bundle + overall regex handli…
akshatgharpure-kuberha Jun 25, 2026
6e03e6b
Bundle automatic path fix to configure missing files
akshatgharpure-kuberha Jun 25, 2026
1ae3322
fix(bundle): derive --input-root from task path + surface stderr
akshatgharpure-kuberha Jun 26, 2026
1fcfc03
Integrate 1P vendor model via LiteLLM sidecar
suchitnegi Jun 26, 2026
9c9d372
fix(pass_summary): emit real pytest counts + combined reward; add bac…
tabishkhan-ethara Jun 26, 2026
d501ea9
Env folder not appearing in output folder
akshatgharpure-kuberha Jun 26, 2026
be0d94c
Parallelization and multiple run failure guard
akshatgharpure-kuberha Jun 26, 2026
4d813c5
Overlay display show
akshatgharpure-kuberha Jun 26, 2026
ccad695
Increase the limit of max children
suchitnegi Jun 26, 2026
0206e64
feat(backfill): add script to backfill missing data directories in ou…
GuptaSoujanya Jun 27, 2026
e25df07
Multiple reps, docker resource share issue fix
akshatgharpure-kuberha Jun 27, 2026
9aa37a2
Merge branch 'main' of github.com:Ethara-Ai/WildClawBench
akshatgharpure-kuberha Jun 27, 2026
9da6eca
Ouptut bundle missing files fix
akshatgharpure-kuberha Jun 27, 2026
ffc87cb
run.sh edited for all fixes
akshatgharpure-kuberha Jun 27, 2026
7fb3cf5
output data missing fix
akshatgharpure-kuberha Jun 27, 2026
bd60d0c
create build trajectory script to build all trajectory in deliverable…
suchitnegi Jun 27, 2026
e71178f
fix: report.json rubric meta and score.json test counts
Jun 27, 2026
b91b152
output_bundle and output data fix
akshatgharpure-kuberha Jun 27, 2026
a128ac9
Extra files removed
akshatgharpure-kuberha Jun 27, 2026
f19c46d
accept both test_output.py and test_outputs.py
akshatgharpure-kuberha Jun 29, 2026
aaf67d5
unnecessary files fix
akshatgharpure-kuberha Jun 29, 2026
ee16495
fix(bundle): keep connector scripts/ and source dependency_tags from …
tabishkhan-ethara Jun 29, 2026
3ada165
Conflict merge
akshatgharpure-kuberha Jun 29, 2026
996400a
Repackage bundler script not showing scripts/ folder in enviroment
akshatgharpure-kuberha Jun 29, 2026
5b6d0df
Validator and merge script
akshatgharpure-kuberha Jun 29, 2026
9a7a6f5
Verification script update
akshatgharpure-kuberha Jun 29, 2026
bf3c7a3
Merge script update
akshatgharpure-kuberha Jun 30, 2026
05d9f81
Updated regrading system
suchitnegi Jun 30, 2026
1239209
Primary key check removal
akshatgharpure-kuberha Jun 30, 2026
b5b88f4
feat(task): add task_id to task.toml output
GuptaSoujanya Jul 1, 2026
5da1b38
Merge branch 'main' of https://github.com/Ethara-Ai/WildClawBench
GuptaSoujanya Jul 1, 2026
920fca3
Pass summmary recreation script
akshatgharpure-kuberha Jul 1, 2026
2292568
Merge branch 'main' of github.com:Ethara-Ai/WildClawBench
akshatgharpure-kuberha Jul 1, 2026
7a9468e
Add backfill scripts for subagent meta and test scoring; update bundl…
Jul 2, 2026
226da6f
FIX: mock API validaor script
akshatgharpure-kuberha Jul 2, 2026
b24f419
Mock Audit report based fix
akshatgharpure-kuberha Jul 2, 2026
508e1c2
Mock validation script
akshatgharpure-kuberha Jul 2, 2026
010c3c7
Claude OAuth Pathway
akshatgharpure-kuberha Jul 3, 2026
2c0dfcd
FEATURE: Enhance endpoint validation and service route extraction for…
GuptaSoujanya Jul 4, 2026
d1f9fd2
fix: gateway readiness polling, new judge profile ids, workspace hint…
suchitnegi Jul 6, 2026
43faec3
feat: add --no-subagents flag and fix subagent trajectory truncation
suchitnegi Jul 6, 2026
b705a8b
feat: Implement OAuth bridge for Sonnet judge and enhance billing att…
GuptaSoujanya Jul 6, 2026
a1d710e
add missing cache token pricing
sachingupta-beep Jul 6, 2026
5bb2299
feat: Enhance LLM route readiness check and adjust judge cost handlin…
GuptaSoujanya Jul 6, 2026
5cd2258
feat: Enhance login function to support non-file pool specifications
AnamZ762 Jul 7, 2026
cfdad62
feat: Add one-command setup for per-laptop onboarding and enhance log…
GuptaSoujanya Jul 7, 2026
e923bc8
Migrate environment/ seeds CSV -> JSON onto talos-multiagent
Alok-Ethara Jul 6, 2026
44365ef
FEATURE: Enhance endpoint validation and service route extraction for…
GuptaSoujanya Jul 4, 2026
b325f82
fix: recover parent stall after sub-agent fan-out; add --no-subagents…
suchitnegi Jul 7, 2026
d9f0394
Merge branch 'talos-multiagent' of https://github.com/Ethara-Ai/WildC…
sachingupta-beep Jul 7, 2026
f76bedd
feat: Add one-command setup for per-laptop onboarding and enhance log…
GuptaSoujanya Jul 7, 2026
fd59d8b
Revert "feat: Add one-command setup for per-laptop onboarding and enh…
sachingupta-beep Jul 7, 2026
a17b3f0
Merge branch 'main' of https://github.com/Ethara-Ai/WildClawBench int…
GuptaSoujanya Jul 8, 2026
41be357
FIX:score.json not being generated fixed.
akshatgharpure-kuberha Jul 9, 2026
49162cd
test: add unit coverage for previously-untested modules; stabilize lo…
Alok-Ethara Jul 9, 2026
0d6624a
Linux wcb support
akshatgharpure-kuberha Jul 10, 2026
fc9cbd1
kensi-tui
akshitadixit-ethara Jul 13, 2026
3b6f965
Merge branch 'test-coverage-expansion' into master
Alok-Ethara Jul 13, 2026
ca47850
FEATURE: live LLM response streaming (agent trajectory, judges, testgen)
mirza-anzar-baig Jul 13, 2026
31d5477
Merge claude_oauth_pathway: live LLM response streaming (see docs/STR…
mirza-anzar-baig Jul 13, 2026
e515184
FIX: suppress stream renderer under the Textual dashboard (--tui + --…
mirza-anzar-baig Jul 13, 2026
3d519b2
FEATURE: stream LLM output inside the TUI (single terminal, EV_TOKEN …
mirza-anzar-baig Jul 13, 2026
723a660
Merge talos-multiagent into master (multiagent + injection + golden p…
suchitnegi Jul 13, 2026
ee26d73
FEATURE: auto-run backfill repairs in run.sh + deliver.sh pipelines
Alok-Ethara Jul 13, 2026
5b25981
FIX: renderer waits for tokens instead of one-way agent.log fallback
mirza-anzar-baig Jul 13, 2026
ecac1ee
Merge origin/master (test-coverage expansion + backfill pipelines) in…
mirza-anzar-baig Jul 13, 2026
405fa39
merge talos-multiagent with kensei master
suchitnegi Jul 13, 2026
ca2f76e
update with remote
suchitnegi Jul 13, 2026
0f78a7f
FIX: restore merge-dropped signatures, polarity canon, backfill hooks…
Alok-Ethara Jul 14, 2026
cb6da3e
FIX: google mocks lost-write idiom (drive/calendar/classroom); deprec…
Alok-Ethara Jul 14, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
158 changes: 137 additions & 21 deletions .env.example
Original file line number Diff line number Diff line change
@@ -1,40 +1,156 @@
# ============================================================================
# WildClawBench (LiteLLM/Bedrock fork) — environment template
# ----------------------------------------------------------------------------
# Copy to .env and fill in your values: cp .env.example .env
# .env is gitignored; NEVER put real secrets in this .env.example (it is tracked).
# Variable names below are exactly what the code reads (config.py / run_batch.py
# / docker_utils.py). KENSEI_* names are the primary keys; generic aliases noted.
# ============================================================================

# ===== Container / runtime =====
DOCKER_IMAGE=wildclawbench-ubuntu:v1.3
GATEWAY_PORT=18789
TMP_WORKSPACE=/tmp_workspace

TASKS_SUBDIR=tasks
OUTPUT_SUBDIR=output

DEFAULT_MODEL=openrouter/xxx

DEFAULT_PARALLEL=1

# Default model. In LiteLLM mode use a sidecar id (claude-opus-4.7 / gpt-5.5);
# otherwise an OpenRouter string (e.g. openrouter/anthropic/claude-sonnet-4.6).
DEFAULT_MODEL=openrouter/anthropic/claude-sonnet-4.6

# ===== Inner proxy (optional; leave blank for none -> NO_PROXY defaults to *) =====
HTTP_PROXY_INNER=
HTTPS_PROXY_INNER=
NO_PROXY_INNER=

OPENROUTER_BASE_URL='https://openrouter.ai/api/v1'
JUDGE_MODEL=openai/gpt-5.4
# ===== OpenRouter (fallback routing when LiteLLM is not enabled) =====
OPENROUTER_API_KEY=
BRAVE_API_KEY=

# Using a Custom Model Endpoint
OPENROUTER_BASE_URL=https://openrouter.ai/api/v1
# LLM judge used by some tasks' automated checks
JUDGE_MODEL=openai/gpt-5.4
# Brave key is passed to the container; 'placeholder' prevents a gateway crash
BRAVE_API_KEY=placeholder
# For --models-config files that contain ${MY_PROXY_API_KEY}
# MY_PROXY_API_KEY=

# Lobster profile env keys (add values here for skills that need them)
# GEMINI_API_KEY=
# FIRECRAWL_API_KEY=
# EXA_API_KEY=
# ============================================================================
# LiteLLM / Bedrock routing (openclaw backend)
# If Bedrock (ARN + bearer token) OR OpenAI is set, openclaw auto-routes through
# a shared LiteLLM sidecar instead of OpenRouter. Force with --litellm / --no-litellm.
# ============================================================================
# --- AWS Bedrock (Claude via Bedrock API key / bearer token) ---
# alias: BEDROCK_MODEL_ARN
KENSEI_BEDROCK_MODEL_ARN= # arn:aws:bedrock:<region>:<acct>:application-inference-profile/<id> (Opus 4.6/4.7 profile; also used by test-gen)
# Sonnet 4.6 inference profile (used when claude-sonnet-4-6 routes through the
# sidecar). Same application-inference-profile ARN format as above.
# alias: BEDROCK_SONNET_ARN
KENSEI_BEDROCK_SONNET_ARN= # arn:aws:bedrock:ap-south-1:<acct>:application-inference-profile/<id>
# alias: AWS_REGION
KENSEI_AWS_REGION=ap-south-1

# --- Claude Max OAuth subscription (per-user, per-laptop) ---
# These power `wcb login` so trajectories + the Sonnet judge run on YOUR own
# Claude Max subscription instead of a metered API key. Each teammate fills in
# THEIR OWN values here on THEIR OWN machine — never commit real secrets (.env
# is gitignored; only this .env.example template is tracked). No KENSEI_ prefix
# fallback exists for these four; they are read verbatim.
# WCB_USE_CLAUDE_OAUTH=1
# WCB_CC_ACCOUNT_POOL=/Users/<you>/.wcb/oauth_pool/account_a.json
# WCB_CC_BRIDGE_SECRET=<openssl rand -hex 32>
# WCB_CC_STUB_KEY=sk-wcb-oauth-stub

# Task env
# 01_Productivity_Flow
# --- LLM-council judge ARNs (rubric grading) ---
# The 3-model council (Sonnet 4.6 + GLM 5 + Kimi K2.5) runs in parallel for
# rubric grading. Each member is a full bedrock/<application-inference-profile>
# ARN, read ONLY from these vars (no defaults in source) — set them to YOUR
# account's profiles. The VARIABLE NAME (not the ARN) decides the model family,
# so pricing/evidence-budget/cache rules live in code keyed by family and the
# opaque profile-id is NOT load-bearing — rotate the ARNs freely (e.g. monthly)
# and costs still resolve correctly. Per-model regions: GLM is us-east-1,
# Sonnet + Kimi are ap-south-1.
# JUDGE_COUNCIL_SONNET_ARN=bedrock/arn:aws:bedrock:ap-south-1:<acct>:application-inference-profile/<id>
# JUDGE_COUNCIL_GLM_ARN=bedrock/arn:aws:bedrock:us-east-1:<acct>:application-inference-profile/<id>
# JUDGE_COUNCIL_KIMI_ARN=bedrock/arn:aws:bedrock:ap-south-1:<acct>:application-inference-profile/<id>
# For a custom roster, set JUDGE_COUNCIL_MEMBERS to a comma-separated list of
# family=arn entries (overrides the three vars above), e.g.:
# JUDGE_COUNCIL_MEMBERS=sonnet=bedrock/arn:...:profile/abc,glm=bedrock/arn:...:profile/def
# alias: AWS_BEARER_TOKEN_BEDROCK
KENSEI_AWS_BEARER_TOKEN= # your Bedrock API key (bearer token)

# 02_Code_Intelligence
# --- OpenAI (gpt-5.5 via LiteLLM) ---
# alias: OPENAI_API_KEY
KENSEI_OPENAI_API_KEY=

# 03_Social_Interaction
# --- Whisper / audio transcription (via LiteLLM /v1/audio/transcriptions) ---
# Dedicated key for the whisper-1 (and gpt-4o-transcribe) routes the
# audio-extract skill uses. Optional: if left empty, transcription falls back
# to KENSEI_OPENAI_API_KEY above. Must be an OpenAI key with audio access.
# alias: OPENAI_WHISPER_API_KEY
KENSEI_OPENAI_WHISPER_API_KEY=

# 04_Search_Retrieval
# --- Meta vendor model (internal Llama API, OpenAI-compatible, via LiteLLM) ---
# When KENSEI_META_API_KEY *and* KENSEI_META_MODEL are both set, the sidecar
# registers an OpenAI-compatible upstream pointed at KENSEI_META_BASE_URL and
# LiteLLM auto-enables. The harness-facing model id IS KENSEI_META_MODEL, so
# select it with `--model <that id>`. Per the vendor onboarding guide, ALL
# inference params are kept at their defaults (no reasoning_effort/temperature/
# top_p/top_k overrides); litellm_settings.drop_params strips anything callers
# emit that the relay doesn't support (no structured output / parallel tools).
# alias: META_API_KEY
KENSEI_META_API_KEY=
# alias: META_MODEL — must match exactly what the relay's /models returns
KENSEI_META_MODEL=
# alias: META_API_BASE_URL (default below; note the required /v1 suffix)
KENSEI_META_BASE_URL=https://api.ai.meta.com/v1

# 05_Creative_Synthesis
# --- LiteLLM proxy (sidecar) ---
# aliases: KENSEI3_LITELLM_MASTER_KEY, LITELLM_MASTER_KEY
KENSEI_LITELLM_MASTER_KEY=sk-talos-litellm
# alias: LITELLM_PORT
KENSEI3_LITELLM_PORT=4000
# Model id used when --litellm is active and --model is not a sidecar id
LITELLM_DEFAULT_MODEL=claude-opus-4.7

# 06_Safety_Alignment
# ===== Cost-estimate fallback rates (Codex / Claude Code harnesses) =====
# The Codex and Claude Code harnesses run outside the LiteLLM sidecar, so
# litellm.completion_cost() never sees their tokens. When the harness transcript
# does NOT report a provider cost, cost_usd is ESTIMATED from these per-million-
# token (MTok) rates. If left unset they default to 0 -> cost_usd is recorded as
# $0 for those runs. Set them to the published rates of the model you are running.
# Codex estimator subtracts cache_read+cache_write from input before pricing;
# Claude Code estimator prices the full input_tokens (no cache subtraction).
# Example (Claude Opus 4.6/4.7): input 5, output 25, cache_read 0.5, cache_write 6.25
# CODEX_INPUT_PRICE_PER_MTOK=
# CODEX_OUTPUT_PRICE_PER_MTOK=
# CODEX_CACHE_READ_PRICE_PER_MTOK=
# CODEX_CACHE_WRITE_PRICE_PER_MTOK=
# CLAUDECODE_INPUT_PRICE_PER_MTOK=
# CLAUDECODE_OUTPUT_PRICE_PER_MTOK=
# CLAUDECODE_CACHE_READ_PRICE_PER_MTOK=
# CLAUDECODE_CACHE_WRITE_PRICE_PER_MTOK=

# ===== Mock-API stack (101 services under environment/) =====
# Enable per run with --mock-stack ; agents reach each API at
# http://<mock-container>:<port> via injected *_API_URL env vars (builds kensei3-mocks:v1).

# ===== Skills (sourced from environment/skills/: *-connector + media skills) =====
# Required-API connectors auto-inject per task. These inject into EVERY task:
WILDCLAW_DEFAULT_SKILLS=video-frames,pdf-extract,audio-extract
# WILDCLAW_SKILLS_DIR= # override skill catalog dir (default: environment/skills)

# ===== Harbor bundle (optional) =====
# MIN_HARBOR_SCORE= # skip bundle export below this score

# ===== S3 trajectory-media upload (optional; default keeps media as local files) =====
UPLOAD_MEDIA_TO_S3=false
S3_BUCKET=
S3_PREFIX=WildClaw
S3_REGION=us-east-1
# aliases: AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY
KENSEI_S3_ACCESS_KEY_ID=
KENSEI_S3_SECRET_ACCESS_KEY=

# ===== Lobster profile env keys (for skills that need API keys) =====
# GEMINI_API_KEY=
# FIRECRAWL_API_KEY=
# EXA_API_KEY=
66 changes: 60 additions & 6 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@ __pycache__/
*.py[cod]
*$py.class

.venv/
venv/
work/


*.tar
*.zip
Expand All @@ -25,12 +29,7 @@ __pycache__/
Images/
_workspace/
workspace/
script/
tools/
output/
output_sum/
output_qwen/
output*/
.cache/
.hfd/
hfd.sh
Expand All @@ -39,4 +38,59 @@ grocery/
cookies.txt
output.rar
output_qwen.rar
*.rar
*.rar

# Benchmark run output (trajectories, scores, artifacts) — large, machine-specific.
output/
# Repackaged Harbor bundle (derived from output/; large, machine-specific).
output_bundle/

# Local review / audit documents.
review_docs/

# Per-run telemetry written by run.sh tee — local, timestamped, machine-specific.
logs/

# macOS Finder duplicate-on-copy directories ("foo copy/", "foo copy 2/").
*\ copy/
*\ copy\ [0-9]*/

# Audit deliverables (findings.json, REPORT.md, BUGS.md, REMEDIATION.md, logs/) — local-only, machine-specific.
audit/

# macOS Finder duplicate-on-copy of audit/ (created when the folder is duplicated in Finder).
/audit 2/

# Operator/maintainer knowledge bases — NOT loaded by the harness at runtime.
# Persona-side AGENTS.md files under input/<task>/persona/ ARE loaded into the
# agent container via docker cp and must remain tracked; only the source-tree
# variants below are ignored.
/AGENTS.md
/environment/AGENTS.md
/src/agents/AGENTS.md
/src/utils/AGENTS.md
/tests/AGENTS.md

# Local-only triage / verification notes that aren't required to run the harness.
CRUCIBLE.md
SIX_CHECK_VERIFICATION_REPORT.md

# Never commit .env or any timestamped backup of it — secrets live here.
.env
.env.*
.env.backup*

# Curated/published trajectories (derived from output/ + input/; large, machine-specific).
trajectories/

# Node tooling pulled in locally — not part of the benchmark.
node_modules/
package.json
package-lock.json

# SQLite WAL/SHM side-files — transient, never meant to be tracked.
*.db-shm
*.db-wal

# Local helper task list generated by tooling.
tasks_all.txt
19 changes: 19 additions & 0 deletions .opencode/command/audit.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
description: Run the CRUCIBLE audit gate (run instruments → review → verify)
agent: build
---

The contract is `@CRUCIBLE.md`. The run playbook is `@audit/README.md`. Do not restate the contract.

Phase 1 — generate evidence:
!`uv run --project audit python audit/audit.py run`

Phase 2 — review: read `@REVIEW.md` as your instructions and `@audit/evidence.yaml` as the
ONLY source of instrumented evidence. Write `findings.yaml` and `REPORT.md` at the project
root (strip any `_template`/`_example` keys; `REPORT.md` is the single human report and its
**Bug Tickets** section holds the JIRA-style tickets).

Phase 3 — gate:
!`uv run --project audit python audit/audit.py verify --findings findings.yaml --context audit/evidence.yaml`

Findings are UNGATED until `verify` exits 0.
12 changes: 12 additions & 0 deletions .opencode/skill/audit-gate/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
name: audit-gate
description: Use when auditing this project's deliverables against the CRUCIBLE gate — run instruments, review evidence, and verify findings fail-closed.
---

This skill defers entirely to the contract in `CRUCIBLE.md` and the run playbook in
`audit/README.md`. It never restates the axes, severity scale, or disposition vocabulary.

The two reviewer artifacts are `findings.yaml` and `REPORT.md` (project root). The only
admissible evidence source is `audit/evidence.yaml`. The gate is
`uv run --project audit python audit/audit.py verify --findings findings.yaml --context audit/evidence.yaml`,
which exits 0 only when the report is internally honest and every required instrument ran clean.
Loading