CLI reference

The public command is neuraframe. nfctl is kept as an alias, so anywhere you see neuraframe you can type nfctl instead.

Every command

The complete command set. It is one binary, so every command below works on any install (Studio or Gateway); which ones you use daily depends on how you run it. Details for each follow on this page, with the deep controls linked where they have their own guide.

CommandWhat it does
statusService health, version, engine or pass-through, gateway state, license validity.
statsReuse counters: served from memory versus forwarded.
savingsWhat reuse is buying: calls avoided, reuse rate, estimated tokens saved, by source. Read live from the gateway.
askAsk a question through the reuse stack. On a fresh install with no model connected it introduces itself and says so plainly.
correctTeach a correction through the native API, so future answers change.
pinTeach the gateway a fixed answer for a matching request: add, list, revoke. Bounded and reversible. May need sudo to save.
freshnessReuse in time: windows for time-sensitive answers, volatility detection, self-learning, drift checks. Run bare to list every knob. See the Gateway guide.
visionImage and video reuse: mode (exact, near, scene, continuous), thresholds, detector boxes, the continuous video knobs, and the visual memory. Full command set: Vision CLI reference.
codebookComplex identification against your own coding standard: check, use, off, reuse on|off, and run (the two-drive batch coder). See Complex identification.
configRead or set safe config keys (get / set), including gateway.upstream_url.
licenseDevice fingerprint and license validity. license refresh pulls a renewed license.
trial startStart the 7-day trial. Needs sudo: it writes a license file.
activateActivate a paid license. Needs sudo, same reason.
enrollJoin an organization's seat pool with the shared token (--token ORG-xxxx), for fleet installs. See Fleet deployment.
billingOpen the billing portal.
versionPrint the installed version.
updateCheck for a newer release; --apply upgrades in place, keeping memory, config, and license.
logsRecent service logs.
doctorPreflight plus service and license summary in one shot.
demoRun the bundled example workflow.
uninstallRemove the product. Keeps learned memory unless --purge.

status

Prints service state, version, whether the engine is active or in pass-through, and license validity. Use this first when something looks off.

trial start

Starts the 7-day free trial for this device. Reads the device fingerprint, asks for your email, and installs a signed trial license. Run it with sudo: it writes the license file into a system location and reads the root-owned config.

activate

Activates a paid license for this device using the email tied to your subscription. Also run with sudo, for the same reason as trial start.

license / license refresh

license shows this device's fingerprint and whether the installed license is valid and how long remains. license refresh pulls a renewed signed license from the configured endpoint; connected devices also refresh automatically before expiry.

enroll

sudo neuraframe enroll --token ORG-xxxx

Joins this device to an organization's seat pool using the shared enrollment token, instead of an individual trial or activation. Used for fleet installs, where one token licenses many machines; the installer can also enroll automatically. See Fleet deployment.

billing

Opens the billing portal where you can update payment methods, view invoices, cancel, or renew.

stats

Shows reuse counters: total requests, model calls made, calls avoided, and memory used.

savings

neuraframe savings

A plain readout of what reuse is buying you, read live from the gateway: calls avoided, the reuse rate, an estimate of tokens saved, and a breakdown by source (exact repeats, paraphrases, vision, pins), plus freshness and pin activity. The call counts are exact; the token figure is an estimate.

ask

neuraframe ask "<question>" [doc_id]

Sends a question through the engine. The result reports its source, so you can see whether it was answered by the model or served from memory. An optional document id scopes the question to an ingested document.

correct

neuraframe correct "<original claim>" "<corrected claim>"

Teaches a correction so future matching answers use the corrected result.

pin

sudo neuraframe pin add "refund policy" '{"answer":"Refunds within 30 days."}'
neuraframe pin list
sudo neuraframe pin revoke <id>

Teaches the gateway a fixed answer for a matching request, the bounded and reversible way: a pin returns exactly what you type, is served before the reuse layers, and is listed and revocable. Match is contains by default; --exact requires an identical request, --path scopes it, --ttl expires it. Saving may need sudo.

freshness

neuraframe freshness                    # list every knob, its default, and what it does
neuraframe freshness volatile_ttl 30    # window for time-sensitive answers (seconds)
neuraframe freshness forget             # clear self-learned windows (reversible)

Reuse in time: a stable answer is reused for as long as it stays true, a time-sensitive one (weather, a price, anything current) is re-fetched once its window passes, and the layer learns how fast each class of question actually changes. On and safe by default. The full knob table is in the Gateway guide.

vision

neuraframe vision on
neuraframe vision mode <off|exact|near|scene|continuous>
neuraframe vision memory               # what the visual memory knows

Image and video reuse in front of a vision model: exact and near-duplicate repeats, scene mode (reuse the entities in an image), and continuous mode (follow a thing across a video). Thresholds, detector boxes, the continuous video knobs, and the tracking readout are all under this command; the complete control table is on Vision reuse.

config get | set

neuraframe config get
neuraframe config set completion_url http://127.0.0.1:8080/completion

Reads or updates safe configuration knobs (host, port, completion and embedding endpoints). Restart the service to apply changes.

logs

Shows recent service logs (via journalctl when available), useful for diagnosing startup or model-connection issues.

doctor

Runs the compatibility preflight, then a service and license summary, in one command. A borrowed convention (like brew doctor): it diagnoses whether everything is set up correctly.

demo

Runs the bundled example workflow to confirm reuse works on a fresh install. Requires a local model running and connected first (set the completion and embedding endpoints, see Using NeuraFrame™), since the example calls your model. NeuraFrame™ does not include a model.

update

Check whether this install is the current release, and upgrade in place if you choose. The upgrade keeps your memory, config, and license; nothing is downloaded or changed unless you pass --apply. A one-line hint also appears in neuraframe status when a newer release is available, and the check can be turned off in config.

neuraframe update            # is this the current release?
neuraframe update --apply    # download, verify, and upgrade in place (keeps your data)

version

Prints the installed version, read from the running service. The same version appears in status.

uninstall

neuraframe uninstall           # keeps config, license, and memory
neuraframe uninstall --purge   # removes everything
neuraframe uninstall --yes     # skip the confirmation prompt

Removes NeuraFrame™. Without --purge it keeps your config, license, and reuse memory so a reinstall resumes; with --purge it removes everything and leaves nothing behind.

Fleet admin (nf-fleet)

The Fleet server ships its own admin command, nf-fleet. It is installed on the Fleet server host, not on devices, and operates the local fleet database directly, so it needs no tokens or signing. Run it as the user that owns the fleet data (or with sudo).

nf-fleet provision             # print the fleet identity to bake into your device package
nf-fleet status                # queue, approved, and device counts
nf-fleet review                # list learnings awaiting approval, with IDs
nf-fleet approve --all         # approve everything pending
nf-fleet approve ID [ID ...]   # approve specific learnings by ID
nf-fleet reject ID [ID ...]    # reject specific learnings by ID
nf-fleet policy                # show the current sync policy
nf-fleet policy set KEY VALUE  # set a policy value (example: nf-fleet policy set cadence daily)

Point it at a non-default data directory with --root (or the NF_FLEET_ROOT environment variable). If you set a vault passphrase, export NF_FLEET_PASSPHRASE in the same shell so it can read encrypted submissions. Full round-trip operation, including how devices join and sync, is on the Studio Fleet page.