Shopify / cli

Build apps, themes, and hydrogen storefronts for Shopify
https://shopify.dev
MIT License
404 stars 122 forks source link

[Bug]: Command theme dev doesn't show link to theme editor #4237

Closed mdiniz closed 1 month ago

mdiniz commented 1 month ago

Please confirm that you have:

In which of these areas are you experiencing a problem?

Theme

Expected behavior

When I run shopify theme dev --store mystore.myshopify.com, 3 links should be shown:

  1. Preview your theme
  2. Customize your theme at the theme editor
  3. Share your theme preview

Actual behavior

The 2nd link "Customize your theme at the theme editor" is not shown.

As a workaround I can see the theme ID as a parameter on the 3rd link, and then can create my only link like https://mystore.myshopify.com/admin/themes/1234567890/editor

On the verbose output below I set the shop URL as mystore.myshopify.com

Verbose output

2024-07-25T14:52:27.631Z: Running command theme dev
2024-07-25T14:52:27.651Z: Ensuring that the user is authenticated with the Theme API with the following scopes:
[]

2024-07-25T14:52:27.651Z: Ensuring that the user is authenticated with the Admin API with the following scopes for the store mystore.myshopify.com:
[]

2024-07-25T14:52:27.652Z: Getting session store...
2024-07-25T14:52:27.655Z: Validating existing session against the scopes:
[
  "openid",
  "https://api.shopify.com/auth/shop.admin.graphql",
  "https://api.shopify.com/auth/shop.admin.themes",
  "https://api.shopify.com/auth/partners.collaborator-relationships.readonly",
  "https://api.shopify.com/auth/shop.storefront-renderer.devtools",
  "https://api.shopify.com/auth/partners.app.cli.access",
  "https://api.shopify.com/auth/destinations.readonly"
]
For applications:
{
  "adminApi": {
    "scopes": [],
    "storeFqdn": "mystore.myshopify.com"
  }
}

2024-07-25T14:52:27.656Z: Sending Identity Introspection request to URL: https://accounts.shopify.com/oauth/introspection
2024-07-25T14:52:27.657Z: Sending POST request to URL https://accounts.shopify.com/oauth/introspection
With request headers:
 - User-Agent: Shopify CLI; v=3.64.1
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: linux
 - Content-Type: application/json

2024-07-25T14:52:27.900Z: Request to https://accounts.shopify.com/oauth/introspection completed in 225 ms
With response headers:
 - cache-control: no-cache, no-store, private, must-revalidate, max-age=0
 - content-type: application/json; charset=utf-8
 - etag: W/"e1a0c47495ca91ac14ab3ea39be352b0"
 - x-request-id: aef03358-7332-4fa0-b4fa-3a48b856e5fd-1721919147

2024-07-25T14:52:27.905Z: The identity token is valid: true
2024-07-25T14:52:27.906Z: 
The validation of the token for application/identity completed with the following results:
- It's expired: false
- It's invalid in identity: false

2024-07-25T14:52:27.906Z: The current session is valid but needs refresh. Refreshing...
2024-07-25T14:52:27.908Z: Sending POST request to URL https://accounts.shopify.com/oauth/token?grant_type=refresh_token&access_token=atkn_CjQIrsaJtQYQzv6JtQZSJggBEhDwz9fjV_lBgK5tiPDNh-klGhBXVWkN7b9KKqXP-7Meg6WDEkAPIRpWWkJnXbQ0DbmF_Tyc5qopWYcuHAvh5qAHxzrfejgqwWHGf7VvIwXbUzZiZQLjMPtOMBNBE1aCk0wuDpQM&refresh_token=atkn_CiEIrsaJtQYQruCntgaiARIKEFdVaQ3tv0oqpc_7sx6DpYMSQE37mvhgt-SYVq-AiGWWfv0C3cvcRWQLRKGCEO_9EX9cGKagdsLKrApcsNxMVtl4Ky5pSg9--dSU14WlRUOXbAc&client_id=fbdb2649-e327-4907-8f67-908d24cfd7e3
With request headers:
 - User-Agent: Shopify CLI; v=3.64.1
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: linux
 - Content-Type: application/json

