ubFlow orchestrator Agent

Agent: ubFlow AGT_UBFLOW

ubFlow is a GitHub Copilot agent that designs, authors, and validates other agents. Given a user goal, it conducts a structured interview, derives Flow Stories and Specifications in Sphinx-Needs, translates them into binding Instructions and procedural Skills — ensuring every rule is fully traceable to a documented need.

The Orchestrator is the single entry point of every ubFlow agent family. It carries the family name, is the only agent the user addresses directly, and routes incoming requests to the appropriate domain agents.

@startuml

' Nodes definition 

node "<size:12>Flow Inst</size>\n**Describe every**\n**agent rule as a**\n**flowinst or**\n**flowskill RST**\n**directive**\n<size:10>FLIN_UBFLOW_002</size>" as FLIN_UBFLOW_002 [[../core/agents/ubflow/flow_instructions.html#FLIN_UBFLOW_002]] #06B6D4
node "<size:12>Flow Inst</size>\n**Keep flowinst**\n**and flowskill**\n**strictly**\n**separated by**\n**what vs. how**\n<size:10>FLIN_UBFLOW_003</size>" as FLIN_UBFLOW_003 [[../core/agents/ubflow/flow_instructions.html#FLIN_UBFLOW_003]] #06B6D4
node "<size:12>Flow Inst</size>\n**Always set**\n**:implements: or**\n**:supports: link**\n**on instructions**\n**and skills**\n<size:10>FLIN_UBFLOW_004</size>" as FLIN_UBFLOW_004 [[../core/agents/ubflow/flow_instructions.html#FLIN_UBFLOW_004]] #06B6D4
node "<size:12>Flow Inst</size>\n**Define an agent**\n**via a single ..**\n**agent::**\n**directive with**\n**all required**\n**fields**\n<size:10>FLIN_UBFLOW_005</size>" as FLIN_UBFLOW_005 [[../core/agents/ubflow/flow_instructions.html#FLIN_UBFLOW_005]] #06B6D4
node "<size:12>Flow Inst</size>\n**Verify the**\n**agent need**\n**aggregates all**\n**its**\n**instructions**\n**and skills**\n<size:10>FLIN_UBFLOW_006</size>" as FLIN_UBFLOW_006 [[../core/agents/ubflow/flow_instructions.html#FLIN_UBFLOW_006]] #06B6D4
node "<size:12>Flow Inst</size>\n**Guide the user**\n**through agent**\n**creation in**\n**five confirmed**\n**steps**\n<size:10>FLIN_UBFLOW_007</size>" as FLIN_UBFLOW_007 [[../core/agents/ubflow/flow_instructions.html#FLIN_UBFLOW_007]] #06B6D4
node "<size:12>Flow Inst</size>\n**Run only the**\n**user-selected**\n**review modes**\n**when checking**\n**an agent**\n<size:10>FLIN_UBFLOW_008</size>" as FLIN_UBFLOW_008 [[../core/agents/ubflow/flow_instructions.html#FLIN_UBFLOW_008]] #06B6D4
node "<size:12>Flow Inst</size>\n**Generate**\n**.agent.md as a**\n**minimal**\n**bootstrap block**\n**only**\n<size:10>FLIN_UBFLOW_009</size>" as FLIN_UBFLOW_009 [[../core/agents/ubflow/flow_instructions.html#FLIN_UBFLOW_009]] #06B6D4
node "<size:12>Flow Inst</size>\n**Validate schema**\n**at startup and**\n**handle missing**\n**types**\n**contextually**\n<size:10>FLIN_UBFLOW_010</size>" as FLIN_UBFLOW_010 [[../core/agents/ubflow/flow_instructions.html#FLIN_UBFLOW_010]] #06B6D4
node "<size:12>Flow Inst</size>\n**Present an**\n**installation**\n**plan and wait**\n**for**\n**confirmation**\n**before**\n**delegating to**\n**the Installer**\n<size:10>FLIN_UBFLOW_011</size>" as FLIN_UBFLOW_011 [[../core/agents/ubflow/flow_instructions.html#FLIN_UBFLOW_011]] #06B6D4
node "<size:12>Flow Inst</size>\n**Never write**\n**ubFlow-internal**\n**needs into the**\n**target project**\n<size:10>FLIN_UBFLOW_012</size>" as FLIN_UBFLOW_012 [[../core/agents/ubflow/flow_instructions.html#FLIN_UBFLOW_012]] #06B6D4
node "<size:12>Flow Inst</size>\n**Place generated**\n**.agent.md in**\n**.github/agents/**\n**with correct**\n**name**\n**frontmatter**\n<size:10>FLIN_UBFLOW_013</size>" as FLIN_UBFLOW_013 [[../core/agents/ubflow/flow_instructions.html#FLIN_UBFLOW_013]] #06B6D4
node "<size:12>Flow Inst</size>\n**Generate a**\n**plain-language**\n**agent summary**\n**when requested**\n<size:10>FLIN_UBFLOW_014</size>" as FLIN_UBFLOW_014 [[../core/agents/ubflow/flow_instructions.html#FLIN_UBFLOW_014]] #06B6D4
node "<size:12>Flow Inst</size>\n**Bootstrap full**\n**instruction set**\n**from ubCode**\n**extension on**\n**session start**\n<size:10>FLIN_UBFLOW_015</size>" as FLIN_UBFLOW_015 [[../core/agents/ubflow/flow_instructions.html#FLIN_UBFLOW_015]] #06B6D4
node "<size:12>Flow Inst</size>\n**Deploy**\n**companion**\n**bootstrap**\n**instructions**\n**file when**\n**generating**\n**agent files**\n<size:10>FLIN_UBFLOW_019</size>" as FLIN_UBFLOW_019 [[../core/agents/ubflow/flow_instructions.html#FLIN_UBFLOW_019]] #06B6D4
node "<size:12>Flow Inst</size>\n**Reference the**\n**driving FLIN\_**\n**or FLSK\_ in**\n**every decision**\n<size:10>FLIN_UBFLOW_016</size>" as FLIN_UBFLOW_016 [[../core/agents/ubflow/flow_instructions.html#FLIN_UBFLOW_016]] #06B6D4
node "<size:12>Flow Inst</size>\n**Mark meaningful**\n**undocumented**\n**decisions with**\n**(NO FLOW)**\n<size:10>FLIN_UBFLOW_017</size>" as FLIN_UBFLOW_017 [[../core/agents/ubflow/flow_instructions.html#FLIN_UBFLOW_017]] #06B6D4
node "<size:12>Flow Inst</size>\n**Keep copilot-**\n**instructions.md**\n**in sync with**\n**always-load**\n**needs**\n<size:10>FLIN_UBFLOW_018</size>" as FLIN_UBFLOW_018 [[../core/agents/ubflow/flow_instructions.html#FLIN_UBFLOW_018]] #06B6D4
node "<size:12>Flow Skill</size>\n**Decide whether**\n**content belongs**\n**in flowinst or**\n**flowskill**\n<size:10>FLSK_UBFLOW_002</size>" as FLSK_UBFLOW_002 [[../core/agents/ubflow/flow_skills.html#FLSK_UBFLOW_002]] #10B981
node "<size:12>Flow Skill</size>\n**Execute the**\n**five-step agent**\n**creation**\n**workflow**\n<size:10>FLSK_UBFLOW_003</size>" as FLSK_UBFLOW_003 [[../core/agents/ubflow/flow_skills.html#FLSK_UBFLOW_003]] #10B981
node "<size:12>Flow Skill</size>\n**Perform**\n**syntactic,**\n**semantic, and**\n**traceability**\n**review checks**\n<size:10>FLSK_UBFLOW_004</size>" as FLSK_UBFLOW_004 [[../core/agents/ubflow/flow_skills.html#FLSK_UBFLOW_004]] #10B981
node "<size:12>Flow Skill</size>\n**Cite a driving**\n**FLIN\_ or**\n**FLSK\_ with a**\n**source link**\n<size:10>FLSK_UBFLOW_006</size>" as FLSK_UBFLOW_006 [[../core/agents/ubflow/flow_skills.html#FLSK_UBFLOW_006]] #10B981
node "<size:12>Flow Skill</size>\n**RST and Sphinx**\n**directive**\n**syntax for**\n**common**\n**authoring**\n**patterns**\n<size:10>FLSK_UBFLOW_007</size>" as FLSK_UBFLOW_007 [[../core/agents/ubflow/flow_skills.html#FLSK_UBFLOW_007]] #10B981
node "<size:12>Flow Skill</size>\n**Query ubCode**\n**MCP schema and**\n**handle missing**\n**types**\n<size:10>FLSK_UBFLOW_005</size>" as FLSK_UBFLOW_005 [[../core/agents/ubflow/flow_skills.html#FLSK_UBFLOW_005]] #10B981
node "<size:12>Flow Skill</size>\n**Author the**\n**companion**\n**bootstrap**\n**instructions**\n**file for a**\n**ubFlow agent**\n**family**\n<size:10>FLSK_UBFLOW_008</size>" as FLSK_UBFLOW_008 [[../core/agents/ubflow/flow_skills.html#FLSK_UBFLOW_008]] #10B981
node "<size:12>Flow Spec</size>\n**flowinst and**\n**flowskill**\n**described as**\n**RST directives**\n<size:10>FLSP_UBFLOW_003</size>" as FLSP_UBFLOW_003 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_003]] #8B5CF6
node "<size:12>Flow Spec</size>\n**flowinst**\n**separates what**\n**from how**\n<size:10>FLSP_UBFLOW_004</size>" as FLSP_UBFLOW_004 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_004]] #8B5CF6
node "<size:12>Flow Spec</size>\n**flowinst and**\n**flowskill link**\n**to a flowspec**\n<size:10>FLSP_UBFLOW_005</size>" as FLSP_UBFLOW_005 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_005]] #8B5CF6
node "<size:12>Flow Spec</size>\n**agent need as**\n**single identity**\n**object**\n<size:10>FLSP_UBFLOW_006</size>" as FLSP_UBFLOW_006 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_006]] #8B5CF6
node "<size:12>Flow Spec</size>\n**agent need as**\n**complete**\n**aggregation**\n**point**\n<size:10>FLSP_UBFLOW_007</size>" as FLSP_UBFLOW_007 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_007]] #8B5CF6
node "<size:12>Flow Spec</size>\n**Step-by-step**\n**agent creation**\n**workflow**\n<size:10>FLSP_UBFLOW_008</size>" as FLSP_UBFLOW_008 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_008]] #8B5CF6
node "<size:12>Flow Spec</size>\n**Agent creation**\n**verifies all**\n**linked IDs via**\n**MCP before**\n**writing**\n<size:10>FLSP_UBFLOW_009</size>" as FLSP_UBFLOW_009 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_009]] #8B5CF6
node "<size:12>Flow Spec</size>\n**Agent review**\n**supports three**\n**selectable**\n**check modes**\n<size:10>FLSP_UBFLOW_010</size>" as FLSP_UBFLOW_010 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_010]] #8B5CF6
node "<size:12>Flow Spec</size>\n**Traceability**\n**review resolves**\n**every**\n**instruction and**\n**skill ID**\n<size:10>FLSP_UBFLOW_011</size>" as FLSP_UBFLOW_011 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_011]] #8B5CF6
node "<size:12>Flow Spec</size>\n**Minimal**\n**bootstrap-only**\n**.agent.md**\n<size:10>FLSP_UBFLOW_012</size>" as FLSP_UBFLOW_012 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_012]] #8B5CF6
node "<size:12>Flow Spec</size>\n**Schema**\n**validation at**\n**startup with**\n**installer-aware**\n**fallback**\n<size:10>FLSP_UBFLOW_013</size>" as FLSP_UBFLOW_013 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_013]] #8B5CF6
node "<size:12>Flow Spec</size>\n**Built-in ubCode**\n**MCP knowledge**\n**requires no**\n**manual setup**\n<size:10>FLSP_UBFLOW_014</size>" as FLSP_UBFLOW_014 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_014]] #8B5CF6
node "<size:12>Flow Spec</size>\n**Guided project**\n**integration**\n**with**\n**confirmation**\n**gate**\n<size:10>FLSP_UBFLOW_015</size>" as FLSP_UBFLOW_015 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_015]] #8B5CF6
node "<size:12>Flow Spec</size>\n**ubFlow**\n**internals never**\n**written to**\n**target project**\n<size:10>FLSP_UBFLOW_016</size>" as FLSP_UBFLOW_016 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_016]] #8B5CF6
node "<size:12>Flow Spec</size>\n**ubFlow**\n**delivered as**\n**ubCode chat**\n**participant**\n<size:10>FLSP_UBFLOW_017</size>" as FLSP_UBFLOW_017 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_017]] #8B5CF6
node "<size:12>Flow Spec</size>\n**ubFlow is non-**\n**editable after**\n**delivery**\n<size:10>FLSP_UBFLOW_018</size>" as FLSP_UBFLOW_018 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_018]] #8B5CF6
node "<size:12>Flow Spec</size>\n**Generated agent**\n**file placed in**\n**.github/agents/**\n**with**\n**@-invokable**\n**name**\n<size:10>FLSP_UBFLOW_019</size>" as FLSP_UBFLOW_019 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_019]] #8B5CF6
node "<size:12>Flow Spec</size>\n**Generated**\n**agents support**\n**delegation from**\n**other agents**\n<size:10>FLSP_UBFLOW_020</size>" as FLSP_UBFLOW_020 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_020]] #8B5CF6
node "<size:12>Flow Spec</size>\n**Human-readable**\n**agent overview**\n**on request**\n<size:10>FLSP_UBFLOW_021</size>" as FLSP_UBFLOW_021 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_021]] #8B5CF6
node "<size:12>Flow Spec</size>\n**ubFlow stub**\n**contains**\n**bootstrap call**\n**only**\n<size:10>FLSP_UBFLOW_022</size>" as FLSP_UBFLOW_022 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_022]] #8B5CF6
node "<size:12>Flow Spec</size>\n**ubFlow fetches**\n**its**\n**instructions**\n**via agent-**\n**scoped MCP call**\n<size:10>FLSP_UBFLOW_023</size>" as FLSP_UBFLOW_023 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_023]] #8B5CF6
node "<size:12>Flow Spec</size>\n**Installer**\n**deploys**\n**companion**\n**bootstrap**\n**instructions**\n**file per family**\n<size:10>FLSP_UBFLOW_029</size>" as FLSP_UBFLOW_029 [[../core/agents/ubflow/flow_specs.html#FLSP_UBFLOW_029]] #8B5CF6
card "<size:12>Flow Story</size>\n**Guide Agent**\n**Creation**\n<size:10>FLST_UBFLOW_001</size>" as FLST_UBFLOW_001 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_001]] #3B82F6
card "<size:12>Flow Story</size>\n**Describe**\n**Instructions**\n**and Skills in**\n**Sphinx**\n<size:10>FLST_UBFLOW_005</size>" as FLST_UBFLOW_005 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_005]] #3B82F6
card "<size:12>Flow Story</size>\n**Link**\n**Instructions**\n**and Skills to**\n**Needs**\n<size:10>FLST_UBFLOW_006</size>" as FLST_UBFLOW_006 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_006]] #3B82F6
card "<size:12>Flow Story</size>\n**Define Agent as**\n**Sphinx-Needs**\n**Object**\n<size:10>FLST_UBFLOW_007</size>" as FLST_UBFLOW_007 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_007]] #3B82F6
card "<size:12>Flow Story</size>\n**Agent Object**\n**Aggregates**\n**Instructions**\n**and Skills**\n<size:10>FLST_UBFLOW_008</size>" as FLST_UBFLOW_008 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_008]] #3B82F6
card "<size:12>Flow Story</size>\n**Review Existing**\n**Agent**\n<size:10>FLST_UBFLOW_002</size>" as FLST_UBFLOW_002 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_002]] #3B82F6
card "<size:12>Flow Story</size>\n**Control Review**\n**Depth**\n<size:10>FLST_UBFLOW_003</size>" as FLST_UBFLOW_003 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_003]] #3B82F6
card "<size:12>Flow Story</size>\n**Verify**\n**Traceability**\n**Chain**\n<size:10>FLST_UBFLOW_004</size>" as FLST_UBFLOW_004 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_004]] #3B82F6
card "<size:12>Flow Story</size>\n**Agent**\n**Bootstraps**\n**Itself via MCP**\n<size:10>FLST_UBFLOW_009</size>" as FLST_UBFLOW_009 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_009]] #3B82F6
card "<size:12>Flow Story</size>\n**Schema**\n**Validation via**\n**MCP at Startup**\n<size:10>FLST_UBFLOW_010</size>" as FLST_UBFLOW_010 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_010]] #3B82F6
card "<size:12>Flow Story</size>\n**Sphinx Project**\n**Integration via**\n**Prompt**\n<size:10>FLST_UBFLOW_011</size>" as FLST_UBFLOW_011 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_011]] #3B82F6
card "<size:12>Flow Story</size>\n**No Self-**\n**Installation**\n**into Target**\n**Project**\n<size:10>FLST_UBFLOW_012</size>" as FLST_UBFLOW_012 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_012]] #3B82F6
card "<size:12>Flow Story</size>\n**ubCode Chat**\n**Participant**\n<size:10>FLST_UBFLOW_013</size>" as FLST_UBFLOW_013 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_013]] #3B82F6
card "<size:12>Flow Story</size>\n**Read-Only Agent**\n**After Delivery**\n<size:10>FLST_UBFLOW_014</size>" as FLST_UBFLOW_014 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_014]] #3B82F6
card "<size:12>Flow Story</size>\n**Built-in ubCode**\n**MCP Knowledge**\n<size:10>FLST_UBFLOW_015</size>" as FLST_UBFLOW_015 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_015]] #3B82F6
card "<size:12>Flow Story</size>\n**Human-Readable**\n**Agent**\n**Documentation**\n<size:10>FLST_UBFLOW_016</size>" as FLST_UBFLOW_016 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_016]] #3B82F6
card "<size:12>Flow Story</size>\n**Agents Callable**\n**via Copilot**\n**Prompt**\n<size:10>FLST_UBFLOW_017</size>" as FLST_UBFLOW_017 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_017]] #3B82F6
card "<size:12>Flow Story</size>\n**ubCode Can**\n**Invoke ubFlow**\n**Agents**\n<size:10>FLST_UBFLOW_018</size>" as FLST_UBFLOW_018 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_018]] #3B82F6
card "<size:12>Flow Story</size>\n**Orchestrator Is**\n**the Family**\n**Entry Point**\n<size:10>FLST_UBFLOW_029</size>" as FLST_UBFLOW_029 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_029]] #3B82F6
card "<size:12>Flow Story</size>\n**Orchestrator**\n**Carries the**\n**Family Name**\n<size:10>FLST_UBFLOW_030</size>" as FLST_UBFLOW_030 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_030]] #3B82F6
card "<size:12>Flow Story</size>\n**Orchestrator**\n**Identifies and**\n**Routes Workflow**\n<size:10>FLST_UBFLOW_031</size>" as FLST_UBFLOW_031 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_031]] #3B82F6
card "<size:12>Flow Story</size>\n**Orchestrator**\n**Enforces the**\n**Five-Phase**\n**Workflow**\n<size:10>FLST_UBFLOW_032</size>" as FLST_UBFLOW_032 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_032]] #3B82F6
card "<size:12>Flow Story</size>\n**Orchestrator**\n**Uses ubCode MCP**\n**for All Needs**\n**Access**\n<size:10>FLST_UBFLOW_033</size>" as FLST_UBFLOW_033 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_033]] #3B82F6
card "<size:12>Flow Story</size>\n**Orchestrator**\n**Ensures ubCode**\n**MCP Is**\n**Available**\n<size:10>FLST_UBFLOW_034</size>" as FLST_UBFLOW_034 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_034]] #3B82F6
card "<size:12>Flow Story</size>\n**ubFlow**\n**bootstraps its**\n**instructions**\n**from the ubCode**\n**extension**\n<size:10>FLST_UBFLOW_036</size>" as FLST_UBFLOW_036 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_036]] #3B82F6
card "<size:12>Flow Story</size>\n**Deploy**\n**companion**\n**bootstrap**\n**instructions**\n**file with every**\n**family**\n**installation**\n<size:10>FLST_UBFLOW_042</size>" as FLST_UBFLOW_042 [[../core/agents/ubflow/flow_stories.html#FLST_UBFLOW_042]] #3B82F6
card "<size:12>Agent</size>\n**ubFlow**\n<size:10>AGT_UBFLOW</size>" as AGT_UBFLOW [[../core/agents/ubflow/index.html#AGT_UBFLOW]] #F59E0B

' Connection definition 

FLIN_UBFLOW_002 --> FLSP_UBFLOW_003
FLIN_UBFLOW_003 --> FLSP_UBFLOW_004
FLIN_UBFLOW_004 --> FLSP_UBFLOW_005
FLIN_UBFLOW_005 --> FLSP_UBFLOW_006
FLIN_UBFLOW_006 --> FLSP_UBFLOW_007
FLIN_UBFLOW_007 --> FLSP_UBFLOW_008
FLIN_UBFLOW_008 --> FLSP_UBFLOW_010
FLIN_UBFLOW_008 --> FLSP_UBFLOW_011
FLIN_UBFLOW_009 --> FLSP_UBFLOW_012
FLIN_UBFLOW_010 --> FLSP_UBFLOW_013
FLIN_UBFLOW_011 --> FLSP_UBFLOW_015
FLIN_UBFLOW_012 --> FLSP_UBFLOW_016
FLIN_UBFLOW_013 --> FLSP_UBFLOW_019
FLIN_UBFLOW_013 --> FLSP_UBFLOW_020
FLIN_UBFLOW_014 --> FLSP_UBFLOW_021
FLIN_UBFLOW_015 --> FLSP_UBFLOW_022
FLIN_UBFLOW_015 --> FLSP_UBFLOW_023
FLIN_UBFLOW_019 --> FLSP_UBFLOW_029
FLSK_UBFLOW_002 --> FLSP_UBFLOW_004
FLSK_UBFLOW_003 --> FLSP_UBFLOW_008
FLSK_UBFLOW_003 --> FLSP_UBFLOW_009
FLSK_UBFLOW_004 --> FLSP_UBFLOW_010
FLSK_UBFLOW_004 --> FLSP_UBFLOW_011
FLSK_UBFLOW_005 --> FLSP_UBFLOW_013
FLSK_UBFLOW_005 --> FLSP_UBFLOW_014
FLSK_UBFLOW_008 --> FLSP_UBFLOW_029
FLSP_UBFLOW_003 --> FLST_UBFLOW_005
FLSP_UBFLOW_004 --> FLST_UBFLOW_005
FLSP_UBFLOW_005 --> FLST_UBFLOW_006
FLSP_UBFLOW_006 --> FLST_UBFLOW_007
FLSP_UBFLOW_007 --> FLST_UBFLOW_008
FLSP_UBFLOW_008 --> FLST_UBFLOW_001
FLSP_UBFLOW_009 --> FLST_UBFLOW_001
FLSP_UBFLOW_010 --> FLST_UBFLOW_002
FLSP_UBFLOW_010 --> FLST_UBFLOW_003
FLSP_UBFLOW_011 --> FLST_UBFLOW_004
FLSP_UBFLOW_012 --> FLST_UBFLOW_009
FLSP_UBFLOW_013 --> FLST_UBFLOW_010
FLSP_UBFLOW_014 --> FLST_UBFLOW_015
FLSP_UBFLOW_015 --> FLST_UBFLOW_011
FLSP_UBFLOW_016 --> FLST_UBFLOW_012
FLSP_UBFLOW_017 --> FLST_UBFLOW_013
FLSP_UBFLOW_018 --> FLST_UBFLOW_014
FLSP_UBFLOW_019 --> FLST_UBFLOW_017
FLSP_UBFLOW_020 --> FLST_UBFLOW_018
FLSP_UBFLOW_021 --> FLST_UBFLOW_016
FLSP_UBFLOW_022 --> FLST_UBFLOW_036
FLSP_UBFLOW_023 --> FLST_UBFLOW_036
FLSP_UBFLOW_029 --> FLST_UBFLOW_042
AGT_UBFLOW --> FLIN_UBFLOW_002
AGT_UBFLOW --> FLIN_UBFLOW_003
AGT_UBFLOW --> FLIN_UBFLOW_004
AGT_UBFLOW --> FLIN_UBFLOW_005
AGT_UBFLOW --> FLIN_UBFLOW_006
AGT_UBFLOW --> FLIN_UBFLOW_007
AGT_UBFLOW --> FLIN_UBFLOW_008
AGT_UBFLOW --> FLIN_UBFLOW_009
AGT_UBFLOW --> FLIN_UBFLOW_010
AGT_UBFLOW --> FLIN_UBFLOW_011
AGT_UBFLOW --> FLIN_UBFLOW_012
AGT_UBFLOW --> FLIN_UBFLOW_013
AGT_UBFLOW --> FLIN_UBFLOW_014
AGT_UBFLOW --> FLIN_UBFLOW_015
AGT_UBFLOW --> FLIN_UBFLOW_016
AGT_UBFLOW --> FLIN_UBFLOW_017
AGT_UBFLOW --> FLIN_UBFLOW_018
AGT_UBFLOW --> FLIN_UBFLOW_019
AGT_UBFLOW --> FLSK_UBFLOW_002
AGT_UBFLOW --> FLSK_UBFLOW_003
AGT_UBFLOW --> FLSK_UBFLOW_004
AGT_UBFLOW --> FLSK_UBFLOW_005
AGT_UBFLOW --> FLSK_UBFLOW_006
AGT_UBFLOW --> FLSK_UBFLOW_007
AGT_UBFLOW --> FLSK_UBFLOW_008

@enduml

ID

Title

Type

AGT_UBFLOW

ubFlow

agent

FLIN_UBFLOW_002

Describe every agent rule as a flowinst or flowskill RST directive

flowinst

FLIN_UBFLOW_003

Keep flowinst and flowskill strictly separated by what vs. how

flowinst

FLIN_UBFLOW_004

Always set :implements: or :supports: link on instructions and skills

flowinst

FLIN_UBFLOW_005

Define an agent via a single .. agent:: directive with all required fields

flowinst

FLIN_UBFLOW_006

Verify the agent need aggregates all its instructions and skills

flowinst

FLIN_UBFLOW_007

Guide the user through agent creation in five confirmed steps

flowinst

FLIN_UBFLOW_008

Run only the user-selected review modes when checking an agent

flowinst

FLIN_UBFLOW_009

Generate .agent.md as a minimal bootstrap block only

flowinst

FLIN_UBFLOW_010

Validate schema at startup and handle missing types contextually

flowinst

FLIN_UBFLOW_011

Present an installation plan and wait for confirmation before delegating to the Installer

flowinst

FLIN_UBFLOW_012

Never write ubFlow-internal needs into the target project

flowinst

FLIN_UBFLOW_013

Place generated .agent.md in .github/agents/ with correct name frontmatter

flowinst

FLIN_UBFLOW_014

Generate a plain-language agent summary when requested

flowinst

FLIN_UBFLOW_015

Bootstrap full instruction set from ubCode extension on session start

flowinst

FLIN_UBFLOW_016

Reference the driving FLIN\_ or FLSK\_ in every decision

flowinst

FLIN_UBFLOW_017

Mark meaningful undocumented decisions with (NO FLOW)

flowinst

FLIN_UBFLOW_018

Keep copilot-instructions.md in sync with always-load needs

flowinst

FLIN_UBFLOW_019

Deploy companion bootstrap instructions file when generating agent files

flowinst

FLSK_UBFLOW_002

Decide whether content belongs in flowinst or flowskill

flowskill

FLSK_UBFLOW_003

Execute the five-step agent creation workflow

flowskill

FLSK_UBFLOW_004

Perform syntactic, semantic, and traceability review checks

flowskill

FLSK_UBFLOW_005

Query ubCode MCP schema and handle missing types

flowskill

FLSK_UBFLOW_006

Cite a driving FLIN\_ or FLSK\_ with a source link

flowskill

FLSK_UBFLOW_007

RST and Sphinx directive syntax for common authoring patterns

flowskill

FLSK_UBFLOW_008

Author the companion bootstrap instructions file for a ubFlow agent family

flowskill

FLSP_UBFLOW_003

flowinst and flowskill described as RST directives

flowspec

FLSP_UBFLOW_004

flowinst separates what from how

flowspec

FLSP_UBFLOW_005

flowinst and flowskill link to a flowspec

flowspec

FLSP_UBFLOW_006

agent need as single identity object

flowspec

FLSP_UBFLOW_007

agent need as complete aggregation point

flowspec

FLSP_UBFLOW_008

Step-by-step agent creation workflow

flowspec

FLSP_UBFLOW_009

Agent creation verifies all linked IDs via MCP before writing

flowspec

FLSP_UBFLOW_010

Agent review supports three selectable check modes

flowspec

FLSP_UBFLOW_011

Traceability review resolves every instruction and skill ID

flowspec

FLSP_UBFLOW_012

Minimal bootstrap-only .agent.md

flowspec

FLSP_UBFLOW_013

Schema validation at startup with installer-aware fallback

flowspec

FLSP_UBFLOW_014

Built-in ubCode MCP knowledge requires no manual setup

flowspec

FLSP_UBFLOW_015

Guided project integration with confirmation gate

flowspec

FLSP_UBFLOW_016

ubFlow internals never written to target project

flowspec

FLSP_UBFLOW_017

ubFlow delivered as ubCode chat participant

flowspec

FLSP_UBFLOW_018

ubFlow is non-editable after delivery

flowspec

FLSP_UBFLOW_019

Generated agent file placed in .github/agents/ with @-invokable name

flowspec

FLSP_UBFLOW_020

Generated agents support delegation from other agents

flowspec

FLSP_UBFLOW_021

Human-readable agent overview on request

flowspec

FLSP_UBFLOW_022

ubFlow stub contains bootstrap call only

flowspec

FLSP_UBFLOW_023

ubFlow fetches its instructions via agent-scoped MCP call

flowspec

FLSP_UBFLOW_029

Installer deploys companion bootstrap instructions file per family

flowspec

FLST_UBFLOW_001

Guide Agent Creation

flowstory

FLST_UBFLOW_002

Review Existing Agent

flowstory

FLST_UBFLOW_003

Control Review Depth

flowstory

FLST_UBFLOW_004

Verify Traceability Chain

flowstory

FLST_UBFLOW_005

Describe Instructions and Skills in Sphinx

flowstory

FLST_UBFLOW_006

Link Instructions and Skills to Needs

flowstory

FLST_UBFLOW_007

Define Agent as Sphinx-Needs Object

flowstory

FLST_UBFLOW_008

Agent Object Aggregates Instructions and Skills

flowstory

FLST_UBFLOW_009

Agent Bootstraps Itself via MCP

flowstory

FLST_UBFLOW_010

Schema Validation via MCP at Startup

flowstory

FLST_UBFLOW_011

Sphinx Project Integration via Prompt

flowstory

FLST_UBFLOW_012

No Self-Installation into Target Project

flowstory

FLST_UBFLOW_013

ubCode Chat Participant

flowstory

FLST_UBFLOW_014

Read-Only Agent After Delivery

flowstory

FLST_UBFLOW_015

Built-in ubCode MCP Knowledge

flowstory

FLST_UBFLOW_016

Human-Readable Agent Documentation

flowstory

FLST_UBFLOW_017

Agents Callable via Copilot Prompt

flowstory

FLST_UBFLOW_018

ubCode Can Invoke ubFlow Agents

flowstory

FLST_UBFLOW_029

Orchestrator Is the Family Entry Point

flowstory

FLST_UBFLOW_030

Orchestrator Carries the Family Name

flowstory

FLST_UBFLOW_031

Orchestrator Identifies and Routes Workflow

flowstory

FLST_UBFLOW_032

Orchestrator Enforces the Five-Phase Workflow

flowstory

FLST_UBFLOW_033

Orchestrator Uses ubCode MCP for All Needs Access

flowstory

FLST_UBFLOW_034

Orchestrator Ensures ubCode MCP Is Available

flowstory

FLST_UBFLOW_036

ubFlow bootstraps its instructions from the ubCode extension

flowstory

FLST_UBFLOW_042

Deploy companion bootstrap instructions file with every family installation

flowstory