Skip to content

Conversation

@Sweaterdog
Copy link
Contributor

@Sweaterdog Sweaterdog commented Dec 7, 2025

Just changed freeguy.json to use the Andy API instead of groqcloud, as llama.json already uses groqcloud. Andy API is maintained by the Mindcraft-CE team (riqvip, uukelele, MrElmida, and I).

The API doesn't need an API key, and allows for 1,000 free requests per day for "official" models which the Mindcraft-CE team provides.

@Sweaterdog Sweaterdog marked this pull request as ready for review December 7, 2025 04:26
Copilot AI review requested due to automatic review settings December 7, 2025 04:26
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the freeguy.json profile configuration to use the Andy API (a free service provided by the Mindcraft-CE team) instead of GroqCloud. The configuration changes from a simple string model identifier to a full model object with custom API endpoint and parameters.

Key changes:

  • Migration from GroqCloud (groq/llama-3.3-70b-versatile) to Andy API (gpt-oss-120b)
  • Updated configuration structure from string to object format with explicit API, URL, and parameter specifications
  • Removed max_tokens parameter (8000) in favor of temperature parameter (0.7)

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor Author

@Sweaterdog Sweaterdog left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, the Andy API requires a host name for the model, the model therefore needs to be openai/gpt-oss-120b

@mrelmida
Copy link

mrelmida commented Dec 9, 2025

The system is modular, so we just need to include the andy.js file. I already have one made, so I will just make a PR.

@uukelele-scratch
Copy link
Contributor

i am not reviewing this i don't even know what andy api is

@Ninot1Quyi
Copy link
Contributor

I'll try this api tomorrow

@Ninot1Quyi
Copy link
Contributor

@Sweaterdog

Code Changes:

Fix: Remove extra comma in freeguy.json that caused JSON format error
Add: Add freeguy.json to settings.js

Test Results:

API usage failed with two issues:

Issue 1: Error when OPENAI_API_KEY in keys.js is empty

quyi@quyideMac-mini mindcraft % npm start

> start
> node main.js