2024-07-25T14:52:28.256Z: Request to https://accounts.shopify.com/oauth/token?grant_type=refresh_token&access_token=atkn_CjQIrsaJtQYQzv6JtQZSJggBEhDwz9fjV_lBgK5tiPDNh-klGhBXVWkN7b9KKqXP-7Meg6WDEkAPIRpWWkJnXbQ0DbmF_Tyc5qopWYcuHAvh5qAHxzrfejgqwWHGf7VvIwXbUzZiZQLjMPtOMBNBE1aCk0wuDpQM&refresh_token=atkn_CiEIrsaJtQYQruCntgaiARIKEFdVaQ3tv0oqpc_7sx6DpYMSQE37mvhgt-SYVq-AiGWWfv0C3cvcRWQLRKGCEO_9EX9cGKagdsLKrApcsNxMVtl4Ky5pSg9--dSU14WlRUOXbAc&client_id=fbdb2649-e327-4907-8f67-908d24cfd7e3 completed in 346 ms
With response headers:
 - cache-control: no-cache, no-store, private, must-revalidate, max-age=0
 - content-type: application/json; charset=utf-8
 - etag: W/"c2dd5d0551cb4824d0575e6defa5f69d"
 - x-request-id: 980ecfe4-e911-4d42-9009-f77ce599de02-1721919147

2024-07-25T14:52:28.262Z: Sending POST request to URL https://accounts.shopify.com/oauth/token?grant_type=urn%3Aietf%3Aparams%3Aoauth%3Agrant-type%3Atoken-exchange&requested_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&subject_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&client_id=fbdb2649-e327-4907-8f67-908d24cfd7e3&audience=271e16d403dfa18082ffb3d197bd2b5f4479c3fc32736d69296829cbb28d41a6&scope=https%3A%2F%2Fapi.shopify.com%2Fauth%2Fpartners.app.cli.access&subject_token=****
With request headers:
 - User-Agent: Shopify CLI; v=3.64.1
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: linux
 - Content-Type: application/json

2024-07-25T14:52:28.263Z: Sending POST request to URL https://accounts.shopify.com/oauth/token?grant_type=urn%3Aietf%3Aparams%3Aoauth%3Agrant-type%3Atoken-exchange&requested_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&subject_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&client_id=fbdb2649-e327-4907-8f67-908d24cfd7e3&audience=ee139b3d-5861-4d45-b387-1bc3ada7811c&scope=https%3A%2F%2Fapi.shopify.com%2Fauth%2Fshop.storefront-renderer.devtools&subject_token=****
With request headers:
 - User-Agent: Shopify CLI; v=3.64.1
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: linux
 - Content-Type: application/json

2024-07-25T14:52:28.263Z: Sending POST request to URL https://accounts.shopify.com/oauth/token?grant_type=urn%3Aietf%3Aparams%3Aoauth%3Agrant-type%3Atoken-exchange&requested_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&subject_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&client_id=fbdb2649-e327-4907-8f67-908d24cfd7e3&audience=32ff8ee5-82b8-4d93-9f8a-c6997cefb7dc&scope=https%3A%2F%2Fapi.shopify.com%2Fauth%2Fdestinations.readonly&subject_token=****
With request headers:
 - User-Agent: Shopify CLI; v=3.64.1
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: linux
 - Content-Type: application/json

