109 lines
3.0 KiB
XML
109 lines
3.0 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!--
|
|
Always answer with a single element.
|
|
-->
|
|
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
|
|
|
|
<!--
|
|
Delete command removes an entry from the context by its ID.
|
|
Use it to remove unnecessary items and stop background processes.
|
|
When you delete something, it is gone.
|
|
Make sure all important info is stored in files.
|
|
Example:
|
|
<delete id="1234567890"/>
|
|
-->
|
|
<xs:element name="delete">
|
|
<xs:complexType>
|
|
<xs:attribute name="id" type="xs:string" use="required"/>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
|
|
<!--
|
|
Stop command terminates the agent gracefully.
|
|
For the main SIA instance this will trigger an update and restart.
|
|
For sub-instances this is the correct way to stop after all tasks are complete.
|
|
Example:
|
|
<stop id="1234567890"/>
|
|
-->
|
|
<xs:element name="stop">
|
|
<xs:complexType/>
|
|
</xs:element>
|
|
|
|
<!--
|
|
Single script that runs once and completes.
|
|
Output is stored in context until explicitly deleted.
|
|
Used for one-time operations like file manipulation.
|
|
Example:
|
|
<single>
|
|
ls /
|
|
</single>
|
|
-->
|
|
<xs:element name="single">
|
|
<xs:complexType mixed="true">
|
|
<xs:sequence>
|
|
<xs:any minOccurs="0" maxOccurs="unbounded" processContents="skip"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
|
|
<!--
|
|
Repeat script runs each time the context is generated.
|
|
After a command is issued, all repeat scripts in context are run again.
|
|
Useful for monitoring changing files or viewing results immediately after changing a file.
|
|
Repeat scripts should execute quickly to avoid blocking the agent.
|
|
Example:
|
|
<repeat>
|
|
ls /
|
|
</repeat>
|
|
-->
|
|
<xs:element name="repeat">
|
|
<xs:complexType mixed="true">
|
|
<xs:sequence>
|
|
<xs:any minOccurs="0" maxOccurs="unbounded" processContents="skip"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
|
|
<!--
|
|
As an agent it is important to reason about your actions and their results.
|
|
In a reasoning action you can write freeform text.
|
|
This is also stored in context until deleted.
|
|
Example:
|
|
<reasoning>
|
|
I should explore the file system for interesting files.
|
|
</reasoning>
|
|
-->
|
|
<xs:element name="reasoning">
|
|
<xs:complexType mixed="true">
|
|
<xs:sequence>
|
|
<xs:any minOccurs="0" maxOccurs="unbounded" processContents="skip"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
|
|
<!--
|
|
Read all available text on stdin and store it in context.
|
|
Example:
|
|
<read_stdin/>
|
|
-->
|
|
<xs:element name="read_stdin">
|
|
<xs:complexType/>
|
|
</xs:element>
|
|
|
|
<!--
|
|
Write to stdout.
|
|
This is your main way of contacting the user.
|
|
Example:
|
|
<write_stdout>
|
|
Hello world!
|
|
</write_stdout>
|
|
-->
|
|
<xs:element name="write_stdout">
|
|
<xs:complexType mixed="true">
|
|
<xs:sequence>
|
|
<xs:any minOccurs="0" maxOccurs="unbounded" processContents="skip"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
</xs:schema>
|