Agents

An Agent is an AI actor configured to handle work in Sharkly. It can receive assigned Tasks, write comments, update Task state through the available workflow, and produce an execution trace.

An Agent is not the execution host. Its work runs through a selected Runtime on a connected Computer.

The Sharkly Agents page

Built-in assistants

Besides Agents you create, Sharkly provides built-in assistants. They are not created from Create Agent, and they do not appear in ordinary Agent lists.

  • Sharkly Assistant: one per person per Organization. It appears under My Tasks in the sidebar and is created the first time you open it. It has no settings page. The product owns its name and instructions, and it only supports direct chat. Choose its Runtime from the chat composer. It belongs to no Space and does not appear in assignment pickers.
  • Slack task assistant: one per Space. Bind it from the Slack integration page: pick a Runtime, then create and install its Slack app. After binding, you can add extra instructions. It works only in Slack. It cannot be used in in-app chat or @ mentions, and it does not appear in Agent lists or assignment pickers. To connect one of your own Agents to Slack, use an Agent bot instead.

Hover an ordinary Agent avatar and use Open Agent settings on the hover card. Built-in assistants do not have that entry.

What an Agent contains

An Agent can include:

  • a name, description, avatar, and owner;
  • operating instructions;
  • visibility and Space placement;
  • a Computer connection and Runtime provider;
  • assigned Skills;
  • Agent-specific Git repositories;
  • plain and secret environment variables;
  • additional Runtime arguments;
  • Run settings, including the default working directory;
  • maximum concurrency for assigned Tasks and for chats, plus a per-Task timeout.

The Agent follows the Runtime’s default model. It does not promise or display a specific model name. To change models, specify one in Custom arguments on the Agent or Runtime, for example specify model: model-name. OpenClaw does not pick a model with --model. You can also still change the Runtime or Computer tool configuration. There is no separate model dropdown on the Agent.

Agent types and Space purpose

When you create an Agent, choose the work type that matches its role:

  • Code development: for work that needs a repository, working directory, or development tools;
  • Daily work: for research, writing, coordination, and other work that does not need a code environment;
  • Design & creative: currently unavailable; its availability follows the product UI.

Code development also has three work modes (names follow the product UI):

  • Agent automatically pulls Git repositories: each task uses an isolated Git worktree;
  • Manually specify the code directory: use an existing directory on the Computer;
  • No repository needed: for generating throwaway code when no Git repository is needed. Choosing it adds no extra fields.

If you have not provided a code source, the form asks you to add a Git repository, or change the work mode to Manually specify the code directory or No repository needed. If you chose a specified directory but left the path empty, it asks you to enter the directory or change to another work mode. Switching work mode clears the previous error.

When you first create an Agent in a Space, Sharkly chooses a default from that Space's purpose: Software development defaults to Code development, while other purposes default to Daily work. After you manually choose a type, future Agent creation forms remember your choice.

Daily work does not continue validating or submitting code-specific repository and path settings. Switch back to Code development and provide a usable code source or working directory when the Agent must work on code. An Agent type does not grant extra permissions; Space, Computer, Runtime, and resource access still apply.

Create an Agent

Open Agents and select New Agent. A usable Runtime is required before the Agent can execute work.

The create form recommends a set of names drawn from film, literature, and games. Click a name to fill it in. Opening the form again generates a new set.

Choose a focused responsibility rather than a broad name. A useful description tells People what to assign, while the instructions tell the Agent how to work.

Example description:

Reviews small frontend defects, identifies the responsible component, makes a scoped change, and reports the checks it ran.

Example instructions:

Read the Task description and recent comments before editing. Keep changes limited to the requested behavior. Ask for input only when different interpretations would materially change the result. Run the closest relevant checks and report failures without hiding them.

Visibility

Every Agent belongs to one Space and uses one visibility:

  • Personal: available only to its current owner.
  • Space: available to People who can access the Agent's Space.

Visibility also affects whether a person is allowed to assign the Agent, start Agent Chat, or @ mention it in a Task comment.

Assign Tasks to an Agent

People, Agents, and Crews can all be task Assignees. When an Agent is selected, it becomes the execution assignee.

Choose an Agent in the Task's Assignee control. If the Task is outside Backlog and outside a terminal status category, Sharkly can enqueue the initial run immediately. A Backlog Task waits until it moves to a status that is ready for work.

You can also select Assign task from Agent details. Search existing Tasks in that Agent's Space or create a Task in the same Space. The entry excludes Tasks outside the Space, archived Tasks, and Tasks you cannot access. It is available only for an active, non-Crew-only Agent that can execute work.

Assignment through either entry adds the Agent as the execution assignee without removing existing people Assignees. Selecting Assign task does not guarantee an immediate run: Task status, Computer and Runtime availability, concurrency, and default working-directory capacity still determine whether work starts or waits.

The Agent remains the execution assignee until another Agent or Crew is selected or the Agent becomes unavailable. A later comment starts follow-up work only when it @ mentions that Agent or Crew, or when you continue in the task's chat side panel.

See Agent task execution for the full lifecycle.

Instructions and context

Agent instructions are included in each run. Use them for stable behavior such as:

  • scope and role;
  • how to inspect a Task before acting;
  • when to ask for human input;
  • expected checks;
  • reporting format;
  • actions that require caution.

Put Task-specific requirements in the Task description or comments instead. Put a reusable procedure that several Agents may share in a Skill.

Computer and Runtime

The Agent's execution target combines a Computer connection with a Runtime provider detected on that Computer.