2024-07-25T14:52:28.263Z: Sending POST request to URL https://accounts.shopify.com/oauth/token?grant_type=urn%3Aietf%3Aparams%3Aoauth%3Agrant-type%3Atoken-exchange&requested_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&subject_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&client_id=fbdb2649-e327-4907-8f67-908d24cfd7e3&audience=7ee65a63608843c577db8b23c4d7316ea0a01bd2f7594f8a9c06ea668c1b775c&scope=https%3A%2F%2Fapi.shopify.com%2Fauth%2Fshop.admin.graphql+https%3A%2F%2Fapi.shopify.com%2Fauth%2Fshop.admin.themes+https%3A%2F%2Fapi.shopify.com%2Fauth%2Fpartners.collaborator-relationships.readonly&subject_token=****&destination=https%3A%2F%2Fmystore.myshopify.com%2Fadmin
With request headers:
 - User-Agent: Shopify CLI; v=3.64.1
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: linux
 - Content-Type: application/json

2024-07-25T14:52:28.562Z: Request to https://accounts.shopify.com/oauth/token?grant_type=urn%3Aietf%3Aparams%3Aoauth%3Agrant-type%3Atoken-exchange&requested_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&subject_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&client_id=fbdb2649-e327-4907-8f67-908d24cfd7e3&audience=ee139b3d-5861-4d45-b387-1bc3ada7811c&scope=https%3A%2F%2Fapi.shopify.com%2Fauth%2Fshop.storefront-renderer.devtools&subject_token=**** completed in 296 ms
With response headers:
 - cache-control: no-cache, no-store, private, must-revalidate, max-age=0
 - content-type: application/json; charset=utf-8
 - etag: W/"f1aecad55fbfd8380b386f222e0c0a5e"
 - x-request-id: 3ec1702d-e13e-40a5-a10b-d2ec8d235a56-1721919148

2024-07-25T14:52:28.565Z: Request to https://accounts.shopify.com/oauth/token?grant_type=urn%3Aietf%3Aparams%3Aoauth%3Agrant-type%3Atoken-exchange&requested_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&subject_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&client_id=fbdb2649-e327-4907-8f67-908d24cfd7e3&audience=32ff8ee5-82b8-4d93-9f8a-c6997cefb7dc&scope=https%3A%2F%2Fapi.shopify.com%2Fauth%2Fdestinations.readonly&subject_token=**** completed in 298 ms
With response headers:
 - cache-control: no-cache, no-store, private, must-revalidate, max-age=0
 - content-type: application/json; charset=utf-8
 - etag: W/"ab8fae8ba13580e42e41de5badb3fcce"
 - x-request-id: 46b6874a-cf15-4ef8-962e-de6e2569fc9e-1721919148

2024-07-25T14:52:28.568Z: Request to https://accounts.shopify.com/oauth/token?grant_type=urn%3Aietf%3Aparams%3Aoauth%3Agrant-type%3Atoken-exchange&requested_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&subject_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&client_id=fbdb2649-e327-4907-8f67-908d24cfd7e3&audience=271e16d403dfa18082ffb3d197bd2b5f4479c3fc32736d69296829cbb28d41a6&scope=https%3A%2F%2Fapi.shopify.com%2Fauth%2Fpartners.app.cli.access&subject_token=**** completed in 303 ms
With response headers:
 - cache-control: no-cache, no-store, private, must-revalidate, max-age=0
 - content-type: application/json; charset=utf-8
 - etag: W/"d15179f6d208d63716dda8b058c6eb9e"
 - x-request-id: c4e000f5-e8bd-4c6b-9628-5b5008d5e9f5-1721919148

2024-07-25T14:52:28.574Z: Request to https://accounts.shopify.com/oauth/token?grant_type=urn%3Aietf%3Aparams%3Aoauth%3Agrant-type%3Atoken-exchange&requested_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&subject_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&client_id=fbdb2649-e327-4907-8f67-908d24cfd7e3&audience=7ee65a63608843c577db8b23c4d7316ea0a01bd2f7594f8a9c06ea668c1b775c&scope=https%3A%2F%2Fapi.shopify.com%2Fauth%2Fshop.admin.graphql+https%3A%2F%2Fapi.shopify.com%2Fauth%2Fshop.admin.themes+https%3A%2F%2Fapi.shopify.com%2Fauth%2Fpartners.collaborator-relationships.readonly&subject_token=****&destination=https%3A%2F%2Fmystore.myshopify.com%2Fadmin completed in 306 ms
With response headers:
 - cache-control: no-cache, no-store, private, must-revalidate, max-age=0
 - content-type: application/json; charset=utf-8
 - etag: W/"ae58eac83355186b500cda08d2dc6040"
 - x-request-id: 7923e630-54cc-4d3a-879d-f8d111e0aed1-1721919148

