Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add commands/ololand-ai/ololand-plugins/record-decisiongit clone --depth 1 https://github.com/ololand-ai/ololand-pluginsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/commands/ololand-ai/ololand-plugins/record-decision)<a href="https://agentmods.dev/commands/ololand-ai/ololand-plugins/record-decision"><img src="https://agentmods.dev/badge/commands/ololand-ai/ololand-plugins/record-decision.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00048 | $0.01285 |
| Opus 5 | $0.00024 | $0.00642 |
| Sonnet 5 | $0.00010 | $0.00257 |
| Haiku 4.5 | $0.00005 | $0.00128 |
Grade A, and why
record-decision scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 66 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Record Decision
/record-outcome closes the quantitative flywheel loop — predicted vs. realized EV/IRR/MOIC. This command closes the qualitative one: the reasoning an analyst gives when a deal reaches a decision point. "We passed because customer concentration was too high at 45%" is not capturable as a number, but it is exactly the kind of institutional memory that makes /similar-deals and /playbook-recall sharper over time — a future deal with the same concentration profile should surface this one, with the reason attached.
Every decision is recorded as its own row. Unlike outcome tracking (one row per deal, initialized once), a deal can accumulate several decisions over its life — a pass that gets reconsidered and later closes, a close that later gets unwound. Nothing is overwritten; the history stays queryable.
Usage
/record-decision <deal_id>
Arguments
<deal_id>(required) — the deal this decision is about.
Execution
The instructions below are for the model executing this command.
-
Determine
decision_type. Must be one of:closed,passed,exited,withdrawn. Infer it from what the user said (e.g. "we're passing on this" →passed; "we closed the deal" →closed; "seller walked away during exclusivity" →withdrawn; "we sold our stake" →exited). If it's ambiguous, ask. -
Get
decision_rationale. This is the one truly required field beyond the type — it must be at least 10 characters and should capture the actual reasoning, not a restatement of the decision. "Passed" is not a rationale; "customer concentration was too high at 45%, and the two largest accounts had no long-term contracts" is. If the user's message already contains the reasoning, use it verbatim (lightly cleaned up); don't ask them to repeat themselves. -
Call
record_deal_decisionwithdeal_id,decision_type,decision_rationale, plus whatever of the following the conversation actually supports — never invent values for fields the user didn't mention:key_risks_identified— risk tags that drove the decision (e.g.["customer_concentration", "key_person_dependency"]).key_opportunities_identified— opportunity tags, if the decision was opportunity-driven (e.g. a close driven by expansion potential).assumptions_validated/assumptions_invalidated— which underwriting assumptions held up or didn't (e.g.{"revenue_growth": "held, actually beat by 3pp"}or{"synergy_estimate": "was roughly 2x too optimistic"}).lessons_learned— freeform, for future deals of this shape.would_reconsider/reconsider_conditions— if the user signals this decision isn't necessarily final (e.g. "we'd revisit if the price came down 20%").deal_patterns— pattern tags for cross-deal learning, e.g.["high_customer_concentration", "saas_rollup"]. These are what/similar-dealsmatches on later, so tag generously when the conversation supports it.sector— only if the deal's own profile doesn't already carry the right industry; the tool auto-populates from the deal's company profile when omitted.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 4d ago First seen · 66 lines · 48 tokens per session scan A 7f00ebef33ea
record-decision is a command published in the GitHub repository ololand-ai/ololand-plugins (0 stars, last pushed 7d ago), licensed Apache-2.0. It adds 48 tokens to every session and 1,285 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other commands, from other repositories
template
Manage issue templates for streamlined issue creation.
guide
You are a triage agent who continuously prioritizes loom:issue issues by applying loom:urgent to the top 3 priorities.
sync-linear
Sync current work with Linear ticket status.
add-note
Add an internal or external note to a ConnectWise PSA ticket.
fest-show
Show festival progression (in-progress tasks, roadmap, and dependency view).
dispatcher
Pick the next-best repo to work on across the portfolio — rank free repos, recommend one, claim its lease atomically, and route to the entry command.