Find high-impact research problems AI can solve and verify next.
简体中文 · English
Most research agents start after you already have an idea.
Low-Hanging Fruit starts one step earlier.
It turns one sentence into ranked, evidence-linked opportunities in mathematics
and LLM research, investigates the strongest candidate, and packages an
auditable verification plan. It runs as a Codex Agent Skill or as the lhf
local CLI.
Alpha: research prioritization, not automated breakthrough claims. LHF Rank is a transparent prioritization heuristic—not a calibrated probability of success.
Use the repository Skill directly in Codex:
$low-hanging-fruit Find high-impact, verifiable research opportunities that AI may be able to solve now, and directly investigate the strongest one.
Or install the local CLI and create a fully offline report bundle:
uv sync --all-extras --dev
uv run lhf demo --output-dir .tmp/demo
uv run lhf validate .tmp/demoFor a live, structured Codex run using your existing Codex login:
uv run lhf "Find verifiable low-hanging research opportunities I can understand"No OPENAI_API_KEY is required on the recommended path.
Every completed run is a portable report bundle:
report.md decision-first Markdown report
report.html self-contained responsive report
opportunities.json ranked opportunity cards
sources.json normalized source ledger
campaign.zh-CN.md Chinese research campaign
campaign.en.md English research campaign
pilot.md bounded probe and real outcome
verification-plan.md correctness / statement / novelty checks
verification-records.json machine-verification ledger
agent-output.json validated structured agent response
codex-last-message.md raw final Codex message
codex-stderr.log redacted bridge diagnostics
run-manifest.json versions, degradations, and artifact hashes
The offline demo includes mathematics, replay, and LLM opportunities plus a deliberately damaged integer certificate that the exact verifier rejects. Synthetic examples are labelled as such and are never presented as current open research.
$ lhf demo --output-dir .tmp/demo --json
{"run_dir":".tmp/demo","valid":true,"sources":3,"report":".tmp/demo/report.md"}
$ lhf validate .tmp/demo --json
{"valid":true,"errors":[],"run_dir":".tmp/demo"}
one request
-> Discover / Inspect / Replay / Expand / Verify
-> source grounding and opportunity normalization
-> transparent LHF Rank and separate difficulty axes
-> bounded probe and deterministic checks
-> bilingual Campaign + Markdown/HTML + evidence ledger
Low-Hanging Fruit ranks impact, AI structural fit, verifiability, timing, and understandability. It also shows discovery difficulty, verification difficulty, background burden, literature ambiguity, and competition pressure separately.
The repository-level Skill lives at
.agents/skills/low-hanging-fruit/. The CLI installs the bundled copy
idempotently before a live run, without changing global Codex configuration.
uv run lhf install-skill
uv run lhf skill-status
uv run lhf uninstall-skillThe Skill infers the operating mode from the request, gathers current evidence with host tools, returns 3–7 strong candidates when evidence supports them, and performs one bounded probe on the leader. It never publishes, contacts experts, or declares a discovery without explicit authorization.
lhf "<natural-language request>" [--dry-run] [--json]
lhf run "<natural-language request>"
lhf demo
lhf doctor
lhf install-skill | uninstall-skill | skill-status
lhf validate <run-dir>
lhf render <run-dir>
lhf version
Useful options include --output-dir, --dry-run, --no-install-skill,
--timeout, and --json. A dry run writes the planned prompt, schema, and safe
argument-list command but does not launch Codex or modify the user Skill
directory.
If Codex is absent or logged out, the CLI reports the shortest recovery action
without a Python traceback. demo, validate, and render remain available
offline.
Low-Hanging Fruit complements rather than replaces:
- broad web-research agents, by working upstream on opportunity selection;
- automated experiment loops, by defining the exact target and evidence gate;
- theorem provers, proof assistants, and QED-style systems, by packaging candidates for deterministic verification;
- open-problem databases, by converting entries into bounded, executable opportunities and checking their current status.
It does not write a complete paper, execute arbitrary paper/repository scripts, or treat a community post as final evidence that a problem is open or solved.
Correctness, statement match, and novelty are tracked independently. Statuses
range from unverified and sanity_checked through
mechanically_verified, with explicit pending and rejected states. See
CLAIM_POLICY.md before using words such as “proved,”
“disproved,” “solved,” or “first.”
Runs and cache are local by default. There is no telemetry. The bridge does not
read or copy Codex authentication files, logs are redacted, HTTP calls have
timeouts, and subprocesses use argument lists with workspace-write rather than
danger-full-access. See SECURITY.md for the threat model.
- Agent Skill: autonomous research routing, evidence collection, explanation, replay, and bilingual Campaign generation.
- Deterministic Python core: strict Pydantic models, checked-in JSON Schemas, scoring, source normalization/cache, verification, manifests, and reporting.
- Codex bridge: capability-probed
codex exec, structured output, safe sandboxing, timeout/Ctrl-C handling, and complete local run metadata.
Public source adapters target official arXiv, OpenAlex, Crossref, Stack Exchange, and GitHub APIs. One source failure is recorded as a degradation instead of aborting the whole research run; tests use static fixtures and never require live network access.
Python 3.11+ is supported. uv is recommended; standard venv + pip also
works.
make setup
make lint
make test
make demo
make buildWithout Make:
uv sync --all-extras --dev
uv run ruff format --check . && uv run ruff check . && uv run mypy src
uv run pytest -q && uv buildWithout uv, the repository Skill still works directly. For the CLI:
python -m venv .venv
.venv/bin/python -m pip install -e ".[dev]" # Windows: .venv\Scripts\pythonSee CONTRIBUTING.md, ROADMAP.md, and SECURITY.md. The roadmap describes future work, not current capabilities.
Apache-2.0. See LICENSE.