# Errors

> The error messages DevHub tools return and what to change in the next call.

A DevHub error says what to fix. Fix the argument and call again. One error is never a reason to stop using DevHub for the rest of the session.

## Access and availability

| Message                                                     | What it means                                                                                     | What to do                                                                                 |
| ----------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------ |
| `sign in required` (on every request)                       | the user's session ended; the server stopped serving                                              | tell the user to sign in to DevHub again. Do not retry in a loop                           |
| `MCP tool "<name>" is disabled in Settings`                 | the user switched the tool off                                                                    | use another tool or ask the user to enable it in Settings > MCP Server > Allowed MCP tools |
| `MCP tool "<name>" is not available: requires <permission>` | the user's Vartari plan does not include this area for agents, or not at the level the tool needs | do not retry. Tell the user which permission it names                                      |
| `MCP tool "<name>" is not enabled for this endpoint`        | this endpoint's profile does not offer the tool                                                   | use a tool you were offered                                                                |
| `Unknown tool`                                              | the name does not exist                                                                           | take names from the tool list, not from memory                                             |
| `<area> is not configured` or `is not available`            | the feature is not set up in DevHub                                                               | tell the user; nothing to fix in the call                                                  |

## Arguments

| Message                                                                   | What to do                                                                              |
| ------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- |
| `A claim needs an owner`                                                  | pass `by` to `plan_claim` or `plan_renew`                                               |
| `query is required`                                                       | pass a non-empty `query`                                                                |
| `workspaceId is required when saving a screenshot`                        | pass `workspaceId` with `save`                                                          |
| `wait must be seconds from 0 to 45`                                       | pass `wait` between 0 and 45                                                            |
| `allowAgents must be true or false`                                       | pass a boolean                                                                          |
| `Request too large`                                                       | send less in one call; split the content                                                |
| a hash or text mismatch on `file_edit`, `file_replace`, `vault_file_edit` | read the file again and rebuild the edit from the new text                              |
| `already exists` on a create                                              | the file is there. Read it; use `file_replace` or `file_write` if replacing is intended |
| a script is refused                                                       | `npm_script_list` shows what is declared. Only declared scripts run                     |

## Vaults

| Message                                          | What to do                                                                                                                   |
| ------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------- |
| `Vault not found or disabled`                    | take `vaultId` from `vault_list`                                                                                             |
| `Vault is not configured for MCP write access`   | the vault is read-only for MCP. Ask the user to allow writing, or write elsewhere                                            |
| `This note is in a knowledge folder: <problems>` | the note fails the rules of that folder. Fix what the message lists and write again                                          |
| `knowledge_search` returns nothing               | a miss is not absence. `vault_overview`, then `vault_files_search`; `knowledge_index_status`, then `knowledge_index_refresh` |

## Agent endpoints

An agent started by DevHub works under narrower rules.

| Message                                                                                 | What to do                                   |
| --------------------------------------------------------------------------------------- | -------------------------------------------- |
| `This agent works only in its own repository. Use its workspaceId.`                     | use the `workspaceId` of your own repository |
| `This agent may use only its own repository's, project's and organization's vaults.`    | take a `vaultId` from `vault_list`           |
| `This plan is not for this agent's repository.`                                         | take plans from `plan_ready`                 |
| `An agent cannot start itself. Start a different agent, or answer the task yourself.`   | answer the task, or start another agent      |
| `An agent cannot give another agent leave to start agents. Run it without allowAgents.` | leave `allowAgents` out                      |
| `An agent cannot close an investigation. …`                                             | say in your answer that it is ready to close |

## Agents and runs

| Message                                                                   | What to do                                                           |
| ------------------------------------------------------------------------- | -------------------------------------------------------------------- |
| `No such agent on this endpoint. Call agent_list for the ones there are.` | take `agentId` from `agent_list`                                     |
| `No persona "<id>"` or `No client "<id>"`                                 | `agent_list` shows the ones `agent_create` accepts                   |
| `No such run`                                                             | take `runId` from the `RUNNING` answer. A run's answer lasts an hour |
| `RUNNING <runId>`                                                         | not an error. Call `agent_run_status` with `wait`                    |

## Plans

| Message                     | What to do                                                                                                                                          |
| --------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| a refused `plan_claim`      | the refusal says why: someone holds the step, a gate is open, or a step in progress touches the same files. Call `plan_ready` and take another step |
| `Step not closed: <reason>` | the working tree did not merge. Resolve the conflict in the working tree, commit, call `plan_close` again                                           |
| a refused `plan_close`      | you are not the holder, or the step is not in a state that can close. Read the message; `step_resume` shows the state                               |
| refused `plan_create`       | the id is taken. Choose another or omit it                                                                                                          |

## Finding the cause of a failure

- `audit_list` with `tool` and `result` shows the failed call: arguments, error, timing.
- `audit_analyze` shows repeated errors and slow tools.
- `audit_summary` shows the success rate over a window.

## Related

- [Limits](/devhub/for-agents/limits/index.md)
- [Troubleshooting](/devhub/troubleshooting/index.md)
