Quickstart: Your First Simulation¶
Run your first FCC simulation from scratch. No API keys, no external services, no prior experience required.
You will need approximately 10 minutes.
Prerequisites¶
- Python 3.10 or later (check with
python --version) pip(included with standard Python installations)- A terminal (macOS Terminal, Windows PowerShell, or Linux shell)
Note: FCC runs entirely offline in mock mode. You do not need an Anthropic or OpenAI API key for this guide.
Step 1: Install FCC¶
Install from PyPI:
Or, if you prefer an editable install from source:
git clone https://github.com/rollingthunderfourtytwo-afk/l2_fcc_agent_team_ext.git
cd l2_fcc_agent_team_ext
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
pip install -e .
Verify the installation:
You should see output listing the available commands:
Usage: fcc [OPTIONS] COMMAND [ARGS]...
FCC (Find -> Create -> Critique) Agent Team Framework.
Options:
--version Show the version and exit.
--help Show this message and exit.
Commands:
action Manage and run persona workflow actions.
benchmark Run benchmark assessments.
collab Manage human-agent collaboration sessions.
compliance-audit Run EU AI Act / NIST AI RMF compliance audit.
dashboard Display terminal dashboards for FCC data.
demo Demo commands.
generate-docs Generate docs-as-code documentation from persona specs.
init Initialize a new FCC project.
model-card Generate model cards and datasheets.
plugins Manage FCC plugins.
protocol Protocol integration commands (A2A, MCP).
simulate Run an FCC workflow simulation.
validate Validate FCC project structure.
...
Tip: If you see
command not found: fcc, make sure your virtual environment is activated:source .venv/bin/activate
Step 2: Run a Mock Simulation¶
FCC ships with 33 built-in scenarios. The default scenario, GEN-001, runs a
5-persona FCC cycle through the base workflow graph. Execute it in mock mode
(no API keys needed):
You should see:
The simulation traversed a 5-node workflow graph -- Research Crafter, Blueprint Crafter, Documentation Evangelist, Runbook Crafter, and User Guide Crafter -- and produced a trace at each step.
Tip: Mock mode generates deterministic output. Run the same command again and you will get identical results -- useful for testing and reproducibility.
Step 3: Inspect the Trace Output¶
Open traces_ai.json in any text editor or JSON viewer. Each trace event
records:
- step: The step number in the workflow traversal
- persona_id: Which persona acted (e.g.,
RCfor Research Crafter) - payload: The input given to the persona
- edge_label: The workflow edge that led to this step
- ai_response: The (mock) output produced by the persona
# Pretty-print the first few lines
python -c "import json; data=json.load(open('traces_ai.json')); print(json.dumps(data[:2], indent=2))"
Example trace entry:
{
"step": 1,
"persona_id": "RC",
"edge_label": "start",
"payload": "GEN-001",
"ai_response": {
"content": "Research Crafter analysis for scenario GEN-001...",
"provider": "MOCK",
"model": "mock-model"
}
}
Step 4: Explore Personas from Python¶
Open a Python interpreter or script and explore the 102 built-in personas:
from fcc.personas.registry import PersonaRegistry
# Load all built-in personas
registry = PersonaRegistry.from_package_data()
print(f"Total personas: {len(registry.all())}")
print(f"Categories: {len(registry.categories())}\n")
# Look at one persona
persona = registry.get("research_catalyst")
print(f"Name: {persona.name}")
print(f"Category: {persona.category}")
print(f"Role: {persona.riscear.role}")
print(f"Archetype: {persona.riscear.archetype}")
Expected output:
Total personas: 102
Categories: 20
Name: Research Catalyst
Category: core
Role: Discover and synthesize knowledge from diverse sources...
Archetype: The Explorer
Step 5: Run a Simulation from Python¶
You can also run simulations programmatically for more control:
from fcc.simulation.engine import SimulationEngine
from fcc.scenarios.loader import ScenarioLoader
# Load built-in scenarios
scenarios = ScenarioLoader.from_package_data()
scenario = scenarios.get("basic_fcc_cycle")
print(f"Scenario: {scenario.title}")
# Load personas
from fcc.personas.registry import PersonaRegistry
registry = PersonaRegistry.from_package_data()
# Run in mock mode (deterministic, no API key)
engine = SimulationEngine(registry=registry, mode="mock")
trace = engine.run(scenario)
print(f"\nCompleted in {trace.duration_ms}ms")
print(f"Steps: {len(trace.steps)}\n")
for step in trace.steps:
print(f" [{step.phase}] {step.persona_id}: {step.summary[:60]}...")
Expected output:
Scenario: Basic FCC Cycle
Completed in 12ms
Steps: 5
[FIND] research_catalyst: Research Catalyst discovers relevant inform...
[CREATE] build_champion: Build Champion synthesizes findings into a ...
[CREATE] documentation_evangelist: Documentation Evangelist structures...
[CRITIQUE] domain_expert: Domain Expert reviews the deliverable for ...
[CRITIQUE] governance_compliance_auditor: Governance Auditor verifies...
Step 6: Understand What Happened¶
Here is what happened in your simulation:
-
Personas loaded: The
PersonaRegistryloaded 102 persona definitions from YAML files bundled with the FCC package. Each persona has a full R.I.S.C.E.A.R. specification (Role, Input, Style, Constraints, Expected Output, Archetype, Responsibilities, Skills, Collaborators, Adoption Checklist). -
Scenario selected: The scenario defines which personas participate and the workflow structure.
-
FCC cycle executed: The simulation engine drove the Find-Create-Critique cycle:
- Find: Research Catalyst gathered and synthesized information.
- Create: Build Champion and Documentation Evangelist produced the deliverable.
-
Critique: Domain Expert and Governance Auditor reviewed the output.
-
Trace captured: Every step was recorded in a structured trace, enabling replay, analysis, and reproducibility.
Note: In mock mode, all responses are deterministic and pre-generated. To use real AI providers (Anthropic or OpenAI), set the
ANTHROPIC_API_KEYorOPENAI_API_KEYenvironment variable and run with--no-mock.
Step 7: Try the Terminal Dashboards¶
FCC includes ASCII dashboards for exploring the ecosystem from your terminal:
# Browse all 102 personas by category
fcc dashboard personas
# View quality gate status
fcc dashboard quality
# See the ecosystem overview
fcc dashboard ecosystem
These dashboards render directly in your terminal -- no browser needed.
What's Next¶
You have installed FCC, run your first simulation, and inspected the output. Here are the recommended next steps:
- Learn the vocabulary: Read the Glossary for definitions of key FCC terms (persona, R.I.S.C.E.A.R., workflow, trace, quality gate).
- Take a visual tour: See the Visual Tour to explore the web frontend with D3.js visualizations.
- Interactive notebook: Open
notebooks/01_fcc_fundamentals.ipynbin Jupyter for a hands-on walkthrough of personas, workflows, and simulations. - Try more scenarios: List all 33 scenarios with
fcc demo listand run guided demos withfcc demo run <demo_id>. - Run workflow actions: List available actions with
fcc action listand run one withfcc action run scaffold --persona RC. - Follow a learning path: See the Learning Paths guide to find the right track for your goals.
- Full reference: Read the FAQ for answers to common questions.
Troubleshooting¶
"ModuleNotFoundError: No module named 'fcc'"
Make sure you activated your virtual environment:
"command not found: fcc"
The CLI entry point is installed with the package. Verify:
If installed, try python -m fcc as an alternative.
"No workflow found" when running fcc simulate
The simulate command looks for workflow files relative to the current
directory. Make sure you are in the project root, or use the --dir flag: