~ knotless Search/
↑↓ move↵ open⇧↵ all results

johnandersen777.bsky.social/atlibs-agents

agents and atirc modules for atlibs: launch agents from a composition, chat on atirc; pages and the agents service

0
0
main
62 lines · 1.7 KB Raw History
{
	"$type": "com.fedfork.exec.composition",
	"name": "atirc agents service",
	"description": "The public face of the agents service: the ingress module holds the did:key registration with xrpc.fedproxy.com and forwards the three agents XRPC methods to the host's handlers, which check atproto service auth and run composition.json (agents + requester).",
	"instances": [
		{
			"name": "ingress",
			"module": "ingress",
			"input": {
				"routes": [
					"com.fedfork.agents.launchAgent",
					"com.fedfork.agents.getAgent",
					"com.fedfork.agents.shutdownAgent"
				],
				"deadlineMs": 28000
			},
			"budget": {
				"wallMs": 2000000000,
				"events": 100000000,
				"calls": 10000000
			}
		}
	],
	"handlers": [
		{
			"name": "launchAgent",
			"description": "Check the caller's service auth, create the launch record, launch the agent in the background; answers {rkey, uri, status}"
		},
		{
			"name": "getAgent",
			"description": "Check the caller's service auth; the launch record and one read of the guest"
		},
		{
			"name": "shutdownAgent",
			"description": "Check the caller's service auth; revoke, release, clean up by rkey"
		}
	],
	"edges": [
		{
			"from": "ingress",
			"nsid": "com.fedfork.agents.launchAgent",
			"handler": "launchAgent",
			"reason": "a caller on the internet asks to launch an agent"
		},
		{
			"from": "ingress",
			"nsid": "com.fedfork.agents.getAgent",
			"handler": "getAgent",
			"reason": "a caller on the internet reads an agent's status"
		},
		{
			"from": "ingress",
			"nsid": "com.fedfork.agents.shutdownAgent",
			"handler": "shutdownAgent",
			"reason": "a caller on the internet shuts an agent down"
		}
	],
	"limits": {
		"depth": 2,
		"calls": 10000000
	}
}