Skip to main content
Cline is an open source coding agent that runs inside VS Code. It can send its requests to any OpenAI-compatible API. Enter your SinarCloud details in Cline’s settings, and Cline runs on SinarCloud models, charged to your balance. This guide was last checked with Cline 4.1.26.

Before you start

  • Create an API key for Cline and choose a model, as described in Before you connect. The base URL is https://ai.sinarcloud.com/v1. Cline takes these values in its settings, so you don’t need to set the SINARCLOUD_API_KEY environment variable.
  • Choose a model whose Model capabilities list Chat completions, Tool use, and Streaming. Cline streams every reply and gives the model tools to read files, edit code, and run commands.
1

Install Cline

In VS Code, open the Extensions view: click Extensions in the Activity Bar, or press Ctrl+Shift+X (Cmd+Shift+X on macOS). Search for Cline.In the results, find Cline, published by Cline, and click Install. Other results, such as Cline (Nightly), are different extensions.
The Extensions: Marketplace view in VS Code with Cline typed in the search box. The first result is Cline, published by Cline with a verified badge and described as an autonomous coding agent right in your IDE, with an Install button.

Cline in the Extensions view, ready to install

2

Open Cline

In the Activity Bar, click the Cline icon. You don’t need a Cline account.The first time you open Cline, it asks How will you use Cline? If you’ve set up Cline before, it opens the chat instead. Click the gear icon (Settings) at the top of the Cline panel, and fill in the same fields on the API Configuration page, starting with step 4.
VS Code with the Cline icon selected in the Activity Bar. The Cline panel, with its toolbar icons ending in the Settings gear, asks How will you use Cline? and lists the first options: Absolutely Free, which is selected, and ClinePass.

The Cline icon in the Activity Bar, and Cline's first question

3

Choose Bring my own API key

Select Bring my own API key, then click Continue at the bottom of the panel. Cline shows Configure your provider.
The Bring my own API key option selected. At the bottom of the Cline panel are the Continue and Login to Cline buttons and the note You can change this later in settings.

Bring my own API key selected, with Continue at the bottom of the panel

4

Choose OpenAI Compatible

In API Provider, type OpenAI Compatible, then select OpenAI Compatible in the list.
The Configure your provider form in Cline. OpenAI Compatible is typed in the API Provider field, and the list below it shows one match, OpenAI Compatible.

OpenAI Compatible in the API Provider list

5

Enter the base URL and your API key

  1. In Base URL, enter https://ai.sinarcloud.com/v1.
  2. In OpenAI Compatible API Key, paste your API key. Cline shows it as dots.
The Base URL box is short, so it can hide the end of the URL. To check the whole URL, click in the box and press End.Leave Custom Headers empty and the two Azure options cleared.
The Configure your provider form in Cline with API Provider set to OpenAI Compatible, Base URL set to https://ai.sinarcloud.com/v1, and the OpenAI Compatible API Key field showing dots, above the note that the key is stored locally and only used to make API requests from this extension.

The SinarCloud base URL and your API key

6

Choose the model

Once the base URL and key are filled in, Cline loads the model list from SinarCloud, and Model ID becomes a list. Open it and choose your model alias, such as deepseek/deepseek-v4-1-flash.If your model isn’t in the list, choose Use custom model ID… and paste the model alias. If Cline can’t load the list, Model ID stays a text box. Paste the alias there instead.
The Model ID list open in Cline, showing deepseek/deepseek-v4-1-flash, deepseek/deepseek-v4-1-flash-zdr, deepseek/deepseek-v4-flash, deepseek/deepseek-v4-flash-zdr, deepseek/deepseek-v4-pro and deepseek/deepseek-v4-pro-zdr, followed by Use custom model ID…

Choose your model in the Model ID list

7

Enter the model details

Cline doesn’t get the model’s limits from SinarCloud, so it starts with a context window of 128,000 tokens. Click MODEL CONFIGURATION to open it, and fill it in from the model’s details on the Models page:
  • Supports Images: keep it selected only if the model lists Image input or Vision.
  • Context Window Size: the model’s Context window (tokens), such as 1000000.
  • Max Output Tokens: the model’s Maximum output (tokens), such as 393216. Don’t enter a higher number, because SinarCloud refuses requests that ask for more output than the model allows.
  • Input Price / 1M tokens and Output Price / 1M tokens: leave them at 0. See What works differently.
The expanded MODEL CONFIGURATION section with Supports Images selected, Context Window Size 1000000, Max Output Tokens 393216, Input Price / 1M tokens and Output Price / 1M tokens at 0, and Temperature at 0.

