Skip to main content
Glama
N0moreher0
by N0moreher0

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
VENIRA_PRETTYNoSet to "1" for pretty-printed JSON in tool results.0
VENIRA_DATA_DIRNoWhere the audit DB (venira.db) is created/updated.<workspace>/data
VENIRA_WORKSPACENoRoot of the workspace. All relative paths resolve against this; absolute paths outside it are rejected unless unrestricted.process.cwd()
VENIRA_SESSION_IDNoSession tag; audit rows are grouped by it.auto (opencode-<pid>-<rand>)
VENIRA_OUTPUT_MODENoOutput mode: full, compact, or summary.full
VENIRA_UNRESTRICTEDNoSet to "1" to disable workspace locking. Do not set in production.0
VENIRA_DEBUG_STARTUPNoSet to "1" to send startup errors to stderr instead of the protocol-safe stdout event.0
VENIRA_DEFAULT_SHELLNoDefault shell for project_shell_run: powershell, cmd, or bash.platform default
VENIRA_LIST_CACHE_MSNoTTL for directory listing cache.1500
VENIRA_RECENT_CACHE_MSNoTTL for recent-files cache.2000
VENIRA_SEARCH_CACHE_MSNoTTL for search result cache.3000
VENIRA_BATCH_ITEM_BYTESNoPer-item cap inside project_read_batch.524288
VENIRA_READ_CACHE_BYTESNoBudget for read and info caches.67108864

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
project_list_filesA

List files/directories in the workspace. depth 1..3 shows the tree in a single call. Use when: you need to see the directory tree, check a path, or list files before reading. Avoid when: you only need one file's metadata (project_get_file_info) or one file's contents (project_read_file). Speed: fast; TTL cache 1.5s, auto-wiped on write/edit/delete. Output: file_list: entries, truncated, hint. Batch-safe: yes

project_read_fileA

Read a text file, optionally by line range (1-based). The result carries next_start_line when truncated. Use when: you need the contents of one file, or one line range of a large file. Avoid when: you need to read 2+ files (project_read_batch) or only need metadata (project_get_file_info). Speed: very fast on repeat; cache validated by mtime+size. Output: file_read: text, first_line, last_line, total_bytes, next_start_line. Batch-safe: yes

project_read_rangesA

Read multiple disjoint line ranges of the SAME file in a single call (max 16 ranges). Use when: you need several disjoint segments of one file (e.g. around search hits) without multiple round-trips. Avoid when: you need the whole file (project_read_file) or different files (project_read_batch). Speed: fast; reuses the per-range read_file cache. Output: file_read_ranges: ranges[] with text/truncated/next_start_line. Batch-safe: no

project_get_file_infoA

File/directory metadata (kind, size, modification time). Use when: you only need size/mtime/kind, or want to check that a path exists. Avoid when: you need the file's contents (project_read_file). Speed: very fast; cache validated by mtime+size. Output: file_info: relative_path, kind, size_bytes, modified_unix_seconds. Batch-safe: yes

project_searchA

Search by file name, directory name, content (literal or regex=true), or symbol declaration lines (definition). Use when: you need to find code/strings/symbols before reading; use kind=literal_content or definition. Avoid when: you already know the exact path to read. Speed: medium (file scan); TTL cache 3s for the same query. Output: search: hits, complete, diagnostics, hint. Batch-safe: yes

project_recent_filesA

List files modified most recently in the workspace (bounded filesystem scan, skips node_modules/target/.git). Use when: you need to know which files just changed, or to pick the next file to read in this session. Avoid when: you need the full list / by name (project_list_files) or content search (project_search). Speed: medium (filesystem walk); TTL cache 2s, bounded to 4000 files / 300 directories. Output: recent_files: entries[] sorted by mtime desc, scanned_files, truncated. Batch-safe: no

project_read_batchA

Run up to 8 READ-ONLY ops (list_files, read_file, get_file_info, search) in one call; read/info use the cache so repeats are very fast. Use when: you need to read 2+ files/ops in the same step (reading context, scanning several files). Avoid when: there is only a single op; or you need a mutating op (use the corresponding tool). Speed: fastest for read-heavy work; sequential + cached, with a response budget. Output: read_batch: responses[] (each item is an ok/error envelope). Batch-safe: yes

project_write_fileA

