The AI receives the order conditions and screen information. Clef scores the possible actions, and the app enters the values. It reads the screen again after each action to check the result. It hands control to a person before password entry.
Steps
01Give the order conditionsWritten instructions
02Read the screenText, positions and image
03Choose an actionClef scores the options
04Check the valuesRead the screen again
Training setup
We used browser-screen records for training. LoRA trained the language layers; the image reader and action-scoring head stayed fixed. Clef and Jev-Omni were trained and quantized separately.
Training data examples
Five examples from the training split of “Order Form Training Data v3,” now managed by ML Foundry. Each pairs order conditions, a screen and possible actions with its training target.
All five use fictional order conditions and synthetic mock screens. The broker name is covered in white in the published images. The dataset name is a publication alias. order-forms-v3 / train
The current setup combines DOM screen information with an image. We evaluated 337 decisions and 30 order conditions on mock screens with the correct action included among the options. There were 24 valid conditions and six invalid or incomplete ones.
The six order types were limit, market, stop, OCO, IFD and IFDOCO. We counted individual correct decisions and complete input sequences separately.
Clef version
Correct decisions
All fields correct and human handoff
Before fine-tuning (BF16)
No quantitative score
No quantitative score
After the first training run (BF16)
322/337 (95.5%)
16/24 (66.7%)
After the second training run (BF16)
337/337 (100%)
24/24 (100%)
After quantization (NVFP4)
337/337 (100%)
24/24 (100%)
The first run was evaluated using screen information from saved records plus images; the second run and quantized version used browser DOM plus images. Both training and input format changed in this comparison. There is no quantitative score from before fine-tuning. At that stage, DSH session logs showed unsuccessful behavior, including runs stopping partway through.
In the quantized setup, the six invalid or incomplete conditions produced a decision to withhold input. All 30 records were complete. Attempts and actions beyond the stopping point both totalled zero.
Model size before and after quantization
Configuration
Weight size
Share of original size
After the second training run (BF16)
54.97 GB
100%
After quantization (NVFP4, mixed precision)
23.16 GB
42.1%
Weight size fell by 31.81 GB, a 57.9% reduction. At about 42% of the original size, the model retained 337/337 correct decisions and 24/24 complete inputs with human handoff in the mock-screen evaluation above.
Sizes are calculated from the saved tensor metadata, including the model and final decision head. One GB is one billion bytes.
Once the quantized Clef model was ready, we sent 336 requests one at a time. Median response time was 0.978 seconds. About 95% returned within 1.227 seconds.
Detailed setup
For the second training run, we made two inputs from each example: screen information with an image, and an image-centred view. Their training weights were 50:50.
The smaller model uses NVFP4 for MLP, FP8 for attention, and BF16 for image reading and the final decision. The serving paths use different option numbers, so we compared the actions they represented.
Filling the form as instructed
We gave DSH written order conditions and let it fill the mock form. A separate screen reading confirmed that each field matched the instructions in these two examples.
Summary of the recorded run
Normal order
Requested conditions
Buy fictional stock 0001 on the Tokyo exchange: 200 shares, limit price 1234.5 yen, valid for the day, no price condition, no SOR and no points.
A separate screen reading confirmed the values
Stock and trade
0001 / Tokyo exchange / cash buy
Quantity
200 shares
Limit price
1234.5 yen
Validity and condition
Day / no price condition
SOR and points
Unused
OCO order
Requested conditions
Sell fictional stock 0004: 500 shares, limit price 3580 yen; at 3320 yen or below, revise to 3310 yen. Valid for the day, with no SOR.
A separate screen reading confirmed the values
Stock and trade
0004 / cash sell
Quantity
500 shares
Initial limit
3580 yen
Revision trigger
3320 yen or below
Revised limit
3310 yen
Validity and SOR
Day / no SOR
This check used 30 decisions and 29 input operations. It sent 59 image-backed requests to Clef.
Operation setup
Qwen Flash Next with low reasoning handled the request. Clef NVFP4 judged the screen actions. The browser and app routes used the same Brave browser.
The video shows a separate run recorded on 15 October. It starts with quantity 200 already entered and shows the limit price, day validity and points setting. The price-condition field still reads "Select".
Operation video
User recording, 35.8 seconds, silent, original speed. The excerpt places the form and operation log one above the other.
Adding form-term explanations to Jev-Omni BF16's input increased correct decisions from 270/337 to 322/337. Completed input and human handoff rose from 2/24 to 18/24. A separate 18-case condition check changed from 10/18 to 9/18.
We compared quantization separately using the earlier model. BF16 gave 257 correct decisions out of 337; NVFP4 gave 250. We saved the converted model, loaded it again and checked that it ran.
Scope of the checks
The checks run on macOS in UTM. The app compares control roles, positions and values with the image, then operates the verified target.
The sequence alternating five browser operations and five app operations remains under evaluation.
Operation environment
We tried Cua Spaces after using DSH with UTM, then returned to UTM. It made screen-information handling and the connection to the decision model easier to adjust locally.
Clef receives a diagnostic request when screen information is unavailable. Input permission is checked separately, and the app proceeds once it has verified the target.
Evaluation data
Saved results for Clef's decisions and order-input evaluation.
The image below shows backtest results comparing six trading strategies on historical stock prices. Performance, trade records and profit and loss appear together on one screen.
The same-day live pipeline learns from the incoming stock-price stream, analyzes it every three minutes, and generates trade records in two minutes.
In the planned automation, a Familia agent pulls the trade records and fills in and configures the order screen accordingly. A person then enters the password and presses the order submission button.
Operating the order screen, including input and settings, currently takes about 50 seconds per order. We are considering fine-tuning Qwen3.8 to reduce this operation time further. The workflow is intended for trading styles other than scalping, with screen operation within one minute as our practical target.
Excerpt from a backtest screen covering 20 trading days, 9 September–9 October 2026. Under evaluation.