Agent skill

Next Best Action

by JoelLewis in JoelLewis/finance_skills

Design and implement next-best-action engines that surface proactive, prioritized recommendations to advisors based on portfolio, life, market, and compliance events.

MITAuto-check passedBackend & APIs

Install Next Best Action

skills CLI
$ npx skills add JoelLewis/finance_skills --skill next-best-action -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install JoelLewis/finance_skills next-best-action --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/JoelLewis/finance_skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/advisory-practice/skills/next-best-action .claude/skills/next-best-action && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
next-best-action
GitHub stars
206
Token cost
~9.2k tokens
SKILL.md length
4,761 words
Files
2 (incl. references)
Skills in repo
91
Repo updated
First seen
Licence
MIT

At a glance

Design and implement next-best-action engines that surface proactive, prioritized recommendations to advisors based on portfolio, life, market, and compliance events.

  • The user asks about building event-driven advisor alerts
  • SKILL.md covers Core Concepts, Worked Examples, Common Pitfalls and Cross-References
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md
  • Designing trigger logic for portfolio drift

What it does

Next Best Action is an agent skill from JoelLewis/finance_skills. Design and implement next-best-action engines that surface proactive, prioritized recommendations to advisors based on portfolio, life, market, and compliance events. Use when the user asks about building event-driven advisor alerts, designing trigger logic for portfolio drift or large cash movements, prioritizing competing actions across a book of business, routing NBA recommendations to the right team member, measuring NBA acceptance rates, or automating compliance-driven actions like annual review reminders…

