Device Automation Projects -> Edit / Create Agentic Project

Edit / Create Agentic Project

Summary

This page provides a comprehensive interface for managing your agentic projects within the awaBerry platform. You can either create a brand new project from scratch or modify an existing one. It guides you through setting up project names, descriptions, handling sensitive access keys, defining which of your registered devices the project can interact with, and precisely configuring the permissions it has on those devices, such as terminal access, administrator rights, and access to specific folders or commands.

Page Access

You can access this page by navigating to: /agentic

Page Functionalities

Project Key and Secret

This section displays the crucial project keys required for your project to securely communicate with your devices via the API. For new projects, it will show a placeholder indicating that these keys will be generated once the project is saved. For existing projects, you will see the actual Project Key and Project Secret, along with options to easily copy them to your clipboard. There's also a convenient button to generate an email containing all project details and credentials for sharing.

Name and Description

  • Project Name (Text Field): Enter a unique and descriptive name for your project here. This field requires at least 3 characters.
  • Project Description (Text Field): Provide a detailed explanation of your project's purpose and functionality.

Select Devices

Here you define which of your registered awaBerry devices this project is allowed to access and interact with.

  • "Select all devices" Checkbox: Use this to quickly select or deselect all your available devices.
  • Individual Device Checkboxes: Below the "Select all devices" option, you'll find a list of your registered devices. You can individually check or uncheck them to grant or revoke access for this specific project.

Set Permissions

This is a critical section where you configure the exact actions your project can perform on the selected devices.

Allow Command Line Access

  • "Allow terminal access" Checkbox: If checked, users can connect to your devices via the awaBerry Anywhere platform using a non-root 'awaberry' account. This allows for direct terminal interaction and file browsing.

Allow API Access (Visible if "Allow terminal access" is OFF)

  • "Allow administrator permissions" Checkbox: If checked, your project will execute commands with root (administrator) privileges on Linux-based systems. This is recommended for tasks like system configuration or software installation.
  • Standard User Permissions (Visible if "Allow administrator permissions" is OFF): If administrator permissions are not enabled, your project will run as a standard 'awaberry' user on Linux systems, with its home directory at /home/awaberry. This mode is suitable for file access and running applications without system-level changes.
Folder Access Configuration (within Standard User Permissions)
  • "Allow access to all folders" Checkbox: If checked, your project can access any folder on the device.
  • "Limit access to the following folders" (if "Allow access to all folders" is OFF): This allows you to specify exact folder paths the project can access.
    • "May write to folders" Checkbox: Allows the project to create or modify files within the specified allowed folders.
    • "May create and write to subfolders" Checkbox: Allows the project to create new subfolders and write to them within the specified allowed folders.
    • Add Folder (Text Field & Add Button): Type the absolute path of a folder (e.g., /home/user/myproject/) and click the "Add" button. Paths must start and end with a slash (/).
Command Access Configuration (within Standard User Permissions)
  • "Allow all commands" Checkbox: If checked, your project can execute any command on the device.
  • "Limit to the following commands" (if "Allow all commands" is OFF): This allows you to specify individual commands the project can execute.
    • Add Command (Text Field & Add Button): Type a command (e.g., ls, git pull) and click the "Add" button.

Upload/Download Permission Configuration

  • Upload Icon: Click this to load project permission settings from a saved JSON file on your computer.
  • Download Icon: Click this to save the current project's permission settings to a JSON file on your computer.

"Create project" / "Update project" Button

This button saves all your changes or creates the new project, depending on whether you're adding a new project or editing an existing one.

"Back to project list" Button (Icon)

Click this icon to return to the main list of your agentic projects without saving current changes.

Scenario Executions

Possible usage steps within this page

Here are some common scenarios demonstrating how to use the "Edit / Create Agentic Project" page successfully:

  1. Creating a New Project with Full Access

    Goal: Set up a new project that can access all your devices and has full administrator permissions.

    1. Enter a "Project Name" (e.g., "My Automation Project").
    2. Enter a "Project Description" (e.g., "Automates daily reports").
    3. In the "Select devices" section, check the "Select all devices" checkbox.
    4. In the "Set permissions" section, ensure "Allow terminal access" is unchecked.
    5. Check the "Allow administrator permissions" checkbox.
    6. Click the "Create project" button.
    7. Observe a success message and the newly generated "Project Key" and "Project Secret" displayed.
  2. Editing an Existing Project with Limited Folder Access

    Goal: Modify an existing project to restrict its folder access to a specific directory as a standard user.

    1. Navigate to this page for an existing project you wish to edit.
    2. Go to the "Set permissions" section.
    3. Ensure "Allow terminal access" is unchecked and "Allow administrator permissions" is also unchecked (for standard user access).
    4. Uncheck "Allow access to all folders."
    5. In the "Add folder" text field, type /home/awaberry/data/ and click the "Add" icon next to the field.
    6. Optionally, check "May write to folders" and/or "May create and write to subfolders" if the project needs these capabilities within the specified folder.
    7. Click the "Update project" button.
    8. Observe a success message confirming the project has been updated.
  3. Generating an Email with Project Credentials

    Goal: Quickly create and copy a formatted email text containing project credentials and a summary of permissions (for existing projects).

    1. Navigate to this page for an existing project.
    2. In the "Project key and secret key" section, click the "Create Email With Credentials" button.
    3. A dialog box will appear, displaying a pre-formatted email with all relevant project details.
    4. Click the "Copy Email Text To Clipboard" button within the dialog.
    5. The text is now copied; you can paste it into your preferred email client.

Possible errors which may occur on this page

Understanding potential errors can help you troubleshoot issues quickly:

  • "Please select at least one device.":

    This message appears if you attempt to create or update a project without assigning it to any of your registered devices. A project must have access to at least one device to function. To resolve, ensure at least one device is selected in the "Select devices" section.

  • "At least 3 chars":

    You will see this error if the "Project Name" field is empty or contains fewer than three characters when you try to save. Project names need to be sufficiently descriptive. To fix this, enter a project name that has at least three characters.

  • "Please add at least one allowed folder.":

    This occurs when you've chosen to limit folder access (by unchecking "Allow access to all folders") but haven't specified any folders the project is allowed to access. A project with limited access needs explicit permissions. To resolve, add at least one valid folder path in the "Set permissions" section.

  • "Please add at least one allowed command.":

    Similar to folder access, this error means you've opted to limit command execution (by unchecking "Allow all commands") but haven't provided any specific commands the project is permitted to run. To resolve, add at least one command in the "Set permissions" section.

  • "Invalid folder path.":

    When adding a folder to the "Allowed folders" list, the path must adhere to a specific format (e.g., starting and ending with a /, like /my/folder/). If your input does not match this required pattern, this error will be displayed. To resolve, correct the folder path to match the expected format.

  • "Error creating the project - please try again.":

    This is a general error indicating a problem during the project creation process, often due to network connectivity issues or a temporary service interruption with the awaBerry backend. To resolve, verify your internet connection and attempt to create the project again.