NeboAI · getting started

Getting started

What a NeboAI employee is, how to hire your first one, and what to settle before you let it act for you.

What is a NeboAI employee?

It is a named worker that holds one job. It arrives already wired to its tools, works from a trigger rather than waiting to be asked, remembers what it learns, and hands work to other employees when a job crosses a boundary.

Four parts, and they fail in different ways, so it helps to know which is which.

PartHoldsWhen it is wrong you see
PersonaThe job description: priorities, judgment, what it refuses to do.Right work, wrong voice or wrong instincts.
WorkflowsDeclared steps, with triggers and an approval gate.Nothing happens, or happens at the wrong time.
SkillsWritten procedures for a recurring task.It improvises something it should do identically every time.
PluginsNative binaries that touch mail, calendars, ledgers, phones.It describes doing the thing instead of doing it.
The one rule to take away

Durable rules go in the persona. Today's task goes in the message. "Never send outbound without approval" is permanent. "Research these 25 accounts" is not.

How do I hire my first employee?

Pick the department with the most repetitive work this week. There are nine, and the choice matters later because it drives how you find anything once you have a dozen employees.

accounting sales marketing customer-support people-hr operations executive it legal

Then find a role in the marketplace and paste its code straight into the chat box. You do not need to find a settings screen; the shape of the code is recognised.

AGNT-4K2P-9WQZ

Installing cascades, in this order:

  1. Required plugins install
  2. Skills its workflows reference install
  3. Extra skills install, pulling their own plugin dependencies
  4. Its triggers register
  5. Its persona loads

One code can pull in six or seven components. That is intended: the role should arrive able to do the job, not as an empty shell you have to equip.

Connect the account you actually mean

Connections are authorised per account, not per task. Authorise a role mailbox such as support@, never your personal one, or that employee can reach your personal mail forever.

How do I get good output instead of a wall of text?

This is where most people give up, and it is worth knowing before it happens to you. The first output of any capable employee is almost always too long. Not wrong, just unusable: every finding, every caveat, nothing prioritised.

The fix is three moves, in order, and it works every time.

1

Ask for the job in plain language

Do not try to write the perfect instruction. You are finding out what it does by default.

2

Constrain the shape, not the content

Tell it the exact form you want back and how much of it. This one move does more than any amount of rewriting the request.

Give me this in a numbered list. At most ten items. Lead with the three that need a decision today, then the rest. One line each, no preamble, no summary paragraph at the end.

Ask for a numbered list whenever you will act on the result. It turns approving into "do 3, 4 and 8" instead of describing each item again, and you will use that shortcut constantly.

3

Only then make it a routine

Once two runs in a row come back the way you want, save it as a workflow and attach a trigger. Automating something you have not read yet just produces the same wall of text on a schedule.

Where corrections belong

A correction you would give again next week goes in the persona. A correction specific to today goes in the message and should be forgotten. Putting task detail in the persona is the usual way a good employee slowly goes stale.

What should I settle before it acts for me?

Do this now, while you remember, not after the first surprise. Open the desktop app → the employee's settings → Approval controls. Every gated operation takes one of three settings.

SettingMeaning
Always allowDoes it without asking.
ApprovalStops and asks you. The default.
BlockedRemoved entirely. It cannot attempt it.

An operation is gated when it moves money, contacts someone outside your company, or writes something you cannot take back. Reads are not gated: searching your knowledge base is open, adding to it is gated, and that asymmetry is deliberate.

Why this holds when you are tired

Money and contract operations are marked critical, and a critical operation cannot be loosened by flipping some global convenience setting. The only way to let an employee move money unattended is to set that exact operation on that exact employee. There is no master switch that quietly opens everything.

Use blocked more than you expect. If there is no case where you would ever approve something, remove the capability rather than leaving yourself a dialog to click through at speed.

Where does an employee run?

Two answers, and you choose per employee rather than once for everything.

On your machineIn the cloud
Runs whenYour machine is onAlways, whether you are or not
Files and memoryOn your diskOn the machine we run for you
Good forAnything touching files or data that must not leaveAnything that has to answer at 3am
Set up inThe desktop appThe console, and a number are included with your plan

This is the question people usually get stuck on, so here is the short version. A receptionist answering the phone overnight should be a cloud employee, because nobody wants to leave a laptop open to keep it alive. A bookkeeper reading files off your disk should be local, because those files should not go anywhere. Most businesses end up with some of each, and they appear together in one list rather than in two separate products.

You are not choosing a side

The same employee definition runs in either place. Hire a role locally, decide later that it needs to be awake at night, and it is the same role with the same persona and the same gate, running somewhere that does not sleep.

What does not change either way: an employee only reaches what you connected it to, the approval gate applies the same, and each one has its own memory scope. There is no shared machine holding every employee's logins, so a mistake in one cannot rummage through another's credentials.

Sign-ins stay yours

When an employee needs an account, you authorise it through the connection flow. Credentials are never pasted into a conversation, and you are never signing in to your bank on a machine you cannot see.

Where do I do what?

There are two places, and knowing which is which saves a lot of hunting. Work happens in the desktop app; anything that spans your whole account lives in the web console.

Desktop appWeb console at neboai.com/app
Talking to an employeeWorkforce — every employee at a glance
Hiring by pasting a codeManage — an individual employee, memory, phone
Approval controls per employeeSettings → Webhooks — mint and revoke keys
Connecting tools and accountsBilling and Usage
Watching a run happenTeam, and provisioning a cloud employee

The short version: if it is about this employee doing this job, it is in the desktop app. If it is about your account, your fleet, your keys or your money, it is in the console.

How do I organise employees as I add more?

By department first, then by handoff. Give each employee one job and let it pass work along rather than growing one employee that does everything.

// the employee that finishes announces it "emit": "leads.qualified" // the next one is listening "trigger": { "type": "event", "sources": ["leads.qualified"] }

Build the chain in the direction work actually flows. Neither employee knows about the other's tools, which is the point: if one loses its mail connection, the other keeps working.

Once you are past three or four, add a coordinator and give it almost no tools of its own. A coordinator that starts doing a specialist's job becomes the bottleneck, and you have rebuilt one overloaded assistant with extra latency.

Troubleshooting

It said it finished, but nothing happened

The run narrated instead of acting. This is what declared workflows prevent: a step that must call a tool fails rather than reporting success without it. If you are seeing this, the job is still a conversation. Promote it to a workflow.

The output is enormous and I cannot use it

Expected on the first run. Constrain the shape rather than rewriting the request: name the format, cap the number of items, and ban the summary paragraph. Two rounds of that usually settles it.

It asks permission for everything

Working as designed; approval is the default for every gated operation. Set the specific ones you want unattended to always, one at a time, after watching each run clean.

It runs at the wrong time, or twice

Check the trigger first. A folder trigger without a debounce fires while a large file is still being written, and a schedule runs in the employee's configured timezone, so an unset timezone can be hours off.

The next employee never wakes up

Confirm the first workflow reached its final step. An empty output terminates the branch, and a terminated branch never emitted. Then check the event name matches exactly on both sides.

It sounds like a robot

Give it examples rather than adjectives. Three things you actually wrote beat a paragraph describing your tone. You can also give an employee a distinct voice separately from its job description, which is worth doing for anything a customer reads.