计算机使用智能体分类English
R02.01.02.02 · 任务小类

依行为重新实现

Reimplementation from behavior

Rebuild a program from its binary, docs or observed behavior in a clean room.

20 条本项目编写的提案 · 分类 v1.1 · 新增基准运行 0 次。下方验证方式与部分得分规则是设计,不是执行结果。

典型应用
compilers · fuzzers · Docker
小类 GUI 需求标签
CL · CLI 足够

任务提案 · 20

展开查看完整原文与建议检查方式;两种界面均保留提案英文原文。

R02.01.02.02-T01 Clean-room rebuild of a jq-like JSON query tool from its binary

原始指令

`/work/jqx/bin/jqx` is a stripped binary of a jq-like tool with docs in `docs/manual.md`. In a clean room (no internet, no jq source), write `jqx` in any language that reproduces its stdout, stderr and exit codes for any filter and input, including error messages and number formatting.

平台
lin · Linux
应用
cleanroom Docker · fuzzing harness
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
long · 长流程
提案难度
5 / 5

建议验证方式

Hidden differential suite: >200k fuzzed filter/input pairs compared on stdout, stderr and exit code; score = match fraction; build must not embed or exec the reference binary (strace/exec audit, binary hash scan).

建议部分得分

Score scaled by fraction of matching cases: 60% stdout, 20% exit codes, 20% stderr

R02.01.02.02-T02 Reverse-engineer a custom compression format and write a compatible compressor

原始指令

`/work/squish/bin/unsquish` decompresses `.sq` files; there is no compressor and no spec. Sample `.sq` files and their originals are in `samples/`. Write `squish` that produces files `unsquish` decodes back to the original input, with compression ratio within 10% of the samples' ratio on text.

平台
lin · Linux
应用
xxd · gdb · Python
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
4 / 5

建议验证方式

Hidden corpus (300 files, text/binary/empty/1-byte/large): unsquish(squish(x)) == x for all; mean ratio on text within 10% of reference; unsquish exits 0 and validates checksums.

建议部分得分

60% round-trip correctness (scaled); 25% checksum/header validity; 15% compression ratio

R02.01.02.02-T03 Reproduce the expression semantics of a closed CLI calculator

原始指令

`/work/calcx/bin/calcx` evaluates arithmetic expressions with undocumented precedence quirks, implicit multiplication, percent semantics and rounding to 'display precision'. Probe it and write `calcx` (any language) matching outputs and error messages exactly.

平台
lin · Linux mac · macOS
应用
fuzzing harness
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
3 / 5

建议验证方式

Hidden differential test on 50k generated expressions (incl. malformed ones): exact stdout and exit code match fraction; reference binary not called by the solution (exec audit).

建议部分得分

Scaled by match fraction: 70% valid expressions, 30% error cases

R02.01.02.02-T04 Recreate a wc-like utility including all flags and edge cases

原始指令

`/work/wcx/bin/wcx` behaves like `wc` with extra flags (`-L`, `--files0-from`, `--total=auto|always|never`) and locale-aware multibyte counting. Implement `wcx` in C or Rust that matches its output formatting and column widths exactly.

平台
lin · Linux mac · macOS
应用
gcc · cargo
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
2 / 5

建议验证方式

Hidden differential tests: 2,000 file sets × flag combinations under C.UTF-8 and en_US.UTF-8; stdout, stderr and exit code exact; invalid UTF-8 inputs included.

建议部分得分

60% counts correct; 25% formatting/widths; 15% error handling

R02.01.02.02-T05 Write a save-file writer for a game from sample saves

原始指令

`/work/savefmt/samples/` holds 40 save files from a small open-source-licensed game with matching JSON dumps of the in-game state (no format docs). Write `encode_save(json) -> bytes` producing files the game's own loader (`bin/loadcheck`) accepts and decodes to the same state, including its checksum.

平台
lin · Linux win · Windows
应用
Python · ImHex · xxd
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
4 / 5

建议验证方式

