### MCP Configuration for AI Agents Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt This section provides JSON configuration examples for connecting various AI agents to the Instruckt server using the Model Context Protocol (MCP). Configurations are shown for Claude Code, Cursor, GitHub Copilot, and OpenCode, specifying the command and arguments to start the Instruckt MCP server. ```json // .mcp.json (Claude Code) { "mcpServers": { "instruckt": { "command": "php", "args": ["artisan", "mcp:start", "instruckt"] } } } // .cursor/mcp.json (Cursor) { "mcpServers": { "instruckt": { "command": "php", "args": ["artisan", "mcp:start", "instruckt"] } } } // .vscode/mcp.json (GitHub Copilot) { "servers": { "instruckt": { "command": "php", "args": ["artisan", "mcp:start", "instruckt"] } } } // opencode.json (OpenCode) { "mcp": { "instruckt": { "type": "local", "enabled": true, "command": ["php", "artisan", "mcp:start", "instruckt"] } } } ``` -------------------------------- ### Install and Configure instruckt-laravel Source: https://github.com/joshcirre/instruckt-laravel/blob/main/README.md Commands to install the package via Composer and run the installation script to publish assets and configure MCP integration. ```bash composer require joshcirre/instruckt-laravel --dev php artisan instruckt:install ``` -------------------------------- ### Publish and Configure Package Settings Source: https://github.com/joshcirre/instruckt-laravel/blob/main/README.md Commands to publish the configuration file and an example of the configuration structure for customizing routes, colors, and keyboard shortcuts. ```bash php artisan vendor:publish --tag=instruckt-config ``` ```php return [ 'enabled' => (bool) env('INSTRUCKT_ENABLED', env('APP_ENV') === 'local'), 'route_prefix' => env('INSTRUCKT_ROUTE_PREFIX', 'instruckt'), 'middleware' => explode(',', env('INSTRUCKT_MIDDLEWARE', 'api')), 'cdn_url' => env('INSTRUCKT_CDN_URL', null), 'colors' => [], 'keys' => [], ]; ``` -------------------------------- ### Install Instruckt Laravel Package Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt Installs the Instruckt Laravel package as a dev dependency using Composer and provides commands to run the installer for configuration, npm package setup, and AI agent configuration. It also shows how to skip specific installation steps. ```bash composer require joshcirre/instruckt-laravel --dev php artisan instruckt:install # Optional: Skip specific installation steps php artisan instruckt:install --skip-mcp --skip-skill --skip-toolbar ``` -------------------------------- ### GET /instruckt/screenshots/{filename} Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt Retrieves the binary image file for a specific annotation screenshot. ```APIDOC ## GET /instruckt/screenshots/{filename} ### Description Retrieve a screenshot image file associated with an annotation. ### Method GET ### Endpoint /instruckt/screenshots/{filename} ### Parameters #### Path Parameters - **filename** (string) - Required - The name of the screenshot file (e.g., 01HWXYZ123ABC.png) ### Response #### Success Response (200) - **Content-Type** (header) - image/png or image/svg+xml ``` -------------------------------- ### MCP Tool: Get Screenshot Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt Fetches the base64-encoded PNG screenshot associated with a specific annotation ID. ```APIDOC ## MCP Tool: instruckt.get_screenshot ### Description Retrieve the screenshot image attached to an annotation. Returns base64-encoded PNG. ### Method MCP Tool Call ### Endpoint instruckt.get_screenshot ### Parameters #### Request Body - **annotation_id** (string) - Required - The ID of the annotation to retrieve the screenshot for ### Request Example { "tool": "instruckt.get_screenshot", "arguments": { "annotation_id": "01HWXYZ123ABC" } } ``` -------------------------------- ### HTTP API - Get Screenshot using cURL Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt This snippet demonstrates how to retrieve a screenshot associated with an annotation using the Instruckt HTTP API with cURL. It shows a GET request to the screenshots endpoint, specifying the annotation ID and file extension. The response is a binary image file. ```bash # Get screenshot image (returns binary PNG or SVG) curl -X GET http://localhost:8000/instruckt/screenshots/01HWXYZ123ABC.png \ -o screenshot.png # Response: Binary image file with Content-Type: image/png or image/svg+xml ``` -------------------------------- ### MCP Tool: Get All Pending Annotations Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt Retrieves a list of all unresolved annotations currently pending for AI agent processing. ```APIDOC ## MCP Tool: instruckt.get_all_pending ### Description Retrieve all pending (unresolved) annotations for AI agent processing via MCP. ### Method MCP Tool Call ### Endpoint instruckt.get_all_pending ### Parameters None ### Response #### Success Response (200) - **count** (integer) - Number of pending annotations - **annotations** (array) - List of annotation objects #### Response Example { "count": 1, "annotations": [ { "id": "01HWXYZ123ABC", "url": "http://localhost:8000/dashboard", "status": "pending" } ] } ``` -------------------------------- ### GET /instruckt/annotations Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt Retrieves a list of all annotations currently stored in the system, including both pending and resolved items. ```APIDOC ## GET /instruckt/annotations ### Description Retrieve all annotations stored in the system, including resolved and pending items. This endpoint is used by AI agents to fetch user feedback markers. ### Method GET ### Endpoint /instruckt/annotations ### Parameters None ### Request Example ```bash curl -X GET http://localhost:8000/instruckt/annotations \ -H "Accept: application/json" ``` ### Response #### Success Response (200) - **annotations** (array) - A collection of annotation objects containing ID, status, content, and metadata. #### Response Example ```json [ { "id": "uuid-123", "status": "pending", "content": "Fix the button alignment", "url": "/dashboard", "created_at": "2023-10-27T10:00:00Z" } ] ``` ``` -------------------------------- ### MCP Tool: Get Screenshot (PHP) Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt Retrieves a base64-encoded PNG screenshot for a given annotation ID. It requires the annotation_id as a parameter. The response can be either the image data on success or an error message if no screenshot is attached or the file is not found. ```php // MCP Tool: instruckt.get_screenshot // Description: Get the screenshot image attached to an annotation. Returns base64-encoded PNG. // Parameters: // - annotation_id (string, required): The annotation ID to get the screenshot for // Example MCP call { "tool": "instruckt.get_screenshot", "arguments": { "annotation_id": "01HWXYZ123ABC" } } // Success response: Returns image data (base64-encoded PNG) // The response is an MCP image response that AI agents can view directly // Error response (no screenshot) { "ok": false, "error": "No screenshot attached to this annotation." } // Error response (file not found) { "ok": false, "error": "Screenshot file not found: screenshots/01HWXYZ123ABC.png" } ``` -------------------------------- ### Use Instruckt Blade Toolbar Component Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt Shows how to use the Instruckt Blade component as an alternative to JavaScript integration. It includes basic usage, customization options for theme, position, adapters, colors, and keyboard shortcuts, and a specific example for Livewire apps using @persist. ```blade {{-- Basic usage - add before in your layout --}} {{-- With customization options --}} {{-- For Livewire apps, use @persist to preserve state across navigations --}} @persist('instruckt') @endpersist ``` -------------------------------- ### Fetch All Instruckt Annotations via HTTP API Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt Demonstrates how to retrieve all stored annotations, including resolved and pending items, using a cURL command. It specifies the HTTP GET request to the annotations endpoint and sets the Accept header to application/json. ```bash # Get all annotations curl -X GET http://localhost:8000/instruckt/annotations \ -H "Accept: application/json" ``` -------------------------------- ### Uninstall Instruckt Laravel Package (Bash) Source: https://github.com/joshcirre/instruckt-laravel/blob/main/README.md This bash command uninstalls the instruckt-laravel package from your project. It scans for all instruckt artifacts, prompts for confirmation, and reverses the installation process. It can also be used with flags to skip confirmation or retain configuration and npm packages. ```bash php artisan instruckt:uninstall ``` ```bash composer remove joshcirre/instruckt-laravel --dev ``` -------------------------------- ### MCP Tool: Get All Pending Annotations (PHP) Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt Retrieves all unresolved annotations from the MCP tool, intended for AI agent processing. This function takes no parameters and returns a JSON object containing the count of pending annotations and a list of annotation details. ```php // MCP Tool: instruckt.get_all_pending // Description: Get all pending annotations — unresolved user feedback from the browser. // Parameters: none // Example response from MCP tool { "count": 2, "annotations": [ { "id": "01HWXYZ123ABC", "url": "http://localhost:8000/dashboard", "x": 150.5, "y": 200.0, "comment": "Change the heading text", "element": "h1.text-xl", "element_path": "html > body > div#app > main > h1", "css_classes": "text-xl font-bold", "nearby_text": "Welcome", "intent": "change", "severity": "important", "status": "pending", "framework": {"component": "pages::dashboard", "adapter": "livewire"}, "has_screenshot": true, "created_at": "2024-01-15T10:30:00+00:00" }, { "id": "01HWXYZ456DEF", "url": "http://localhost:8000/settings", "x": 300.0, "y": 400.0, "comment": "Fix button alignment", "element": "button.btn-save", "element_path": "html > body > div#app > form > button", "css_classes": "btn btn-primary", "nearby_text": "Save Settings", "intent": "fix", "severity": "blocking", "status": "pending", "framework": {"component": "settings::form", "adapter": "livewire"}, "has_screenshot": false, "created_at": "2024-01-15T11:00:00+00:00" } ] } ``` -------------------------------- ### HTTP API - Update Annotation using cURL Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt This section shows how to update an existing annotation via the Instruckt HTTP API using cURL. Examples cover changing the status to 'resolved' or 'dismissed', and modifying the comment. The response illustrates the updated fields and timestamps. ```bash # Update annotation status to resolved curl -X PATCH http://localhost:8000/instruckt/annotations/01HWXYZ123ABC \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -d '{ "status": "resolved" }' # Update annotation comment curl -X PATCH http://localhost:8000/instruckt/annotations/01HWXYZ123ABC \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -d '{ "comment": "Updated: Please also add padding to this element" }' # Dismiss annotation curl -X PATCH http://localhost:8000/instruckt/annotations/01HWXYZ123ABC \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -d '{ "status": "dismissed" }' # Response example { "id": "01HWXYZ123ABC", "status": "resolved", "resolved_by": "human", "resolved_at": "2024-01-15T12:00:00+00:00", "updated_at": "2024-01-15T12:00:00+00:00" } ``` -------------------------------- ### Initialize Instruckt JavaScript Integration Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt Demonstrates how to integrate Instruckt into your JavaScript entry point. It shows basic initialization with an endpoint and advanced initialization with framework-specific adapters for Livewire, Vue, and Svelte. ```javascript // resources/js/app.js (or .ts, .tsx, .jsx) import { Instruckt } from 'instruckt'; // Basic initialization new Instruckt({ endpoint: '/instruckt' }); // With framework-specific adapters new Instruckt({ endpoint: '/instruckt', adapters: ['livewire', 'vue', 'svelte'] }); ``` -------------------------------- ### Initialize Instruckt in Frontend Source: https://github.com/joshcirre/instruckt-laravel/blob/main/README.md How to initialize the Instruckt client in your JavaScript entry point to enable annotation functionality. ```javascript import { Instruckt } from 'instruckt'; new Instruckt({ endpoint: '/instruckt' }); ``` -------------------------------- ### AI Agent Workflow Integration Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt A pseudo-code implementation demonstrating how AI agents interact with the Instruckt MCP tools to fetch, process, and resolve UI annotations. ```php // AI Agent Workflow Example (pseudo-code for agent behavior) // Step 1: Get all pending annotations via MCP $response = mcp_call('instruckt.get_all_pending'); // Returns: { count: 2, annotations: [...] } // Step 2: For each annotation with a screenshot, fetch the image foreach ($response['annotations'] as $annotation) { if ($annotation['has_screenshot']) { $screenshot = mcp_call('instruckt.get_screenshot', [ 'annotation_id' => $annotation['id'] ]); // View the screenshot to understand the visual context } // Step 3: Use the annotation data to locate and fix the code // - element: tells you the CSS selector // - element_path: full DOM path // - framework.component: Laravel component name (e.g., 'pages::dashboard') // - css_classes: current CSS classes on the element // - comment: user's requested change // Step 4: After making the fix, resolve the annotation mcp_call('instruckt.resolve', [ 'annotation_id' => $annotation['id'] ]); // This removes the marker from the user's browser automatically } ``` -------------------------------- ### Configure MCP Server for AI Agents Source: https://github.com/joshcirre/instruckt-laravel/blob/main/README.md Manual configuration for the .mcp.json file to allow AI agents like Claude Code to interact with the instruckt MCP tools. ```json { "mcpServers": { "instruckt": { "command": "php", "args": ["artisan", "mcp:start", "instruckt"] } } } ``` -------------------------------- ### Use Instruckt Blade Toolbar Component Source: https://github.com/joshcirre/instruckt-laravel/blob/main/README.md Alternative to JS initialization, using the Blade component to load the toolbar with optional customization attributes. ```blade ``` -------------------------------- ### Configure Instruckt Laravel Settings Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt Presents the default configuration file (`config/instruckt.php`) for the Instruckt Laravel package. It outlines options for enabling/disabling the package, setting API route prefixes, defining middleware, specifying CDN URLs, customizing marker pin colors, setting keyboard shortcuts, and defining MCP tool name prefixes. ```php // config/instruckt.php return [ // Enable only in local environment by default 'enabled' => (bool) env('INSTRUCKT_ENABLED', env('APP_ENV') === 'local'), // API route prefix (routes will be /instruckt/annotations, etc.) 'route_prefix' => env('INSTRUCKT_ROUTE_PREFIX', 'instruckt'), // Middleware for API routes - use 'web' for session, add 'auth' to require login 'middleware' => explode(',', env('INSTRUCKT_MIDDLEWARE', 'api')), // Override JS source with pinned CDN version 'cdn_url' => env('INSTRUCKT_CDN_URL', null), // Example: 'https://cdn.jsdelivr.net/npm/instruckt@0.1.0/dist/instruckt.iife.js' // Marker pin colors (CSS color strings) 'colors' => [ 'default' => '#6366f1', // indigo - standard annotations 'screenshot' => '#22c55e', // green - annotations with screenshots 'dismissed' => '#71717a', // gray - dismissed annotations ], // Keyboard shortcuts (single key characters) 'keys' => [ 'annotate' => 'a', // toggle annotation mode 'freeze' => 'f', // freeze page animations 'screenshot' => 'c', // region screenshot capture 'clearPage' => 'x', // clear annotations on current page ], // MCP tool name prefix 'mcp_prefix' => 'instruckt', ]; ``` -------------------------------- ### Store Class: Manage Annotations Programmatically (PHP) Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt Provides direct PHP access to manage annotations using the Store class. This includes creating new annotations with various details, retrieving all, pending, or specific annotations, and updating their status or other fields. Screenshots are automatically handled upon resolution or dismissal. ```php use Instruckt\Laravel\Store; // Create a new annotation $annotation = Store::createAnnotation([ 'url' => 'http://localhost:8000/dashboard', 'x' => 150.5, 'y' => 200.0, 'comment' => 'Please fix this layout issue', 'element' => 'div.card', 'element_path' => 'html > body > div#app > div.card', 'css_classes' => 'card shadow-lg p-4', 'nearby_text' => 'Dashboard Stats', 'intent' => 'fix', // Options: fix, change, question, approve 'severity' => 'important', // Options: blocking, important, suggestion 'framework' => ['component' => 'dashboard::stats', 'adapter' => 'livewire'], 'screenshot' => 'data:image/png;base64,iVBORw0KGgo...', // Optional base64 data URL ]); // Returns: ['id' => '01HWXYZ...', 'status' => 'pending', ...] // Get all annotations $all = Store::allAnnotations(); // Get only pending annotations $pending = Store::getPendingAnnotations(); // Get a specific annotation $annotation = Store::getAnnotation('01HWXYZ123ABC'); // Returns: array or null // Get annotation or throw 404 $annotation = Store::getAnnotationOrFail('01HWXYZ123ABC'); // Throws: 404 abort if not found // Update an annotation (allowed fields: status, comment, resolved_by, resolved_at, thread) $updated = Store::updateAnnotation('01HWXYZ123ABC', [ 'status' => 'resolved', 'resolved_by' => 'agent', 'resolved_at' => now()->toIso8601String(), ]); // Dismiss an annotation $dismissed = Store::updateAnnotation('01HWXYZ123ABC', [ 'status' => 'dismissed', ]); // Note: Screenshots are automatically deleted when status is 'resolved' or 'dismissed' ``` -------------------------------- ### Annotation Markdown Format Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt The structured markdown format used by Instruckt to represent UI feedback. This format captures element selectors, CSS classes, text content, and visual context for AI processing. ```markdown # UI Feedback: /dashboard ## 1. Change the heading text - Element: `h1.text-xl` in `pages::dashboard` - Classes: `text-xl font-bold` - Text: "Welcome" - Screenshot: `storage/app/_instruckt/screenshots/01HWXYZ123ABC.png` ## 2. Fix button alignment - Element: `button.btn-primary` in `forms::submit` - Classes: `btn btn-primary px-4 py-2` - Text: "Submit" - Intent: fix - Severity: blocking ``` -------------------------------- ### HTTP API - Create Annotation using cURL Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt This snippet demonstrates how to create a new annotation using the Instruckt HTTP API with cURL. It includes sample JSON payload with details like URL, coordinates, comment, element information, and an optional base64 encoded screenshot. The response shows the created annotation with a unique ID. ```bash # Create a new annotation curl -X POST http://localhost:8000/instruckt/annotations \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -d '{ "url": "http://localhost:8000/dashboard", "x": 150.5, "y": 200.0, "comment": "Make this button larger and change color to blue", "element": "button.btn-primary", "element_path": "html > body > div#app > form > button", "css_classes": "btn btn-primary px-4 py-2", "nearby_text": "Submit Form", "selected_text": null, "bounding_box": {"x": 300, "y": 450, "width": 120, "height": 40}, "screenshot": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUg...", "intent": "change", "severity": "important", "framework": {"component": "forms::contact", "adapter": "livewire"} }' # Response (201 Created) { "id": "01HWXYZ789DEF", "url": "http://localhost:8000/dashboard", "x": 150.5, "y": 200.0, "comment": "Make this button larger and change color to blue", "element": "button.btn-primary", "element_path": "html > body > div#app > form > button", "css_classes": "btn btn-primary px-4 py-2", "nearby_text": "Submit Form", "selected_text": null, "bounding_box": {"x": 300, "y": 450, "width": 120, "height": 40}, "screenshot": "screenshots/01HWXYZ789DEF.png", "intent": "change", "severity": "important", "status": "pending", "framework": {"component": "forms::contact", "adapter": "livewire"}, "thread": [], "resolved_by": null, "resolved_at": null, "created_at": "2024-01-15T11:00:00+00:00", "updated_at": "2024-01-15T11:00:00+00:00" } ``` -------------------------------- ### POST /instruckt/annotations Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt Creates a new annotation associated with a specific UI element, including metadata and an optional screenshot. ```APIDOC ## POST /instruckt/annotations ### Description Create a new annotation with element details, comment, and optional screenshot. ### Method POST ### Endpoint /instruckt/annotations ### Request Body - **url** (string) - Required - The page URL where the annotation is placed - **x** (float) - Required - X coordinate - **y** (float) - Required - Y coordinate - **comment** (string) - Required - The annotation text - **element** (string) - Required - CSS selector of the target element - **element_path** (string) - Required - Full DOM path - **screenshot** (string) - Optional - Base64 encoded image string - **intent** (string) - Optional - Purpose of the annotation ### Response #### Success Response (201) - **id** (string) - The unique identifier of the created annotation - **status** (string) - Current status (e.g., pending) ### Response Example { "id": "01HWXYZ789DEF", "status": "pending" } ``` -------------------------------- ### PHP Store Class API Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt Direct PHP access methods for managing annotations within the Laravel application lifecycle. ```APIDOC ## PHP Class: Instruckt\Laravel\Store ### Description Use the Store class directly in PHP code to manage annotations programmatically. ### Methods - **createAnnotation(array $data)**: Create a new annotation - **allAnnotations()**: Retrieve all annotations - **getPendingAnnotations()**: Retrieve only pending annotations - **getAnnotation(string $id)**: Get specific annotation by ID - **updateAnnotation(string $id, array $data)**: Update annotation status or metadata ### Example ```php use Instruckt\Laravel\Store; $annotation = Store::createAnnotation([ 'url' => 'http://localhost:8000/dashboard', 'comment' => 'Fix layout', 'status' => 'pending' ]); ``` ``` -------------------------------- ### MCP Tool: Resolve Annotation Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt Marks an annotation as resolved, typically used after an AI agent has addressed the reported issue. ```APIDOC ## MCP Tool: instruckt.resolve ### Description Mark an annotation as resolved after fixing the issue. ### Method MCP Tool Call ### Endpoint instruckt.resolve ### Parameters #### Request Body - **annotation_id** (string) - Required - The ID of the annotation to resolve ### Request Example { "tool": "instruckt.resolve", "arguments": { "annotation_id": "01HWXYZ123ABC" } } ``` -------------------------------- ### Uninstall Instruckt Laravel Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt Commands to remove the Instruckt package from a Laravel project. Includes options for interactive removal, forced removal, and preserving specific configuration or dependency files. ```bash # Interactive uninstall - shows what will be removed and asks for confirmation php artisan instruckt:uninstall # Force uninstall without confirmation php artisan instruckt:uninstall --force # Keep specific components php artisan instruckt:uninstall --keep-config # Keep config/instruckt.php php artisan instruckt:uninstall --keep-npm # Keep npm package installed # Then remove the Composer package composer remove joshcirre/instruckt-laravel --dev ``` -------------------------------- ### PATCH /instruckt/annotations/{id} Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt Updates the status, comment, or resolution state of an existing annotation. ```APIDOC ## PATCH /instruckt/annotations/{id} ### Description Update an annotation's status, comment, or mark it as resolved/dismissed. ### Method PATCH ### Endpoint /instruckt/annotations/{id} ### Parameters #### Path Parameters - **id** (string) - Required - The unique ID of the annotation ### Request Body - **status** (string) - Optional - New status (e.g., resolved, dismissed) - **comment** (string) - Optional - Updated comment text ### Response #### Success Response (200) - **id** (string) - The ID of the updated annotation - **status** (string) - The updated status ### Response Example { "id": "01HWXYZ123ABC", "status": "resolved", "resolved_at": "2024-01-15T12:00:00+00:00" } ``` -------------------------------- ### MCP Tool: Resolve Annotation (PHP) Source: https://context7.com/joshcirre/instruckt-laravel/llms.txt Marks an annotation as resolved after an AI agent has addressed the issue. This function requires the annotation_id. A successful call returns the updated annotation status, while an unsuccessful call might indicate an issue with the annotation ID. ```php // MCP Tool: instruckt.resolve // Description: Mark an annotation as resolved after fixing the issue. // Parameters: // - annotation_id (string, required): The annotation ID to resolve // Example MCP call { "tool": "instruckt.resolve", "arguments": { "annotation_id": "01HWXYZ123ABC" } } // Success response { "ok": true, "annotation": { "id": "01HWXYZ123ABC", "status": "resolved", "resolved_by": "agent", "resolved_at": "2024-01-15T12:30:00+00:00", "updated_at": "2024-01-15T12:30:00+00:00" } } ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.