MODEL CONFIGURATION filled in for deepseek/deepseek-v4-1-flash

8

Save the settings

Click Continue at the bottom of the form. Cline saves the settings and opens the chat. If you’re in Settings, click Done instead.To check the settings later, click the gear icon (Settings) at the top of the Cline panel. The API Configuration page shows the base URL, your key as dots, and the model.
VS Code with the Cline icon selected in the Activity Bar. Cline's Settings show the API Configuration page with a Done button, API Provider set to OpenAI Compatible, Base URL set to https://ai.sinarcloud.com/v1, the OpenAI Compatible API Key field showing dots, and Model ID set to deepseek/deepseek-v4-1-flash.

The saved settings on the API Configuration page

9

Start a task

Under the chat box, Cline shows the model it uses: openai-compat: followed by your model alias. Type a task, such as Add a GET /products/:id route to src/server.js, and press Enter.
The bottom of the Cline panel: the Auto-approve bar, the chat box with the task Add a GET /products/:id route to src/server.js typed in, and below it openai-compat:deepseek/deepseek-v4-1-flash next to the Plan and Act switch, with Act selected.

A task ready to send, with the SinarCloud model under the chat box

10

Find the requests in Usage

In the console, under AI, click Usage, then choose the key you created for Cline in the API key filter. Cline sends one request when you start a task, and another for each later step, such as your next message. Each request includes the conversation so far. A request appears once its charge is recorded, so click Refresh if you don’t see it yet.
Log & Usage page with the Date range, Model and API key filters, a Refresh button and five cards of totals, starting with Total charged and Total saved. Below them are the Log, Summary, Spending, Models and Tokens tabs, with the Log tab's Recent requests table showing a Show details button on each row.

The Usage page, with the API key filter at the top

Settings worth changing

  • Model ID: to switch models, choose another alias, then check MODEL CONFIGURATION. When you choose a new model, Cline copies the values from the model you used before. If Max Output Tokens is higher than the new model allows, every request fails until you lower it.
  • Max Output Tokens: if you leave it empty, Cline asks for up to 32,000 output tokens per reply. Set it to the model’s Maximum output (tokens) to allow longer replies.
  • Context Window Size: Cline shows how much of the context window a task has used at the top of the task.
Compare prices on the Models page before you choose a model, because every step of a task is a separate request.

What works differently

  • Cline’s cost estimate isn’t your charge. At the top of a task, Cline shows a cost in US dollars, worked out from the tokens used and the Input Price / 1M tokens and Output Price / 1M tokens you entered. With both at 0, it shows $0.0000. SinarCloud charges your balance in rupiah, so check Usage in the console to see what a task cost.
  • Prompt caching shows as No. Under ADVANCED, Cline lists Prompt Caching as No for OpenAI Compatible, and there’s no setting to turn it on. Requests work without it.
  • Web Search doesn’t apply. Web Search, under Feature Settings in Cline’s settings, is on by default. Cline doesn’t give the model a web search tool through OpenAI Compatible, so you don’t need to turn it off.
  • Images need a model with image input. Cline sends images you paste into a message, even when Supports Images is cleared. If the model doesn’t list Image input or Vision, SinarCloud refuses the request.
See Compatibility for details.

Troubleshooting

Cline shows errors from SinarCloud in the task, followed by the request ID and the Retry and Start New Task buttons. Include the request ID if you contact support.
Below this message, Cline shows Provider response: Invalid API key. The key in OpenAI Compatible API Key is missing, mistyped, expired, or revoked. Open Settings, paste your whole key again, click Done, and send your task again. If the key has expired or been revoked, create a new one.
The alias in Model ID doesn’t exist, the model isn’t available right now, or it doesn’t support chat completions. Cline adds that the model ID or base URL may be wrong. Open Settings, choose the model again in Model ID or copy its alias from the Models page, and check that Base URL is https://ai.sinarcloud.com/v1. Then check that the model’s Model capabilities list Chat completions.
Max Output Tokens under MODEL CONFIGURATION is higher than the model’s Maximum output (tokens). This often happens after you switch models, because Cline copies the value from the model you used before. Set Max Output Tokens to the model’s Maximum output (tokens) or lower, click Done, and send your task again.
A message in the task has an image, and the model doesn’t list Image input or Vision. Cline sends the image again with every later message in the task, so those fail too, even if you clear Supports Images. Click Start New Task and send your task without the image, or use a model that lists Image input or Vision.
SinarCloud refuses requests with HTTP 402 and this message when your balance is Rp 0 or below and you have no token credits for the model. Add balance, then send your task again.
For other problems, see Troubleshooting and Cline’s guide to OpenAI-compatible APIs.