Author SHA1 Message Date
basilensis c68d6fa33a docs: drop the setup-CLI promise from README — no CLI is planned
The 'a setup CLI ... is coming' line described a concept from the internal
auth design doc, not a planned deliverable. Neutral wording: ids are UUIDs;
tools work on the personal account without this file.
2026-09-06 07:50:19 +03:00
3 changed files with 34 additions and 44 deletions
+7 -6
View File
@@ -30,15 +30,16 @@ Sign in once at [spaghetti.gg](https://spaghetti.gg) — your account is created
## Project context (optional) ## Project context (optional)
Your UE5 project can be linked to a Spaghetti team and project. With the Spaghetti editor connector (UE 5.8+) installed, the link lives in the project's own configuration — Project Settings → Plugins → Spaghetti — persisted to `Config/DefaultGame.ini`: Your UE5 project can have a `.spaghetti` file at its root:
```ini ```json
[/Script/Spaghetti.SpaghettiProjectSettings] {
TeamId=your-team-uuid "team_id": "your-team-uuid",
ProjectId=your-project-uuid "project_id": "your-project-uuid"
}
``` ```
No secrets — safe to commit to Git/Perforce. Everyone opening the project works on the same team/project, while each user still signs in individually. Automatic team/project wiring is on the roadmap; until then, all tools also work on your personal account without any context. Details: [spaghetti.gg/docs](https://spaghetti.gg/docs). Team and project ids are UUIDs. All tools also work on your personal account without this file. The file is safe to commit to Git/Perforce (no secrets).
## Structure ## Structure
+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json", "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "unreal-workbench", "name": "unreal-workbench",
"version": "0.3.1", "version": "0.1.1",
"description": "Unreal Engine 5 agent tools — log analysis, asset auditing, engine docs research, script generation. Powered by Spaghetti Unreal AI Workbench.", "description": "Unreal Engine 5 agent tools — log analysis, asset auditing, engine docs research, script generation. Powered by Spaghetti Unreal AI Workbench.",
"author": { "author": {
"name": "Tinirau Ltd", "name": "Tinirau Ltd",
+26 -37
View File
@@ -1,7 +1,7 @@
--- ---
name: ue5-unreal name: ue5-unreal
description: > description: >
Unreal Engine 5 development assistant — log analysis, asset auditing, Unreal Engine 5 development assistant — crash analysis, asset auditing,
knowledge-base search, and Python script generation via Spaghetti Unreal AI knowledge-base search, and Python script generation via Spaghetti Unreal AI
Workbench. Call these tools when the user is working in a UE5 project and Workbench. Call these tools when the user is working in a UE5 project and
needs expert help with crashes, asset cleanup, engine docs, or editor needs expert help with crashes, asset cleanup, engine docs, or editor
@@ -17,32 +17,28 @@ connect — a browser window opens for sign-in at spaghetti.gg).
## Prerequisites ## Prerequisites
Project context is **optional**. If present, it lives in the project's Your UE5 project must have a `.spaghetti` file at its root containing
`Config/DefaultGame.ini` under `[/Script/Spaghetti.SpaghettiProjectSettings]` `team_id` and `project_id`. If no `.spaghetti` exists, the first tool call
(`TeamId`, `ProjectId`, written by the Spaghetti editor connector's Project returns an Agentic Directive instructing you to create one. Follow it.
Settings page). If the section is absent, tools run on the user's personal
account — that is a valid state, not an error. Do not hand-edit the ini while
the editor is running (the editor owns that file); context changes go through
the connector's Project Settings.
## Available tools ## Available tools (Phase 1 — MVP)
### Log Analyzer (`analyze_logs`) ### Crash Investigator (`spaghetti/analyze_crash`)
**When to call:** The user reports a UE5 crash, pastes an output log, or **When to call:** The user reports a UE5 crash, paste an output log, or
mentions a crash dump / minidump — or wants structured findings from any UE mentions a crash dump / minidump.
log file.
**What it does:** Parses the UE5 Output Log and crash dumps, identifies **What it does:** Parses the UE5 Output Log and crash dumps, identifies
root-cause nodes or C++ pointers, and returns a precise fix with context from root-cause nodes or C++ pointers, and returns a precise fix with context from
the proprietary UE5 bug knowledge base. the proprietary UE5 bug knowledge base.
**Input:** Log text (paste the Output Log contents or the relevant section). **Input:** Crash log text (paste the Output Log contents or the relevant
section).
**Safety:** Read-only analysis. Returns a diagnosis + suggested fix; does **Safety:** Read-only analysis. Returns a diagnosis + suggested fix; does
not modify project files. not modify project files.
### Asset Janitor (`tidy_assets`) ### Asset Janitor (`spaghetti/audit_assets`)
**When to call:** The user asks about asset cleanup, naming conventions, unused **When to call:** The user asks about asset cleanup, naming conventions, unused
assets, missing LODs, or compliance reports. assets, missing LODs, or compliance reports.
@@ -56,26 +52,21 @@ generates compliance reports.
**Safety:** Audit is read-only. If the user wants to apply fixes, use **Safety:** Audit is read-only. If the user wants to apply fixes, use
Tool-Maker to generate a dry-run Python script first. Tool-Maker to generate a dry-run Python script first.
### Research tools (free) ### Smart Librarian (`spaghetti/search_kb`)
**When to call:** The user asks about UE5 engine architecture, best practices, **When to call:** The user asks about UE5 engine architecture, best practices,
or how specific systems work — or wants to search their project's ingested or how specific systems work. Also for snippet search (verified node setups,
logs and knowledge. Blueprint patterns).
- **`search_docs_code`** — semantic search over curated UE engine **What it does:** Semantic search over two knowledge bases:
documentation and source code. - **Team KB:** your project's private RAG index (studio docs, past bug
- **`search_patterns`** — known engine patterns and anti-patterns (verified resolutions, conventions).
node setups, Blueprint conventions). - **UE5 Engine Graph:** GraphRAG over the public UE 5.8 source for multi-hop
- **`search_logs_temporal`** — the project's ingested log events over time reasoning about engine architecture.
(requires project context).
- **`query_temporal_relations`** — temporal knowledge-graph queries over the
project's entities and their relations (requires project context).
- **`investigate_incident`** — multi-source incident investigation across the
project's logs, entities, and relations (requires project context).
**Input:** Natural-language query about UE5 or the project's knowledge base. **Input:** Natural-language query about UE5 or your project's knowledge base.
### Tool-Maker (`make_tool`) ### Tool-Maker (`spaghetti/make_tool`)
**When to call:** The user wants to automate a UE5 editor task (batch-rename **When to call:** The user wants to automate a UE5 editor task (batch-rename
assets, apply materials, configure project settings, etc.). assets, apply materials, configure project settings, etc.).
@@ -101,11 +92,9 @@ script modifies assets, wrap in `unreal.ScopedTransaction` for undo support.
- **Use ScopedTransaction** for reversible operations (enables Ctrl+Z). - **Use ScopedTransaction** for reversible operations (enables Ctrl+Z).
- **Read the Output Log** for errors after any automated editor operation. - **Read the Output Log** for errors after any automated editor operation.
## Context and billing ## Context
The `Config/DefaultGame.ini` Spaghetti section (see Prerequisites) identifies The `.spaghetti` file at the project root identifies which team and project
which team and project this UE5 project belongs to; billed tools draw from this UE5 project belongs to. All tool calls are billed to the team's Spaghetti
that team's wallet — the research tools are free. On `402 Payment Required`, wallet. If you see a `402 Payment Required`, direct the user to
direct the user to top up at `spaghetti.gg/billing`. A `403` with a portal `spaghetti.gg/billing` to top up.
URL means the account needs to sign in or finish onboarding — open the URL;
retrying will not help.