2024-07-25T14:52:28.577Z: Setting session store...
2024-07-25T14:52:28.591Z: Ensuring that the user is authenticated with the Storefront API with the following scopes:
[]

2024-07-25T14:52:28.591Z: Getting session store...
2024-07-25T14:52:28.593Z: Validating existing session against the scopes:
[
  "openid",
  "https://api.shopify.com/auth/shop.admin.graphql",
  "https://api.shopify.com/auth/shop.admin.themes",
  "https://api.shopify.com/auth/partners.collaborator-relationships.readonly",
  "https://api.shopify.com/auth/shop.storefront-renderer.devtools",
  "https://api.shopify.com/auth/partners.app.cli.access",
  "https://api.shopify.com/auth/destinations.readonly"
]
For applications:
{
  "storefrontRendererApi": {
    "scopes": []
  }
}

2024-07-25T14:52:28.594Z: Sending Identity Introspection request to URL: https://accounts.shopify.com/oauth/introspection
2024-07-25T14:52:28.594Z: Sending POST request to URL https://accounts.shopify.com/oauth/introspection
With request headers:
 - User-Agent: Shopify CLI; v=3.64.1
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: linux
 - Content-Type: application/json

2024-07-25T14:52:28.809Z: Request to https://accounts.shopify.com/oauth/introspection completed in 212 ms
With response headers:
 - cache-control: no-cache, no-store, private, must-revalidate, max-age=0
 - content-type: application/json; charset=utf-8
 - etag: W/"64139127ff19497ce06f1ad95791acd1"
 - x-request-id: 7ee2f6e3-90d8-4785-8ec4-630bdc9132bf-1721919148

2024-07-25T14:52:28.811Z: The identity token is valid: true
2024-07-25T14:52:28.811Z: 
The validation of the token for application/identity completed with the following results:
- It's expired: false
- It's invalid in identity: false

2024-07-25T14:52:28.822Z: 
Running system process:
  · Command: ruby -v
  · Working directory: /home/marcelo/store/code/shopify/hh-on-impulse

2024-07-25T14:52:28.887Z: 
Running system process:
  · Command: bundle -v
  · Working directory: /home/marcelo/store/code/shopify/hh-on-impulse

2024-07-25T14:52:29.083Z: Reading the content of file at /home/marcelo/.nvm/versions/node/v20.16.0/lib/node_modules/@shopify/cli/dist/assets/cli-ruby/Gemfile...
2024-07-25T14:52:29.091Z: 
Running system process:
  · Command: bundle install
  · Working directory: /home/marcelo/.nvm/versions/node/v20.16.0/lib/node_modules/@shopify/cli/dist/assets/cli-ruby

