User Guide

Desktop Tools

Manage Skills, Jobs, Programs, and Credentials in the AssistMe Desktop App.

Overview

The Desktop App sidebar provides access to four management tools: Skills, Jobs, Programs, and Credentials. While Skills and Jobs are also available on the web dashboard, Programs and Credentials are desktop-exclusive features that leverage local storage and OS-level security.

Skills

Skills are reusable instruction sets that extend your agent's capabilities. Think of them as custom prompts that teach the agent how to handle specific types of tasks.

Browsing Skills

The Skills page has two tabs:

TabContent
Active / InactiveYour personal skills, toggled by enable/disable status
ExplorePublic skills shared by other users that you can discover and use

Each skill card shows:

  • Emoji icon and name
  • Enable/disable toggle — Active skills are available to the agent; disabled skills are hidden
  • Invocation count — How many times the skill has been used
  • Last used date — When the skill was last invoked

Creating a Skill

  1. Click "+ New Skill" in the header
  2. Enter a name and emoji for the skill
  3. Write the skill's instructions in Markdown — this is the prompt the agent will follow when the skill is invoked
  4. Save the skill

Example skill instruction:

When the user asks you to write a blog post:
1. Ask for the topic and target audience
2. Create an outline with 3-5 sections
3. Write each section with clear, engaging language
4. Add a conclusion with a call to action

Managing Skills

  • Click a skill to view its full details and edit its instructions
  • Toggle enable/disable to control whether the agent can use it
  • Search skills by name using the search bar
  • Track metrics — See which skills are used most frequently

Skills created on the desktop sync with the web dashboard, and vice versa.

Jobs

Jobs are automated tasks that can be triggered manually or scheduled to run on a recurring basis.

Viewing Jobs

The Jobs page lists all your active jobs with:

  • Job name and description
  • Recent runs — The last 5 execution results for each job
  • Run status — Success, failure, or pending for each run
  • Completion dates — When each run finished

Creating a Job

  1. Click to create a new job
  2. Enter a name and description
  3. Write the prompt — the task the agent will execute each time the job runs
  4. Optionally link skills to the job — these skills will be active during job execution

Job Run History

Click any job to see its detailed run history:

  • Run summaries — What the agent did during each execution
  • Status indicators — Whether each run succeeded or failed
  • Timestamps — Start and completion times

For scheduling jobs on a cron basis, use the web dashboard's Schedule feature.

Programs

Programs is a desktop-exclusive feature that lets you browse code projects generated by the agent during task execution.

What Are Programs?

When you ask the agent to write code — a script, a web app, a data pipeline — the agent creates the files on your local machine. The Programs page catalogs these projects so you can find and manage them.

Browsing Programs

Each program card shows:

  • Project name
  • Language badge — Color-coded badges for TypeScript, Python, JavaScript, Rust, Go, Shell, and more
  • Directory path — Where the project lives on your file system
  • Associated skill — Which skill was used to create it (if any)
  • Creation and update dates

Filtering

Filter programs by status:

FilterShows
AllEvery program
ActiveCurrently active projects
ArchivedArchived projects

Opening a Project

Click "Open Code Directory" on any program to open its folder in your system's file manager (Finder on macOS, Explorer on Windows, Files on Linux). This uses native OS integration — the folder opens directly so you can work with the files in your preferred editor or IDE.

For security, the Desktop App validates that the directory path is within your workspace before opening it.

Local-First Storage

Programs are stored in a local SQLite database for fast, offline access. When online, program metadata also syncs with Supabase for backup and cross-device visibility.

Credentials

The Credentials vault is a desktop-exclusive feature that provides secure, OS-level storage for sensitive data like API keys, tokens, and passwords.

Why Credentials?

When agents execute tasks, they often need access to external services — GitHub, AWS, databases, APIs. Instead of pasting secrets into every prompt, you can store them once in the Credentials vault and let the agent access them securely during execution.

Security Architecture

Credentials are protected with multiple layers of security:

LayerProtection
EncryptionAES-256-GCM encryption for all credential values
Key StorageMaster encryption key stored in your OS keychain (macOS Keychain, Windows Credential Manager, Linux Secret Service)
Local StorageCredentials never leave your machine — stored in SQLite at ~/.assistme-data/local.db
FallbackIf OS keychain is unavailable, a machine-derived key is used
MigrationAutomatic transparent migration from legacy keys to keychain-backed keys

Credential Types

TypeFieldsUse Case
API KeyKey valueService API access (OpenAI, Stripe, etc.)
OAuth TokenToken valueOAuth-authenticated services
LoginUsername + PasswordService account credentials
SecretSecret valueGeneric secrets (database URLs, etc.)
CustomCustom fieldsAnything else

Adding a Credential

  1. Click "+ Add" in the header
  2. Select the credential type from the dropdown
  3. Enter a name for the credential (e.g., "GitHub Token")
  4. Fill in the value fields based on the type
  5. Optionally associate a skill — restricts the credential to a specific skill
  6. Save

Managing Credentials

  • View/hide values — Click the eye icon to toggle visibility of sensitive fields
  • Copy to clipboard — Click the copy icon to copy a credential value
  • Search — Filter credentials by name
  • Delete — Remove a credential with a confirmation dialog

Skill Association

You can link a credential to a specific skill. When linked, the credential is only available to the agent when that skill is active. This provides an additional layer of access control — a browser automation skill can access browser credentials, but a note-taking skill cannot.

Next Steps