Every Feature

What FlowMason ships
and what it achieves

Every surface. Every capability. Every reason a Salesforce developer installs FlowMason instead of building from scratch.

Invocable Actions

30+ AI actions in every Flow Builder

Every FlowMason capability ships as an @InvocableMethod — available in the Action palette of every Salesforce Flow. Admins drag and drop AI. Developers define the pipeline. No HTTP boilerplate, no credential wiring, no retries.

AI: Summarize Record
AI: Classify Text
AI: Extract Data
AI: Translate
AI: Rewrite Text
AI: Generate Email
AI: Q&A from Record
AI: Sentiment Analysis
AI: Critique & Improve
AI: Next Best Action
AI: Compose Follow-up
AI: Validate Input
AI: Rank Items
AI: Generate Summary
AI: Identify Sentiment
+ 15 more actions
@InvocableMethod — auto-generated by FlowMason Studio
@InvocableMethod(
    label='AI: Summarize Record'
    category='FlowMason AI'
    description='Summarize any record using AI'
)
global static List<Response> summarize(
    List<Request> requests
) {
    return FMInvocableRunner.run(
        'summarize_v1', requests
    );
}
LWC Drop-ins

Drop AI on any record page — no backend code

6 fully encapsulated LWC components. Drag onto any page layout in App Builder. Configure via page builder properties — no Apex, no custom component code.

c-fm-ai-summary

Any record page

AI-generated summary based on record data and a prompt template. Cached with configurable TTL.

c-fm-ai-chat

Any page

Contextual AI chat with conversation history. Can load record context automatically.

c-fm-ai-next-best-action

Record pages

Shows ranked AI-generated action recommendations based on record state.

c-fm-ai-field-suggester

Record detail fields

AI-suggested values for empty or low-confidence fields, with one-click accept.

c-fm-ai-similar-records

Any record page

Semantic similarity search — shows top-N related records via embeddings.

c-fm-ai-case-triage

Service Cloud

Auto-classifies case priority and category. Optional auto-route to the right queue.

Trigger Framework

Bulkified async AI in triggers — one line

Bind any pipeline to any SObject event. FlowMason handles bulkification, async chaining, governor limit safety, retry logic, audit logging, and cost attribution automatically.

  • Bulkification — All records in a batch sent to the LLM together — one API call, not N.
  • Async chaining — Queueable jobs auto-chain within governor limits. No manual depth management.
  • Retry on failure — Transient LLM errors auto-retried with exponential backoff. Configurable max retries.
  • Per-record audit — Every trigger invocation logged — record ID, pipeline, response, tokens, user.
OpportunityTrigger.trigger
trigger OpportunityTrigger on
    Opportunity(after insert, after update) {

    // One line. That's it.
    fm.PipelineTrigger.handle(
        'opportunity_ai_enrichment',
        Trigger.new,
        Trigger.oldMap
    );
}
Pipeline Studio

Visual authoring. Developer output.

Design pipelines visually — define stages, wire prompt templates, configure providers. Hit Publish and FlowMason auto-generates the @InvocableMethod class, the fm.LLM facade, LWC variant, SFDX metadata, and a test skeleton. Pipelines deploy via sf project deploy like any other metadata.

1

Design

Drag stages onto the canvas, connect inputs/outputs, set prompts

2

Publish

FlowMason generates all 4 surfaces + SFDX metadata

3

Deploy

sf project deploy — same as every other metadata type

Provider Neutrality

Any model.
One interface.

Switch providers with a single config change. No refactoring. No redeployment. Your business rules, your model choice.

AN
Anthropic Claude
OA
OpenAI GPT-4
GV
Google Vertex AI
AB
AWS Bedrock
AZ
Azure OpenAI
EA
EdenAI Router
OL
Ollama (self-hosted)
FM_Config__mdt — change once, affects all pipelines
// org-default in FM_Config__mdt (one metadata record)
-  DeveloperName: default_provider  Value: anthropic
+  DeveloperName: default_provider  Value: openai

// or per-call override — no org config change needed
fm.LLM
  .withProvider('bedrock')
  .withModel('anthropic.claude-3-5-sonnet')
  .summarize(recordId, prompt);
7
Providers
0
Refactors to switch
Your model strategy

Enterprise Governance

The observability
Agentforce doesn't give you.

Audit logs, cost attribution, FLS enforcement, tenant isolation — built into the runtime, not bolted on.

Full Audit Log

Every LLM call logged: who triggered it, which record, which pipeline, prompt version, response, tokens. Queryable via SOQL. Exportable.

SELECT Pipeline__c, Record_Id__c, Token_Count__c,
  Created_By__c, CreatedDate
FROM FM_Audit_Log__c
WHERE CreatedDate = LAST_N_DAYS:30

Cost Attribution

Token costs broken down by pipeline, user, team, and time period. Know exactly which automation spent $4,000 last month.

fm.Cost.getByPipeline('opportunity_enrichment', 30);
// → { totalUSD: 412.30, calls: 1842, avgTokens: 312 }

FLS + CRUD Enforcement

Every SOQL query and DML goes through FMSecurityUtil. Field-level security checks are baked into every data operation — not optional.

FMSecurityUtil.checkObjectRead('Opportunity');
FMSecurityUtil.checkFieldAccessible(
  'Opportunity',
  new List<String>{'Amount', 'Name'}
);

Tenant Isolation

API keys encrypted at rest per org. No cross-tenant data access. Namespaced metadata. Built for Salesforce's multi-tenant security model.

// Encrypted — never in plaintext
FM_Secret__c key = FMVaultUtil.getKey(
  'anthropic_api_key'
);
// Org-scoped. Cannot be accessed cross-org.

Ready to explore?