Hidden 200 JSON states (incl. fields absent from samples' common cases): loadcheck exits 0 and its JSON dump equals input; byte-identical output to the game's own writer for 50 states scores a bonus milestone.

建议部分得分

30% header/checksum; 50% loadcheck acceptance + state equality; 20% byte-identical subset

R02.01.02.02-T06 Implement a client for an undocumented protocol from packet captures

原始指令

`/work/telemetry/captures/*.pcapng` contain sessions between a closed client and a sandbox server (custom binary TCP protocol with handshake, framing, heartbeats). Write a client library + CLI that can authenticate with the test key, upload readings and fetch configs from the sandbox server.

平台
lin · Linux
应用
Wireshark · tshark · Python
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
3 / 5

建议验证方式

Hidden tests against the sandbox server: handshake accepted; 500 readings uploaded and visible in server DB; config fetch equals server state; heartbeats keep a 5-minute session alive; malformed frames never sent (server strict log).

建议部分得分

30% handshake; 30% uploads; 20% config fetch; 20% session keepalive

R02.01.02.02-T07 Reimplement a COBOL claims-rating program's logic in Java

原始指令

`/work/rating-cbl/` has a compiled GnuCOBOL program `RATECLM` (source withheld) plus a user guide and 20 sample input/output pairs. Reimplement its rating logic as a Java 21 library + CLI with byte-identical output records for any valid input, discovering rounding and table-lookup rules by probing.

平台
lin · Linux
应用
GnuCOBOL · Java · Maven
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
4 / 5

建议验证方式

Hidden differential test on 5,000 generated claim records: byte-identical output fraction; solution does not exec the COBOL binary (exec audit); mvn test green.

建议部分得分

Scaled by match fraction: 70% standard records, 30% edge records (caps, ties, missing tables)

R02.01.02.02-T08 Recover a checksum algorithm from a stripped ELF and reimplement it

原始指令

`/work/fwtool/bin/fwsign` appends a 32-bit checksum to firmware images. Disassemble or probe it (Ghidra and gdb are installed) to recover the algorithm, then implement `fwsum` in Python that produces identical checksums for any input.

平台
lin · Linux
应用
Ghidra · gdb · Python
交互表面
term · 终端 desk · 桌面 GUI
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
2 / 5

建议验证方式

Hidden 1,000 random inputs (0 B-8 MB): checksum equality; no invocation of fwsign by the solution; algorithm description in NOTES.md (keyword check for polynomial/init/xorout).

建议部分得分

80% checksum match fraction; 20% notes

R02.01.02.02-T09 Reproduce a Windows loan calculator's amortization from its GUI

原始指令

`LoanPro.exe` is a closed Windows GUI calculator (no CLI, no docs). Explore it on the VM by entering values and reading the schedule grid, then write a Python function `schedule(principal, rate, years, freq, extra)` that reproduces its amortization table exactly, including its rounding and final-payment adjustment.

平台
win · Windows
应用
LoanPro (closed app) · Python
交互表面
desk · 桌面 GUI term · 终端
GUI 需求 · 任务设定
HY · 混合
GUI 需求 · 普通权限
HY · 混合
交互原语
type · 文字与表单 vis · 视觉判断 code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
4 / 5

建议验证方式

Hidden 300 parameter sets compared to schedules exported by the grader through UI automation: every row (payment, interest, principal, balance) equal to the cent; the app's binary is obfuscated and has no export, so probing must go through its GUI.

建议部分得分

Scaled by exact-row fraction: 50% regular rows, 30% final-payment adjustment, 20% extra-payment cases

R02.01.02.02-T10 Rebuild a black-box REST API from observed responses

原始指令

A sandbox inventory API runs at `http://legacy.local:8080` (no docs, no source). By exercising it, reimplement a compatible service (any stack) that returns the same status codes, JSON bodies, headers that matter (ETag, Location, pagination Link) and validation errors for the endpoints you can discover.

平台
lin · Linux
应用
curl · Docker
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
3 / 5

建议验证方式

Hidden differential tests (1,500 recorded request sequences replayed against both): status, normalized JSON and key headers match fraction; unknown endpoints count too (14 total, 3 undocumented by any link).

建议部分得分

Scaled by match fraction: 60% bodies, 25% status codes, 15% headers

R02.01.02.02-T11 Recreate a Python package's source from bytecode-only distribution

原始指令

`/work/geofence-pyc/` contains only `.pyc` files (Python 3.11) of an internal package whose source was lost. Recreate readable source with equivalent behavior and the same public API, plus docstrings where you can infer intent.

平台
lin · Linux mac · macOS
应用
Python · dis · pytest
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
2 / 5

建议验证方式

Hidden behavioral tests (300) pass when importing the agent's source instead of the pyc; public names/signatures identical (inspect); solution contains no marshal/pyc loading.

建议部分得分

70% behavior; 20% API identical; 10% no pyc loading

R02.01.02.02-T12 Reimplement a CLI tool's tokenizer and error reporting

原始指令

`/work/cfglint/bin/cfglint` lints a custom config language and prints tokens with `--tokens`. Using only the binary and the 2-page user doc, reimplement its tokenizer and diagnostics (line:col, messages, exit codes) in TypeScript, matching output for any input.

平台
lin · Linux mac · macOS win · Windows
应用
Node · fuzzing harness
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
3 / 5

建议验证方式

Hidden differential test: 30k fuzzed config files; --tokens output and diagnostics exact match fraction; CRLF and Unicode identifiers included.

建议部分得分

Scaled: 60% token streams, 40% diagnostics

R02.01.02.02-T13 Reproduce a sort utility's locale collation and options exactly

原始指令

`/work/sortx/bin/sortx` is a sort utility with numeric, version, month and human-size modes, `-k` keys, `-t` separators and stable/unique options, using ICU collation for a given locale. Implement `sortx` matching output for any input and options.

平台
lin · Linux
应用
Go · ICU
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
3 / 5

建议验证方式

Hidden differential tests: 10k generated inputs × option sets × locales (en_US, de_DE, sv_SE, ja_JP); exact output fraction.

建议部分得分

Scaled: 50% key/mode handling, 30% locale collation, 20% stable/unique semantics

R02.01.02.02-T14 Recreate a compiled path tracer's C source under a size limit

原始指令

`/work/pt/bin/pathtrace` renders a fixed scene to `out.ppm` deterministically given a seed. Write C source (at most 6 KB after gzip) that, when compiled with the provided flags, produces images matching the binary's output for any seed and resolution flag.

平台
lin · Linux
应用
gcc · Ghidra · gdb
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令 vis · 视觉判断
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
5 / 5

建议验证方式

Hidden 20 seeds × 3 resolutions: per-image PSNR >= 45 dB vs reference (bit-exact earns full); gzip size <= 6,144 bytes; solution does not embed the binary or images.

建议部分得分

60% PSNR threshold fraction; 25% bit-exact fraction; 15% size limit

R02.01.02.02-T15 Reimplement a macOS menu-bar timer app's behavior from the GUI

原始指令

`FocusBar.app` is a closed macOS menu-bar Pomodoro app with undocumented rules (long breaks, skipping, pause carry-over, notifications). Observe it through its menu and notifications, then write a Swift package `FocusCore` whose state machine reproduces its event timeline for any sequence of user actions.

平台
mac · macOS
应用
FocusBar (closed app) · Swift
交互表面
desk · 桌面 GUI term · 终端
GUI 需求 · 任务设定
HY · 混合
GUI 需求 · 普通权限
HY · 混合
交互原语
click · 指向与点击 vis · 视觉判断 code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
4 / 5

建议验证方式

Hidden 400 action scripts replayed on the real app (accelerated clock via test hook) vs FocusCore: emitted event sequence (state, timestamps ±1 s, notifications) equal; app internals are obfuscated, so behavior must be probed through the menu bar.

建议部分得分

Scaled by matching scripts: 50% core cycle, 30% pause/skip rules, 20% notifications

R02.01.02.02-T16 Port a DOS inventory program's logic by observing it in DOSBox

原始指令

`/work/dosinv/INV.EXE` is a 1990s DOS inventory program run in DOSBox-X (provided). It reads `STOCK.DAT` and prints reorder reports through a text UI. By running it in the emulator, recover its report logic and the `STOCK.DAT` record format, and implement `inv_report.py` producing identical report text.

平台
lin · Linux win · Windows
应用
DOSBox-X · Python
交互表面
desk · 桌面 GUI term · 终端
GUI 需求 · 任务设定
HY · 混合
GUI 需求 · 普通权限
HY · 混合
交互原语
key · 快捷键 vis · 视觉判断 code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
long · 长流程
提案难度
5 / 5

建议验证方式

Hidden 100 STOCK.DAT variants: report text equal to what INV.EXE prints (captured via emulator printer-to-file); solution doesn't run DOSBox. Partial on per-line match.

建议部分得分

30% record format parsed; 50% report lines match (scaled); 20% edge cases (empty, overflow)

R02.01.02.02-T17 Re-create a Java report generator from its JAR behavior in Kotlin

原始指令

`/work/reportgen/reportgen.jar` turns order CSVs into fixed-layout text reports. Without copying decompiled code (decompiling to read logic is allowed), write a Kotlin CLI producing byte-identical reports, including page breaks, totals and locale-specific number formatting.

平台
lin · Linux mac · macOS win · Windows
应用
Kotlin · Gradle · CFR
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
3 / 5

建议验证方式

Hidden 500 CSV inputs: byte-identical report fraction; code-similarity check against decompiled source (token n-gram overlap < 30%); no JAR on classpath.

建议部分得分

Scaled: 70% identical reports; 15% page-break edge cases; 15% similarity check passes

R02.01.02.02-T18 Identify and reimplement a PRNG from its output stream

原始指令

`/work/rng/bin/rng <seed> <n>` prints n 32-bit numbers. Determine the generator algorithm and parameters from outputs and/or the binary, then implement `rng.py` producing identical sequences for any 64-bit seed, plus `predict.py` that recovers the seed from the first 4 outputs.

平台
lin · Linux
应用
Python · gdb · z3
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
3 / 5

建议验证方式

Hidden 1,000 seeds × 10k outputs: identical sequences; predict.py recovers seeds for 100 hidden streams within 10 s each.

建议部分得分

60% sequence reproduction; 40% seed recovery

R02.01.02.02-T19 Turn a macro-driven Excel pricing workbook into a Python library

原始指令

`/work/quote.xlsm` is a pricing workbook whose results come from VBA macros and hidden sheets. Reimplement the quote calculation as a Python function taking the input cells' values and returning the same outputs as the workbook, documenting each rule in `RULES.md`.

平台
lin · Linux win · Windows mac · macOS
应用
Python · olevba · openpyxl
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
3 / 5

建议验证方式

Hidden 1,000 input vectors evaluated in Excel (grader-side) vs the function: output equality (to the cent) fraction; no Excel/COM/LibreOffice calls in the solution; RULES.md non-empty.

建议部分得分

Scaled: 80% matching outputs; 20% rules documented

R02.01.02.02-T20 Reimplement a make-like build tool's dependency semantics

原始指令

`/work/mk/bin/mk` is a make-like tool (pattern rules, automatic variables, order-only prerequisites, `.PHONY`, timestamps, `-j`). Implement `mk` so that, for any Mkfile and file tree, the set and partial order of executed commands and the final file states match the reference.

平台
lin · Linux
应用
Go · Rust
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
4 / 5

建议验证方式

Hidden 400 generated Mkfile + tree scenarios (incl. touch-then-rebuild): executed command multiset equal, dependency order respected, exit codes equal; -j8 runs respect order; no calls to the reference binary.

建议部分得分

40% command sets; 30% ordering; 20% rebuild after touch; 10% exit codes

已有研究映射

以下沿用研究目录中的基准与小类映射,不是逐题标注、执行记录或产品背书。

同工作流族的小类