nc://acedatacloud

v0.1.0Pinned
ThomSharkproviders/nodecode-acedatacloud: Ace Data Cloud's GPT-4.1 models, over the OpenAI chat wire, as a Nodecode provider. - a rewrite of AceDataCloud/AceDataCloudModelProviderHermes (MIT), credited to AceDataCloud4d1c285· 9 Nov1 commit
test1 filecell.lisp5.9 KBprovider.lisp4.2 KB

nodecode-acedatacloud

Ace Data Cloud: its GPT-4.1 models, over the OpenAI chat wire, as a Nodecode provider. A Nodecode rewrite of AceDataCloud/AceDataCloudModelProviderHermes by AceDataCloud.

It puts Ace Data Cloud in the model picker with the two models the original verified, gpt-4.1-mini and gpt-4.1, and nothing else out of the account's shared catalog. A turn's messages, tool schemas and tool results go to https://api.acedata.cloud/openai/chat/completions with your Ace key; the model listing asks the same base's /models.

Get it

Tell the agent "add the acedatacloud cell", or run nodecode add nc://acedatacloud.

Set it up

Make an API key in the Ace Data Cloud console, under Applications -- a General application's API Key, or one made for this integration under Manage Keys. Then either save it with /connect (pick Ace Data Cloud) or export it as ACEDATACLOUD_API_KEY in the environment Nodecode starts in. Check that the application has the chat service enabled and enough balance for a first call.

The section has two members, both optional:

"acedatacloud": {
  "base_url": "https://api.acedata.cloud/openai",  // where a chat round goes
  "timeout_seconds": 10                             // one model-listing fetch
}

base_url is for a relay in front of the service; leave it alone otherwise.

Use it

Pick Ace Data Cloud in /setup, /models or with nodecode chat --provider acedatacloud --model gpt-4.1-mini, and talk. Both models take tool calls, so the agent's evals, shell and file verbs work as they do on any other chat provider. Every call spends the Ace Data Cloud balance of the account the key belongs to; the cell shows no price, because Ace's own billing is the authority and the original's picker never claimed one either.

On a box with no key yet, the picker still offers the two models: it does not ask the endpoint until there is a key to ask with. /connect's check does send the key it is testing, once, and reads a refusal as a refused key.

Test it

.github/test-cell.sh providers/nodecode-acedatacloud

Offline: every listing is a stubbed fetch, every round a stubbed POST, every key variable a stub.

Gaps

Nothing of the original's runtime is missing: it was a provider profile and a model filter, and both are here. Two things are deliberately not carried: the signup link with its referral parameters (Nodecode's picker opens no signup page), and the original's requires_hermes version floor, which the cell contract does not express.

Add nc://acedatacloud

  1. 1

    Install Nodecode

    Once per machine.

    $ curl -fsSL https://nodecode.ai/install.sh | sh
  2. 2

    Add the cell

    Pinned at 4d1c285.

    $ nodecode add nc://acedatacloud

    Or tell the agent add the acedatacloud cell.