From 764122ec6fd4815967c9dc73aae087ec9363a631 Mon Sep 17 00:00:00 2001 From: oddessentials Date: Fri, 13 Nov 2026 10:47:47 -0500 Subject: [PATCH] Say where Studio's pieces work, call the desktop app Grove Companion, and drop World from tool messages The setup page and Studio's MCP instructions now say its characters and companions work in a Yard, in Agent Guild: World and in Grove Companion, and can be changed in each. The desktop app is called Grove Companion, its real name. Tool messages say "Agent Guild" instead of "Agent Guild: World". Closes #6 Co-Authored-By: Claude Opus 5.5 --- site/index.md | 6 +++--- src/mcp/server.gd | 2 +- src/pieces/piece_check.gd | 2 +- src/pieces/piece_library.gd | 4 ++-- src/studio/studio.gd | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/site/index.md b/site/index.md index a26c795..5617aae 100644 --- a/site/index.md +++ b/site/index.md @@ -1,6 +1,6 @@ # Set up Agent Guild: Studio -Agent Guild: Studio makes characters and companions for Agent Guild, from a model file or by recoloring one of a world's own looks. It runs on Windows 10 or 11 (64-bit) or macOS 13 or later, and works for you with no window. +Agent Guild: Studio makes characters and companions for Agent Guild, from a model file or by recoloring one of a world's own looks. They work in a Yard, in Agent Guild: World and in Grove Companion, and can be changed in each. It runs on Windows 10 or 11 (64-bit) or macOS 13 or later, and works for you with no window. Agent Guild itself: [agentguild.oddessentials.ai/agents](https://agentguild.oddessentials.ai/agents/). Environments for Agent Guild Yards: [oddessentials.github.io/agent-guild-builders](https://oddessentials.github.io/agent-guild-builders/). @@ -182,6 +182,6 @@ Follow step 4 above. Run Mac step 2 again with the same folder. The connection, the downloaded art and the person's pieces are kept. Then start a new session, so the Studio tools load again. -## Use a character in Agent Guild: Companions +## Use a character in Grove Companion -A character Studio makes can also be the person's desktop spirit in Agent Guild: Companions. Follow its own steps at [oddessentials.github.io/agent-guild-companions](https://oddessentials.github.io/agent-guild-companions/), with the folder `list_pieces` gives for the character. +A character Studio makes can also be the person's desktop spirit in Grove Companion. Follow its own steps at [oddessentials.github.io/agent-guild-companions](https://oddessentials.github.io/agent-guild-companions/), with the folder `list_pieces` gives for the character. diff --git a/src/mcp/server.gd b/src/mcp/server.gd index 8307ddf..88c16f9 100644 --- a/src/mcp/server.gd +++ b/src/mcp/server.gd @@ -12,7 +12,7 @@ const INVALID_REQUEST := -32600 const METHOD_NOT_FOUND := -32601 const INVALID_PARAMS := -32602 const UNSUPPORTED_VERSION := -32022 -const INSTRUCTIONS := "Agent Guild: Studio makes characters and companions for Agent Guild from a model file, or by recoloring one of a world's own looks. It works without a window. +const INSTRUCTIONS := "Agent Guild: Studio makes characters and companions for Agent Guild from a model file, or by recoloring one of a world's own looks. They work in a Yard, in Agent Guild: World and in Grove Companion, and can be changed in each. It works without a window. Start with list_slots: a piece is made for one slot, a world's crew such as guild/anthropic, or a world's companions such as guild/companion. make_character takes one model (.glb, .gltf or .vrm); make_companions takes one model or four; recolor_look starts from a world's own look. Each can change the piece's colors, writes a piece folder at `to` and checks it. A world's art downloads the first time it is needed, which can take a while. When Studio can't be sure of a model's bones, make_character says which, and you call it again with `bones`. diff --git a/src/pieces/piece_check.gd b/src/pieces/piece_check.gd index 8d26430..405d9f0 100644 --- a/src/pieces/piece_check.gd +++ b/src/pieces/piece_check.gd @@ -102,7 +102,7 @@ static func _headers(path: String, kind: String, files: Array) -> String: if not studio: for ext in gltf.get("extensionsRequired", []): if not ext in EXTENSIONS: - return "it needs the glTF extension %s, which Agent Guild: World does not support" % ext + return "it needs the glTF extension %s, which Agent Guild does not support" % ext var beside := [0] var held: Array[PackedByteArray] = [] for buffer in gltf.get("buffers", []): diff --git a/src/pieces/piece_library.gd b/src/pieces/piece_library.gd index 54e72bd..d49fde6 100644 --- a/src/pieces/piece_library.gd +++ b/src/pieces/piece_library.gd @@ -233,9 +233,9 @@ static func check_folder(folder: String) -> Dictionary: if not manifest.get("kind") in FILES: return { "reason": "its piece.json does not say character or companion" } if not YardModel.WORLDS.has(manifest.get("world", "")): - return { "reason": "its piece.json names no world of Agent Guild: World" } + return { "reason": "its piece.json names no Agent Guild world" } if manifest.kind == "character" and not manifest.get("crew", "") in YardModel.PROVIDER_ORDER: - return { "reason": "its piece.json names no crew of Agent Guild: World" } + return { "reason": "its piece.json names no Agent Guild crew" } if manifest.has("title") and (not manifest.title is String or manifest.title.length() > 128): return { "reason": "its title is not text of up to 128 characters" } var allowed: Array = FILES[manifest.kind] + ["piece.json"] + PREVIEWS diff --git a/src/studio/studio.gd b/src/studio/studio.gd index 54bfd64..899834d 100644 --- a/src/studio/studio.gd +++ b/src/studio/studio.gd @@ -27,7 +27,7 @@ static func slot(text: String) -> Dictionary: if parts[1] == "companion": return { "world": parts[0], "kind": "companion", "crew": "" } if not parts[1] in YardModel.PROVIDER_ORDER: - return { "reason": "%s is not a crew of Agent Guild: World" % parts[1] } + return { "reason": "%s is not an Agent Guild crew" % parts[1] } return { "world": parts[0], "kind": "character", "crew": parts[1] } ## The slot's default model, as the game shows it, outside the tree.