2024-07-25T14:52:29.426Z: 
Running system process:
  · Command: bundle exec ruby /home/marcelo/.nvm/versions/node/v20.16.0/lib/node_modules/@shopify/cli/dist/assets/cli-ruby/bin/shopify theme token --admin atkn_Cp8DCKzNibUGEMyFirUGYpADCAESEOVr_TDvwEwWklK3PZGJH10aqAFodHRwczovL2FwaS5zaG9waWZ5LmNvbS9hdXRoL3BhcnRuZXJzLmNvbGxhYm9yYXRvci1yZWxhdGlvbnNoaXBzLnJlYWRvbmx5IGh0dHBzOi8vYXBpLnNob3BpZnkuY29tL2F1dGgvc2hvcC5hZG1pbi5ncmFwaHFsIGh0dHBzOi8vYXBpLnNob3BpZnkuY29tL2F1dGgvc2hvcC5hZG1pbi50aGVtZXMgDSinUzIQz5ruW1IORm6YN5HTMFoQyzokZDAyNmQ2YTktNzA2ZC00MGRlLTlmNDctYjc4YTg3YmVhNzJlQgdBY2NvdW50ShAElrYPNPVLZ6MkNhdurleBUlN7InN1YiI6ImZiZGIyNjQ5LWUzMjctNDkwNy04ZjY3LTkwOGQyNGNmZDdlMyIsImlzcyI6Imh0dHBzOi8vYWNjb3VudHMuc2hvcGlmeS5jb20ifWIQf6yZMVnaRreOS4gSn5Zz22oQvbhOdndhTQGayDi4SJmNUxJA7HQM0_C4dSLn7BUYbKUhswDgN8va4G0vN-pQPXe0MAaGwnG9-Wnfn2_row29bnZDepqDySeHtAj1aP5VKW7dDA --sfr atkn_CqMCCKzNibUGEMyFirUGYpQCCAESENKM73EziUQqgoO0avsZbVIaPmh0dHBzOi8vYXBpLnNob3BpZnkuY29tL2F1dGgvc2hvcC5zdG9yZWZyb250LXJlbmRlcmVyLmRldnRvb2xzINhSKKdTOiRkMDI2ZDZhOS03MDZkLTQwZGUtOWY0Ny1iNzhhODdiZWE3MmVCB0FjY291bnRKEASWtg809UtnoyQ2F26uV4FSU3sic3ViIjoiZmJkYjI2NDktZTMyNy00OTA3LThmNjctOTA4ZDI0Y2ZkN2UzIiwiaXNzIjoiaHR0cHM6Ly9hY2NvdW50cy5zaG9waWZ5LmNvbSJ9YhB_rJkxWdpGt45LiBKflnPbahC9uE52d2FNAZrIOLhImY1TEkBfTSMp5vxHGfH-EpTF6uWFv3IwfvMzLlDLdJMUfZmRI5aqO1_OOOBoAvJY_lvK95VPIr4Np9xmN_xpPwFFTaMG
  · Working directory: /home/marcelo/store/code/shopify/hh-on-impulse

2024-07-25T14:52:29.960Z: Getting development theme...
2024-07-25T14:52:30.323Z: Request to https://mystore.myshopify.com/admin/api/unstable/themes/163648897289.json?fields=id%2Cname%2Crole%2Cprocessing completed in 356 ms
With response headers:
 - content-type: application/json; charset=utf-8
 - x-request-id: be347956-93d8-4f26-b161-3a718ddf0253-1721919150

