Skip to main content

AI Skills

Skills are modular capabilities that guide an agent’s behavior. In MachinaOs, you add skills through the Master Skill node, which aggregates many individual skills behind a single split-panel editor with enable/disable toggles. The Master Skill node connects to an agent’s input-skill handle to inject the enabled skills’ instructions and tools.

How Skills Work

Each skill is defined in a Markdown file (SKILL.md) with YAML frontmatter that follows the Agent Skills specification:
---
name: skill-name
description: Brief description for LLM visibility
allowed-tools: tool1 tool2
metadata:
  author: machina
  version: "1.0"
  category: general
  icon: "🔧"
  color: "#6366F1"
---

# Skill Instructions (Markdown)
Detailed instructions loaded when the skill is activated.
When a skill is enabled in a Master Skill node connected to an agent, the skill’s instructions are added to the system prompt, and any tools it references (via allowed-tools) can be used when the matching Tool nodes are wired to the agent.

Database as Source of Truth

Skill instructions follow a DB-first architecture:
  1. First load reads from the SKILL.md file on disk and seeds it into the database
  2. After seeding, the database is the single source of truth for all skill content
  3. User edits in the UI are saved to the database only (not written back to disk)
  4. “Reset to Default” reloads the original SKILL.md content from the filesystem
This ensures your customizations are always preserved in the database while the original SKILL.md files remain as defaults.

The Master Skill Node

The Master Skill node (category: AI Tools) is the single node you use to attach skills to an agent. It has no Run button and no input/output data panels; it is a passive aggregator that the connected agent reads during execution.

Connecting

The Master Skill node’s Skill output connects to an agent’s input-skill handle (diamond shape). You can also connect regular Tool nodes and a Simple Memory node to the same agent.
[Master Skill] --(skill handle)--> [AI Agent] --> [Output]

Split-Panel Editor

Selecting a Master Skill node opens a split-panel editor:
  • Folder dropdown at the top selects a skill folder (for example, assistant, web_agent, coding_agent).
  • Left panel lists the skills in that folder with a checkbox for each. Enabled skills are counted in a badge, and you can search the list.
  • Right panel shows the selected skill’s Markdown instructions in an editor, with a Reset to Default button.
Enabled skills persist across all folders, not just the currently selected one, so switching folders never disables skills you turned on elsewhere.

Parameters

skill_folder
string
default:"assistant"
The skill folder currently shown in the editor’s dropdown.
skills_config
object
A map of skill name to its state (enabled, instructions, isCustomized). This is populated by the split-panel editor as you toggle and edit skills.

Built-in Skill Folders

Skills are organized in subfolders under server/skills/. Each top-level folder appears as an option in the Master Skill node’s folder dropdown. The current folders are:

assistant

General assistant behavior — assistant personality, memory, write-todos, compaction, humanify, agent-builder, subagent

web_agent

Web automation — HTTP requests, browser, DuckDuckGo/Brave/Serper/Perplexity search, Apify, Crawlee scraper, proxy config

coding_agent

Code and files — Python, Monty (sandboxed Python), JavaScript, file read/modify, filesystem search

terminal

Shell and processes — shell (Nushell), process manager, bash, PowerShell, WSL

social_agent

Social messaging — WhatsApp send, WhatsApp DB, Twitter send/search/user

productivity_agent

Google Workspace — Gmail, Calendar, Drive, Sheets, Tasks, Contacts

task_agent

Task automation — timer, cron scheduler, task manager

travel_agent

Location — geocoding, nearby places

android_agent

Android device control — battery, WiFi, Bluetooth, apps, camera, sensors, screen control, location

autonomous

Autonomous patterns — agentic loop, code mode, progressive discovery, error recovery, multi-tool orchestration

payments_agent

Payments — Stripe

rlm_agent

Recursive Language Model reasoning
The exact skills within each folder evolve over time. Use the folder dropdown in the Master Skill editor to see the live list scanned from disk.

Skill Content Editor

The right panel of the Master Skill editor is a built-in Markdown editor for viewing and editing a skill’s instructions:
  1. Select a Master Skill node and pick a folder
  2. Click a skill in the left panel to load its instructions on the right
  3. Make changes as needed
  4. Changes are saved to the database; click Reset to Default to restore the original SKILL.md
Edits are saved to the database only. The original SKILL.md file on disk is not modified.

Custom Skills

You can create your own skills directly from the Master Skill editor.
1

Open the Master Skill editor

Select a Master Skill node connected to your agent.
2

Create a new skill

Click the + button in the left panel. Provide a name, display name, and instructions.
3

Enable and use it

Toggle the new skill on. Its enabled state and instructions are saved to the node and persist across panel close and reload.
User-created skills are stored in the database and can be created, edited, and deleted inline. They load through the same path as built-in skills, so their instructions appear in the editor the same way.

SKILL.md Format for Custom Skills

---
name: my-custom-skill
description: Description visible to the LLM
allowed-tools: httpRequest calculatorTool
metadata:
  author: your-name
  version: "1.0"
  category: general
  icon: "🔧"
  color: "#6366F1"
---

# Custom Skill Instructions

You are a specialized assistant that...

## Available Actions
- Action 1: Description
- Action 2: Description

## Guidelines
- Guideline 1
- Guideline 2

Skills and Tools Work Together

A skill’s allowed-tools list tells the agent which tools it may use for that skill’s tasks. The tools themselves come from Tool nodes wired to the agent’s input-tools handle. In practice:
  • Skill — teaches the agent how and when to act (instructions in the system prompt)
  • Tool — gives the agent the actual capability to act (the executable node)
[Master Skill] --(skill handle)-------+
                                       +---> [AI Agent] --> [Output]
[WhatsApp Send tool] --(tools handle)-+
[HTTP Request tool] --(tools handle)--+
Skills describe capabilities, but the corresponding Tool nodes must be connected to the agent’s tools handle for the agent to actually perform those actions.

Tips

Enable only the skills you need. Too many skills can dilute the agent’s focus and grow the system prompt.
Use custom skills to create domain-specific assistants tailored to your use case.
Skill instructions should be clear and specific about when to use each capability.

AI Agents

Connect the Master Skill node to an agent

AI Tools

Tool nodes that skills reference in allowed-tools

AI Models

LLM providers for AI Agent and Chat Agent

WhatsApp

WhatsApp messaging nodes