147 lines
4.5 KiB
XML
147 lines
4.5 KiB
XML
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
|
|
"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
|
|
<node>
|
|
<interface name="org.ollie.SessionManager">
|
|
<!-- Session lifecycle -->
|
|
<method name="CreateSession">
|
|
<arg name="cwd" type="s" direction="in"/>
|
|
<arg name="backend" type="s" direction="in"/>
|
|
<arg name="model" type="s" direction="in"/>
|
|
<arg name="agent" type="s" direction="in"/>
|
|
<arg name="session_id" type="s" direction="out"/>
|
|
</method>
|
|
|
|
<method name="ListSessions">
|
|
<arg name="sessions" type="as" direction="out"/>
|
|
<!-- each entry: "id\tstate\tmodel\tagent" -->
|
|
</method>
|
|
|
|
<method name="KillSession">
|
|
<arg name="session_id" type="s" direction="in"/>
|
|
<arg name="success" type="b" direction="out"/>
|
|
</method>
|
|
|
|
<method name="RenameSession">
|
|
<arg name="session_id" type="s" direction="in"/>
|
|
<arg name="new_name" type="s" direction="in"/>
|
|
<arg name="success" type="b" direction="out"/>
|
|
</method>
|
|
|
|
<!-- Interaction -->
|
|
<method name="Submit">
|
|
<arg name="session_id" type="s" direction="in"/>
|
|
<arg name="prompt" type="s" direction="in"/>
|
|
<arg name="success" type="b" direction="out"/>
|
|
</method>
|
|
|
|
<method name="Interrupt">
|
|
<arg name="session_id" type="s" direction="in"/>
|
|
<arg name="success" type="b" direction="out"/>
|
|
</method>
|
|
|
|
<!-- State queries -->
|
|
<method name="GetState">
|
|
<arg name="session_id" type="s" direction="in"/>
|
|
<arg name="state" type="s" direction="out"/>
|
|
</method>
|
|
|
|
<method name="GetChat">
|
|
<arg name="session_id" type="s" direction="in"/>
|
|
<arg name="offset" type="x" direction="in"/>
|
|
<arg name="text" type="s" direction="out"/>
|
|
<arg name="new_offset" type="x" direction="out"/>
|
|
</method>
|
|
|
|
<method name="GetUsage">
|
|
<arg name="session_id" type="s" direction="in"/>
|
|
<arg name="usage" type="s" direction="out"/>
|
|
</method>
|
|
|
|
<method name="GetCost">
|
|
<arg name="session_id" type="s" direction="in"/>
|
|
<arg name="cost" type="s" direction="out"/>
|
|
</method>
|
|
|
|
<!-- Config -->
|
|
<method name="GetConfig">
|
|
<arg name="session_id" type="s" direction="in"/>
|
|
<arg name="config" type="s" direction="out"/>
|
|
<!-- key=value\n pairs -->
|
|
</method>
|
|
|
|
<method name="SetConfig">
|
|
<arg name="session_id" type="s" direction="in"/>
|
|
<arg name="key" type="s" direction="in"/>
|
|
<arg name="value" type="s" direction="in"/>
|
|
<arg name="success" type="b" direction="out"/>
|
|
</method>
|
|
|
|
<!-- Context -->
|
|
<method name="GetContext">
|
|
<arg name="session_id" type="s" direction="in"/>
|
|
<arg name="context" type="s" direction="out"/>
|
|
<!-- JSONL: one JSON message per line -->
|
|
</method>
|
|
|
|
<!-- Model/backend management -->
|
|
<method name="ListBackends">
|
|
<arg name="backends" type="as" direction="out"/>
|
|
</method>
|
|
|
|
<method name="ListModels">
|
|
<arg name="session_id" type="s" direction="in"/>
|
|
<arg name="models" type="as" direction="out"/>
|
|
</method>
|
|
|
|
<!-- Agents -->
|
|
<method name="ListAgents">
|
|
<arg name="agents" type="as" direction="out"/>
|
|
</method>
|
|
|
|
<!-- Peers -->
|
|
<method name="PeerAdd">
|
|
<arg name="session_id" type="s" direction="in"/>
|
|
<arg name="peer_id" type="s" direction="in"/>
|
|
<arg name="success" type="b" direction="out"/>
|
|
</method>
|
|
|
|
<method name="PeerRemove">
|
|
<arg name="session_id" type="s" direction="in"/>
|
|
<arg name="peer_id" type="s" direction="in"/>
|
|
<arg name="success" type="b" direction="out"/>
|
|
</method>
|
|
|
|
<method name="PeerList">
|
|
<arg name="session_id" type="s" direction="in"/>
|
|
<arg name="peers" type="as" direction="out"/>
|
|
</method>
|
|
|
|
<method name="PeerSubmit">
|
|
<arg name="session_id" type="s" direction="in"/>
|
|
<arg name="peer_id" type="s" direction="in"/>
|
|
<arg name="prompt" type="s" direction="in"/>
|
|
<arg name="success" type="b" direction="out"/>
|
|
</method>
|
|
|
|
<!-- Signals -->
|
|
<signal name="SessionCreated">
|
|
<arg name="session_id" type="s"/>
|
|
</signal>
|
|
|
|
<signal name="SessionKilled">
|
|
<arg name="session_id" type="s"/>
|
|
</signal>
|
|
|
|
<signal name="StateChanged">
|
|
<arg name="session_id" type="s"/>
|
|
<arg name="new_state" type="s"/>
|
|
</signal>
|
|
|
|
<signal name="ChatUpdated">
|
|
<arg name="session_id" type="s"/>
|
|
<arg name="offset" type="x"/>
|
|
<arg name="new_text" type="s"/>
|
|
</signal>
|
|
</interface>
|
|
</node>
|