╭─ success ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│                                                                                                                                                                                  │
│  Preview your theme                                                                                                                                                              │
│    • http://127.0.0.1:9292                                                                                                                                                       │
│                                                                                                                                                                                  │
│  Next steps                                                                                                                                                                      │
│    • Customize your theme at the theme editor                                                                                                                                    │
│    • Share your theme preview (https://mystore.myshopify.com/?preview_theme_id=163648897289)                                                                                │
│                                                                                                                                                                                  │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

2024-07-25T14:52:30.392Z: 
Running system process:
  · Command: ruby -v
  · Working directory: /home/marcelo/store/code/shopify/hh-on-impulse

2024-07-25T14:52:30.442Z: 
Running system process:
  · Command: bundle -v
  · Working directory: /home/marcelo/store/code/shopify/hh-on-impulse

2024-07-25T14:52:30.647Z: Reading the content of file at /home/marcelo/.nvm/versions/node/v20.16.0/lib/node_modules/@shopify/cli/dist/assets/cli-ruby/Gemfile...
2024-07-25T14:52:30.655Z: 
Running system process:
  · Command: bundle install
  · Working directory: /home/marcelo/.nvm/versions/node/v20.16.0/lib/node_modules/@shopify/cli/dist/assets/cli-ruby

2024-07-25T14:52:31.007Z: 
Running system process:
  · Command: bundle exec ruby /home/marcelo/.nvm/versions/node/v20.16.0/lib/node_modules/@shopify/cli/dist/assets/cli-ruby/bin/shopify theme serve /home/marcelo/store/code/shopify/hh-on-impulse --live-reload hot-reload --theme 163648897289 --overwrite-json undefined
  · Working directory: /home/marcelo/store/code/shopify/hh-on-impulse

DEBUG GET https://mystore.myshopify.com/admin/api/unstable/themes.json with request_id: c273fd03-750c-48ae-883e-9e0178071a74-1721919151
* Syncing theme #163648897289 on mystore.myshopify.com
DEBUG GET https://mystore.myshopify.com/admin/api/unstable/themes/163648897289/assets.json with request_id: b5183388-571e-46de-8647-320e15ca1749-1721919151
DEBUG [BulkJob #1960] job request: size=2, bytesize=91999                                                                                                                                                                                                                  50% 
DEBUG PUT https://mystore.myshopify.com/admin/api/unstable/themes/163648897289/assets/bulk.json with request_id: 65bcaf96-11ea-4676-bec7-7181a13b8bb7-1721919152
DEBUG [BulkJob #1960] bulk rest_request time: 724.607399ms
DEBUG [BulkJob #1960] job response: http_status=207
DEBUG [BulkJob #1960] bulk item success (item=templates/product.gp-template-bk-default.json)
DEBUG [BulkJob #1960] bulk item success (item=templates/product.json)                                                                                                                                                                                                      100%
DEBUG [Bulk] shutdown, remaining_items=0                                                                                                                                                                                                                                   100%
                                                                                                                                                                                                                                                                           100%
[2024-07-25 16:52:33] INFO  WEBrick 1.7.0
[2024-07-25 16:52:33] INFO  ruby 3.1.2 (2022-04-12) [x86_64-linux]
[2024-07-25 16:52:33] INFO  WEBrick::HTTPServer#start: pid=30707 port=9292

Reproduction steps

  1. Run shopify theme dev --store mystore.myshopify.com
  2. Wait for syncing to finish
  3. See that the 2nd link "Customize your theme at the theme editor" is not present

Operating System

Ubuntu 20.04

Shopify CLI version (check your project's package.json if you're not sure)

3.64.1

Shell

bash

Node version (run node -v if you're not sure)

v20.16.0

What language and version are you using in your application?

Not applicable

mdiniz commented 1 month ago

This was report on 14.11.2023 on the community forum: https://community.shopify.com/c/shopify-design/new-shopify-cli-is-not-giving-me-the-editor-link-in-linux/m-p/2313095

It's also a Linux user, so this problem might be restricted to Linux

lukeh-shopify commented 1 month ago

👋🏻 Hey @mdiniz, thanks for the report. What terminal are you using? The CLI will not render hyperlinks if the terminal does not support them. This behaviour you're seeing is expected for the CLI.

mgmanzella commented 1 month ago

closing as wont fix since this is expected behavior for the CLI

mdiniz commented 3 weeks ago

@lukeh-shopify @mgmanzella I use xfce4-terminal 0.8.9.1. Hyperlinks are supported. On the "Verbose output" that I provided, the link "Share your theme preview" can be clicked as usual.

Please reopen the issue as the current behaviour is not as expected. Thank you.

karreiro commented 2 weeks ago

👋 Hey @mdiniz,

Terminal emulators like Kitty, which don't support hyperlinks, render Shopify CLI links like this:

Screenshot 2024-08-19 at 08 46 18

(as we may notice, the links are listed below -- they are still clickable, but the link needs to explicitly appear there to work)

Terminal emulators like the one on VS Code, which support hyperlinks, display clickable links. These links are not rendered, but users can interact with them, as shown in the GIF below:

demo-link-clickable

Please let us know if we're missing something. Thank you for reporting this!