Skip to main content

Advanced Tips & Troubleshooting

This page is for integration, maintenance, and troubleshooting work. Business users who only use Lovrabet through an Agent usually do not need to read all of it.


Output formats that exist today

The runtime CLI currently supports only three output formats:

FormatBest for
compressAgents, scripts, CI, and the default path
jsondebugging and saving the raw structure
prettymanual reading in a terminal

Common examples:

lovrabet app list --format json
lovrabet data filter --code <datasetCode> --format pretty
lovrabet schema --format compress

If you want to keep structured output and filter fields, use --jq:

lovrabet app list --format compress --jq '.data.items[] | {name, appcode}'

How --jq works now

The current version already bundles a jq sidecar.
Resolution order is:

  1. JQ_PATH
  2. bundled jq inside the CLI package
  3. jq from system PATH

In most cases, you do not need to install jq separately anymore.


What logs can tell you

The CLI records command history:

lovrabet logs show
lovrabet logs clear

When troubleshooting, logs are useful for checking:

  • what actually ran
  • whether it succeeded or failed
  • how long it roughly took

Importing from rabetbase

If you already have .rabetbase.json, the current recommended import path is:

lovrabet app import --file .rabetbase.json

If the old file is still in a legacy structure, upgrade it first:

rabetbase project upgrade

Then import again.


The errors you will see most often

ErrorCommon reasonWhat to do first
Authentication requiredno usable AccessKeyrun lovrabet auth login
Set accessKey in .lovrabet.json or pass LOVRABET_ACCESS_KEY.missing AccessKey in configcheck auth status or env vars
Set appcode via --appcode or in .lovrabet.json.no app could be resolvedpass --app / --appcode, or validate whether defaultApp matches this request
App "<name>" not foundselected app is not visible to this accountrun lovrabet app list
Flag --code validation failedbad dataset code formatcopy it again from dataset list
Invalid JSON for --paramsmalformed JSONformat the JSON separately first
risk "write" but riskLevel is "read"permission guard blocked itedit riskLevel in the config file
High-risk operation requires --yesdelete in non-interactive modeadd --yes

The most effective troubleshooting order

This order usually works better than jumping into code immediately:

  1. lovrabet auth status
  2. lovrabet doctor
  3. lovrabet app list
  4. lovrabet logs show
  5. add --format json if needed
  6. add --dry-run for write-related issues

What the config file should look like now

The runtime CLI now uses a top-level intent-focused config, not the old local multi-app profile model as the main path.

A common shape looks like this:

{
"accessKey": "ak_xxx",
"env": "production",
"defaultApp": "crm",
"format": "compress",
"riskLevel": "write"
}

If you still see large apps blocks in older files, that does not always mean they are unreadable.
It just means they are no longer the recommended model.


When the problem is probably in skills, not the CLI

If the command itself runs but the business result is still wrong, the issue may be outside the CLI:

  • the skill may be interpreting the business object incorrectly
  • the skill may still point to an outdated SQL or BFF
  • the default app candidate or business flow in the skill may be stale

In that case, check:

  • whether the business prompt was specific enough
  • whether the bound workflow in the skill is still valid
  • whether this request should have started with discovery instead of directly executing SQL or BFF