expose icon indicating copy to clipboard operation
expose copied to clipboard

[Bug]: getting LM Studio to work with expose instead of ngrok

Open goellner opened this issue 5 months ago • 0 comments

System architecture

Mac, Intel (x86)

PHP Version

No response

Bug description

I am trying to use expose instead of ngrok to share a local AI model with Cursor. but when i click verify in Cursor, expose crashes with this error:

In UriFactory.php line 109:

no class registered for scheme "vscode-file"

Steps to reproduce

use expose instead of ngrok with this tutorial https://medium.com/@hyperfox_/run-cursor-ai-for-free-with-open-source-llm-55396c1411b1

Relevant log output

[2025-08-05 12:47:42] production.ERROR: no class registered for scheme "vscode-file" {"exception":"[object] (Laminas\\Uri\\Exception\\InvalidArgumentException(code: 0): no class registered for scheme \"vscode-file\" at phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/laminas/laminas-uri/src/UriFactory.php:109)
[stacktrace]
#0 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/laminas/laminas-http/src/Header/Origin.php(33): Laminas\\Uri\\UriFactory::factory('vscode-file://v...')
#1 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/laminas/laminas-http/src/Headers.php(495): Laminas\\Http\\Header\\Origin::fromString('origin: vscode-...')
#2 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/laminas/laminas-http/src/Headers.php(391): Laminas\\Http\\Headers->lazyLoadHeader(8)
#3 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/app/Logger/LoggedRequest.php(99): Laminas\\Http\\Headers->current()
#4 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/app/Logger/LoggedRequest.php(257): Expose\\Client\\Logger\\LoggedRequest->getRequestHeaders()
#5 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/app/Logger/LoggedRequest.php(50): Expose\\Client\\Logger\\LoggedRequest->getRequestId()
#6 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/app/Logger/RequestLogger.php(22): Expose\\Client\\Logger\\LoggedRequest->__construct('OPTIONS /v1/cha...', Object(Laminas\\Http\\Request))
#7 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/app/Http/HttpClient.php(51): Expose\\Client\\Logger\\RequestLogger->logRequest('OPTIONS /v1/cha...', Object(Laminas\\Http\\Request))
#8 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/app/ProxyManager.php(107): Expose\\Client\\Http\\HttpClient->performRequest('OPTIONS /v1/cha...', Object(Ratchet\\Client\\WebSocket), Object(stdClass))
#9 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/app/ProxyManager.php(43): Expose\\Client\\ProxyManager->performRequest(Object(Ratchet\\Client\\WebSocket), 'OPTIONS /v1/cha...', Object(stdClass))
#10 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/evenement/evenement/src/EventEmitterTrait.php(143): Expose\\Client\\ProxyManager->{closure:{closure:Expose\\Client\\ProxyManager::createProxy():34}:37}(Object(Ratchet\\RFC6455\\Messaging\\Message), Object(Ratchet\\Client\\WebSocket))
#11 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/ratchet/pawl/src/WebSocket.php(72): Ratchet\\Client\\WebSocket->emit('message', Array)
#12 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/ratchet/rfc6455/src/Messaging/MessageBuffer.php(262): Ratchet\\Client\\WebSocket->{closure:Ratchet\\Client\\WebSocket::__construct():71}(Object(Ratchet\\RFC6455\\Messaging\\Message), Object(Ratchet\\RFC6455\\Messaging\\MessageBuffer))
#13 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/ratchet/rfc6455/src/Messaging/MessageBuffer.php(208): Ratchet\\RFC6455\\Messaging\\MessageBuffer->processData('\\x82~\\x03\\x1FOPTIONS /v1...')
#14 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/evenement/evenement/src/EventEmitterTrait.php(143): Ratchet\\RFC6455\\Messaging\\MessageBuffer->onData('\\x82~\\x03\\x1FOPTIONS /v1...')
#15 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/react/stream/src/Util.php(71): Evenement\\EventEmitter->emit('data', Array)
#16 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/evenement/evenement/src/EventEmitterTrait.php(143): React\\Stream\\Util::{closure:React\\Stream\\Util::forwardEvents():70}('\\x82~\\x03\\x1FOPTIONS /v1...')
#17 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/react/stream/src/DuplexResourceStream.php(209): Evenement\\EventEmitter->emit('data', Array)
#18 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/react/event-loop/src/StreamSelectLoop.php(246): React\\Stream\\DuplexResourceStream->handleData(Resource id #1393)
#19 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/react/event-loop/src/StreamSelectLoop.php(213): React\\EventLoop\\StreamSelectLoop->waitForStreamActivity(NULL)
#20 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/app/Factory.php(203): React\\EventLoop\\StreamSelectLoop->run()
#21 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/app/Commands/ShareCommand.php(118): Expose\\Client\\Factory->run()
#22 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/illuminate/container/BoundMethod.php(36): Expose\\Client\\Commands\\ShareCommand->handle()
#23 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/illuminate/container/Util.php(43): Illuminate\\Container\\BoundMethod::{closure:Illuminate\\Container\\BoundMethod::call():35}()
#24 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/illuminate/container/BoundMethod.php(95): Illuminate\\Container\\Util::unwrapIfClosure(Object(Closure))
#25 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/illuminate/container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod(Object(LaravelZero\\Framework\\Application), Array, Object(Closure))
#26 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/illuminate/container/Container.php(696): Illuminate\\Container\\BoundMethod::call(Object(LaravelZero\\Framework\\Application), Array, Array, NULL)
#27 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/illuminate/console/Command.php(213): Illuminate\\Container\\Container->call(Array)
#28 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/symfony/console/Command/Command.php(279): Illuminate\\Console\\Command->execute(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Illuminate\\Console\\OutputStyle))
#29 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/illuminate/console/Command.php(182): Symfony\\Component\\Console\\Command\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Illuminate\\Console\\OutputStyle))
#30 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/symfony/console/Application.php(1094): Illuminate\\Console\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#31 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/symfony/console/Application.php(342): Symfony\\Component\\Console\\Application->doRunCommand(Object(Expose\\Client\\Commands\\ShareCommand), Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#32 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/symfony/console/Application.php(193): Symfony\\Component\\Console\\Application->doRun(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#33 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/laravel-zero/foundation/src/Illuminate/Foundation/Console/Kernel.php(196): Symfony\\Component\\Console\\Application->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#34 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/vendor/laravel-zero/framework/src/Kernel.php(111): Illuminate\\Foundation\\Console\\Kernel->handle(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#35 phar:///Users/elektro/Library/Application Support/Herd/bin/expose/expose(34): LaravelZero\\Framework\\Kernel->handle(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#36 /Users/elektro/Library/Application Support/Herd/bin/expose(15): require('phar:///Users/e...')
#37 {main}
"} 

goellner avatar Aug 05 '25 12:08 goellner