Repository navigation
feat(find-free-cash): add the find-free-cash skill (v0.6.52) - #97
Conversation
The skill works out how much cash in a linked brokerage account is free to spend without margin, after what short puts, spreads, open buy orders and working sell orders hold back, and how many shares that cash buys. It lived only in the owner's home folder. The owner chose the plugin as its home on 2026-11-09, so it loads in every repository. It comes from l3a0/ithildin-runtime#68, where a team review fixed the script and added its tests. This change also counts working sell orders as filled, on the owner's ruling in that pull request, and adds scripts/latest_fills.py for reading the saved executed-orders result. Every account, balance and trade in the skill and its tests is invented. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Working orders: a fill that leaves a spread and the share count after every fill now have tests. A working sale thinkorswim already holds is not subtracted from its figure twice. A negative addition stops. - The skill reads open orders before positions, writes each order's open_quantity, says how to enter a working spread, and says the orders tool returns only the last 30 days. - latest_fills.py has tests for the --since boundary, --limit, a partial fill and the exact price. - tests/mutate_free_cash.py reruns the 46 mutants, and every one fails tests/test_free_cash.py. - SECURITY.md gives the skill a scope entry. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Review completeRound 1 of the review of
The main thread confirmed each veto and must-fix by running it. No separate verifier ran. The fixes are in Found and fixed
Refuted or left alone
For the owner
CostThe four reviewers cost at least 4.11 US dollars: 4.5M tokens over 52 turns, almost all cache reads. The main thread's confirmations and fixes ran in its own context and are not counted. The pull request closes no issue, so the cost goes here. Skill proposalTwo procedures recurred in this session, and this change already builds both into the skill:
Nothing else qualifies. 🤖 Generated with Claude Code |
Why
The find-free-cash skill works out how much cash in a linked brokerage account is free to spend without margin. A broker's cash balance counts money already promised elsewhere, so a figure read straight off it can lead to buying on margin. The skill lived only in the owner's home folder. On 2026-11-09 the owner chose this plugin as its home, in reply to the review of l3a0/ithildin-runtime#68 ("Use the plugin."), so it loads as
/l3a0:find-free-cashin every repository.What
skills/find-free-cash/SKILL.mdholds the procedure. It reads an account through the read-only SnapTrade tools, open orders first, judges each account's freshness by its prices, reads the latest fills, runs the script, and reports.skills/find-free-cash/scripts/free_cash.pypairs every short option with its cheapest cover and keeps the lowest of three figures: the broker's cash minus holds, the broker's own buying power, and thinkorswim's Option Buying Power minus the loan value of holdings. It stops without a figure on an uncovered short call, on a negative loan value, and on input that would drop a hold.working_ordersinput and works out the free cash as if every working sell order fills. It prints the figure with none filled beside it. A working sale thinkorswim already holds is not subtracted from its figure twice. A working spread is entered as its short leg, which holds the full strike rather than the width.skills/find-free-cash/scripts/latest_fills.pyreads the saved executed-orders result and prints the latest fills. Each run used to write that script by hand.tests/test_free_cash.pypins both scripts to values worked out by hand, and CI runs it.tests/mutate_free_cash.py <copy>applies 46 mutants to the two scripts, and every one fails the tests.SECURITY.mdgives the skill a scope entry.scripts/next_version.pynamed as the next free one.plugin.json, both descriptions inmarketplace.jsonand the README's## Skillssection now name the skill.Privacy
This repository is public. The skill names no account and asks which account is in question. Every balance, strike and fill in its examples and tests is invented.
Notes
~/.claude/skills/find-free-cash/, should go once this merges. It still loads under the plain name, holds real figures, and subtracts no working orders. Until then, call the skill by its full name,/l3a0:find-free-cash.🤖 Generated with Claude Code