graph TB
A[Human] <-- "Send and receive messages to Orchestrator" --> F[Communicator]
F <-- "Send and receive messages to specific human" --> B{Orchestrator}
B <-- "Read write" --> D[(Private Semantic network)]
B <-- "Read only" --> E[(Public Semantic network)]
B <-- "Interacts with ability to achieve some external task" --> C((Ability))
Simple implementation
graph TB A[Human] <-- "Send and receive messages to Orchestrator" --> F[Communicator] F <-- "Send and receive messages to specific human" --> B{Orchestrator} B <-- "Read write" --> D[(Private Semantic network)] B <-- "Read only" --> E[(Public Semantic network)] B <-- "Interacts with ability to achieve some external task" --> C((Ability))More complex implementation
graph TB A[Human A] <-- Email --> F>Email Communicator] H[Human B] <-- Slack --> G>Slack Communicator] F <----> B{Orchestrator} G <----> B{Orchestrator} B <----> C((Researcher Ability)) J{{SearXNG API}} ---> C B <----> I((Email reading Ability)) K{{IMAP email server}} ---> I E[(Python coding Semantic Network)] -- public read-only --> B{Orchestrator} D[(Personal email Semantic Network)] <-- private read-write --> B