Write a file. mode=create errors if it exists; overwrite replaces; append concatenates to the end. Use when: create a new file or replace/append a file's contents. Avoid when: only a small section needs to change (project_edit_file) to leave the rest intact. Speed: fast; clears the read/list/search cache for the affected path. Output: file_written: action, bytes_written, sha256_after. Batch-safe: no

project_edit_fileA

Edit a file by exact text replacement: one old_text/new_text pair, or edits[] for multiple sections. Use when: change one or a few text sections whose exact content you know; pair with expected_sha256 to guard against blind overwrites. Avoid when: the whole file must change (project_write_file), or you have not read the file to know old_text. Speed: fast; clears the read/list/search cache for the affected path. Output: file_written: replacements, sha256_before/after. Batch-safe: no

project_create_directoryA

Create a directory (create_parents defaults to true). Use when: a directory must exist before writing a file into a new path. Avoid when: the directory already exists, or you only need to write a file with create_dirs=true. Speed: nhanh. Output: directory_created: relative_path. Batch-safe: no

project_delete_pathA

Delete a file or directory (directories require recursive=true). Use when: a file/directory must be deleted entirely; the path is confirmed. Avoid when: you only need to change the content (write/edit). This op is not undoable. Speed: fast; clears the read/list/search cache. Output: path_deleted: entries_deleted, bytes_deleted. Batch-safe: no

project_shell_runA

Run a shell command (cwd defaults to /app). Returns run_id immediately; use project_shell_status to get the output. Use when: build/test/lint/long-running commands; returns run_id immediately so it never blocks other tools. Avoid when: a very short command whose output you need right now (you can still run it and poll 0s). Speed: returns in ~5 ms; run time is up to the command. Output: shell_run: run_id, running, exit_code, stdout_tail/stderr_tail. Batch-safe: no

project_shell_statusA

Check status + output of a running command. wait_seconds (0..30) is an observation window, not a timeout. Use when: after project_shell_run; poll until running=false. Avoid when: no run_id available yet. Speed: fast; not queued so it never blocks other tools. Output: shell_run: running, exit_code, stdout_tail/stderr_tail. Batch-safe: no

project_shell_cancelA

Cancel a running shell command by run_id. Use when: the command is running too long or its result is no longer needed. Avoid when: the command already finished (check with project_shell_status). Speed: nhanh. Output: cancellation: accepted, cleanup_complete. Batch-safe: no

project_createA

Create a directory OR a file in ONE call (merges project_create_directory + project_write_file for the new-file case). Use when: create a directory (kind=directory) or a new file (kind=file, content+mode); kept in sync with the Venira native app tool. Avoid when: modifying an existing file (project_edit_file); overwriting a file whose contents must be preserved (project_write_file mode=overwrite still works). Speed: fast; triggers cache invalidation on write / new directory. Output: directory_created or file_written (data kind depends on the op). Batch-safe: no

project_healthA

Server diagnostics: corehost/data dir/audit DB, capability, queue depth, cache hit-rate, running shells, p50/p95 metrics. Use when: debugging slowness/errors, checking the backend/DB/audit before reporting, or inspecting this session's cache/metrics. Avoid when: you just need to read/write files normally. Speed: fast (~a few ms + 1 audit DB query); set include_audit=false to skip the DB query. Output: health: server, corehost, capability, queue, caches, shells, metrics, audit. Batch-safe: no

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.2/5.0

Scored across 16 tools

Disambiguation4/5

Most tools map cleanly to one resource+action, and the explicit 'Use when / Avoid when' guidance sharply separates read_file vs read_ranges vs read_batch and shell_run vs shell_status. The main overlap is project_create, which deliberately duplicates project_create_directory and project_write_file, leaving two valid paths for creating a file or directory.

Naming Consistency4/5

Nearly everything uses a project_ prefix with snake_case verb_noun (list_files, read_file, write_file, edit_file, create_directory, delete_path, shell_run). A few names drop the verb (project_search, project_recent_files, project_health, project_create), which is a minor deviation but still predictable.

Tool Count4/5

16 tools is on the heavy side but each cluster (4 read variants, 3 shell lifecycle, write/edit/create/delete, diagnostics) earns its place for a coding workspace. The one genuinely redundant entry is project_create, which re-bundles existing capabilities.

Completeness4/5

Coverage is strong: list, read, search, write, edit, mkdir, delete, async shell with status/cancel, plus self-diagnostics. The notable gaps are move/rename and copy operations, which are common in coding workflows and would otherwise force a read-write-delete workaround.

Maintenance

ActivityMaintained
ResponsivenessNo issues