Skip to main content
Version: 2026.8.1

Basic mode (no AI)

Cobblr runs with no AI provider connected. The features that use AI drop to a simpler mode instead of disappearing, and everything else works the same. That simpler mode is no longer a handful of canned replies: a workspace with no provider can answer questions from your own records, run jobs like clearing duplicates, and carry out whole instructions it has been taught, all without a model and without spending anything.

Scanning still works​

  • Barcode scanning does not need AI. A scanned code is still looked up in the product catalogs, and the item still lands in your inbox to confirm.
  • What you lose without a provider is the smart part: reading a photo that carries no barcode, and fleshing out a bare listing the catalogs return.
  • This is why AI is worth connecting even though nothing requires it. See Choosing a provider for a free option that takes about five minutes.

Routing a capture: the heuristic floor​

When you scan into a workspace with several trackers, something has to decide which one an item belongs in. With AI that is the model's job. Without it, a deterministic matcher takes over. Because it reads a tracker's own fields and choices, the way to improve it is to design good fields:

  • Name an instance for the thing it holds.
  • Give its fields real choice lists. When a word in the capture matches one of a field's allowed choices, it fills that field ("worsted" sets a weight field to Worsted, because the choice list is the vocabulary).
  • Prompt patterns has the knobs that steer routing.
How the heuristic scores

The heuristic scores each of your trackers by word overlap between the capture and the tracker's noun, its scan keywords, its field names, and its field choices. It is weaker than the model and it is free, and it means a no-AI workspace still gets a real tracker suggestion instead of a capture that never resolves. Connecting a provider sharpens the same routing.

Answers that need no model​

Three kinds of question are answered before you press enter, in a green bubble that says where the answer came from: from the page you are on, straight from your workspace, or from Cobb's own built-in answers. Counts, where something is, what needs you, what is low on stock, "what can you do?", "where do I scan?". None of them ask anything of a model, so they all work here. The assistant covers how that reads in the panel.

  • Everyday phrasings count. "Do that over", "how much filament is there", "which bin did the drill end up in" all get the instant answer.
  • An instruction is never intercepted. "How do I add a part" gets the how-to offer. "Add a part called Brass Widget" is an instruction, so no how-to suggestion is offered over it and it goes to Cobb. The same holds for "print a label for X", and asking to delete one specific duplicate no longer triggers the whole-workspace sweep.

The rest of this page is what a no-AI workspace can be taught to do.

Commands: things this workspace can do on its own​

A command is a sentence with blanks in it, and a plan for what to do when someone types a sentence of that shape. No model is involved at any point.

  • Where they live: Configuration then Assistant, in a section called Things this workspace can do on its own.
  • Some are there from the start. Modules ship the sentences their own users commonly type, each labelled with the module it came from. Locations ships make {label} {from} through {to} in {parent} and add a place called {name} in {parent}, so "make Shelf 1 through 4 in Garage" works on day one of a brand new workspace with nothing connected.
  • The workspace learns more from what an AI did. Every change Cobb makes is recorded alongside the message that asked for it, and from those Cobblr works out reusable commands: "make rack 1 through 12 in Den" becomes make rack {from} through {to} in {parent}. They appear under Could learn, shown with the message they came from. Teach it keeps one. From then on the same shape of sentence runs with no AI at all.
  • Running one. When what you are typing into Ask Cobb matches a command your workspace knows, a strip appears above the box: what it would do ("Creates 3 locations, no AI needed") and the command it matched. Tab takes it. The work happens straight away, nothing is sent to a model, and the change is recorded and undoable like any other. Enter still sends your message to the AI exactly as before.
  • Contributing one back. A command your workspace learned for itself has an export that gives you the snippet to contribute it back, so something that turns out to be common can ship in the module rather than being taught again in every workspace. Nothing is uploaded: the export is text for you to read and share if you choose.
What gets learned, when the strip is offered, and the caps

make {label} {from} through {to} in {parent} numbers a run of shelves, bays or bins inside a place you name. Creating a place accepts the parent by name ("in Garage"), and says so plainly when no place by that name exists rather than quietly creating it at the top level.

