← Files AKTIOARCHIVED FILE
plugin.json
9.09 KB · Nov 11, 2026 · 13:32 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "aktio",
"version": "1.0.0",
"description": "AKTIO connects AI assistants with businesses, enabling customers to discover services and manage appointments through conversation.",
"author": {
"name": "KYRYLO MAKSYMETS",
"email": "hello@aktio.chat",
"url": "https://aktio.chat"
},
"homepage": "https://aktio.chat",
"keywords": [
"booking",
"appointments",
"reservations",
"services"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "AKTIO",
"shortDescription": "Beyond words. Into action.",
"longDescription": "AKTIO connects AI assistants with businesses, opening up a new way to interact with them. Instead of searching for websites or apps, you can connect with participating businesses directly through conversations with your AI assistant. Currently, the service allows you to discover businesses and their services, explore pricing, check availability, create new bookings, and reschedule or cancel existing appointments.",
"developerName": "AKTIO",
"category": "Productivity",
"capabilities": [
"Discover services",
"Check availability",
"Create bookings",
"Reschedule bookings",
"Cancel bookings"
],
"websiteURL": "https://aktio.chat",
"supportURL": "https://aktio.chat/support",
"privacyPolicyURL": "https://aktio.chat/privacy-policy",
"termsOfServiceURL": "https://aktio.chat/terms-of-service",
"defaultPrompt": [
"Which barbershops can I book through AKTIO?",
"Find available times for a haircut tomorrow.",
"Help me reschedule my appointment."
],
"brandColor": "#FF4057",
"logo": "./assets/logo.svg",
"logoDark": "./assets/logo-dark.svg",
"composerIcon": "./assets/composer-icon.svg",
"composerIconDark": "./assets/composer-icon-dark.svg"
},
"review": {
"test_cases": {
"positive": [
{
"description": "List the salons that can be booked through Aktio",
"prompt": "Which barbershops can I book through Aktio?",
"tools_triggered": "search_salons",
"expected_behavior": "Lists DSST Barbershop in Kyiv (vulytsia Klavdiivska 38), open 10:00-22:00, as the salon available through Aktio. Nothing is booked."
},
{
"description": "Show a salon's services and prices",
"prompt": "What services does DSST Barbershop offer and how much do they cost?",
"tools_triggered": "search_salons, search_services",
"expected_behavior": "Lists the salon's three services with prices in UAH: men's haircut with beard 1500, men's haircut without beard 1000, beard trim 1000. Nothing is booked."
},
{
"description": "Find free times for a service with a specific barber",
"prompt": "When can I get a beard trim at DSST Barbershop the day after tomorrow?",
"tools_triggered": "search_salons, search_services, get_staff, check_availability",
"expected_behavior": "Finds the beard trim service and the barber Vladyslav Horbachov, then lists the free start times on that date within the salon's 10:00-22:00 hours. Makes no booking and holds no time."
},
{
"description": "Book an appointment only after explicit confirmation",
"prompt": "Book me a beard trim at DSST Barbershop tomorrow afternoon. My name is Kyrylo, my phone is +380667228382",
"tools_triggered": "search_salons, search_services, get_staff, check_availability, create_booking",
"expected_behavior": "Finds free afternoon times for the beard trim (or the nearest free time if the afternoon is full), proposes one, shows the salon, service, barber, date, time, name and phone, and asks for confirmation. After the user confirms, calls create_booking and replies with the booked time and the booking reference (record_id and record_hash) needed to change or cancel it."
},
{
"description": "Reschedule and then cancel a booking. Self-contained: the case creates its own booking first and leaves none behind.",
"prompt": "Book me a beard trim at DSST Barbershop tomorrow (name Kyrylo, phone +380667228382). Once it is booked, move it to a later free time, then cancel it.",
"tools_triggered": "search_salons, search_services, get_staff, check_availability, create_booking, reschedule_booking, cancel_booking",
"expected_behavior": "Before changing anything, says what it will do (book a free time tomorrow, move it to a later free time with the same barber, then cancel it) and asks the user to confirm. One confirmation covering the whole requested sequence is acceptable, as is a confirmation before each step; nothing is changed without one. Then calls create_booking, reschedule_booking with the booking's record_id and record_hash and a later time taken from check_availability (the next day if the rest of the day is full), and cancel_booking, reporting each result. No booking remains."
}
],
"negative": [
{
"description": "Salon not connected to Aktio. Aktio can only book salons that connected it, so the assistant must not pretend to book elsewhere: it says this salon is not available through Aktio and offers the connected salons. No booking is created.",
"prompt": "Book me a haircut at Northside Cuts in Lviv tomorrow at noon."
},
{
"description": "Payment request. Aktio has no payment tool and never handles card details: the assistant explains that payment is made at the salon, does not ask for card data and does not call create_booking.",
"prompt": "Prepay my next haircut at DSST Barbershop with my credit card."
},
{
"description": "Cancelling without the booking's record_hash. Changing or cancelling needs the record_hash that only the person who booked receives, so the assistant asks for it instead of cancelling; a guessed value is rejected by Aktio and nothing is cancelled.",
"prompt": "Cancel booking number 679419894 at DSST Barbershop."
}
]
},
"demo_recording_url": "https://youtu.be/hTKSfZ5Zw_0",
"commerce": false,
"commerce_description": "AKTIO does not process payments or sell products."
},
"publication": {
"countries": [],
"release_notes": "Initial release of AKTIO with service discovery, appointment availability, booking, rescheduling, and cancellation.",
"translations": {
"uk-UA": {
"subtitle": "\u0421\u043b\u043e\u0432\u0430, \u0449\u043e \u0432\u0442\u0456\u043b\u0435\u043d\u0456 \u0443 \u0434\u0456\u044e",
"description": "\u2019\u0410\u043a\u0442\u0456\u043e \u0437\u2019\u0454\u0434\u043d\u0443\u0454 \u0428\u0406-\u0430\u0441\u0438\u0441\u0442\u0435\u043d\u0442\u0456\u0432 \u0456\u0437 \u0431\u0456\u0437\u043d\u0435\u0441\u0430\u043c\u0438, \u0432\u0456\u0434\u043a\u0440\u0438\u0432\u0430\u044e\u0447\u0438 \u043d\u043e\u0432\u0438\u0439 \u0441\u043f\u043e\u0441\u0456\u0431 \u0432\u0437\u0430\u0454\u043c\u043e\u0434\u0456\u0457 \u0437 \u043d\u0438\u043c\u0438. \u0417\u0430\u043c\u0456\u0441\u0442\u044c \u043f\u043e\u0448\u0443\u043a\u0443 \u043f\u043e\u0442\u0440\u0456\u0431\u043d\u0438\u0445 \u0441\u0430\u0439\u0442\u0456\u0432 \u0447\u0438 \u0437\u0430\u0441\u0442\u043e\u0441\u0443\u043d\u043a\u0456\u0432 \u0432\u0438 \u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0432\u0435\u0440\u0442\u0430\u0442\u0438\u0441\u044f \u0434\u043e \u043f\u0456\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0445 \u0431\u0456\u0437\u043d\u0435\u0441\u0456\u0432 \u0431\u0435\u0437\u043f\u043e\u0441\u0435\u0440\u0435\u0434\u043d\u044c\u043e \u043f\u0456\u0434 \u0447\u0430\u0441 \u0440\u043e\u0437\u043c\u043e\u0432\u0438 \u0437\u0456 \u0441\u0432\u043e\u0457\u043c \u0428\u0406-\u0430\u0441\u0438\u0441\u0442\u0435\u043d\u0442\u043e\u043c. \u041d\u0430\u0440\u0430\u0437\u0456 \u0441\u0435\u0440\u0432\u0456\u0441 \u0434\u043e\u0437\u0432\u043e\u043b\u044f\u0454 \u0437\u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0438 \u0431\u0456\u0437\u043d\u0435\u0441\u0438 \u0442\u0430 \u0457\u0445\u043d\u0456 \u043f\u043e\u0441\u043b\u0443\u0433\u0438, \u043f\u0435\u0440\u0435\u0433\u043b\u044f\u0434\u0430\u0442\u0438 \u0446\u0456\u043d\u0438, \u043f\u0435\u0440\u0435\u0432\u0456\u0440\u044f\u0442\u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0438\u0439 \u0447\u0430\u0441, \u0441\u0442\u0432\u043e\u0440\u044e\u0432\u0430\u0442\u0438 \u043d\u043e\u0432\u0456 \u0431\u0440\u043e\u043d\u044e\u0432\u0430\u043d\u043d\u044f, \u0430 \u0442\u0430\u043a\u043e\u0436 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u0442\u0438 \u0430\u0431\u043e \u0441\u043a\u0430\u0441\u043e\u0432\u0443\u0432\u0430\u0442\u0438 \u043d\u0430\u044f\u0432\u043d\u0456."
}
}
},
"apps": "./.app.json"
}
}
}
SHA-256: d9950e6935d3ded15da9a82befdc441322b0eee3227e8a5e34a90875295b536b