Skip to content

Use the Arena project editor

Enterprise

Edit an Arena project’s files in the dashboard, check them for problems, save them and start a run.

  • enterprise.enabled=true in your Helm values. See Install with a License.
  • enterprise.promptkitLsp.enabled=true for validation. It defaults to true and has no effect unless Enterprise is on.
  • Editor access to the workspace.
  • A project. See Create an Arena project.
  1. In the sidebar, select Projects, then select the project.
  2. Select Edit. A project linked from an external repository opens the same editor, on a branch of that repository. For committing and pushing, see Work on an external repository.

The editor has three tabs above the files: Files, Builder and Try it. This page covers Files. Try a project’s dev agent covers Try it, and Edit a project with the builder covers Builder.

  1. Select a file in the tree to open it. Opened files appear as tabs.
  2. Right-click a file or folder for New, Import, Copy Path, Rename and Delete.
    • New offers Prompt, Provider, Scenario, Tool and Persona starters, plus a plain File… and Folder….
    • Import > Provider… opens Import Providers: tick workspace Providers and each is written to a file in the project.
    • Import > Tool… opens Import Tools: pick a ToolRegistry, then the tools to import.
  3. To hide the tree, select the button at the top of the files panel. Select the same button on the strip to bring it back.

The project’s entry point is config.arena.yaml. File formats follow the PromptKit documentation.

  1. Press Ctrl/Cmd + S in the editor, or select Save in the title bar. The title bar shows N files unsaved and Discard while any tab has unsaved edits.
  2. Saving writes to your own working clone of the project, then re-checks the project and refreshes the Problems tab.

Saving does not publish to the project’s main branch. Commit and sync from the Source control tab under the editor.

  1. Select Validate All in the toolbar.
  2. Read the toast, then the Problems tab under the editor. Select a problem to open the file at that spot.

The editor also checks the open file as you type and underlines problems in it. Cross-file checks run only under Validate All.

Problems come from three checks:

  • Each YAML file against the PromptKit schemas, including that every file: reference points at a file in the project.
  • The deploy.config provider, tool and skill bindings in config.arena.yaml.
  • Tool wiring. A prompt offers the model only the tools in its spec.allowed_tools. The check reports a tool the project declares but no prompt allows, and a scenario that asserts a tool is called when its prompt cannot call it. It warns when allowed_tools lists a tool the project does not declare.

Validate All reads only .yaml and .yml files. It skips the top-level out/ directory and hidden entries, and it reports a file over 512 KiB or not valid UTF-8 as skipped in Problems. A project with too many or too large files reports that as a single problem.

  1. Select Run this project in the title bar.
  2. Select the run type: Evaluation, Load test or Data generation.
  3. To run some scenarios, tick them in the Scenarios list, or select Needs attention for the ones not passing. A project that has never run has no list, and the run covers every scenario.
  4. Confirm the run. The dashboard opens the run page.

A run executes the project as committed to its repository. If the editor holds unsynced work, the dialog offers to sync it first. See Monitor Arena jobs and Run an Arena load test.

Validate All shows a Validation Passed toast and the Problems tab lists no errors.

Problems says the validation service could not be reached

Section titled “Problems says the validation service could not be reached”

Check that the PromptKit LSP pod is running:

Terminal window
kubectl get pods -n <omnia-namespace> -l app.kubernetes.io/component=promptkit-lsp

Save does not reach the project’s main branch

Section titled “Save does not reach the project’s main branch”

Saving writes to your working clone only. Commit and sync from the Source control tab.