វាគឺជាពេលដែលខ្ញុំបានសរសេរសៀវភៅ។ ខ្ញុំមានន័យថាអ្វីដែលខ្ញុំនឹងធ្វើ? អ្នកបានបង្ហាញ AI នៅលើសម្ភារៈមួយហើយវាត្រូវបានបាត់បង់អ្វីគ្រប់យ៉ាងដែលអ្នកត្រូវការ។ នេះ kinda បានកាត់បន្ថយការរីករាយសម្រាប់ខ្ញុំខ្ញុំបានបញ្ចប់ការសរសេរសៀវភៅដូចជា 10 សៀវភៅប៉ុន្តែមិនបានបោះពុម្ពសៀវភៅណាមួយរបស់ពួកគេទេ។ ទោះបីជាយ៉ាងណាក៏ដោយផ្នែកមួយនៃខ្ញុំបាននិយាយថាមនុស្សរីករាយក្នុងការអានអ្វីដែលបានធ្វើដោយមនុស្ស។ ដូច្នេះ AI មិននឹងធ្វើឱ្យអ្នកដំឡើងតាមការបណ្តុះបណ្តុះបណ្តុះបណ្តុះបណ្តុះបណ្តុះបណ្តុះបណ្តុះបណ្តុះបណ្តុះបណ្តុះបណ្តុះបណ្តុះប ដូចគ្នានេះខ្ញុំបានសរសេរអំពី AI ថ្ងៃនេះ (the irony ha) ។ វាត្រូវបានកាត់បន្ថយកញ្ចប់ថ្មីមួយ, Laravel Boost, ដែលជាមូលដ្ឋានដែលធ្វើឱ្យអ៊ីអ៊ីអ៊ីអ៊ីអ៊ីតមានតំលៃប្រសើរជាងមុន។ វាត្រូវបានធ្វើឱ្យវាត្រូវបានកាត់បន្ថយដោយធ្វើឱ្យវាត្រូវបានកាត់បន្ថយដោយផ្តល់ឱ្យវានូវច្បាប់និងបញ្ជីបន្ថែមដើម្បីអនុវត្ត។ ដោយសារតែវាជាការពិតប្រាកដថ្នាំសំខាន់បំផុតនៃ LLMs (ប្រហែលជាពីការប្រើប្រាស់ប្រចាំថ្ងៃរបស់ខ្ញុំ) គឺជាការឆ្លើយតបនិង . លោក Laravel សម្ភារៈ WTF គឺជា MCPs ខ្ញុំនឹងមិនចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែកចែក . context LLMs ត្រូវបានបណ្តុះបណ្តាលលើទិន្នន័យធំទូលំទូលាយ, និងទិន្នន័យទាំងនេះគឺជាតម្រូវការរបស់ពួកគេ។ ឧទាហរណ៍, ប្រសិនបើទិន្នន័យការបណ្តុះបណ្តាលគ្រាន់តែធ្វើឡើងដល់ឆ្នាំ 2023 ហើយអ្នកសួរអំពីពេលវេលាថ្ងៃនេះ, វានឹងមិនមានជម្រើស។ ដូច្នេះយើងធ្វើអ្វី? យើងអនុញ្ញាត LLMs ដើម្បីផ្តល់ឱ្យពួកគេនូវកំណត់បច្ចុប្បន្នតាមរយៈឧបករណ៍។ អ្នកអាចប្រើវាដោយមិនយល់ដឹងវាទេ។ សួរ LLM អំពីព័ត៌មានថ្មីបំផុតហើយអ្នកនឹងមើលឃើញ "ការស្វែងរកបណ្ដាញ" ។ វាគឺជាឧបករណ៍នៅក្នុងការប្រតិបត្តិការដែលផ្គត់ផ្គង់ទិន្នន័យថ្មីរបស់ AI ដូច្នេះវាអាចបំពេញអ្នក។ Neat ប៉ុន្តែ "ការស្វែងរកបណ្ដាញ" គឺគ្រាន់តែជាឧបករណ៍បណ្តុះបណ្តាល។ ប្រសិនបើអ្នកបានសួរវាអំពីការធ្វើតេស្ត Jira ថ្មីបំផុតរបស់អ្នកវានឹងមិនដឹង។ ហើយគិតអំពីវាអ្នកផ្គត់ផ្គង់ដូចជា OpenAI ឬ Anthropic មិនអាចបង្កើតឧបករណ៍សម្រាប់តម្រូវការទាំងអស់ដែលអាចធ្វើបាន។ ឧបករណ៍ដូច្នេះអ្នកអាចចង់ LLM របស់អ្នកដើម្បីស្វែងរកទិន្នន័យរបស់ក្រុមហ៊ុនរបស់អ្នក។ នេះគឺជាកន្លែងដែលគំនិតនៃការធ្វើតេស្តឧបករណ៍របស់អ្នក។ LLM អាចទូរស័ព្ទឧបករណ៍របស់អ្នកទាញយកទិន្នន័យដែលវាត្រូវការហើយបន្ទាប់មកឆ្លើយតប។ នៅតែប៉ុណ្ណោះ, ជាស្រស់ស្អាត។ ដូច្នេះ Anthropic បានបង្កើតប្រព័ន្ធប្រតិបត្តិការប្រព័ន្ធប្រតិបត្តិការប្រព័ន្ធប្រតិបត្តិការប្រព័ន្ធប្រតិបត្តិការ (MCP) ដើម្បីបញ្ជាក់ការនេះ។ វាត្រូវបានកំណត់គោលដៅអំពីរបៀបដែល LLMs ទូរស័ព្ទឧបករណ៍, របៀបដែលអ្នកផ្លាស់ប្តូរឧបករណ៍ក្នុងពួកគេ, និងរបៀបដែលពួកគេទទួលបានអាសយដ្ឋានច្រើនទៀត។ ដូច្នេះ, ប្រសិនបើអ្នកមិនបានដឹងអំពី MCPs, ដូច្នេះយើងគ្រាន់តែគ្របដណ្តប់ពួកគេ។ នៅក្នុងគោលដៅ, ពួកគេគឺគ្រាន់តែកម្រិតខ្ពស់ដែលអនុញ្ញាតឱ្យ LLMs ប្រើឧបករណ៍ (ដូចជាឧបករណ៍ "ការស្វែងរកបណ្តាញ") ដើម្បីទទួលបានអាសយដ្ឋានបន្ថែមទៀត។ ក្រុមហ៊ុន MCPs បានធ្វើការច្រើនជាងនេះ។ ក្រុមហ៊ុន MCPs បានធ្វើការច្រើនជាងនេះ។ និងឧបករណ៍ទាំងនេះអាចជាអ្វីគ្រប់យ៉ាង: ការទូរស័ព្ទ API, ការទូរស័ព្ទប្រព័ន្ធ, ការទូរស័ព្ទប្រព័ន្ធ, អ្វីគ្រប់យ៉ាង។ ប្រសិនបើពួកគេអាចផ្តល់នូវការឆ្លើយតបដល់ LLM, ម៉ូដែលអាចប្រើវាដើម្បីបញ្ចប់ការងារ។ ឥឡូវនេះអ្នកដឹងអំពី MCPs ។ អ្នកអាចអានបន្ថែមទៀតអំពីពួកគេ . ទីនេះ តើ Laravel Boost ជាអ្វី? ដូច្នេះ Laravel Boost គឺជាសេវាកម្ម MCP ដែលបង្ហាញនូវដំណាក់កាលនៃឧបករណ៍។ ឧបករណ៍ទាំងនេះដំណើរការនៅជុំវិញប្រព័ន្ធអេក្រែន Laravel ដូចជាការអានផ្លូវ, ការត្រួតពិនិត្យដំណាក់កាលឬការស្វែងរកឯកសារ Laravel ។ ដូច្នេះនៅពេលដែលអ្នកចង់ LLM ដើម្បីបញ្ចប់ SaaS ដែលមានកូដ vibe របស់អ្នកវាអាចបញ្ចប់ឧបករណ៍ដែលត្រូវប្រើ។ ទោះជាយ៉ាងណាក៏ដោយមិនមានអ្វីដែលធានាថាជា LLM អាចជាការស្លាប់ហើយគ្រាន់តែបាត់បង់ឧបករណ៍នេះដើម្បីបង្កើតវិធីដែលមិនមាន 🏽 ។ ហើយបន្ទាប់មកអ្នកជួសជុលការផ្លាស់ប្តូរ, ទទួលបានអារម្មណ៍, សូមអរគុណបន្ថែមទៀត, និងដោះស្រាយជាមួយនឹងការ "អរគុណអ្នកគឺជាការពិតណាស់" ។ ហើយបន្ទាប់មកអ្នកជួសជុលការផ្លាស់ប្តូរ, ទទួលបានអារម្មណ៍, សូមអរគុណបន្ថែមទៀត, និងដោះស្រាយជាមួយនឹងការ "អរគុណអ្នកគឺជាការពិតណាស់" ។ ខ្ញុំនឹងមិនបង្ហាញពីរបៀបដើម្បីដំឡើងវា; វាគឺជាអ្នកគ្រប់គ្រង នេះ a សត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វសត្វ រូបថត YouTube លក្ខណៈពិសេស Laracasts ខ្ញុំចង់បង្ហាញអ្នកពីរបៀបដើម្បី លោក Laravel បានកើនឡើង លទ្ធផល ហេតុអ្វី លោក Laravel បានបង្កើន? លទ្ធផល លទ្ធផល Boost អនុញ្ញាតឱ្យអ្នកផ្តល់នូវកម្មវិធីរបស់អ្នកនូវ "គោលបំណង" ដែលជាមូលដ្ឋានគឺជាការបង្ហាញនៃផលិតផលរបស់អ្នកដូច្នេះ AI អាចដឹងគោលបំណង។ ដូច្នេះប្រសិនបើអ្នកមានការបង្កើត SaaS អ្នកអាចសរសេរអ្វីដូចជា: កម្មវិធីនេះគឺជា SaaS ដែលផ្តល់សេវាកម្ម X ល។ កម្មវិធីនេះគឺជា SaaS ដែលផ្តល់សេវាកម្ម X ល។ អ្នកដឹងពីផលិតផលរបស់អ្នកល្អបំផុត។ សូមប្រាកដថាអ្នកបានបង្កើត Boost config: php artisan vendor:publish --tag=boost-config នៅពេលដែលអ្នកបានសរសេរឯកសារ config នេះគឺដូច្នេះ: <?php declare(strict_types=1); return [ /* |-------------------------------------------------------------------------- | Boost Master Switch |-------------------------------------------------------------------------- | | This option may be used to disable all Boost functionality, which | simply provides a single and convenient way to enable or disable | Boost's AI development tools. | */ 'enabled' => env('BOOST_ENABLED', true), /* |-------------------------------------------------------------------------- | Boost Browser Logs Watcher |-------------------------------------------------------------------------- | | The following option may be used to enable or disable the browser logs | watcher feature within Laravel Boost. The log watcher will read any | errors within the browser's console to give Boost better context. */ 'browser_logs_watcher' => env('BOOST_BROWSER_LOGS_WATCHER', true), ]; ដើម្បីបន្ថែមគោលបំណងនៃកម្មវិធីដែលយើងបាននិយាយអំពីការបញ្ចូលដំណោះស្រាយថ្មីនៅក្នុង config: // omitted for breivety 'purpose' => 'Describe your application purpose' ប្រសិនបើវាអាចធ្វើបាន, អ្នកនឹងត្រូវការធ្វើឱ្យប្រសិនបើអ្នកបានធ្វើឱ្យប្រសិនបើអ្នកបានធ្វើឱ្យប្រសិនបើអ្នកបានធ្វើឱ្យប្រសិនបើអ្នកបានធ្វើឱ្យប្រសិនបើអ្នកបានធ្វើឱ្យប្រសិនបើអ្នកបានធ្វើឱ្យប្រសិនបើអ្នកបានធ្វើឱ្យប្រសិនបើអ្នកបានធ្វើឱ្យប្រសិនបើអ្នកបានធ្វើឱ្យប្រសិនបើអ្នកបានធ្វើឱ្យប្រសិនបើអ្នកបានធ្វើឱ្យប្រសិនបើអ្នកអាចធ្វើឱ្យប្រសិនបើអ្នកមានប្រសិនបើអ្នកមានប្រសិនបើអ្នកមានប្រសិនបើអ្នកមានប្រសិនបើអ្នកមានប្រសិនបើអ្នកមានប្រសិនបើអ្នកមានប្រសិនបើអ្នកមានប្រសិទ្ធិភាព។ php artisan boost:install ក្នុងនាមជាអ្នកប្រើ Cursor អ្នកនឹងរកឃើញគោលបំណងរបស់អ្នក (ខ្ញុំចង់យើងទាំងអស់បានធ្វើ lol) ក្នុង , នៅក្នុងផ្នែក "សម្ភារៈមូលដ្ឋាន" ។ .cursor/rules/laravel-boost.mdc អតិបរមា ការបង្កើនឧបករណ៍ជាមួយនឹង 15+ ឧបករណ៍ប៉ុន្តែបើយោងតាមកម្មវិធីរបស់អ្នកអ្នកអាចមិនត្រូវការពួកគេទាំងអស់។ ប្រសិនបើអ្នកមានការបង្កើត API ស្អាតអ្នកមិនត្រូវការការ ហ្វេសប៊ូតូអ៊ីនធឺណិតបានកាត់បន្ថយការកាត់បន្ថយការកាត់បន្ថយការកាត់បន្ថយការកាត់បន្ថយការកាត់បន្ថយការកាត់បន្ថយការកាត់បន្ថយការកាត់បន្ថយការកាត់បន្ថយ និង នេះជាការមិនមានប្រសិទ្ធិភាព, LLM អាចគ្រាន់តែអាន configs ដោយផ្ទាល់ដោយគ្មានការហោះហើរតាមរយៈការហោះហើរទាំងនេះ. ដូច្នេះយើងគេចាត់បន្ថយពួកគេ. BrowserLogs GetConfig ListAvailableConfigKeys Tweak នេះ ការបញ្ជាក់: boost.php <?php use Laravel\Boost\Mcp\Tools\GetConfig; use Laravel\Boost\Mcp\Tools\BrowserLogs; use Laravel\Boost\Mcp\Tools\ListAvailableConfigKeys; // omitted for breivety 'mcp' => [ 'tools' => [ 'exclude' => [BrowserLogs::class, GetConfig::class, ListAvailableConfigKeys::class], ], ], ហ្វេសប៊ុក, 3 ឧបករណ៍បានបាត់បង់ និងដូចជាការបាត់បន្ថយឧបករណ៍អ្នកអាចបន្ថែមឧបករណ៍របស់អ្នក។ ដូច្នេះខ្ញុំចង់មានឧបករណ៍ដែលបានបញ្ចូលទាំងអស់នៃប្រវត្តិសាស្រ្តដែលបានចុះឈ្មោះនៅក្នុងកម្មវិធី។ ប្រសិនបើអ្នកកំពុងបាត់បន្ថយនៅក្នុងប្រព័ន្ធផ្សព្វផ្សាយរបស់អ្នក, នេះធ្វើឱ្យវាជាការងាយស្រួលសម្រាប់ LLM ដើម្បីរកឃើញប្រវត្តិសាស្រ្តដែលវាអាចបាត់បន្ថយដោយផ្អែកលើការបង្កើតប្រវត្តិសាស្រ្តបន្ថែមទៀតឬការបន្ថែមការសិក្សា។ នៅក្រោមកញ្ចក់នេះ Boost បានប្រើសម្រាប់កញ្ចប់ដំបូងថ្មី។ អ្នកអាចបង្កើតឧបករណ៍ថ្មីជាមួយនឹងការបង្កើតឧបករណ៍និងទាំងអស់នៃការរីករាយ។ អ្នកអាចបង្កើតឧបករណ៍ថ្មីជាមួយ: laravel/mcp php artisan make:mcp-tool ListEvents លេខកូដឧបករណ៍សម្រាប់ការបញ្ចុះបញ្ជីសកម្មភាពគឺដូចជា: <?php namespace App\Mcp\Tools; use Illuminate\Support\Facades\Artisan; use Laravel\Mcp\Server\Tool; use Laravel\Mcp\Server\Tools\Annotations\IsReadOnly; use Laravel\Mcp\Server\Tools\ToolInputSchema; use Laravel\Mcp\Server\Tools\ToolResult; use Symfony\Component\Console\Command\Command as CommandAlias; use Symfony\Component\Console\Output\BufferedOutput; #[IsReadOnly] class ListEvents extends Tool { public function description(): string { return 'List all available events defined in the application'; } public function schema(ToolInputSchema $schema): ToolInputSchema { return $schema; } /** * @param array<string> $arguments */ public function handle(array $arguments): ToolResult { $eventsOutput = $this->artisan('event:list'); return ToolResult::text($eventsOutput); } /** * @param array<string|bool> $options */ private function artisan(string $command, array $options = []): string { $output = new BufferedOutput; $result = Artisan::call($command, $options, $output); if ($result !== CommandAlias::SUCCESS) { return 'Failed to list routes: '.$output->fetch(); } return trim($output->fetch()); } } បន្ទាប់មកចុះឈ្មោះវានៅក្នុង, អ្នកបានគិតវា, ឯកសារ config: <?php use App\Mcp\Tools\ListEvents; use Laravel\Boost\Mcp\Tools\GetConfig; use Laravel\Boost\Mcp\Tools\BrowserLogs; use Laravel\Boost\Mcp\Tools\ListAvailableConfigKeys; // omitted for breivty 'mcp' => [ 'tools' => [ 'exclude' => [BrowserLogs::class, GetConfig::class, ListAvailableConfigKeys::class], 'include' => [ListEvents::class], // include the tool ], ], និងដូច្នេះ, អ្នកបានបន្ថែមឧបករណ៍ custom. ដំណឹងប្រាក់រង្វាន់: ការប្រើប្រាស់ MCP Server Boost បានមកជាមួយនឹងអ្នកត្រួតពិនិត្យ, ដូច្នេះអ្នកអាចធ្វើតេស្តឧបករណ៍ថ្មីដោយឥតគិតថ្លៃ។ គ្រាន់តែដំណើរការ: ដំណឹងប្រាក់រង្វាន់: ការប្រើប្រាស់ MCP Server Boost បានមកជាមួយនឹងអ្នកត្រួតពិនិត្យ, ដូច្នេះអ្នកអាចធ្វើតេស្តឧបករណ៍ថ្មីដោយឥតគិតថ្លៃ។ គ្រាន់តែដំណើរការ: php artisan mcp:inspector laravel-boost អ្នកនឹងមើលទាំងអស់នៃឧបករណ៍ដែលអាចរកបាន, ការធ្វើតេស្តរបស់ពួកគេ, ល។ មិនទូរស័ព្ទមកខ្ញុំ, មិនចូលទៅក្នុងផ្ទះរបស់ខ្ញុំ ប្រសិនបើអ្នកកំពុងប្រើការរចនាសម្ព័ន្ធ monolith modular ជាមួយនឹង កុំព្យូទ័រ Boost បានត្រួតពិនិត្យតែ enums, models, and controllers ក្នុងខាងក្នុង . modules/ app/ វាគឺជាការល្អប្រសើរណាស់ប្រសិនបើមានវិធីសាស្រ្តផ្ទាល់ខ្លួនដើម្បីកែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែ ទាំងអស់ដែលអ្នកត្រូវធ្វើគឺ rebind ដោយ គោលបំណង របស់ អ្នក អ្នកដែលបាន scan (ឬទីផ្សារណាមួយ) Laravel\Boost\Install\GuidelineAssist GuidelineAssist modules/ គោលបំណងផ្ទាល់ខ្លួនរបស់អ្នកអាចមើលទៅដូច្នេះ: <?php declare(strict_types=1); namespace App\Support; use Illuminate\Database\Eloquent\Model; use Laravel\Boost\Install\GuidelineAssist; use ReflectionClass; use Symfony\Component\Finder\Finder; class CustomGuidelineAssist extends GuidelineAssist { public function __construct() { $this->modelPaths = $this->discover(fn ($reflection) => ($reflection->isSubclassOf(Model::class) && ! $reflection->isAbstract())); $this->controllerPaths = $this->discover(fn (ReflectionClass $reflection) => (stripos($reflection->getName(), 'controller') !== false || stripos($reflection->getNamespaceName(), 'controller') !== false)); $this->enumPaths = $this->discover(fn ($reflection) => $reflection->isEnum()); } private function discover(callable $cb): array { $classes = []; if (empty(self::$classes)) { $finder = Finder::create() ->in([app_path(), base_path('modules')]) ->files() ->name('/[A-Z].*\.php$/'); foreach ($finder as $file) { $relativePath = $file->getRelativePathname(); $isModule = str_starts_with($file->getRealPath(), base_path('modules')); $className = $isModule ? 'Modules\\'.str_replace(['/', '.php'], ['\\', ''], $relativePath) : app()->getNamespace().str_replace(['/', '.php'], ['\\', ''], $relativePath); try { if ($this->fileHasClassLike($file->getRealPath()) && class_exists($className)) { self::$classes[$className] = $file->getRealPath(); } } catch (\Throwable) { // Ignore exceptions from class loading } } } foreach (self::$classes as $className => $path) { if ($cb(new ReflectionClass($className))) { $classes[$className] = $path; } } return $classes; } } វាគឺជាភាគច្រើននៃការស្រាវជ្រាវ parent() ជាមួយនឹងការធ្វើតេស្តតូច។ វាគឺជាចម្បងជាអ្នកចាស់ ជាមួយនឹងការ tweaks ទាប discover() ទោះជាយ៉ាងណាក៏ដោយអ្នកមិនចាំបាច់ទាញយកឧបករណ៍ "application-info" ពីអ្នកត្រួតពិនិត្យគួរឱ្យបង្ហាញនូវម៉ូដែលរបស់អ្នកទាំងអស់ដែលបានចុះបញ្ជីយ៉ាងត្រឹមត្រូវ។ នេះគឺ ប៉ុន្តែវាគឺជាការប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែប្រែ ប៉ុន្តែមិនចង់ដំណើរការនៅទីនេះ។ មាន MCPs សម្រាប់អ្វីគ្រប់យ៉ាង: GitHub, Sentry និង Linear ។ ពួកគេបន្ថែមតម្លៃ។ អ្នកអាចសាងសង់ MCP របស់អ្នកដោយខ្លួនឯងសម្រាប់ការរីករាយ។ ខ្ញុំមានមួយដែលមាន (ប្រសិនបើវាបានរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀបរៀប) បានចូលទៅក្នុង Air Fryer របស់ខ្ញុំ https://x.com/OussamaMater/status/1954648925320655213?embedable=true ទោះបីជាខ្ញុំនៅលើ AI នៅទីនេះ, ខ្ញុំបានប្រើ AI ដើម្បីត្រួតពិនិត្យភាសារបស់ខ្ញុំ. ការត្រួតពិនិត្យភាសារបស់ខ្ញុំនៅពេលដែលទទួលបានពាក់ព័ន្ធ, cool lol. Sorry AI, you do push me over the line sometimes. ទោះបីជាខ្ញុំនៅលើ AI នៅទីនេះ, ខ្ញុំបានប្រើ AI ដើម្បីត្រួតពិនិត្យភាសារបស់ខ្ញុំ. ការត្រួតពិនិត្យភាសារបស់ខ្ញុំនៅពេលដែលទទួលបានពាក់ព័ន្ធ, cool lol. Sorry AI, you do push me over the line sometimes.