Its SKILL.md is about 9.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/examples.md`).

It sits in Backend & APIs, covering Event-driven systems. The repository describes itself as: Claude Code skill plugins for financial services — 81 skills across 7 domain plugins covering investment management, compliance, advisory practice, trading, and operations. The licence is MIT.

When your agent uses it

  • The user asks about building event-driven advisor alerts
  • Designing trigger logic for portfolio drift
  • Large cash movements
  • Prioritizing competing actions across a book of business

Example prompts

  • “next best action”
  • “advisor nudges”
  • “proactive outreach”
  • “/next-best-action”

What it can do on your machine

Read from SKILL.md and the folder at commit 5c498ea. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Next Best Action loads about 9.2k tokens when it runs, and up to ~13k if it reads all its reference files. Until then it costs about 193 tokens; SKILL.md has 4,761 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~193
When it runs · the whole SKILL.md, loaded when a task matches
~9.2k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~13k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from JoelLewis/finance_skills at commit 5c498ea, republished under its MIT licence (© JoelLewis). 4,761 words, ~9,248 tokens.

Download SKILL.mdSave it as .claude/skills/next-best-action/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
next-best-action
description
Design and implement next-best-action engines that surface proactive, prioritized recommendations to advisors based on portfolio, life, market, and compliance events. Use when the user asks about building event-driven advisor alerts, designing trigger logic for portfolio drift or large cash movements, prioritizing competing actions across a book of business, routing NBA recommendations to the right team member, measuring NBA acceptance rates, or automating compliance-driven actions like annual review reminders. Also trigger when users mention 'next best action', 'advisor nudges', 'proactive outreach', 'what should I do for this client', 'event-driven triggers', 'action queue', 'client contact gap', 'RMD reminder', or 'advisor productivity tool'.

Next-Best-Action — Event-Driven Advisor Recommendations

Core Concepts

Next-Best-Action Framework

Next-best-action is an advisor productivity and client service methodology that analyzes client data across systems to surface the single most valuable action an advisor should take for each client at any given time. The concept originates in CRM and marketing automation — industries that have long used event-driven recommendation engines to guide customer-facing personnel toward high-value interactions — but its application in wealth management addresses a distinct set of challenges: advisors managing hundreds of client relationships cannot manually monitor every portfolio, life event, compliance deadline, and practice touchpoint across their entire book of business.

NBA differs fundamentally from traditional task management. Traditional task management is reactive and manual: advisors create their own to-do lists, respond to inbound client requests, and rely on memory or periodic reviews to identify outreach opportunities. NBA is proactive and data-driven: the system continuously monitors client data across custodial feeds, CRM records, financial plans, compliance calendars, and market data, automatically identifying situations that warrant advisor attention and recommending specific actions with supporting context.

The core components of an NBA system are:

  • Event detection — Continuous monitoring of data sources to identify triggering events (portfolio drift, large cash movement, life milestone, compliance deadline, market dislocation).
  • Action identification — Mapping detected events to a catalog of recommended actions (schedule review, propose rebalancing, discuss tax-loss harvesting, update beneficiaries).
  • Prioritization — Scoring and ranking competing actions across all clients to ensure advisors focus on the highest-value activities given limited time.
  • Routing — Directing each action to the appropriate person based on role, expertise, relationship, and availability.
  • Delivery — Presenting recommendations through the channels advisors actually use (dashboard, mobile notification, email digest, CRM task).
  • Tracking — Recording action outcomes (accepted, deferred, rejected, completed) to close the feedback loop and improve future recommendations.
Event Detection and Trigger Types

The quality of an NBA system depends on the breadth and reliability of its event detection. Events fall into five categories, each requiring different data sources and detection logic.

Portfolio events are detected from custodial data feeds, portfolio management systems, and market data:

  • Drift beyond threshold — A client's actual allocation has deviated from the target model beyond the firm's tolerance band (e.g., equity allocation at 72% vs. 65% target with a 5% tolerance). Requires real-time or daily position data and model assignment.
  • Large cash deposit or withdrawal — A significant cash movement (typically defined by absolute amount or percentage of portfolio) has occurred. Detected from custodial transaction feeds. A $200,000 deposit into a $1 million account signals an investment opportunity; a $200,000 withdrawal from the same account may signal a liquidity event requiring plan reassessment.
  • Concentrated position — A single holding has grown to exceed a concentration threshold (e.g., 10% or 15% of portfolio value), whether through appreciation, additional purchases, or stock compensation vesting. Detected from position-level holdings data.
  • Tax-loss harvesting opportunity — Unrealized losses in taxable accounts exceed a significance threshold, particularly near year-end or after market declines. Requires lot-level cost basis data and market prices.
  • Required minimum distribution (RMD) due — A client with a traditional IRA or inherited IRA is approaching or has reached an RMD deadline. Requires account type data and client date of birth. RMD deadlines are absolute (December 31 for most, April 1 of the following year for the year the owner turns 73).
  • Margin call — A client's margin account has breached maintenance requirements. Requires margin balance and equity data from the custodian. Margin calls are time-sensitive and typically require same-day or next-day resolution.

Life events are detected from CRM data, client-reported information, and public records:

  • Birthday milestones — Age-based financial triggers: 59-1/2 (penalty-free IRA withdrawals), 62 (early Social Security eligibility), 65 (Medicare eligibility), 70-1/2 (qualified charitable distributions from IRAs), 73 (RMD beginning age under SECURE 2.0 for those born 1951-1959). Detected from client date of birth in CRM.
  • Marriage, divorce, death of spouse — Major life transitions requiring comprehensive financial plan review, beneficiary updates, account re-titling, and potentially revised investment strategy. Typically detected through advisor-reported CRM updates or client-initiated contact.
  • New child or grandchild — Triggers discussions about education savings (529 plans), life insurance review, estate plan updates, and beneficiary designation changes.
  • Job change or retirement — Income changes, employer benefit transitions (401k rollover), stock option/RSU vesting acceleration, and potential shift in investment time horizon and risk profile.

Market events are detected from market data feeds, portfolio analytics, and research systems:

  • Sector or asset class drawdown affecting client holdings — A significant decline in a sector or asset class in which the client has meaningful exposure. Requires mapping client holdings to sectors and monitoring sector-level returns.
  • Interest rate change impacting fixed income allocation — Significant rate movements that affect the duration risk, yield, or relative value of a client's fixed income holdings. Particularly relevant for clients with large bond allocations or approaching income-distribution phase.
  • New fund or product launch replacing a current holding — A lower-cost, better-performing, or more tax-efficient alternative to a fund currently held by clients. Detected through product research and comparison analytics.

Compliance events are detected from compliance calendars, CRM activity logs, and regulatory data:

  • Annual review overdue — The client has not received a formal portfolio or suitability review within the firm's required interval (typically 12 months). Detected by comparing the last review date in CRM to the current date.
  • Suitability or best-interest re-certification due — Client profile information is stale and requires re-confirmation. Particularly important under Reg BI, where the care obligation requires that recommendations reflect current client circumstances.
  • Disclosure delivery required — New regulations or rule amendments require delivery of updated disclosures (Form CRS updates, Form ADV amendments, privacy notices) to existing clients.

Practice events are detected from CRM activity tracking and practice management data:

  • Client contact gap — A client has not been contacted (by any channel) within the firm's service standard for that client's tier. For example, a Tier 1 client ($5M+ AUM) with a quarterly contact standard who has not been contacted in 100 days.
  • Upcoming contract renewal — An advisory agreement renewal or fee schedule review is approaching.
  • Referral opportunity — A client has recently had a positive experience (strong performance period, successful financial plan milestone, positive service interaction) that presents a natural referral conversation opportunity.
Action Library and Recommendation Logic

The action library is the catalog of all actions the NBA system can recommend. Each action is a defined, repeatable unit of advisor work with associated templates, context requirements, and completion criteria.

Action catalog design. A well-designed action library typically includes 30 to 60 distinct actions organized by category. Examples:

  • Schedule annual review meeting
  • Propose portfolio rebalancing to target model
  • Discuss tax-loss harvesting opportunity with estimated tax savings
  • Recommend Roth IRA conversion analysis (relevant for clients in temporarily low tax brackets)
  • Update beneficiary designations following life event
  • Review life insurance coverage adequacy
  • Discuss estate plan review (triggered by legislative change, asset growth, or family change)
  • Contact client regarding large uninvested cash position
  • Congratulate client on life milestone (birthday, retirement, grandchild)
  • Offer financial planning engagement to investment-only client
  • Present charitable giving strategy (donor-advised fund, qualified charitable distribution)
  • Discuss Social Security claiming strategy (approaching eligibility age)
  • Review held-away account for consolidation opportunity
  • Deliver required compliance disclosure

Action templates. Each action in the library includes pre-built supporting materials that reduce the advisor's preparation time and increase the likelihood of action completion:

  • Talking points — Key discussion topics tailored to the specific trigger and client context (e.g., "Your portfolio has drifted to 72% equities vs. your 65% target. I recommend we rebalance by trimming the overweight in large-cap growth and adding to international and fixed income. This trade would also harvest approximately $12,000 in losses to offset the gains we realized earlier this year.").
  • Email drafts — Pre-composed outreach emails personalized with client name, specific trigger details, and proposed next steps. The advisor reviews and edits before sending.
  • Meeting agendas — Structured agendas for review meetings, planning discussions, or specific topic conversations.
  • Analysis summaries — Pre-generated quantitative analysis (drift report, tax-loss harvesting estimate, RMD calculation, fee comparison) attached to the recommendation.

Recommendation logic. NBA systems use two primary approaches to map triggers to actions:

  • Rule-based logic — Deterministic IF-THEN rules that map specific triggers to specific actions. Example: IF client age reaches 72 AND has traditional IRA AND no RMD distribution recorded this year THEN recommend "Contact client re: RMD before December 31 deadline." Rule-based logic is transparent, auditable, and appropriate for compliance-driven and well-understood triggers.
  • ML-enhanced logic — Machine learning models that learn from historical advisor behavior to improve recommendations. The model observes which recommended actions advisors accept or reject, which actions lead to positive outcomes (client retention, additional assets, completed plans), and which client characteristics predict action relevance. ML enhancement is layered on top of rule-based logic — rules ensure required actions are never missed, while ML improves the ranking and presentation of discretionary actions.
Prioritization and Scoring

Not all actions are equal. An advisor with 200 clients might have 50 pending actions on any given day, but can realistically complete five to seven. Prioritization scoring determines which actions rise to the top of the queue.

Scoring dimensions. Effective prioritization considers multiple dimensions, each scored on a normalized scale:

  • Urgency — How time-sensitive is the action? An RMD deadline in December is more urgent in November than in March. A margin call is urgent immediately. A referral opportunity is low urgency. Urgency scoring should incorporate hard deadlines (compliance dates, regulatory deadlines) and soft deadlines (optimal timing windows that pass but do not create violations).
  • Impact — What is the potential benefit of completing the action? Impact can be measured along several sub-dimensions: revenue potential (will the action lead to new assets, a planning engagement, or retained AUM?), retention risk (is the client at risk of leaving if this issue is not addressed?), compliance requirement (is the action mandated by regulation or firm policy?), client satisfaction (will the action strengthen the relationship?).
  • Effort — How much advisor time and preparation does the action require? A quick congratulatory call requires five minutes; a comprehensive financial plan review requires several hours of preparation and a 90-minute meeting. Effort scoring ensures that the queue includes a realistic mix of quick wins and substantial engagements.
  • Client importance — What is the client's tier, AUM, relationship depth, and strategic value? Most firms weight actions for higher-tier clients more heavily, reflecting the disproportionate business impact of retaining and deepening large relationships. However, this weighting should not result in lower-tier clients being systematically neglected — compliance-driven and risk-driven actions should override tier-based scoring.

Composite scoring. The overall priority score is a weighted combination of dimension scores:

Priority = (W_urgency x Urgency) + (W_impact x Impact) - (W_effort x Effort) + (W_client x ClientImportance)

Weights are calibrated to the firm's strategic priorities. A firm focused on growth may weight impact and client importance heavily. A firm under regulatory scrutiny may weight urgency and compliance-driven impact heavily. Weights should be reviewed and adjusted periodically based on business outcomes.

Priority queue management. Queue design prevents action fatigue — the phenomenon where advisors ignore recommendations because the system generates too many:

  • Cap the daily queue at five to seven actions per advisor — a practical rule of thumb (not a cited research finding): larger queues tend to depress completion rates and breed action fatigue.
  • Ensure the queue includes a mix of action types — not exclusively compliance items or exclusively revenue-driven items.
  • Allow advisors to defer actions (with a snooze period) without permanently dismissing them. Deferred actions return to the queue after the snooze period with an adjusted priority score.
  • Compliance-driven actions with approaching deadlines should be flagged as non-deferrable once they enter a critical window (e.g., within 15 days of the deadline).

Advisor capacity consideration. The NBA system should account for advisor availability when generating queues. An advisor returning from vacation faces a backlog; an advisor with a light meeting day has capacity for a complex action. Integration with the advisor's calendar and CRM activity log enables capacity-aware queue generation.

Action Routing and Assignment

Not every action requires the advisor's personal attention. Effective routing directs each action to the right person based on the nature of the work, the relationship requirement, and the team structure.

Role-based routing rules:

  • Advisor — Relationship decisions, complex discussions, high-value client interactions, investment strategy conversations, financial planning reviews. The advisor handles actions where the personal relationship and professional judgment are essential.
  • Client service associate (CSA) — Scheduling meetings, document collection, routine follow-up calls, account maintenance requests, birthday and milestone acknowledgments (if the firm delegates these). CSAs handle actions that are important but do not require the advisor's expertise.
  • Operations team — Account transfers, beneficiary designation processing, cost basis corrections, distribution processing, account opening paperwork. Operations handles actions that involve back-office execution.
  • Compliance team — Regulatory disclosure delivery, suitability re-certification review, advertising review items, compliance-exception resolution. Compliance handles actions that require regulatory expertise or supervisory approval.

Escalation rules. Actions that are not completed within their service-level agreement (SLA) should escalate automatically:

  • Level 1 (approaching SLA) — Visual indicator in the dashboard (color change from green to yellow).
  • Level 2 (at SLA) — Push notification to the assigned individual and their supervisor.
  • Level 3 (past SLA) — Escalation to the practice manager or branch manager, with the overdue action flagged in management reports.
  • Level 4 (compliance actions past SLA) — Escalation to the Chief Compliance Officer, with the overdue action logged as a compliance exception.

Team-based routing. In team-based advisory practices, routing rules should consider advisor specialization (tax planning, estate planning, retirement income), current workload, and client assignment. If the primary advisor is unavailable, the system should route time-sensitive actions to a designated backup advisor rather than allowing them to age in the queue.

Delivery Channels and Nudges

The most carefully prioritized recommendation is worthless if the advisor never sees it. Delivery channel design and nudge formatting directly affect adoption rates.

Delivery channels:

  • Dashboard widget (morning briefing) — A dedicated section of the advisor's home screen displaying the day's priority queue. The morning briefing is the primary delivery channel for most NBA implementations, designed to be the first thing the advisor reviews each day. Effective morning briefings display the top five to seven actions ranked by priority, with a one-line summary and the client name for each.
  • Push notifications (mobile and desktop) — Real-time alerts for urgent, time-sensitive actions (margin call, large cash deposit, compliance deadline within 48 hours). Push notifications should be reserved for genuinely urgent items to avoid notification fatigue.
  • Email digest (daily or weekly) — A summary email listing pending actions, upcoming deadlines, and completed actions from the prior period. The email digest serves as a secondary channel and a record that the advisor can reference outside the dashboard. Weekly digests work well for practice-level summaries; daily digests suit high-volume practices.
  • CRM task creation — NBA recommendations automatically create tasks in the firm's CRM system, ensuring that actions are tracked in the advisor's existing workflow tool. CRM integration is critical for adoption — if advisors must check a separate system for NBA recommendations, adoption will be low.
  • Calendar integration — For actions involving client meetings, the system can auto-suggest or auto-block calendar time based on the client's preferred meeting times and the advisor's availability. This reduces the friction between "I should schedule a review with this client" and actually scheduling it.

Nudge design. A nudge is the atomic unit of NBA delivery — the brief, actionable message that presents the recommendation to the advisor. Effective nudges share several characteristics:

  • Brief — Two to three sentences maximum for the initial display. The advisor should be able to read the nudge in under 10 seconds and decide whether to act.
  • Contextual — The nudge includes enough client-specific information that the advisor understands why the action matters without opening the full client record. Include the trigger event, the relevant data point, and the recommended action.
  • Actionable — The nudge includes a clear call to action and a direct link to execute it. "John Smith deposited $150K yesterday. His portfolio is now 12% cash vs. 3% target -- recommend investing per his growth model. [View Account] [Create Proposal]."
  • Prioritized — Visual cues (color coding, icons, position in the queue) communicate the action's priority relative to other items.

Timing. When nudges are delivered affects adoption:

  • Morning delivery (7:00-8:00 AM) for the daily priority queue, so advisors start the day with a clear action plan.
  • Real-time delivery for urgent items (margin calls, same-day compliance deadlines, large cash movements).
  • Post-market-close delivery for performance-related triggers (drawdown alerts, drift notifications) that should not interrupt the trading day.
  • End-of-week delivery for practice-level summaries and the following week's preview.
Show full SKILL.md (2,052 more words)Show less
Client Context and Personalization

Effective NBA recommendations require deep client context. A generic "call this client" recommendation is far less actionable than a recommendation that explains why the call matters and provides client-specific talking points.

Context assembly. When an event triggers an NBA recommendation, the system should assemble a context package that includes:

  • Investment profile — Current allocation, target model, risk profile, investment objectives, account types, tax status, cost basis summary.
  • Financial plan status — Current plan (if any), funded status of goals, Monte Carlo probability, key assumptions, upcoming milestones. A client whose retirement plan is 95% funded requires a different conversation than one at 60%.
  • Recent interactions — Last contact date, last meeting date, topics discussed, outstanding action items from prior meetings, recent service requests. The advisor should not call a client unaware that the client called the service desk with a complaint yesterday.
  • Communication preferences — Preferred contact method (phone, email, video), preferred meeting time, preferred frequency. Respecting preferences increases engagement and demonstrates attentiveness.
  • Life stage and upcoming events — Current life stage (accumulation, pre-retirement, distribution, legacy), upcoming milestones (age-based, contract-based), recent life events.
  • Household context — Spouse/partner information, dependent children, other family members who are also clients, household-level asset aggregation, estate plan status.

Personalization. The recommended action and its supporting materials should reflect the specific client's situation:

  • Talking points should reference the client's specific holdings, goals, and circumstances — not generic advice.
  • Analysis summaries should use the client's actual data (actual drift amount, actual tax-loss estimate, actual RMD calculation).
  • Email drafts should reflect the client's communication style and relationship tone (formal vs. informal, detail-oriented vs. summary-focused).

Historical context. The system should track the history of NBA recommendations for each client:

  • What actions were previously recommended? Did the advisor accept, defer, or reject them?
  • Were deferred actions eventually completed?
  • What was the client's response to prior outreach driven by NBA recommendations?

This history prevents repetitive recommendations (do not recommend the same action that was rejected last week) and enables trend analysis (a client who consistently defers review meetings may need a different engagement approach).

Workflow Integration

NBA delivers maximum value when the recommendation connects seamlessly to the execution workflow. Clicking "Propose Rebalancing" should not just remind the advisor to rebalance — it should open the rebalancing tool with the client's accounts pre-loaded, the current drift analysis displayed, and the proposed trades ready for review.

Execution workflow connections:

  • "Propose Rebalancing" opens the portfolio management system with the client's account, current vs. target allocation, and proposed trades pre-populated.
  • "Schedule Review" opens the calendar with the client's preferred meeting times highlighted, a pre-built agenda template attached, and a draft invitation email ready to send.
  • "Send Tax-Loss Report" generates the tax-loss harvesting analysis from the portfolio system, formats it into the firm's reporting template, and queues it for delivery through the client's preferred channel.
  • "Update Beneficiaries" opens the account maintenance workflow with the client's current beneficiary designations displayed and a form pre-populated with the client's information.
  • "Deliver Disclosure" queues the required document for delivery through the firm's document delivery system, with tracking confirmation.

CRM activity logging. When an advisor completes an NBA-recommended action, the system should automatically log the activity in the CRM:

  • Record the trigger event, recommended action, advisor action (accepted/deferred/rejected), completion timestamp, and outcome.
  • Link the activity to the client record and the advisor record.
  • If the action involved a client interaction, log the interaction details (date, method, duration, topics, next steps).

Automatic logging eliminates the manual data entry that advisors routinely skip, ensuring that the CRM reflects actual practice activity and providing the data foundation for relationship tracking, compliance documentation, and practice analytics.

Feedback loop. Advisor acceptance and rejection of NBA recommendations should feed back into the system to improve future recommendations:

  • Track acceptance rates by action type, trigger type, advisor, and client segment.
  • Identify actions that are consistently rejected and investigate whether the trigger logic, prioritization, or action template needs refinement.
  • Identify advisors with low acceptance rates and determine whether the issue is action quality, delivery timing, or advisor engagement.
  • Use acceptance/rejection data to train ML models that improve action ranking and personalization over time.
Compliance-Driven Actions

NBA systems serve a dual purpose: enhancing advisor productivity and ensuring compliance-mandated actions are completed on time. Compliance-driven NBA actions differ from discretionary actions in several important ways.

Examples of compliance-driven NBA actions:

  • Annual suitability review or best-interest review due for a client whose last review was 11 months ago.
  • Form CRS delivery required because the firm filed an amended Form CRS and must deliver the updated version to existing clients.
  • Best-interest documentation needed for a recent recommendation that lacks the required documentation under Reg BI.
  • Account restriction review required — a restricted account (e.g., deceased account holder, legal dispute, regulatory freeze) requires periodic review and cannot be traded until the restriction is resolved.
  • Annual privacy notice delivery due under Reg S-P.
  • Client identity verification incomplete — CIP documentation gap identified during periodic review.

Non-dismissible actions. Unlike discretionary actions (where an advisor can reasonably decide that a referral conversation is not appropriate this week), compliance-driven actions cannot be ignored or permanently dismissed without supervisory override. The system should enforce this:

  • Compliance actions cannot be snoozed beyond their regulatory deadline.
  • Dismissal of a compliance action requires entry of a reason and supervisor approval.
  • Overdue compliance actions are automatically escalated per the escalation rules.

Audit trail. All compliance-driven NBA actions must maintain a comprehensive audit trail:

  • Timestamp of trigger detection (when the system identified the compliance event).
  • Timestamp of action creation (when the recommendation was generated).
  • Timestamp of advisor notification (when the recommendation was delivered).
  • Advisor response (accepted, deferred with date, escalated).
  • Completion timestamp and evidence (meeting notes, signed documents, delivery confirmation).
  • Responsible party (the individual who completed the action).
  • Supervisor acknowledgment (for escalated or overdue items).

This audit trail serves as evidence of supervisory oversight during regulatory examinations. When an SEC or FINRA examiner asks, "How do you ensure that all clients receive annual reviews?" the firm can produce the NBA compliance log showing trigger dates, notification dates, completion dates, and escalation records for every client.

Measurement and Optimization

An NBA system that cannot measure its own effectiveness cannot improve. Measurement frameworks should track both operational metrics (is the system working?) and outcome metrics (is the system creating value?).

Operational metrics:

  • Action acceptance rate — What percentage of recommended actions do advisors accept and complete? As an illustrative planning target (not an industry-verified statistic), a mature implementation might aim for 60-75% acceptance; persistent rates below 40% suggest the recommendations are not relevant or the delivery is not effective.
  • Time-to-action — How quickly are accepted actions completed after recommendation? Measure the distribution, not just the average. A median of two days with a long tail of 30+ day completions indicates a queue management problem.
  • Queue utilization — What percentage of the daily queue capacity (five to seven actions) is being used? Persistent under-utilization suggests insufficient triggers or overly conservative scoring. Persistent over-utilization (advisors consistently receiving more actions than they can complete) suggests the cap needs adjustment or the practice needs additional staff.
  • Trigger accuracy — What percentage of detected events actually warrant an action? False positive triggers (e.g., flagging a cash deposit that the client has already discussed with the advisor) reduce trust in the system.
  • Compliance completion rate — What percentage of compliance-driven actions are completed before their deadline? Target: 100% for hard regulatory deadlines, 95%+ for firm-imposed deadlines.

Outcome metrics:

  • Revenue impact — Do clients who receive NBA-driven outreach produce more revenue (through additional assets, planning engagements, or product adoption) than comparable clients who do not? This requires careful measurement with appropriate controls, as NBA-targeted clients may differ systematically from non-targeted clients.
  • Retention impact — Is the client retention rate higher for clients who receive regular NBA-driven advisor contact? Retention is a lagging indicator, so firms should also track leading indicators like client satisfaction scores and engagement frequency.
  • Advisor productivity — Are advisors completing more client-facing activities per day/week after NBA implementation? Measure both quantity (number of client interactions) and quality (actions that lead to outcomes vs. check-the-box contacts).

Continuous improvement:

  • A/B testing — Compare different action templates, delivery times, and nudge formats to identify what drives higher acceptance and completion rates. Run tests within advisor cohorts to control for individual differences.
  • Advisor feedback — Collect qualitative input from advisors on action quality, relevance, and timing through periodic surveys and advisory councils. Advisors who feel the system works for them become champions; advisors who feel it works against them become resisters.
  • Trigger refinement — Periodically review trigger thresholds and logic. If 80% of drift-triggered rebalancing actions are deferred because the drift is near the threshold but not compelling, the threshold may be too tight. If large-cash-deposit actions are consistently accepted, the system is working well for that trigger type.
  • Template refresh — Update action templates (talking points, email drafts, analysis summaries) based on advisor feedback and changing market conditions. Templates that reference outdated market themes or stale data points undermine credibility.

Worked Examples

See references/examples.md for three end-to-end worked examples — designing an NBA engine for a 15-advisor RIA (trigger catalog, scoring weights, sample queue), a large-cash-deposit trigger flowing through the full workflow, and a compliance-driven annual-review completion system. Load it when the user needs a full scenario walkthrough.

Common Pitfalls

  • Generating too many actions per advisor per day, causing action fatigue and system abandonment — cap daily queues at five to seven items and invest in prioritization quality over trigger quantity.
  • Implementing NBA as a standalone system disconnected from the CRM, portfolio management, and financial planning tools — if advisors must check a separate system, adoption will fail; NBA must integrate into existing workflows.
  • Relying entirely on rule-based logic without incorporating advisor feedback — rules that generate irrelevant or poorly timed recommendations erode trust; build feedback mechanisms from day one.
  • Treating all actions as equal priority — without a robust scoring model, compliance deadlines, revenue opportunities, and routine touchpoints compete for the same queue positions, and important items get buried.
  • Designing nudges that lack client-specific context — a generic "Contact this client" recommendation provides no value; nudges must include the trigger reason, relevant data, and a specific recommended action.
  • Failing to connect NBA recommendations to execution workflows — if clicking "Propose Rebalancing" merely creates a reminder rather than opening the rebalancing tool with the client's data pre-loaded, the system adds overhead instead of reducing it.
  • Making compliance-driven actions dismissible without supervisory oversight — compliance items must be non-deferrable past their regulatory deadline, with escalation to supervisors and the CCO.
  • Not tracking action outcomes (acceptance, completion, client response) — without outcome data, the system cannot improve, and the firm cannot measure the return on its NBA investment.
  • Ignoring advisor capacity when generating queues — recommending seven complex actions on a day when the advisor has six hours of meetings is counterproductive.
  • Deploying the system without advisor input on trigger thresholds, action templates, and delivery preferences — top-down implementation without advisor buy-in consistently produces low adoption rates.
  • Omitting the audit trail for compliance-driven actions — the entire compliance value of NBA depends on the ability to produce timestamped, complete records during regulatory examinations.
  • Allowing the action library to become stale — talking points referencing outdated market conditions, email templates with old branding, or analysis summaries using last year's data undermine the system's credibility.

Cross-References

  • crm-client-lifecycle (advisory-practice plugin) — CRM activity records, client segmentation, and lifecycle data are primary inputs for NBA triggers; every NBA action updates the CRM.
  • portfolio-management-systems (advisory-practice plugin) — Portfolio events (drift, cash position, concentrated holdings, performance) are a primary category of NBA triggers; the portfolio management system provides the data feeds and execution tools.
  • advisor-dashboards (advisory-practice plugin) — The advisor dashboard is the primary delivery channel for NBA recommendations; the morning briefing widget displays the prioritized action queue.
  • financial-planning-integration (advisory-practice plugin) — Financial plan status changes (goal progress, funded status, assumption changes) trigger planning-related NBA actions; plan data enriches action context.
  • rebalancing (wealth-management plugin) — Portfolio drift and rebalancing triggers are a key category of NBA events; the NBA recommendation links directly to the rebalancing workflow.
  • tax-efficiency (wealth-management plugin) — Tax-loss harvesting opportunities detected from cost basis data trigger NBA recommendations; tax context (gain/loss position, holding periods) enriches rebalancing and investment actions.
  • investment-suitability (compliance plugin) — Annual suitability reviews and profile re-certifications are compliance-driven NBA actions; suitability data informs the client context assembled for all NBA recommendations.
  • examination-readiness (compliance plugin) — NBA compliance action logs (trigger timestamps, escalation records, completion evidence) serve as auditable proof of supervisory oversight during SEC and FINRA examinations.

© JoelLewis, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (references) in plugins/advisory-practice/skills/next-best-action of JoelLewis/finance_skills.

  • SKILL.md
  • references/examples.md

Open the folder on GitHubat commit 5c498ea

Compare with similar skills

Next Best Action next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Next Best Action compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Next Best Action this skillJoelLewis/finance_skills206—~9.2kAutomated safety check: PassMIT
Stripe Projectsfossasia/eventyay1.7k5 repos~2kAutomated safety check: NotesApache-2.0
MQTTX CLIemqx/MQTTX5.1k—~1.9kAutomated safety check: PassApache-2.0
AWS Serverless Edazxkane/aws-skills3674 repos~3.2kAutomated safety check: PassMIT
Windmill Trigger Type Checklistwindmill-labs/windmill18k—~4.7kAutomated safety check: PassCustom licence
FoundatioFoundatioFx/Foundatio2.1k—~3.9kAutomated safety check: PassApache-2.0

Similar skills

  • Stripe Projects

    fossasia/eventyay

    A skill your agent uses when the user wants to provision infrastructure or third-party services using Stripe Projects.

    1.7k GitHub starsUsed in 5 repos~2k tokens
    Backend & APIsAuto-check: notes
  • MQTTX CLI

    emqx/MQTTX

    Operates the `mqttx` command line client to connect, publish, subscribe, benchmark and simulate data against an MQTT broker, with TLS and MQTT 5 support.

    5.1k GitHub stars~1.9k tokensUpdated yesterday
    Backend & APIsAuto-check passed
  • AWS Serverless Eda

    zxkane/aws-skills

    AWS serverless and event-driven architecture expert based on Well-Architected Framework.

    367 GitHub starsUsed in 4 repos~3.2k tokens
    Backend & APIsAuto-check passed
  • Windmill Trigger Type Checklist

    windmill-labs/windmill

    Checklist of every backend, frontend, CLI and capture change needed to add a new TriggerCrud-based trigger type, such as Azure, GCP or Kafka, to Windmill.

    18k GitHub stars~4.7k tokensUpdated today
    Backend & APIsAuto-check passed
  • Foundatio

    FoundatioFx/Foundatio

    A skill your agent uses when working with Foundatio infrastructure abstractions for .NET -- caching, queuing, messaging, file storage, distributed locking, or background jobs.

    2.1k GitHub stars~3.9k tokensUpdated 2 days ago
    Backend & APIsAuto-check passed
  • Homerail Dag Ops

    xiaotianfotos/homerail

    Design, start, supervise, inspect, and continue HomeRail DAG workflows from any agent with CLI or HTTP access.

    994 GitHub stars~1.5k tokensUpdated 15 days ago
    Backend & APIsAuto-check passed

More from JoelLewis/finance_skills

All 91 skills in this repo
  • Asset Allocation

    JoelLewis/finance_skills

    Determine how to distribute capital across asset classes using strategic and tactical allocation frameworks.

    206 GitHub stars~2.5k tokensUpdated 2 mo ago
    Auto-check passed
  • Bet Sizing

    JoelLewis/finance_skills

    Determine how much capital to allocate to individual positions within a portfolio.

    206 GitHub stars~2.5k tokensUpdated 2 mo ago
    Auto-check passed
  • Commodities

    JoelLewis/finance_skills

    Analyze commodity markets including futures curve dynamics, roll yield, and supply/demand fundamentals.

    206 GitHub stars~1.9k tokensUpdated 2 mo ago
    Auto-check passed
  • Currencies And Fx

    JoelLewis/finance_skills

    Analyze currency markets, exchange rate mechanics, and FX risk management for international portfolios.

    206 GitHub stars~1.9k tokensUpdated 2 mo ago
    Auto-check passed
  • Debt Management

    JoelLewis/finance_skills

    Provide frameworks for managing and paying off personal debt effectively.

    206 GitHub stars~2.5k tokensUpdated 2 mo ago
    Auto-check passed
  • Diversification

    JoelLewis/finance_skills

    Build diversified portfolios using correlation analysis, efficient frontier construction, and factor-based diversification.

    206 GitHub stars~2.3k tokensUpdated 2 mo ago
    Auto-check passed

Categories

Questions about Next Best Action

What does Next Best Action do?

Design and implement next-best-action engines that surface proactive, prioritized recommendations to advisors based on portfolio, life, market, and compliance events. Next Best Action is an agent skill from JoelLewis/finance_skills. Design and implement next-best-action engines that surface proactive, prioritized recommendations to advisors based on portfolio, life, market, and compliance events.

When should I use Next Best Action?

Next Best Action fits situations like: the user asks about building event-driven advisor alerts; designing trigger logic for portfolio drift; large cash movements; prioritizing competing actions across a book of business.

How do I install Next Best Action in Claude Code?

Run `npx skills add JoelLewis/finance_skills --skill next-best-action -a claude-code`. Or copy the skill folder (plugins/advisory-practice/skills/next-best-action in JoelLewis/finance_skills) into .claude/skills/next-best-action in your project. Claude Code loads it when a task matches its description.

How do I install Next Best Action in Codex?

Run `npx skills add JoelLewis/finance_skills --skill next-best-action -a codex`. Or copy the skill folder (plugins/advisory-practice/skills/next-best-action in JoelLewis/finance_skills) into .agents/skills/next-best-action in your project. Codex loads it when a task matches its description.

Can I use Next Best Action in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add JoelLewis/finance_skills --skill next-best-action -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/next-best-action, .gemini/skills/next-best-action, .github/skills/next-best-action and .opencode/skills/next-best-action in your project.

What does Next Best Action need to run?

SKILL.md names no scripts, command-line tools or credentials: Next Best Action is instructions for the agent only.

Does Next Best Action access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Next Best Action safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Next Best Action use?

Next Best Action is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Next Best Action use?

About 9.2k tokens (SKILL.md is roughly 37k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 4k tokens, read only when the agent opens those files.

What are the alternatives to Next Best Action?

Skills that share tags, products or a category with Next Best Action: Stripe Projects (fossasia/eventyay, 1.7k stars), MQTTX CLI (emqx/MQTTX, 5.1k stars), AWS Serverless Eda (zxkane/aws-skills, 367 stars) and Windmill Trigger Type Checklist (windmill-labs/windmill, 18k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Next Best Action?

JoelLewis (a GitHub user) maintains it in JoelLewis/finance_skills, which has 206 GitHub stars. The repository holds 91 skills in this directory. The repository was last updated on July 18, 2026.

Source: JoelLewis/finance_skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.