MiroFish Guide Skill
Use this skill when the task touches MiroFish operations, documentation, experiments, or repository maintenance.
MiroFish is a multi-stage engine:
- source material is uploaded and chunked;
- Zep graph extraction runs;
- entities are filtered for simulation;
- OASIS profiles are generated;
- simulation config is generated by an LLM;
- Twitter and Reddit environments run;
- a report agent analyzes the result.
The best way to work on MiroFish is to identify the stage first, then inspect the artifacts and constraints for that stage.
Reference Routing
Load only the file you need:
-
references/workflow.mdUse for end-to-end architecture, stage ownership, and code-grounded defaults. -
references/debugging.mdUse for setup problems, missing artifacts, weak runs, report issues, or proxy problems. -
references/graph-build-runbook.mdUse for sparse ontology output, graph build failures, Zep ingestion trouble, or entity-normalization issues. -
references/seed-templates.mdUse for reusable source-material patterns and stronger simulation requirements. -
references/experiments.mdUse for empirical tuning observations, model comparisons, and cost-quality tradeoffs. -
references/operator-workflow.mdUse for the practical operator loop: pilot run, artifact checks, scaling, and post-run audit. -
references/runtime-forensics.mdUse when a run technically completed but you need to judge whether it produced meaningful multi-agent behavior. -
references/report-audit.mdUse when verifying report claims against raw artifacts and tool logs. -
references/evidence-taxonomy.mdUse when classifying claims or verifying whether a report assertion is actually supported. -
references/evaluation-rubric.mdUse when scoring simulation quality or report quality. -
references/experiment-protocol.mdUse when planning a reproducible comparison across models, prompts, or runtime settings. -
references/model-proxy-guidance.mdUse when validating model routes, OpenAI-compatible proxies, or structured-output reliability. -
references/anti-patterns.mdUse when preventing common operator mistakes before they waste time or API budget. -
references/glossary.mdUse for short definitions of MiroFish, OASIS, Zep, GraphRAG, and report-stage terms.
Operating Rules
- Separate
code-confirmedfacts fromexperiment-confirmedobservations. - Prefer fixing source material and simulation requirements before patching engine internals.
- Debug from generated artifacts first, not from vague impressions of the final report.
- Do not assume round count equals reasoning depth.
- Treat the report as a summary layer and verify important claims against raw artifacts.
What Usually Matters Most
Source material
This is the main quality lever.
Strong input usually contains:
- named stakeholders;
- explicit relationships between actors;
- dates, numbers, and concrete events;
- multiple perspectives on the same topic;
- one clear scenario instead of mixed unrelated topics.
Weak input usually produces weak graphs, generic personas, and shallow reports.
Simulation requirement
The requirement should say what the engine should explore, over what timeframe, and with which focal variables.
Good requirement pattern:
[topic] over [timeframe].
Focus on [3-5 factors].
Watch for [risks, scenarios, or stakeholder reactions].
Bad requirement pattern:
What will happen?
Agent quality
MiroFish does not start from a handcrafted agent roster. Agent quality depends on:
- extracted entities;
- enriched context from the graph;
- profile generation quality;
- model quality.
If agents look generic, inspect entity relevance before blaming the profile layer.
Debugging Heuristics
If the run is weak
Check in this order:
- source material
- graph quality
- filtered entities
- generated profiles
- simulation config
- runtime artifacts
- report logs
If the simulation ends too quickly
Inspect:
state.jsonsimulation_config.jsonrun_state.json- per-platform
actions.jsonl - per-platform simulation databases
Fast completion can mean the environment only produced initial actions and did not do much per-round reasoning.
If a proxy behaves strangely
Inspect request and response compatibility separately from model quality.
Known failure pattern:
- assistant output may need to be represented as
output_textrather thaninput_textin OpenAI-compatible flows.
If environment variables look ignored
Remember:
- MiroFish loads the project root
.env - loading uses override semantics
So the root .env can silently replace values you thought were inherited from a parent process.
High-Value Facts
- the engine accepts
pdf,md,txt, andmarkdownuploads; - graph build uses chunking before Zep ingestion;
- generated runtime artifacts live under
backend/uploads/simulations/<simulation_id>/in a MiroFish checkout; - report artifacts live under
backend/uploads/reports/<report_id>/in a MiroFish checkout; - report generation is often the most reasoning-heavy stage;
- the report agent uses tool-backed section generation and logs its work to
agent_log.jsonl.
When Maintaining This Repository
Keep the repository strict about evidence:
- guide files should stay compact;
- detailed facts belong in
references/; - experiment notes should stay clearly marked as empirical;
- if upstream MiroFish changes behavior, update the affected stage rather than scattering edits everywhere.