PHP code example of sunnyface / ai-contracts

1. Go to this page and download the library: Download sunnyface/ai-contracts library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

sunnyface / ai-contracts example snippets




namespace App\Http\Controllers;

use Sunnyface\Contracts\Data\Spoke\ExecuteAgentTaskRequest;
use Sunnyface\Contracts\Data\Spoke\Payloads\ConversationalPayloadDTO;

class AgentTaskController extends Controller
{
    public function __invoke(ExecuteAgentTaskRequest $request)
    {
        // 1. $request->tenant_id ya está validado como ULID.
        
        // 2. Gracias a los Union Types, puedes hacer match directo sobre el payload:
        match (true) {
            $request->payload instanceof ConversationalPayloadDTO => $this->handleChat($request->payload),
            // ... otros payloads tipados
        };

        // 3. Las colecciones ya son objetos reales:
        foreach ($request->prefetched_chat_messages ?? [] as $message) {
            // $message es un ChatMessageDTO con autocompletado perfecto
            echo $message->role->value . ': ' . $message->content;
        }
    }
}