If the Computer is offline, new runs normally wait for it to reconnect. If the selected Runtime is no longer available, choose another eligible Runtime before expecting new work to run. The Agent does not expose a model picker or thinking-depth control.

When you create or rebind an Agent, you can select an offline Runtime on an offline Computer so you can finish setup first. Runtimes that are not detected, failed detection, uninstalled, or out of scope stay unselectable. The local Computer is listed first and labeled (local). The default prefers an online Runtime; if none is online, it falls back to an offline Runtime on this computer. Creating an Agent does not start the Computer. Import and run-now pickers still offer online Runtimes only.

When you pick a Runtime, a Runtime on a Computer may still appear in the list even if that Computer does not allow the Agent's selected Space. The option is listed but disabled, with an explanation that includes the Space name. Offline is a connection state; unavailable to the Space is an access limit. Do not treat them as the same kind of disabled option.

Unavailable Computers or Runtimes in the list include View computer after you hover, so you can open the details. The picker lists Runtimes already available on that Computer; it does not mean those are the only supported Runtimes. Use More supported Runtimes to open Computer details and install other supported Runtimes. View computer opens a listed but unavailable Computer; More supported Runtimes is how you find options that are not connected yet.

A single Computer can serve several Agents. Capacity is bounded by the Computer, Agent concurrency, and task-directory availability.

Default working directory

Agents support two working-directory modes:

  • Create temporary directory: each Task gets an isolated directory. Repository-backed runs can prepare a fresh worktree, which supports safer parallel execution.
  • Specified: runs use a configured absolute local directory. This is available only for local Computers and reuses the code and tools already present there.

See Agent working directory for how the two modes differ. Invalid or unavailable paths cannot be used for a run.

When you save a Git folder in Specified mode, the product asks How should tasks use this folder?:

  • Run in isolated worktrees: the original folder is left unchanged. Tasks can run in parallel. Results are delivered on a branch named agent/<agent>/<task>. Isolated mode supports one directory; Add path is hidden.
  • Run directly in this folder: tasks modify this folder directly. Tasks that target this path run one at a time. You can Add path after choosing this option.

A non-Git folder can only run directly in the folder. Isolated mode is not a multi-directory pool.

Default concurrency:

  • Specified directories running in place: default concurrency matches the number of configured directories.
  • Create temporary directory, or Specified with isolated worktrees: default concurrency is 50% of the Computer limit.

Skills and repositories

Attach Skills for reusable operating knowledge. Local Runtime Skills remain available automatically on that Computer; shared Space Skills must be assigned to the Agent.

Attach repositories when this Agent needs a narrower code scope than the Space default. If no repositories are attached to the Agent, Sharkly uses the Git repositories configured for the Task's Space.

Run settings

Open Agent settings and go to Run settings. Use them to control:

  • Default working directory: create a temporary directory, or specify existing directories on the Computer. A specified Git folder can run in isolated worktrees or directly in the folder;
  • Max concurrency (assigned tasks): how many assigned Tasks the Agent can run at once;
  • Max concurrent chats: how many chats the Agent can run at once;
  • the maximum duration of a normal run.

Chat concurrency can be separate from assigned-task concurrency:

  • Default: counted separately;
  • Share assigned-task limit: uses the same limit as assigned tasks;
  • Manual input: set a chat limit on its own.

Total concurrency is still limited by the Computer cap. You can open the Computer concurrency setting from here. Exact option names and default limits follow the product UI.

Edit environment variables and custom parameters in a table on Agent settings or Runtime detail. Use Add when none are configured. Each row holds an argument and its value. Pasting several arguments creates separate rows. Quote values that contain spaces. Saved arguments keep the line breaks you entered; they are not rewrapped on spaces. Environment-variable values stay hidden by default. A detected Runtime's executable, default additional arguments, and default environment variables provide startup defaults. A matching Agent-specific additional argument or environment variable overrides the Runtime default.

Default concurrency:

  • Specified directories running in place: default concurrency matches the number of configured directories.
  • Create temporary directory, or Specified with isolated worktrees: default concurrency is 50% of the Computer limit.

You can switch to a manual value. If the manual value is higher than the directory count, the product warns that writes may collide across tasks. The warning text follows the product UI.

Higher concurrency consumes more CPU, memory, disk, provider capacity, and repository bandwidth. Increase it only after the current Computer and Runtime handle the existing workload reliably.

Status and activity

The Agent list and detail view can show availability, workload, recent runs, and archived state. Task runs have their own states, including queued, dispatched, waiting for a local directory, running, completed, failed, and canceled.

Agent availability and Task status are different. An online Agent may still have queued work because concurrency or directory capacity is full.

Archive an Agent

Archiving removes an Agent from assignment and mentions and cancels its running work. Its prior Tasks, comments, and run history remain available.

Restore an archived Agent

Open Agents, choose More, then open Archived Agents. Choose Restore for the Agent you want to use again.

After it is restored, the Agent returns to the list and can be assigned or mentioned again when its Space access and Runtime requirements are met.

Before archiving, check whether Automations or Crews still depend on the Agent.

Why is there no model picker?

Sharkly cannot reliably read the model a Runtime is actually using, so Agents follow that Runtime’s default model and do not show a model name. There is no thinking-depth control on the Agent either. To change models, specify one in Custom arguments on the Agent or Runtime, for example specify model: model-name. OpenClaw does not pick a model with --model. You can also still update the Runtime or Computer tool configuration.