One message that produced several changes is kept together as a single example. Only examples it can fully explain become commands. If the numbers you asked for are not both written in your message, or one message did two unrelated things, nothing is learned, because a command that fires on the wrong sentence would write to your workspace.

The quick way is something you choose rather than something that happens to you, and a sentence meant for the AI is never intercepted. It works whether or not AI is connected, because a workspace with a model still has no reason to spend a call on something it already knows. Nothing is offered until you have taught it at least one command, and nothing is suggested for a message under eight characters.

What actually runs is worked out on the server from the stored command, so a command can only ever do the kind of thing it was taught, and a sentence that does not fit is refused rather than guessed at. One run is capped at 200 records, so a single sentence can never run away with your data.

Following the conversation​

Basic mode follows the conversation, so the words do what the buttons do:

  • "Yes" or "go for it" runs the command Cobb just offered ("I can do that: make rack 1 through 5 in Den"), the same as pressing Do it.
  • "Again" repeats the last command that ran.
  • "Undo" puts its changes back, the same as the Undo button on the message.
  • "Stop" or "never mind" waves off an offer you did not want.
What the words can and cannot reach, and a model that writes the change out

No model is involved. Nothing new can be triggered this way, only the command that was already offered or already ran, through the same guarded paths as the buttons. With nothing offered or run, the same words get the honest reply that nothing is waiting.

With a model connected, some AI models answer a request to change something by writing out the change instead of making it. Cobb reads that reply as the change it plainly is, so a model that writes the right thing in the wrong place still gets it done. It arrives as a proposal you confirm, like any other change.

Chores that decide what to do from what is there​

Three jobs run with no AI and work out what to do from what they find. Each shows you exactly what it would touch before touching it, each is undoable, and each goes quiet when there is nothing to find.

  • Delete duplicates. Looks for records with the same name in the same place, says what it would remove and what it would keep, and waits for you to accept. The offer names each kind separately ("1 duplicate location, 1 duplicate part").
  • Fix broken links. Finds records whose place has been deleted out from under them and clears the dead link. The records stay, only the link goes.
  • Delete empty places. Finds places with nothing inside them and nothing filed in them. You have to type the word "empty" for this one.
  • Scope any of them by pointing Cobb at something: with a rack ticked, "delete duplicates" means the shelves in that rack rather than everything you own.
What counts as a duplicate, why you type "empty", and what the AI is told

These jobs cannot be written as a phrase with blanks, because what they do depends on what they find. What counts as "the same place" is declared per kind: places are scoped by what they are inside, parts by the bin they are filed in. So two "Shelf 1"s in one rack are offered, and the same two in different racks are left alone. Kinds that have not declared a reading, like assets, are never deduplicated at all, because two assets called "Drill" are usually two drills.

You type "empty" because a rack of shelves you just numbered is empty by definition and nobody wants those offered back.

If a free offer matches but you press enter for the AI anyway, the assistant is told what the offer found, as information. It can do the same thing or explain why it is doing something else, rather than solving the same problem from scratch.

Teaching it to answer a question​

Basic mode collects what it could not answer.

  • Asked, but not answered, under Configuration then Assistant, lists every question that fell through to the "I only handle the basics" reply, most asked first, in the words someone actually used, with a count when it has come up more than once.
  • Answer this opens the answer form with those words already filled in as the trigger phrases, so you only write the reply. Saving it takes the question off the list.
  • The tick dismisses a question you do not want to answer. If somebody asks it again it comes back, because that is the workspace telling you it still matters.
  • Edit the built-in answers, turn any off, or add your own phrase-and-answer rules. A live "try it" box shows what a question matches.
Privacy, and how matching works

Nothing here leaves your workspace, and only questions that got no answer are recorded. Matching is plain keyword scoring, no model: a longer matched phrase wins over a looser single word.

Building a bundle without AI​

The AI builder has a copy-paste mode that needs no provider. It compiles the prompt, you run it in your own chat assistant, and you paste the result back for the kernel to validate. Starting from the ready-made bundle catalog is always there too, and needs nothing at all.