MindServer running on port 8080
MC server found. (Host: 127.0.0.1, Port: 55916, Version: 1.21.1)
Connecting to MindServer
Client connected
andy connected to MindServer
Starting agent
Failed to start agent process:
API key "OPENAI_API_KEY" not found in keys.json or environment variables!
Error: API key "OPENAI_API_KEY" not found in keys.json or environment variables!
    at getKey (file:///Users/quyi/Desktop/mindcraft-test/ce/mindcraft/src/utils/keys.js:17:15)
    at new GPT (file:///Users/quyi/Desktop/mindcraft-test/ce/mindcraft/src/models/gpt.js:18:25)
    at createModel (file:///Users/quyi/Desktop/mindcraft-test/ce/mindcraft/src/models/_model_map.js:87:19)
    at new Prompter (file:///Users/quyi/Desktop/mindcraft-test/ce/mindcraft/src/models/prompter.js:59:27)
    at Agent.start (file:///Users/quyi/Desktop/mindcraft-test/ce/mindcraft/src/agent/agent.js:27:25)
    at file:///Users/quyi/Desktop/mindcraft-test/ce/mindcraft/src/process/init_agent.js:47:21
    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
Agent process exited with code 1 and signal null
Agent process exited too quickly and will not be restarted.
Client connected
Client connected
Client connected
Client connected

Issue 2: Error when OPENAI_API_KEY in keys.js is set to "test"

quyi@quyideMac-mini mindcraft % npm start

> start
> node main.js

MindServer running on port 8080
MC server found. (Host: 127.0.0.1, Port: 55916, Version: 1.21.1)
Connecting to MindServer
Client connected
andy connected to MindServer
Starting agent
Initializing agent andy...
Client connected
Client connected
Error with embedding model, using word-overlap instead.
Error with embedding model, using word-overlap instead.
Error with embedding model, using word-overlap instead.
Examples initialized.
No task.
andy logging into minecraft...
Client connected
andy logged in!
andy updating available agents
Initializing vision intepreter...
andy spawned.
received message from system : Respond with hello world and your name
Saved memory to: ./bots/andy/memory.json
selected examples:
Example: You are self-prompting with the goal: 'Build a house'. Respond:
Example: trade something with zorro_34
Awaiting openai api response from model gpt-5-nano
AuthenticationError: 401 Incorrect API key provided: test. You can find your API key at https://platform.openai.com/account/api-keys.
    at APIError.generate (file:///Users/quyi/Desktop/mindcraft-test/ce/mindcraft/node_modules/openai/error.mjs:44:20)
    at OpenAI.makeStatusError (file:///Users/quyi/Desktop/mindcraft-test/ce/mindcraft/node_modules/openai/core.mjs:295:25)
    at OpenAI.makeRequest (file:///Users/quyi/Desktop/mindcraft-test/ce/mindcraft/node_modules/openai/core.mjs:339:30)
    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
    at async GPT.sendRequest (file:///Users/quyi/Desktop/mindcraft-test/ce/mindcraft/src/models/gpt.js:35:30)
    at async Prompter.promptConvo (file:///Users/quyi/Desktop/mindcraft-test/ce/mindcraft/src/models/prompter.js:228:30)
    at async Agent.handleMessage (file:///Users/quyi/Desktop/mindcraft-test/ce/mindcraft/src/agent/agent.js:284:23)
    at async Agent._setupEventHandlers (file:///Users/quyi/Desktop/mindcraft-test/ce/mindcraft/src/agent/agent.js:178:13) {
  status: 401,
  headers: {
    'alt-svc': 'h3=":443"; ma=86400',
    'cf-cache-status': 'DYNAMIC',
    'cf-ray': '9add41391d329c9b-SIN',
    connection: 'keep-alive',
    'content-length': '233',
    'content-type': 'application/json',
    date: 'Sun, 14 Dec 2025 11:10:27 GMT',
    'openai-processing-ms': '22',
    'openai-version': '2020-10-01',
    server: 'cloudflare',
    'set-cookie': '__cf_bm=3DeZ3jSi2ar0mIU0inZvPoSYQi_.Th_TwiLqevi7koU-1765710627-1.0.1.1-UiuqcGv7BiMLrNGYNim0PJKwBbbuF__CAi9RUcoHkqZ.d3J16Xf4pthaZWSopdKRQ1KgwG4qQ0u44NB3eOHQkc2qP43REYFA3rMBvY98o3M; path=/; expires=Sun, 14-Dec-25 11:40:27 GMT; domain=.api.openai.com; HttpOnly; Secure; SameSite=None, _cfuvid=qpqEIp9Y2dQBFFCiumjSe64wwwfqM0u5C2TJgS34C0w-1765710627025-0.0.1.1-604800000; path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None',
    'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
    'www-authenticate': 'Bearer realm="OpenAI API"',
    'x-content-type-options': 'nosniff',
    'x-envoy-upstream-service-time': '27',
    'x-request-id': 'req_56c7881504cc4f4295d379796bdfc52a'
  },
  request_id: 'req_56c7881504cc4f4295d379796bdfc52a',
  error: {
    message: 'Incorrect API key provided: test. You can find your API key at https://platform.openai.com/account/api-keys.',
    type: 'invalid_request_error',
    param: null,
    code: 'invalid_api_key'
  },
  code: 'invalid_api_key',
  param: null,
  type: 'invalid_request_error'
}
Generated response: My brain disconnected, try again.
andy full response to system: ""My brain disconnected, try again.""
Client connected

@Sweaterdog
Copy link
Contributor Author

Maybe the issue stems from openai/ being in the model name since prompter.js checks for openai/, and then sets to OpenAI defaults.

@Sweaterdog Sweaterdog marked this pull request as draft December 16, 2025 06:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants