lsc-events-management
Guides Life Sciences Cloud (LSC) Events Management configuration for web and mobile apps.
Skill by SalesforceLabs
Chalk Labs
Need help deploying lsc-events-management?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/salesforcelabs-lsc-events-management
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: productivity
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/lsc-events-management
What's inside
- Skill name
lsc-events-management- Description
- Guides Life Sciences Cloud (LSC) Events Management configuration for web and mobile apps. Use when user asks about Managed Events, MngEvent, Speaker Events, event participants, event resources, event budgets, estimated expenses, event workflow path / stage path / Stage Objects, the Draft → Pending Approval → Approved progress bar, event venues / locations, or LifeSciStageObject / LifeSciStagePath / LifeSciStageValue / LifeSciStageOperation records.
- License
- Apache-2.0
- Instructions
- 497 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
## How to Answer Events Management Questions
**Always call MCP tools to get sourced documentation and verify schema before answering.** The Events Management feature was new in LSC 262 and is sparsely documented — assume your training data is incomplete and verify with `describe_sobject` and `run_soql`.
| User asks about... | Call this tool |
|---|---|
| General concepts, workflow path, checklist scripts | `get_lsc_module_docs({ module: "generic-workflow" })` |
| Specific event topic (any) | `search_lsc_knowledge({ query: "<topic>" })` |
| Schema of a specific event entity | `describe_sobject({ objectName: "MngEvent" })` |
| Existing data | `run_soql({ query: "SELECT ... FROM MngEvent ..." })` |
| Picklist values on a Status / Mode / Type field | `run_apex` with `Schema.<Object>.<Field>.getDescribe().getPicklistValues()` |
| Mobile cache config | `list_db_schema({ filter: "MngEvent" })` |
| Validating mobile config | `audit_mobile_config()` |
---
## Data Model — the headline entities
The Events feature centers on `MngEvent` ("Managed Event"). It is a **standard LSC entity**, not custom (no `__c` suffix). Sub-entities follow a `MngEvent*` prefix.
| Entity | Purpose | Notes |
|---|---|---|
| **`MngEvent`** | The event record itself (Speaker Event, Webinar, etc.) | Has Status, Mode, EventStructure, EstimatedBudget, ComplianceAgreementStatus, EventLocationId (Account or Location), and the workflow `Status` field |
| **`MngEventType`** | Catalog of event types (Speaker Event, Webinar) | TargetTemplate ∈ `SpeakerMeeting`, `Presentation`, `DisplaysAndExhibits`, `Sponsored` |
| **`MngEventParticipant`** | Speakers + attendees on an event | `ParticipantId` is polymorphic (Account/Contact/Lead/Expert/User/PartyProfile). `ParticipantType` is free-form picklist. `EventMgmtPtcpTypeRoleMapId` is the only writable type/role linkage — `EventMgmtParticipantTypeId` and `EventMgmtParticipantRoleId` are auto-derived (read-only on insert). |
| **`MngEventResource`** | Venue, catering, A/V, speaker travel | `ResourceType` is free-form picklist (e.g., Venue, Catering, AudioVisual, Travel). `SelectedLocationId` references `Location`. |
| **`MngEventProduct`** | Products on an event | Uses `ProductReferenceRecordId` (polymorphic), **not** `ProductId` |
| **`MngEventBudget`** | Junction Event ↔ Budget | Has `AllocatedAmount` |
| **`MngEventTerritory`** | Junction Event ↔ Territory2 | |
| **`MngEventSession`** | Sub-sessions within an event | |
| **`EstimatedExpense`** | Estimated expense lines | Linked to event via polymorphic `ExpenseSourceId` (NOT `MngEventId`) |
| **`EstimatedExpensePtcpAlloc`** | Allocates an EstimatedExpense across participants | `MngEventId` is **read-only / auto-derived**; `ParticipantId` is the writable lookup to `MngEventParticipant` |
### Configuration entities
| Entity | Purpose | Required fields on insert (besides Name) |
|---|---|---|
| `EventMgmtParticipantType` | Speaker / Attendee categories | `Type` (free-form), `StandardType` (Expert / Attendee / Colleague / etc.) |
| `EventMgmtParticipantRole` | KOL / Tier 1 / Internal Medicine / etc. | `Role` (free-form), `StandardRole` (Expert / Attendee / Organizer / etc.) |
| `EventMgmtPtcpTypeRoleMap` | Junction: Type ↔ Role per `MngEventTypeId` | `Name`, `MngEventTypeId`, `EventMgmtParticipantTypeId`, `EventMgmtParticipantRoleId`, `IsActive` |
| `EventMgmtSvcSpclzn` / `Tier` | Speaker service classification + tiers | |
| `EventMgmtFairMarketValue` | FMV ranges per tier | |
| `ExpenseType` | Dinner / F&B / Speaker Fee / A/V / Travel | `AllocationType` ∈ `GroupAllocation`/`IndividualAllocation`/`MultipleAllocations`/`NotApplicable`; `Classification` ∈ `Estimate`/`Actual`; `ExpenseAvailabilityType` ∈ `Visit`/`ManagedEvent`/`ManagedEventAndVisit` |
| `Budget` / `BudgetMngEventType` | Event budgets and their event-type linkage | |
### Sharing model
| Entity | OWD |
|---|---|
| `LifeSciStageObject` | Private |
| `LifeSciStageAction` | Private |
| `LifeSciStagePath` | ControlledByParent |
| `LifeSciStageValue` | ControlledByParent |
| `LifeSciStageOperation` | ControlledByParent |
The two `Private` entities **must** be shared (owner-based rule with `<allInternalUsers/>` on both `<sharedFrom>` and `<sharedTo>` at Read access) or non-admin users see the error: *"We couldn't load the workflow path for this record. Ask your Salesforce admin for help."*
Criteria-based sharing is **not supported** on these — use `<sharingOwnerRules>`.
---
## Workflow Path (the Draft → Pending Approval → Approved progress bar)
The visual stage tracker shown on the `MngEvent` record page is driven by Generic Workflow (LSC Workflow Management), **not** by picklist values alone.
### Required artifacts (in order)
1. **Picklist values on `MngEvent.Status`** — the controlling field. `MngEvent.Status` is a standard field tied to the `ManagedEventStatus` `StandardValueSet`. Add stage values via metadata deploy:
```xml
<!-- standardValueSets/ManagedEventStatus.standardValueSet-meta.xml -->
<StandardValueSet xmlns="http://soap.sforce.com/2006/04/metadata">
<sorted>false</sorted>
<standardValue><fullName>Draft</fullName><default>true</default><label>Draft</label></standardValue>
<standardValue><fullName>Pending Approval</fullName><default>false</default><label>Pending Approval</label></standardValue>
<standardValue><fullName>Approved</fullName><default>false</default><label>Approved</label></standardValue>
<standardValue><fullName>Closed</fullName><default>false</default><label>Closed</label></standardValue>
<standardValue><fullName>Cancelled</fullName><default>false</default><label>Cancelled</label></standardValue>
</StandardValueSet>
```
⚠ Do **not** try to add a `<valueSet>` to `MngEvent.Status` field XML — `Status` is a standard field and the metadata API rejects custom valuesets on standard fields with: *"You cannot define picklist, globalPicklist, or valueSet on a standard field. Use StandardValueSet instead."*
2. **`LifeSciStageObject`** — registers MngEvent as workflow-enabled.
```apex
LifeSciStageObject so = new LifeSciStageObject(
Name = 'MngEvent',
ObjectName = 'MngEvent',
IsControlledByStagePath = true
);
insert so;
```
3. **`LifeSciStagePath`** — ties the stage object to a controlling field.
```apex
LifeSciStagePath sp = new LifeSciStagePath(
Name = 'Managed Event Workflow',
LifeSciStageObjectId = so.Id,
FieldApiName = 'Status', // NOT 'StatusFieldApiName'
Status = 'Active'
);
insert sp;
```
4. **`LifeSciStageValue`** — one record per stage. **Order is implicit by creation order**; there is no `OrderNumber` field. Insert in workflow order.
```apex
insert new List<LifeSciStageValue>{
new LifeSciStageValue(Name='Draft', FieldValue='Draft', LifeSciStagePathId=sp.Id),
new LifeSciStageValue(Name='Pending Approval', FieldValue='Pending Approval', LifeSciStagePathId=sp.Id),
new LifeSciStageValue(Name='Approved', FieldValue='Approved', LifeSciStagePathId=sp.Id),
new LifeSciStageValue(Name='Closed', FieldValue='Closed', LifeSciStagePathId=sp.Id),
new LifeSciStageValue(Name='Cancelled', FieldValue='Cancelled', LifeSciStagePathId=sp.Id)
};
```
5. **`lsc4ce:LifeSciStagePathContainer` component** placed on the Lightning Record Page (FlexiPage) for `MngEvent`.From SalesforceLabs/lsc-for-claude, Apache-2.0.
More from SalesforceLabs/lsc-for-claude
- 0.624score
lsc-account-management
SalesforceLabs
Guides Life Sciences Cloud (LSC) Account Management configuration for web and mobile apps.
SkillAFreshness: A★ 7Claude Code +9 - 0.624score
lsc-activity-plan
SalesforceLabs
Guides Life Sciences Cloud (LSC) Activity Plan configuration for web and mobile apps.
SkillAFreshness: A★ 7Claude Code +9 - 0.624score
lsc-agentforce
SalesforceLabs
Guides Agentforce for Life Sciences Cloud (LSC) configuration (Winter '26 feature).
SkillAFreshness: A★ 7Claude Code +9 - 0.624score
lsc-app-alerts
SalesforceLabs
Guides Life Sciences Cloud (LSC) App Alerts and Notifications configuration for web and mobile apps.
SkillAFreshness: A★ 7Claude Code +9 - 0.624score
lsc-briefings
SalesforceLabs
Guides Briefings (Daily Podcasts) configuration and troubleshooting.
SkillAFreshness: A★ 7Claude Code +9 - 0.624score
lsc-calendar-tot-routine
SalesforceLabs
Guides Life Sciences Cloud (LSC) Calendar, Time Off Territory, Routine, and My Team configuration.
SkillAFreshness: A★ 7Claude Code +9 - 0.624score
lsc-config-migration
SalesforceLabs
Guides migrating Life Sciences Cloud (LSC) org configuration (Admin Console settings, DB Schema, trigger handlers, quick/custom actions) between orgs using…
SkillAFreshness: A★ 7Claude Code +9 - 0.624score
lsc-consent-management
SalesforceLabs
Guides Life Sciences Cloud (LSC) Consent Management configuration for web and mobile apps.
SkillAFreshness: A★ 7Claude Code +9 - 0.624score
lsc-custom-scripts
SalesforceLabs
Guides Life Sciences Cloud (LSC) Custom Script configuration for validation, checklists, and Visit Action Validation.
SkillAFreshness: A★ 7Claude Code +9 - 0.624score
lsc-data-model
SalesforceLabs
Expert knowledge of the Life Sciences Cloud (LSC) data model concepts.
SkillAFreshness: A★ 7Claude Code +9 - 0.624score
lsc-db-schema
SalesforceLabs
Manages Life Sciences Cloud (LSC) DB Schema records (mobile object metadata cache configuration).
SkillAFreshness: A★ 7Claude Code +9 - 0.624score
lsc-field-email
SalesforceLabs
Guides Life Sciences Cloud (LSC) Field Email configuration and setup.
SkillAFreshness: A★ 7Claude Code +9
Signals
- Stars
- 7
- Forks
- 2
- Open issues
- 0
- Last commit (this folder)
- Oct 13, 2026 (18 days ago)
- Last release
- Oct 22, 2026 (9 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/SalesforceLabs/lsc-for-claude
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from SalesforceLabs
- 0.624score
lsc-activity-plan
SalesforceLabs
Guides Life Sciences Cloud (LSC) Activity Plan configuration for web and mobile apps.
SkillAFreshness: A★ 7Claude Code +9 - 0.624score
lsc-agentforce
SalesforceLabs
Guides Agentforce for Life Sciences Cloud (LSC) configuration (Winter '26 feature).
SkillAFreshness: A★ 7Claude Code +9 - 0.624score
lsc-app-alerts
SalesforceLabs
Guides Life Sciences Cloud (LSC) App Alerts and Notifications configuration for web and mobile apps.
SkillAFreshness: A★ 7Claude Code +9 - 0.624score
lsc-briefings
SalesforceLabs
Guides Briefings (Daily Podcasts) configuration and troubleshooting.
SkillAFreshness: A★ 7Claude Code +9 - 0.624score
lsc-calendar-tot-routine
SalesforceLabs
Guides Life Sciences Cloud (LSC) Calendar, Time Off Territory, Routine, and My Team configuration.
SkillAFreshness: A★ 7Claude Code +9 - 0.624score
lsc-config-migration
SalesforceLabs
Guides migrating Life Sciences Cloud (LSC) org configuration (Admin Console settings, DB Schema, trigger handlers, quick/custom actions) between orgs using…
SkillAFreshness: A★ 7Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get lsc-events-management running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
lsc-events-management skill. Agent Mart. https://agentmart.dev/skills/salesforcelabs-lsc-events-management (last updated 2026-10-24)