diff --git a/rfcs/2024-02-11-output-for-new-task.md b/rfcs/2024-02-11-output-for-new-task.md new file mode 100644 index 0000000..7d5618d --- /dev/null +++ b/rfcs/2024-02-11-output-for-new-task.md @@ -0,0 +1,97 @@ +# Output for New Task + +| Feature name | Output for New Task | +| :------------ | :----------------------------------------------------------------------- | +| **Author(s)** | Nicholas Albion (nalbion@yahoo.com) | +| **RFC PR:** | [102](https://github.com/AI-Engineer-Foundation/agent-protocol/pull/102) | +| **Updated** | 2024-02-11 | + +## Summary + +`POST /ap/v1/agent/task` should allow an `output` + +## Motivation + +I struggle to understand how people would be using `POST /ap/v1/agent/task`, which accepts an optional (!!) `input` but allows for no `output`. Can you imagine calling somebody on the phone and the person at the other end picks up, but doesn't say anything? You generally _want_ to hear "Hi, thanks for calling XYZ, if you're calling about ..." - or atleast "Hello..." + +An agent could: + +- _Ignore_ (or just log) the `task.input` and provide a generic welcome/instructional prompt. +- Use an LLM to process `task.input` and select a specialist agent to handle the task/steps, and provide a welcome prompt from the specialist agent +- Provide a rejection message explaining why subsequent requests will not be accepted +- The client might use the `task.output` as a title for the task? + +## Agent Builders Benefit + +Agents would be able to provide a welcome message, guiding the user on what to say first. + +This allows for greater flexibility & more options: + +
task.input | task.ouput | comments | +
---|---|---|
Write the word 'Washington' to a .txt file" | +undefined | +AutoGPT logs `task.input`. User initiates conversation in `POST /agent/task/id/step` |
+
Write the word 'Washington' to a .txt file" | +"Sorry, I'm unable to write to files" | +Agent responds to `task.input` maybe sets `"is_last": true`? |
+
undefined | +"Hi, welcome to XYZ bank, can we start with your account number?" | +Agent initiates with welcome prompt | +
undefined | +undefined | +User initiates conversation in `POST /agent/task/id/step` | +