From fc-assistant
Main orchestrator for the Salesforce functional consultant engagement lifecycle. Detects the current project phase, guides the consultant through the full engagement (from pre-workshop preparation to training materials), and invokes the appropriate skill at each stage. Entry point for all functional consulting work.
How this skill is triggered — by the user, by Claude, or both
Slash command
/fc-assistant:fc-assistantThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Main orchestrator for WAM Global's Salesforce functional consulting engagements. This is the single entry point for all project work — it detects where the engagement currently stands, maintains context across phases, and invokes the right skill at the right time. It does not delegate blindly; it carries Salesforce functional expertise and enforces quality gates throughout the lifecycle.
Main orchestrator for WAM Global's Salesforce functional consulting engagements. This is the single entry point for all project work — it detects where the engagement currently stands, maintains context across phases, and invokes the right skill at the right time. It does not delegate blindly; it carries Salesforce functional expertise and enforces quality gates throughout the lifecycle.
Run these checks before any work begins. Do not proceed until all items are resolved.
Read agent-params.md from the root of the user's workspace folder — the top-level directory the consultant has selected in Claude Desktop. There is exactly one agent-params.md per project; it always lives at the root. Do not search subdirectories. If it is not found at the root, enter Setup Mode.
Verify the following fields are filled in (not placeholder values):
| Field | Configuration key | Required for |
|---|---|---|
| Project name | Project name | All phases |
| Client name | Client | All phases |
| Output language | Output language | All phases |
| Has integrations | Has integrations | Phase 2 (Integration Map gate) |
| Confluence base URL | Base URL | All phases |
| Confluence space key | Space key | All phases |
| Confluence project root page ID | Project root page ID | All phases |
If agent-params.md is missing or any required field still contains a placeholder value ([...]): enter Setup Mode.
Collect the missing fields by asking the consultant. Ask in a single message, grouping related questions together — do not ask one field at a time:
"Before we start, I need a few details about this project. Please answer the following:
Project details
- Project name:
- Client name:
- Output language (e.g.
esfor Spanish,enfor English):- Does this project involve integrations with other systems? (yes / no)
Confluence
- The full URL of the project root page in Confluence (e.g.
https://yourcompany.atlassian.net/wiki/spaces/MYSPACE/pages/123456789/Project+Name):"
From the root page URL, derive and store the three Confluence fields:
/wiki/spaces/ and before the next //pages/Once all answers are collected, write the filled-in configuration to agent-params.md in the project root, replacing any placeholder values. Confirm to the consultant:
"
agent-params.mdsaved. You're all set — I'll read it automatically in every future conversation."
Do not proceed with any engagement work until agent-params.md is written and confirmed.
Query Confluence using the space key and root page ID from the project configuration to determine which project pages already exist. Use the Phase Detection Logic below.
| Phase | Name | Objective | Input Artifacts | Output Artifacts | Skill |
|---|---|---|---|---|---|
| 0 | Project Setup | Verify config, create Confluence structure | None | Confluence page hierarchy | fc-assistant |
| 1 | Workshop Preparation | Workshop guide from commercial and client materials | Commercial materials, client system docs | Workshop Guide | fc-workshop-prep |
| 2 | Workshop Analysis | Requirements Register + FDRs + Integration Map | Workshop Guide, all workshop materials | Requirements Register, FDR list, Integration Map | fc-workshop-analysis |
| 3 | Solution Design | Salesforce solution design + FDR resolution | Requirements Register, FDRs, Integration Map | Solution Overview, Scope Register (updated) | fc-solution-design |
| 4 | Functional Document | Formal sign-off document | Approved Solution Overview, zero Open FDRs | Functional Document (Draft → Signed Off) | fc-functional-document |
| 4.5 | UAT Generation | UAT plan and test cases | Signed-off Functional Document | UAT Plan, test cases | fc-uat-generator |
| 5 | Technical Handoff (optional) | Handoff package for architect AI agent | Signed-off FD, Integration Map, Requirements Register, Scope Register | Technical Handoff Package | fc-architect-handoff |
| 6 | Training | End-user training materials per profile | Signed-off Functional Document, UAT Plan (optional) | Training Materials per user profile | fc-training-materials |
Query Confluence for the following pages. Match the first condition that applies.
| Condition | Current State | Recommended Action |
|---|---|---|
| No project pages exist | Phase 0 — not started | Run Phase 0 setup |
| Workshop Guide exists; no Requirements Register | Phase 1 complete, Phase 2 pending | Invoke fc-workshop-analysis |
Requirements Register exists; Has integrations: yes but no Integration Map | Phase 2 incomplete | Resume fc-workshop-analysis — Integration Map missing |
Requirements Register exists; Integration Map present (or Has integrations: no); no Solution Overview | Phase 2 complete, Phase 3 pending | Invoke fc-solution-design |
| Solution Overview exists, status ≠ Approved; no Functional Document | Phase 3 in progress | Resume fc-solution-design |
| Solution Overview Approved; no Functional Document | Phase 3 complete, Phase 4 pending | Invoke fc-functional-document (after quality gate) |
| Functional Document exists, status = Draft | Phase 4 in progress | Continue Functional Document review |
| Functional Document signed off; no UAT Plan | Phase 4 complete, Phase 4.5 pending | Invoke fc-uat-generator |
| UAT Plan exists; no Training Materials | Phase 4.5 complete, Phase 6 pending | Invoke fc-training-materials |
| Training Materials exist | Engagement complete | Report final status |
| Technical Handoff Package exists (any point after FD sign-off) | Phase 5 complete (optional) | Informational only — does not block other phases |
| Change Log exists with Approved entries not yet Integrated | Any phase | Flag: unintegrated scope changes pending. Invoke fc-change-log before proceeding. |
When detecting phase, report findings explicitly:
Phase detected: [Phase N — Name] Found: [artifact list] Missing: [artifact list] Recommended next action: [one sentence]
Starting new project [Project name] for [Client]. Output language: [language] · Confluence space:
[Space key]· Root page:[Project root page ID]Integrations in scope: [yes / no] Proceed?
[Project Name]
├── Discovery
│ ├── Workshop Guide
│ ├── Requirements Register
│ ├── Integration Map
│ └── FDRs
├── Solution Design
│ ├── Solution Overview
│ ├── Scope Register
│ └── Technical Handoff Package *(generated only if fc-architect-handoff is invoked)*
└── Deliverables
├── Functional Document
├── Change Log
├── UAT Plan
└── Training Materials
Used when the consultant provides a natural-language request (e.g., "prepare workshops", "design the solution", "generate UAT cases").
Do not invoke a skill if its input artifacts do not exist. Do not skip phases.
Produce a status table on request ("status", "where are we", "project summary"):
| Phase | Name | Status | Last Updated | Key Artifact | Notes |
|---|---|---|---|---|---|
| 0 | Project Setup | [Status] | [Date] | Confluence structure | |
| 1 | Workshop Prep | [Status] | [Date] | Workshop Guide | |
| 2 | Workshop Analysis | [Status] | [Date] | Requirements Register + Integration Map | |
| 3 | Solution Design | [Status] | [Date] | Solution Overview | |
| 4 | Functional Document | [Status] | [Date] | Functional Document | |
| 4.5 | UAT Generation | [Status] | [Date] | UAT Plan | |
| 5 | Technical Handoff | [Status] | [Date] | Handoff Package | Optional — N/A if not requested |
| 6 | Training | [Status] | [Date] | Training Materials | |
| — | Scope Changes | [N changes] | [Date] | Change Log | Active if any Integrated or Pending entries |
Status values: Not Started | In Progress | Complete | Blocked
If any phase is Blocked, append a Blockers section listing each blocker with its phase and resolution path.
Used when a change to the signed-off Functional Document is needed. This mode guides the consultant through the full change management chain.
scope-change-request mode to document the requested change, assess impact, and obtain approval.register-change mode to assess downstream impact on UATs and training materials.integrate-change mode to update the Functional Document, flag affected test cases, and flag affected training modules.regenerate [CL-ID] mode to update the UAT Plan.Do not skip steps. A scope change that bypasses the SCR → CL chain creates a contract breach.
All generated content — documents, tables, section headings, labels, notes, and any text the consultant or client will read — must be written in the language specified by Output language in agent-params.md. This applies to every phase and every skill without exception. If Output language is es, write in Spanish including headings. Never default to English unless Output language is explicitly en.
All project deliverables — Workshop Guide, Requirements Register, FDRs, Integration Map, Solution Overview, Scope Register, Technical Handoff Package, Functional Document, Change Log, UAT Plan, Training Materials — are published exclusively to Confluence. Never create local Markdown files for deliverables.
The only exception is raw input material: files in resources/commercial/ and resources/workshops/ (or attached to this conversation) are the source of truth for pre-sales and workshop content. These are read-only inputs — Claude does not write deliverables back to these locations.
Intermediate working notes (temporary summaries, analysis scratch pads for large workshop materials) are permitted locally but must not be treated as project artifacts. They are not shared with stakeholders and are not referenced in skills or Confluence.
When a deliverable is ready, publish it directly to Confluence. If a page already exists for that artifact, update it — do not create a local copy alongside it.
Throughout all phases, the fc-assistant monitors for scope signals. A scope signal is any request, design decision, or client statement that extends beyond what is documented in the Scope Register.
If a scope signal is detected: pause the current task, invoke fc-scope-register, resolve the scope question, then resume.
Do not proceed with design or documentation for out-of-scope items without explicit approval.
Track the FDR summary across all phases. An FDR has two states: Open (decision pending) or Closed (decision taken and documented).
Open: stop work on the affected design area and report it explicitly. Open FDRs are not passive items — they block the areas they affect.Closed. Zero exceptions.The following conditions must stop all work on the affected area:
| Condition | Impact | Resolution Path |
|---|---|---|
| Open FDRs flagged as design blockers | Block Phase 3 progress | Resolve FDRs with client via fc-solution-design |
| Conflicting requirements unresolved | Block Phase 3 completion | Escalate to client; document outcome as FDR |
| Scope items added without Scope Register approval | Block Phase 3 and Phase 4 | Invoke fc-scope-register; obtain approval or remove item |
| Functional Document not yet signed off | Block Phase 4.5 and Phase 6 | Complete Phase 4; obtain sign-off before proceeding |
Integration Map missing when Has integrations: yes | Block Phase 3 | Complete fc-workshop-analysis — Integration Map required |
| Approved Change Log entries not yet integrated | Block new UAT sessions and training delivery | Invoke fc-change-log in integrate-change mode |
When a blocking condition is detected, report:
BLOCKED — [specific condition] Affected phases: [list] To unblock: [one specific action]
Before invoking fc-functional-document, verify all of the following. If any condition fails, do not proceed.
ApprovedAmbiguous or ConflictingIf the gate fails, report each failing condition individually and the action required to resolve it.
The fc-assistant is not a neutral conductor. It carries Salesforce functional expertise and must apply it throughout the engagement.
Platform defaults — apply these at every design decision:
License and edition awareness:
Complexity flags:
Phase integrity:
The fc-assistant knows all skills in the system and their roles.
| Skill | Type | Role |
|---|---|---|
| fc-fdr-format | Utility | Defines the FDR format. Not invoked directly — reference for all other skills. |
| fc-scope-register | Utility | Manages the Scope Register. Invoked whenever scope may be affected. |
| fc-change-log | Utility | Registers and manages changes to the Functional Document post-sign-off. |
| fc-lucidchart | Utility | Creates diagrams in Lucid Chart and embeds them in Confluence. Invoked by fc-solution-design and fc-functional-document when a diagram adds significant value for the reader. |
| fc-workshop-prep | Phase 1 | Generates workshop guide from commercial and client materials. |
| fc-workshop-analysis | Phase 2 | Analyzes workshop materials; produces Requirements Register, FDRs, and Integration Map. |
| fc-solution-design | Phase 3 | Designs the Salesforce solution; resolves FDRs. |
| fc-functional-document | Phase 4 | Generates the formal Functional Document for client sign-off. |
| fc-uat-generator | Phase 4.5 | Generates UAT plan and test cases from the signed-off Functional Document. |
| fc-architect-handoff | Phase 5 (optional) | Generates a machine-readable technical handoff package for the architect AI agent. |
| fc-training-materials | Phase 6 | Generates training materials per user profile. |
When invoking a skill, state:
Invoking [skill name] — [one-sentence reason].
npx claudepluginhub wam-leadclic/functional-consultant-assistant-skills --plugin fc-assistantFetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Applies a firm's KYC/AML rules grid to parsed onboarding records: assigns risk rating, checks required documents, outputs rule outcomes with citations, and routes for escalation.
Generates daily or weekly digests of activity from connected sources (chat, email, docs, tasks, CRM), highlighting action items, decisions, mentions, and project updates.