coldpass

dannyisbad/agrep

GitHub ↗ · How this check works

Per-setup public labels: Linux / Haiku: Works · Linux / Luna: Works

Static status badge · SVG · read-only JSON. Embed with ![Coldpass status](https://coldpass.dev/badge/dannyisbad--agrep.svg).

agent-harness

Works

The recorded run passed on 2 setups.

Answers apply to each recorded setup, revision and operation. Earlier observations remain in Run details.

Tested on Linux
PlatformHaikuLuna
Linuxyesyes

Linux / Haiku 5.5: yes · Oct 28, 2026 · ac4efadbc0a3 · claude-code / 2.1.310 (Claude Code)
Recorded operation: python3 cli.py 'copper lantern'

Linux / Luna: yes · Oct 28, 2026 · ac4efadbc0a3 · codex / codex-cli 0.164.0
Recorded operation: python3 cli.py 'copper lantern'

Does what it says
1 of 1 claims checked out
  • Keyword search finds matching conversation context: Real input produced the expected result: The copper lantern manifest names the amber gate and west dock.

    Source: agrep <pattern> # keyword search; first run builds the index

    Input: copper lantern

    Expected: The copper lantern manifest names the amber gate and west dock.

    Command: python3 cli.py 'copper lantern'

    Observed: …The copper lantern manifest names the amber gate and west dock. 55555555-5555-4555-8555-555555555555 codex cedar 0 tool exec_command: cat manifest.txt toolproof-codex: copper lantern manifest verified

MCP
No
Local or hosted
local
Local: runs on your machine
Needs keys or browser
None seen
Maintained
Maintained
actively maintained: last commit 0 days ago; 82 commits and 0 merged PRs in 90 days; 0 open issues, 0 open PRs; latest release 2026-10-28

Last commit Oct 27, 2026

Setup time
3 min 21 s
3 min 21 s to a working result
Issue
none found in recorded check
Examples
1 of 1 ran as expected
  • Search indexed conversations by keyword: command completed successfully

    Source: README.md / The commands you actually need

    Input: copper lantern

    Expected: Matching Codex conversation lines

    Command: python3 cli.py 'copper lantern'

    Observed: 55555555-5555-4555-8555-555555555555 codex cedar 0 user Audit the copper lantern deployment manifest for cedar. 55555555-5555-4555-8555-555555555555 codex cedar 0 agent The copper lantern manifest names the amber gate and west dock. 55555555-5555-4555-8555-555555555555 codex cedar 0 tool exec_command: cat manifest.txt toolproof-codex: copper lantern manifest verified

Evidence
README behavior checked
Agent interfaces
CLI
CLI

Observed interfaces were exercised by the checker. Documentation alone does not confirm compatibility.

Tested with
Codex / Luna
  • Linux: Codex / Luna · agent codex-cli 0.164.0 · Checked operation passed · Oct 28, 2026 on ac4efadbc0a3

Each entry describes its recorded operation and source revision.

Safety
Made outbound HTTPS connections: yes (hosts not recorded) by <guest-path>

Review signals across current setups: connection review. 12 listed items (named-host connections, static matches, dependency advisories) are below and do not change this verdict. 10 static matches retained as context.

Repository processes attempted these non-loopback connections; proxies can hide the final hostname. 8 distinct locations. 2 attributed processes.

Source contains download and execute; review its purpose. npm/bin.js

Gitleaks found a possible hardcoded secret; value withheld. crates/agrep-cli/src/index_lock.rs

OSV reports a known vulnerability in this dependency version. 4 distinct locations. 4 findings.

Reviewed as expected for a test run: attempted writes that failed, so nothing was written; package managers (cargo) downloaded dependencies over HTTPS; wrote only to its own open file handles.

Reviewed as expected for a test run: attempted writes that failed, so nothing was written; package managers (rustup-init) downloaded dependencies over HTTPS; resolver address lookups that send no data; wrote only to its own open file handles.

Full event, path and process lists for each observed setup:

Run details

Haiku 5.5

Native agent · Checked operation passed

Checked operation python3 cli.py 'copper lantern'

Agent-reported scope: Keyword search over indexed agent transcripts from the source checkout: python3 cli.py "copper lantern" returns the matching fixture messages, plus -E regex, -l chat listing, around context and --agent filtering.

Run details
run
dannyisbad--agrep-claude-haiku-5-5-1793167583052273048
date
Oct 28, 2026
time to working
325.2s
product hosting / execution
Local command in the guest
recorded operation scope
product operation
model
claude-haiku-5-5
agent / version
claude-code / 2.1.310 (Claude Code)
platform
linux
reported cost
$0.024968
Recorded source
https://github.com/dannyisbad/agrep
Backend
hyperv
Tool transport
mcp-assigned-vm
Requested source pin (not an observed revision)
{"commit": "ac4efadbc0a305ac8bbb068422c5437157f35f56", "url": "https://github.com/dannyisbad/agrep"}
Test version
readme-a0d0e27a4d0fd4c50903587087c25799260ee2578ee1953a6356df3e4fd02c35
revision
ac4efadbc0a305ac8bbb068422c5437157f35f56
Whose fault: not assigned · resolved

Safety: Review signals: 1 download and execute, 1 hardcoded secret, 4 known vulnerability. 5 static matches retained as context.

Review signals: 1 download and execute, 1 hardcoded secret, 4 known vulnerability. 5 static matches retained as context.

Reviewed as expected for a test run: attempted writes that failed, so nothing was written; package managers (cargo) downloaded dependencies over HTTPS; wrote only to its own open file handles.

Source contains download and execute; review its purpose. npm/bin.js

Gitleaks found a possible hardcoded secret; value withheld. crates/agrep-cli/src/index_lock.rs

OSV reports a known vulnerability in this dependency version. 4 distinct locations. 4 findings.

5 hardcoded secret matches retained as context; full list in the evidence.

OSV scanned supported lockfiles; unpinned dependencies and unsupported formats are outside this check.

A short run cannot establish that code is safe.

Connections show IP addresses; proxies can hide the final hostname.

Tracing covers dispatched commands and their children, not the whole OS; guest root can interfere with tracing.

Full safety evidence →

Answers recorded for this run
  • agrep -E runs a regular expression search: Real input produced the expected result: copper lantern upgrade beacon beside the deployment map

    Source: # regular expression search

    Input: copper (lantern|bucket)

    Expected: fixture hit matched by the regex

    Command: python3 cli.py -E 'copper (lantern|bucket)'

    Observed: …copper lantern upgrade beacon beside the deployment map.

  • agrep -l lists matching chats, not every line: Real input produced the expected result: upgrade-fixture

    Source: # matching chats, not every line

    Input: lantern

    Expected: one chat line for the fixture session

    Command: python3 cli.py -l lantern

    Observed: …upgrade-fixture [@11111111:0.c04e · 2 hits · 87d]

  • agrep around shows context around a hit: Real input produced the expected result: Both synthetic checklists are stored together.

    Source: # context around a hit

    Input: session 11111111-1111-4111-8111-111111111111 turn 1

    Expected: turn context including turn 1 text

    Command: python3 cli.py around 11111111-1111-4111-8111-111111111111 1

    Observed: …Both synthetic checklists are stored together.

Examples

  • Development quickstart keyword search runs from the source checkout: command completed successfully

    Source: README.md Development section

    Input: copper lantern

    Expected: fixture hit printed

    Command: python3 cli.py 'copper lantern'

    Observed: 11111111-1111-4111-8111-111111111111 claude upgrade-fixture 0 user Find the copper lantern upgrade beacon in the synthetic release checklist. 11111111-1111-4111-8111-111111111111 claude upgrade-fixture 0 agent The fixture checklist keeps the copper lantern upgrade beacon beside the deployment map.

  • Filter by agent with --agent: command completed successfully

    Source: README.md The commands you actually need section

    Input: copper lantern --agent claude

    Expected: hits from the claude agent

    Command: python3 cli.py 'copper lantern' --agent claude

    Observed: 11111111-1111-4111-8111-111111111111 claude upgrade-fixture 0 user Find the copper lantern upgrade beacon in the synthetic release checklist. 11111111-1111-4111-8111-111111111111 claude upgrade-fixture 0 agent The fixture checklist keeps the copper lantern upgrade beacon beside the deployment map.

Local or hosted: local

What the agent did

Keyword search over indexed agent transcripts from the source checkout: python3 cli.py "copper lantern" returns the matching fixture messages, plus -E regex, -l chat listing, around context and --agent filtering.

cd <guest-path> && ls -la && git status 2>&1 | head -3; echo ---; cat README.md | head -c 7000; echo; echo ---; python3 --version; echo $CDP_URL
cd <guest-path> && ls -la .coldpass; cat rust-toolchain.toml; echo ---; which uv cargo rustc pip3 node npm 2>&1; echo ---; sed -n 1,60p pyproject.toml; echo ---; cat agrep.cmd; ls agrep; echo; ls /inputs 2>&1
cd <guest-path> && cargo --version; rustc --version; rustup --version 2>&1 | head -1; uv --version; node --version; echo ---; grep -n "no-teach\|no-hook\|--yes\|--consent\|no-semantic\|--no-model\|def cmd_setup\|'setup'\|\"setup\"" cli.py | head -40
cd <guest-path> && grep -n "rust-version\|rust_version" Cargo.toml crates/*/Cargo.toml; grep -n "cargo\|agrep-cli\|target/release\|AGREP_BIN\|download" cli.py | head -40; echo ---; ls crates/*; ls py | head -50
curl -sSf https://sh.rustup.rs -o /tmp/rustup-init.sh && sh /tmp/rustup-init.sh -y --profile minimal --default-toolchain 1.97.0 -c clippy -c rustfmt 2>&1 | tail -5; echo EXIT=$?; ls ~/.cargo/bin 2>&1
echo HOME=$HOME; ls -la $HOME/.cargo/bin 2>&1 | head; ls -la /tmp/rustup-init.sh; sh -c 'command -v rustup; rustup show 2>&1 | tail -5'
cd /tmp && sh /tmp/rustup-init.sh -y --profile minimal --default-toolchain 1.97.0 -c clippy -c rustfmt > /tmp/rustup-install.log 2>&1; echo EXIT=$?; grep -iv "cargo:\|CFLAGS\|HOST_" /tmp/rustup-install.log | tail -20; ls $HOME/.cargo/bin 2>&1 | head -3
export PATH=/var<guest-path>; cargo --version; cd <guest-path> && timeout 1500 python3 cli.py setup --yes --no-teach --no-hook --no-semantic > /tmp/setup.log 2>&1; echo EXIT=$?; tail -c 3000 /tmp/setup.log
cd <guest-path> && find . -path ./target -prune -o \( -name "*.jsonl" -o -path "*fixtures*" \) -print 2>/dev/null | grep -v target | head -30; echo ---; grep -rln "projects" crates/agrep-core/src | head; grep -rn "\"type\"" crates/agrep-core/src/*claude* 2>/dev/null | head -5
cd <guest-path> && grep -rhn "AGREP_[A-Z_]*HOME\|AGREP_[A-Z_]*ROOT\|CLAUDE_CONFIG\|\.claude\"" crates/agrep-core/src py/*.py 2>/dev/null | head -12; echo ---; head -c 1500 "bench/fixtures/upgrade_store/claude/projects/-work-upgrade-fixture/11111111-1111-4111-8111-111111111111.jsonl"; echo; wc -l bench/fixtures/upgrade_store/claude/projects/-work-upgrade-fixture/*.jsonl
export PATH=/var<guest-path>; mkdir -p /tmp/agrep-home/.claude/projects && cp -r <guest-path> /tmp/agrep-home/.claude/projects/ && cd <guest-path> && AGREP_HOME=/tmp/agrep-home python3 cli.py "copper lantern" > /tmp/search1.log 2>&1; echo EXIT=$?; cat /tmp/search1.log | head -c 3000
export PATH=/var<guest-path>; cd <guest-path> && sleep 20; AGREP_HOME=/tmp/agrep-home python3 cli.py "copper lantern" > /tmp/search2.log 2>&1; echo EXIT=$?; cat /tmp/search2.log | head -c 2000; echo ---; AGREP_HOME=/tmp/agrep-home python3 cli.py status --json 2>&1 | head -c 2000; echo; echo EXIT=$?
export PATH=/var<guest-path>; cd <guest-path> && export AGREP_HOME=/tmp/agrep-home; python3 cli.py "zzqxvnotpresentterm" > /tmp/miss.log 2>&1; echo MISS_EXIT=$?; head -c 500 /tmp/miss.log; echo ---; python3 cli.py -l lantern > /tmp/l.log 2>&1; echo L_EXIT=$?; head -c 800 /tmp/l.log; echo ---; python3 cli.py "copper lantern" --agent codex > /tmp/codex.log 2>&1; echo CODEX_EXIT=$?; head -c 500 /tmp/codex.log; echo ---; python3 cli.py around 11111111-1111-4111-8111-111111111111 0 2>&1 | head -c 800; echo AROUND_EXIT=$?
cd <guest-path> && grep -n '"--once"\|"--now"\|add_parser("index"\|add_parser("refresh"\|"index", help\|cron\|webhook' cli.py py/cli*.py py/indexd.py 2>/dev/null | head -20; sed -n '/add_parser("index"/,+6p' cli.py | head -12
cd <guest-path> && cat > probe.json <<'EOF'
{"kind":"cli","argv":["python3","cli.py","copper lantern"],"cwd":"<guest-path>","env":{"AGREP_HOME":"/tmp/agrep-home"},"expected_text":"copper lantern upgrade beacon beside the deployment map"}
EOF
cat > claims.json <<'EOF'
[{"kind":"claim","claim":"A current exhaustive keyword miss exits 1","source":"A current, exhaustive keyword miss exits `1`; an unverified absence exits `2`.","input":"zzqxvnotpresentterm","expected":"exit 1 with 0 matching rows","probe_kind":"cli","argv":["python3","cli.py","zzqxvnotpresentterm"],"cwd":"<guest-path>","env":{"AGREP_HOME":"/tmp/agrep-home"},"expected_returncode":1,"expected_exit_meaning":"exhaustive keyword miss","expected_text":"0 matching rows"},{"kind":"claim","claim":"agrep -l lists matching chats, not every line","source":"# matching chats, not every line","input":"lantern","expected":"one chat line for the fixture session","probe_kind":"cli","argv":["python3","cli.py","-l","lantern"],"cwd":"<guest-path>","env":{"AGREP_HOME":"/tmp/agrep-home"},"expected_text":"upgrade-fixture"},{"kind":"claim","claim":"agrep around shows context around a hit","source":"# context around a hit","input":"session 11111111-1111-4111-8111-111111111111 turn 0","expected":"turn context including turn 1 text","probe_kind":"cli","argv":["python3","cli.py","around","11111111-1111-4111-8111-111111111111","1"],"cwd":"<guest-path>","env":{"AGREP_HOME":"/tmp/agrep-home"},"expected_text":"Both synthetic checklists are stored together."}]
EOF
cat > examples.json <<'EOF'
[{"kind":"example","claim":"Development quickstart keyword search runs from the source checkout","source":"README.md Development section","input":"copper lantern","expected":"fixture hit printed","argv":["python3","cli.py","copper lantern"],"cwd":"<guest-path>","env":{"AGREP_HOME":"/tmp/agrep-home"},"expected_text":"copper lantern upgrade beacon beside the deployment map"},{"kind":"example","claim":"Filter by agent with --agent","source":"README.md The commands you actually need section","input":"copper lantern --agent codex","expected":"filter reports codex is not indexed (documented fixture limit)","argv":["python3","cli.py","copper lantern","--agent","codex"],"cwd":"<guest-path>","env":{"AGREP_HOME":"/tmp/agrep-home"},"expected_returncode":1,"expected_exit_meaning":"exhaustive keyword miss","expected_text":"isn't in the index"}]
EOF
cat > cycles.json <<'EOF'
{"detected":false,"checks":[],"reason":"Inspected README.md and cli.py entrypoints: no cron, loop, webhook, --once or --now scheduler is documented. agrep index is a manual ingest command, and the freshness daemon refreshes on demand per the README How it works section."}
EOF
for f in probe claims examples cycles; do python3 -m json.tool $f.json >/dev/null && echo "$f ok"; done
cd <guest-path> && <env-var>=<guest-path> python3 -I <guest-path> --validate --replay > /tmp/validate.log 2>&1; echo EXIT=$?; tail -c 4000 /tmp/validate.log
cd <guest-path> && grep -n "expected_returncode\|expected_exit_meaning\|exit_meaning\|EXIT_\|exit table" check.py | head -40
cd <guest-path> && sed -n 1395,1425p check.py; echo ----; sed -n 1486,1505p check.py
cd <guest-path> && grep -rn -i "exit code" --include=*.md . | grep -v CHANGELOG | head -20; echo ---; sed -n 1360,1394p <guest-path> | head -c 2500
cd <guest-path> && cat > claims.json <<'EOF'
[{"kind":"claim","claim":"agrep -E runs a regular expression search","source":"# regular expression search","input":"copper (lantern|bucket)","expected":"fixture hit matched by the regex","probe_kind":"cli","argv":["python3","cli.py","-E","copper (lantern|bucket)"],"cwd":"<guest-path>","env":{"AGREP_HOME":"/tmp/agrep-home"},"expected_text":"copper lantern upgrade beacon beside the deployment map"},{"kind":"claim","claim":"agrep -l lists matching chats, not every line","source":"# matching chats, not every line","input":"lantern","expected":"one chat line for the fixture session","probe_kind":"cli","argv":["python3","cli.py","-l","lantern"],"cwd":"<guest-path>","env":{"AGREP_HOME":"/tmp/agrep-home"},"expected_text":"upgrade-fixture"},{"kind":"claim","claim":"agrep around shows context around a hit","source":"# context around a hit","input":"session 11111111-1111-4111-8111-111111111111 turn 1","expected":"turn context including turn 1 text","probe_kind":"cli","argv":["python3","cli.py","around","11111111-1111-4111-8111-111111111111","1"],"cwd":"<guest-path>","env":{"AGREP_HOME":"/tmp/agrep-home"},"expected_text":"Both synthetic checklists are stored together."}]
EOF
cat > examples.json <<'EOF'
[{"kind":"example","claim":"Development quickstart keyword search runs from the source checkout","source":"README.md Development section","input":"copper lantern","expected":"fixture hit printed","argv":["python3","cli.py","copper lantern"],"cwd":"<guest-path>","env":{"AGREP_HOME":"/tmp/agrep-home"},"expected_text":"copper lantern upgrade beacon beside the deployment map"},{"kind":"example","claim":"Filter by agent with --agent","source":"README.md The commands you actually need section","input":"copper lantern --agent claude","expected":"hits from the claude agent","argv":["python3","cli.py","copper lantern","--agent","claude"],"cwd":"<guest-path>","env":{"AGREP_HOME":"/tmp/agrep-home"},"expected_text":"copper lantern upgrade beacon beside the deployment map"}]
EOF
python3 -m json.tool claims.json >/dev/null && python3 -m json.tool examples.json >/dev/null && echo ok; cd <guest-path> && <env-var>=<guest-path> python3 -I <guest-path> --validate --replay > /tmp/validate2.log 2>&1; echo EXIT=$?; tail -c 1800 /tmp/validate2.log
cd <guest-path> && grep -o '"verdict": "[a-z]*"' /tmp/validate2.log | sort | uniq -c; grep -o '"valid": [a-z]*' /tmp/validate2.log | head -2; echo ---; git init -q . && git remote add origin https://github.com/dannyisbad/agrep && git fetch --depth 1 origin ac4efadbc0a305ac8bbb068422c5437157f35f56 2>&1 | tail -3; git reset --mixed FETCH_HEAD 2>&1 | tail -2; git rev-parse HEAD
cd <guest-path> && cat > report.json <<'EOF'
{"outcome":"working","fault_owner":null,"operation":"Keyword search over indexed agent transcripts from the source checkout: python3 cli.py \"copper lantern\" returns the matching fixture messages, plus -E regex, -l chat listing, around context and --agent filtering.","operation_scope":"Linux (WSL2 kernel 6.6), Python 3.12.3 (README requires 3.10+), Rust 1.97.0 via rustup per rust-toolchain.toml, Node 22 present but unused. Searched a copy of the repo's bench/fixtures/upgrade_store Claude transcripts placed at AGREP_HOME=/tmp/agrep-home, because the guest has no real agent history. No semantic model, no agent hooks, no instruction teaching.","steps":["git init; git remote add origin https://github.com/dannyisbad/agrep; git fetch --depth 1 origin ac4efadbc0a305ac8bbb068422c5437157f35f56; git reset --mixed FETCH_HEAD","curl -sSf https://sh.rustup.rs -o /tmp/rustup-init.sh && sh /tmp/rustup-init.sh -y --profile minimal --default-toolchain 1.97.0 -c clippy -c rustfmt (installs toolchain from rust-toolchain.toml)","python3 cli.py setup --yes --no-teach --no-hook --no-semantic (README Development: python cli.py setup; ingest binary built with cargo build --release, 2m12s)","AGREP_HOME=/tmp/agrep-home python3 cli.py \"copper lantern\" (README: agrep \"search term\" equivalent)","AGREP_HOME=/tmp/agrep-home python3 cli.py status --json (index_state ready, messages 2)","AGREP_HOME=/tmp/agrep-home python3 cli.py -l lantern; python3 cli.py around <id> 1; python3 cli.py zzqxvnotpresentterm (exit 1)"],"deviations":["System cargo was 1.75 while rust-toolchain.toml pins 1.97.0; installed rustup 1.97.0 into /var<guest-path> The first rustup run printed unrelated cc/cargo build lines but a second run confirmed the install.","setup was run with --yes but without --no-archive, so setup enabled archive retention in <guest-path> This was an unintended default; disposable guest only.","First keyword search right after setup returned hits but exited 2 with 'first-run completion could not verify the published snapshot' while the index built in the background. A rerun after ~20s exited 0 with index_state ready.","The guest had no agent transcripts, so the repo's bench/fixtures/upgrade_store/claude fixture was copied to /tmp/agrep-home/.claude/projects and read through AGREP_HOME.","The README's exit-1 statement for an exhaustive keyword miss was observed manually (zzqxvnotpresentterm exited 1 with '0 matching rows') but was not kept as a claim: the checker only validates nonzero exit codes against an exit-code table, and the repo docs have none. Replaced it with a zero-exit regex claim.","Not run: bench/perf.py --check and bench/semantic_cli_scale.py --check (timing budgets, not needed for functional proof), the Rust/Python test suites, and the semantic/ONNX lane.","The product's freshness daemon (pid reported by status --json) remains running from the product's own on-demand refresh; it was not started by the checker."],"stuck_step":null,"main_blocker":null,"plain_failure":null,"suggested_fix":"none"}
EOF
python3 -m json.tool report.json >/dev/null && echo report-ok; cd <guest-path> && <env-var>=<guest-path> python3 -I <guest-path> --validate --replay > /tmp/validate3.log 2>&1; echo FINAL_EXIT=$?; grep -o '"valid": [a-z]*' /tmp/validate3.log | head -1; grep -o '"evidence_strength": "[a-z_]*"' /tmp/validate3.log
Earlier attempts (1)

Luna

Native agent · Checked operation passed

Checked operation python3 cli.py 'copper lantern'

Agent-reported scope: Search agent conversation transcripts by keyword

Run details
run
dannyisbad--agrep-gpt-6-luna-1793168149874097107
date
Oct 28, 2026
time to working
201.1s
product hosting / execution
Local command in the guest
recorded operation scope
product operation
model
gpt-6-luna
agent / version
codex / codex-cli 0.164.0
platform
linux
reported cost
not reported (not assumed free)
Recorded source
https://github.com/dannyisbad/agrep
Backend
hyperv
Tool transport
mcp-assigned-vm
Requested source pin (not an observed revision)
{"commit": "ac4efadbc0a305ac8bbb068422c5437157f35f56", "url": "https://github.com/dannyisbad/agrep"}
Test version
readme-aa754f4e5e27cce52510e3f31b42346f17ae7c45ce009399060d7315812d459d
revision
ac4efadbc0a305ac8bbb068422c5437157f35f56
Whose fault: not assigned · pending

Safety: Review signals: 1 connection review, 1 download and execute, 1 hardcoded secret, 4 known vulnerability. 5 static matches retained as context.

Review signals: 1 connection review, 1 download and execute, 1 hardcoded secret, 4 known vulnerability. 5 static matches retained as context.

Reviewed as expected for a test run: attempted writes that failed, so nothing was written; package managers (rustup-init) downloaded dependencies over HTTPS; resolver address lookups that send no data; wrote only to its own open file handles.

Repository processes attempted these non-loopback connections; proxies can hide the final hostname. 8 distinct locations. 2 attributed processes.

Source contains download and execute; review its purpose. npm/bin.js

Gitleaks found a possible hardcoded secret; value withheld. crates/agrep-cli/src/index_lock.rs

OSV reports a known vulnerability in this dependency version. 4 distinct locations. 4 findings.

5 hardcoded secret matches retained as context; full list in the evidence.

OSV scanned supported lockfiles; unpinned dependencies and unsupported formats are outside this check.

A short run cannot establish that code is safe.

Connections show IP addresses; proxies can hide the final hostname.

Tracing covers dispatched commands and their children, not the whole OS; guest root can interfere with tracing.

Full safety evidence →

Answers recorded for this run
  • Keyword search finds matching conversation context: Real input produced the expected result: The copper lantern manifest names the amber gate and west dock.

    Source: agrep <pattern> # keyword search; first run builds the index

    Input: copper lantern

    Expected: The copper lantern manifest names the amber gate and west dock.

    Command: python3 cli.py 'copper lantern'

    Observed: …The copper lantern manifest names the amber gate and west dock. 55555555-5555-4555-8555-555555555555 codex cedar 0 tool exec_command: cat manifest.txt toolproof-codex: copper lantern manifest verified

Examples

  • Search indexed conversations by keyword: command completed successfully

    Source: README.md / The commands you actually need

    Input: copper lantern

    Expected: Matching Codex conversation lines

    Command: python3 cli.py 'copper lantern'

    Observed: 55555555-5555-4555-8555-555555555555 codex cedar 0 user Audit the copper lantern deployment manifest for cedar. 55555555-5555-4555-8555-555555555555 codex cedar 0 agent The copper lantern manifest names the amber gate and west dock. 55555555-5555-4555-8555-555555555555 codex cedar 0 tool exec_command: cat manifest.txt toolproof-codex: copper lantern manifest verified

Local or hosted: local

What the agent did

Search agent conversation transcripts by keyword

pwd; rg --files -g 'README*' -g 'pyproject.toml' -g 'package.json' -g 'Makefile' -g 'setup.py' -g 'requirements*.txt' -g '.github/**' -g 'AGENTS.md' | head -100; git status --short --branch; python3 --version; sed -n '1,240p' README.md
ls -la; command -v uv || true; command -v cargo || true; command -v rustc || true; command -v pipx || true; find . -maxdepth 2 -type f | sort | head -160
cd <guest-path> && uv --version && rustc --version && cargo --version && git init && git remote add origin https://github.com/dannyisbad/agrep && git fetch --depth 1 origin ac4efadbc0a305ac8bbb068422c5437157f35f56 && git reset --mixed FETCH_HEAD
sed -n '1,180p' pyproject.toml; cat rust-toolchain.toml; ls -la .coldpass; cargo build --release --locked
rustup --version || true; rustup toolchain install 1.97.0 --profile minimal --component clippy --component rustfmt
ls -la /root/.cargo/bin <host-path> 2>/dev/null; command -v curl; curl --version | head -1; sudo -n true;
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile minimal --default-toolchain 1.97.0 --component clippy --component rustfmt
export PATH=/var<guest-path>; rustc --version; cargo build --release --locked
sed -n '1,100p' cli.py; sed -n '1,100p' agrep/__main__.py; ./target/release/agrep --help | head -50; python3 cli.py setup --help
find target/release -maxdepth 1 -type f -ls; python3 cli.py setup --no-teach --no-hook --no-semantic --no-archive; python3 cli.py --help | head -50
mkdir -p <guest-path>; cat > <guest-path> <<'EOF'
{"timestamp":"2025-01-01T10:00:00Z","type":"message","payload":{"type":"message","role":"user","content":"How should we handle retry backoff?"}}
{"timestamp":"2025-01-01T10:00:03Z","type":"message","payload":{"type":"message","role":"assistant","content":"Use exponential retry backoff with jitter and cap the delay at 30 seconds."}}
EOF
python3 cli.py index; AGREP_DATA_DIR=<guest-path> python3 cli.py 'retry backoff'
find py -path '*fixture*' -o -name '*codex*'; rg -n 'rollout-|payload.*role|codex' py/test_agent_store_contract.py py/test_agent_registry.py py/agent* py 2>/dev/null | head -100
cat py/fixtures/conformance/store/codex/sessions/2000/01/20/rollout-2000-01-20T12-00-00-55555555-5555-4555-8555-555555555555.jsonl; head -3 py/fixtures/summary/store/codex/sessions/2026/05/21/rollout-2026-05-21T09-00-00-cx000001-0541-4000-8000-000000000541.jsonl
cat > <guest-path> <<'EOF'
{"timestamp":"2025-01-01T10:00:00Z","type":"session_meta","payload":{"id":"demo-retry-0001","cwd":"/tmp/demo"}}
{"timestamp":"2025-01-01T10:00:01Z","type":"response_item","payload":{"type":"message","role":"user","content":[{"type":"input_text","text":"How should we handle retry backoff?"}]}}
{"timestamp":"2025-01-01T10:00:02Z","type":"response_item","payload":{"type":"message","role":"assistant","content":[{"type":"output_text","text":"Use exponential retry backoff with jitter and cap the delay at 30 seconds."}]}}
EOF
AGREP_DATA_DIR=<guest-path> python3 cli.py index; AGREP_DATA_DIR=<guest-path> python3 cli.py 'retry backoff'
rg -n 'codex' py/agent* py | head -20; rg -n 'turn_context|response_item|output_text' py | head -30; cat py/fixtures/conformance/store/claude/projects/-projects-cedar/11111111-1111-4111-8111-111111111111.jsonl | head -3
grep -R -n 'response_item\|output_text\|turn_context' py | head -35; grep -R -n 'def parse.*codex\|codex.*parse' py | head
grep -R -n 'AGREP_DATA_DIR\|CODEX_HOME' py/common.py py/agent* py | head -25
sed -n '1,20p' py/fixtures/conformance/store/codex/sessions/2000/01/20/rollout-2000-01-20T12-00-00-55555555-5555-4555-8555-555555555555.jsonl; grep -R -n 'CODEX_HOME' py/indexer.py py/*.py | head
python3 cli.py status --json
mkdir -p <guest-path>; python3 - <<'PY'
from pathlib import Path
p=Path('<guest-path>')
p.write_text(Path('py/fixtures/conformance/store/codex/sessions/2000/01/20/rollout-2000-01-20T12-00-00-55555555-5555-4555-8555-555555555555.jsonl').read_text().replace('{{t-2d+3h','2025-01-01T10:00:00Z'))
PY
AGREP_DATA_DIR=<guest-path> python3 cli.py index; AGREP_DATA_DIR=<guest-path> python3 cli.py 'copper lantern'
mkdir -p .coldpass; cat > .coldpass/probe.json <<'EOF'
{"kind":"cli","argv":["python3","cli.py","copper lantern"],"cwd":"<guest-path>","env":{"AGREP_DATA_DIR":"<guest-path>","CODEX_HOME":"<guest-path>"},"expected_text":"The copper lantern manifest names the amber gate and west dock."}
EOF
cat > .coldpass/claims.json <<'EOF'
[
 {"kind":"claim","claim":"Keyword search finds matching conversation context","source":"agrep <pattern>                  # keyword search; first run builds the index","input":"copper lantern","expected":"The copper lantern manifest names the amber gate and west dock.","probe_kind":"cli","argv":["python3","cli.py","copper lantern"],"expected_text":"The copper lantern manifest names the amber gate and west dock.","cwd":"<guest-path>","env":{"AGREP_DATA_DIR":"<guest-path>","CODEX_HOME":"<guest-path>"}}
]
EOF
cat > .coldpass/examples.json <<'EOF'
[
 {"kind":"example","claim":"Search indexed conversations by keyword","source":"README.md / The commands you actually need","input":"copper lantern","expected":"Matching Codex conversation lines","argv":["python3","cli.py","copper lantern"],"cwd":"<guest-path>","env":{"AGREP_DATA_DIR":"<guest-path>","CODEX_HOME":"<guest-path>"},"expected_text":"The copper lantern manifest names the amber gate and west dock."}
]
EOF
cat > .coldpass/cycles.json <<'EOF'
{"detected":false,"checks":[],"reason":"Inspected README commands, cli.py entrypoint help, and scheduler-related source references; no recurring cron, loop, webhook, --once, or --now product cycle is documented as a scheduled behavior."}
EOF
<env-var>=<guest-path> python3 -I <guest-path> --validate --replay
cat > .coldpass/report.json <<'EOF'
{
  "outcome": "working",
  "fault_owner": "null",
  "operation": "Search agent conversation transcripts by keyword",
  "operation_scope": "README documented agrep keyword search; Python 3.12.3 and Rust 1.97.0 source build, setup, indexed Codex fixture, and search replay",
  "steps": [
    "Checked README Python requirement (3.10+) against Python 3.12.3.",
    "Installed the pinned Rust 1.97.0 toolchain with rustup because system Cargo 1.75 could not parse lockfile version 4.",
    "Built with cargo build --release --locked.",
    "Ran python3 cli.py setup --no-teach --no-hook --no-semantic --no-archive.",
    "Indexed a representative Codex transcript using python3 cli.py index and ran python3 cli.py 'copper lantern'.",
    "Validated and replayed probe, claim, example, and cycle evidence successfully."
  ],
  "deviations": [
    "Initial system Cargo 1.75 failed on Cargo.lock version 4; installing README-required project toolchain 1.97.0 resolved the setup issue.",
    "Setup skipped optional semantic model, teaching integrations, and archive retention using documented setup flags."
  ],
  "stuck_step": null,
  "main_blocker": null,
  "plain_failure": null,
  "suggested_fix": null
}
EOF