docs
This commit is contained in:
82
docs/prosafeature.md
Normal file
82
docs/prosafeature.md
Normal file
@@ -0,0 +1,82 @@
|
||||
|
||||
|
||||
# Service
|
||||
Service to orchestration for agent for a given task
|
||||
|
||||
## Task
|
||||
|
||||
- name
|
||||
- tasks promt
|
||||
- defined running container
|
||||
|
||||
- resolve time
|
||||
- one or multable TaskTag
|
||||
- complexty level
|
||||
--- complex level is defined by rules like: "resolve time" > 60 then complex level = extrem hard
|
||||
--- and add Promt at beeginning for that tasks
|
||||
|
||||
- Schedule
|
||||
--- define when and how the tasks is scheduled
|
||||
|
||||
## Schedule
|
||||
- Time based
|
||||
- immediately
|
||||
- datetime-event (schedule task starts at a specific date/time)
|
||||
- Event-driven triggers via normal published events
|
||||
- agent or agents finished events
|
||||
--- all agents are finished successfully
|
||||
--- all agents are finished
|
||||
--- one or more agents are failed
|
||||
|
||||
## Task Flow Control (no super tasks)
|
||||
- Every task is first-class. subtasks are normal tasks and use the same fields.
|
||||
- next_task / previous_task for explicit linear task order.
|
||||
- condition for if-style branching (task result chooses next path).
|
||||
- foreach_items and foreach_task_template for item expansion flows.
|
||||
- goto_task with optional additional prompt appended/merged into target task.
|
||||
|
||||
|
||||
## complexty level
|
||||
define how complex a tasks is.
|
||||
Low, middle, Hard, extrem hard.
|
||||
|
||||
low: is easy to resolve. has easy logic. only one topic area. resolve within max 30 min.
|
||||
middle: is modreate to resolve. has easy logic. only one topic area. resolve within max 60 min.
|
||||
Hard: need to split in sub tasks. not easy logic. multiable topic areas. resolve time is greater 60 min
|
||||
extram hard: need to split in sub tasks. not easy logic. multiable topic areas. resolve time is unkown.
|
||||
|
||||
## TaskTag
|
||||
Define a enum Tag that define a Tasks working area.
|
||||
This is needed to define what a agant is able to do.
|
||||
A Tasks can have multiable TaskTag what would identfy that a Tasks is to complex and needs to be splitted.
|
||||
|
||||
|
||||
## Agent
|
||||
|
||||
A Agent has multipale assigned skills
|
||||
A Agent has a TaskTag
|
||||
has choose rules. like: Task has only one TaskTag equals my TaskTag
|
||||
Agent can wait for sub agents
|
||||
Agent can call a sub agent
|
||||
Agent return a success status
|
||||
--- on not success agent escalate. but need to give a escalation promt / escalation reason
|
||||
|
||||
|
||||
## running container
|
||||
define the needed running enviroment.
|
||||
a container is fully isolated except root container
|
||||
|
||||
a contaienr has a set of needed tools
|
||||
a agent can not access outside a container
|
||||
|
||||
|
||||
## Tool
|
||||
define the needed binary and runable application
|
||||
like shell, python, pip, pip libs, etc.
|
||||
also contains a instructuons how to use and not use a tool
|
||||
define the perpose of a tool
|
||||
|
||||
# Frontend cli
|
||||
|
||||
cli tool to manage Agents, Tasks, Tools, container, complexty level, TaskTag, Schedule
|
||||
cli tool to define a Tasks and also start them.
|
||||
Reference in New Issue
Block a user