fluxloop-scenario — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited fluxloop-scenario (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Scenario-First: Agent profile check → Scenario init → Contract creation → Wrapper setup → Test ready
📎 All user-facing output must follow: read skills/_shared/OUTPUT_FORMAT.md
fluxloop context show → confirm project is set up and scenario state.fluxloop/test-memory/ check:agent-profile.md → stale detection (compare git_commit vs git rev-parse --short HEAD)learnings.md → incorporate previous insights (if exists)fluxloop scenarios create/refine.fluxloop/test-memory/test-strategy.mdtest-strategy.md is current for the test skill📎 Stale detection: read skills/_shared/CONTEXT_PROTOCOL.md 📎 Collection procedure (for inline refresh): read skills/_shared/CONTEXT_COLLECTION.md
Run fluxloop context show first:
.fluxloop/test-memory/agent-profile.md exists → proceedskills/setup/SKILL.md inline → "✅ Setup complete."skills/context/SKILL.md inline → "✅ Context complete. Continuing with scenario."→ return to Step 1
skills/context/SKILL.md inline → on completion return to Step 1.fluxloop/test-memory/agent-profile.md:git_commit from metadata commentgit rev-parse --short HEAD_shared/CONTEXT_COLLECTION.md procedure inlinegit_commit is no-git → continue without warning (stale detection unavailable).fluxloop/test-memory/learnings.md (if exists):fluxloop init scenario <name>order-bot)pwd and fluxloop context show."Suggest 3 scenarios based on agent-profile.md:
| # | Type | Description |
|---|---|---|
| 1 | Happy Path | Core feature verification |
| 2 | Edge Cases | Exception/boundary handling |
| 3 | Advanced | Multi-turn or domain-specific |
💡 Always explain each type to the user: - Happy Path: Verifies the agent's core functionality works correctly. E.g., "Scenario where {agent} performs {key function} without issues" - Edge Cases: Verifies the ability to handle exceptions and boundary conditions. E.g., "Behavior with invalid inputs, empty values, special conditions" - Advanced: Verifies multi-turn conversations or domain-specific scenarios. E.g., "Complex requests, consecutive conversations requiring context retention"
>
Tailor explanations with specific examples based on agent characteristics from agent-profile.md.learnings.md insights exist, reflect them in recommendationsfluxloop scenarios create --name "..." --goal "..." command.fluxloop/.env → if exists, skipfluxloop apikeys create.fluxloop/.env (shared across scenarios)OPENAI_API_KEY=sk-xxxANTHROPIC_API_KEY=sk-ant-xxx💡 What is a Contract? Rules (YAML) that define the expected behavior an agent must follow in each scenario. E.g., "Must include the amount when confirming an order." The server auto-generates them, and users can edit them in the web app.
(Server):
fluxloop scenarios create --name "Order Accuracy Test" --goal "..."
fluxloop scenarios refine --scenario-id <id>
fluxloop sync pull --scenario <name>After scenarios refine — must include scenario URL in output:
✅ Contracts → N generated 🔗 https://alpha.app.fluxloop.ai/simulate/scenarios/{scenario_id}?project={project_id}
📋 You can review and edit contracts at the link above.(Local): Save to .fluxloop/test-memory/test-strategy.md (format: test-memory-template/test-strategy.md)
Fields to populate:
Required link output: After scenario creation, extractscenario_idandproject_idfrom CLI output to construct the URL. URL pattern:https://alpha.app.fluxloop.ai/simulate/scenarios/{scenario_id}?project={project_id}
#### Optional: Ground Truth Data Binding
After scenario creation, the user may want to bind validation data:
"Do you have Ground Truth validation data (e.g., Q&A pairs with expected answers)? (enter path / skip)"
fluxloop data push <gt-file> --usage ground-truth --scenario <scenario_id> --label-column <col>✅ Data (GT) → {filename} bound to scenario, {N} GT contracts generatedfluxloop data gt status --scenario <scenario_id>📎 For detailed GT classification guidance: read skills/context/SKILL.md Step 5-1
Basic flow:
wrapper.py + update simulation.yamlpython -c "from agents.wrapper import run; print(run('test'))"📎 Wrapper setup detail: read skills/scenario/references/wrapper-guide.md
| Step | Interactive | Auto |
|---|---|---|
| Step 3: Scenario selection | Ask (required) | Auto-select #1 |
| Step 6: Contract review | URL only | URL only |
Max 1 required user response (scenario selection).
| Error | Response |
|---|---|
| No project set up | Apply Prerequisite Resolution → suggest inline setup + context execution |
| No agent profile | Apply Prerequisite Resolution → suggest inline context execution |
fluxloop init scenario in home directory | "Run from workspace root, not home. Check pwd and fluxloop context show" |
scenarios create failure | Check network, verify login status, confirm project is selected |
scenarios refine timeout | Retry with fluxloop scenarios refine --scenario-id <id> |
| API key file missing | Guide: fluxloop apikeys create or manual .fluxloop/.env creation |
Wrapper ModuleNotFoundError | Check runner.target in simulation.yaml, verify Python path |
Wrapper TypeError: run() missing argument | Ensure wrapper signature: (input_text: str, metadata: dict = None) |
| Local path mismatch in context | fluxloop scenarios select <id> --local-path <folder> |
Scenario ready. Available next actions:
fluxloop data push <file> --usage ground-truth --scenario <id>| Step | Command |
|---|---|
| Check | fluxloop context show |
| Init | fluxloop init scenario <name> |
| Create | fluxloop scenarios create --name X --goal "..." |
| Refine | fluxloop scenarios refine --scenario-id <id> |
| API key | fluxloop apikeys create |
| Git hash | git rev-parse --short HEAD |
📎 Full CLI reference: read skills/_shared/QUICK_REFERENCE.md
agent-profile.md first — use agent characteristics for scenario recommendationsagent-profile.md before proceedinglearnings.md (if exists) to incorporate previous insights into scenario designtest-memory-template/test-strategy.md for output formatorder-bot)fluxloop init scenario from workspace root (NOT home directory)scenarios create/refine) and local (test-strategy.md) at the same timetest-strategy.md entirely (not append)~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.