Agent skill

synapse-config-yaml-guide

Explains how to write Synapse plugin config.yaml files. Use when the user asks about "config.yaml", "plugin configuration", "action definition", "execution method", "runtime environment", or needs help with synapse plugin settings.

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/config-yaml-guide

SKILL.md

Synapse Plugin config.yaml Guide

The config.yaml file (or synapse.yaml) defines your plugin's metadata, actions, and runtime configuration.

Minimal Example

yaml
name: "My Plugin"
code: my-plugin
version: 1.0.0
category: custom

actions:
  train:
    entrypoint: plugin.train:TrainAction
    method: job
    description: "Train a model"

Complete Structure

yaml
# Basic metadata
name: "YOLOv8 Object Detection"
code: yolov8
version: 1.0.0
category: neural_net
description: "Train and run YOLOv8 models"
readme: README.md

# Package management
package_manager: pip  # or 'uv'
package_manager_options: []
wheels_dir: wheels

# Environment variables
env:
  DEBUG: "false"
  BATCH_SIZE: "32"

# Runtime environment (Ray)
runtime_env: {}

# Data type configuration
data_type: image
tasks:
  - image.object_detection
  - image.segmentation

# Actions
actions:
  train:
    entrypoint: plugin.train:TrainAction
    method: job
    description: "Train YOLO model"
  inference:
    entrypoint: plugin.inference:run
    method: task
    description: "Run inference"

Action Configuration

Field Required Description
entrypoint Yes Module path (module.path:ClassName or module.path.function)
method No Execution method: job, task, or serve (default: task)
description No Human-readable description

Config Sync (Recommended)

Sync entrypoints, input/output types, and hyperparameters from code:

bash
synapse plugin update-config

Execution Methods

Method Use Case Characteristics
job Training, batch processing Async, isolated, long-running (100s+)
task Interactive operations Sync, fast startup (<1s), serial per actor
serve Model serving, inference REST API endpoint, auto-scaling

Entrypoint Formats

Both formats are supported:

  • Colon notation: plugin.train:TrainAction
  • Dot notation: plugin.train.TrainAction

Additional Resources

For detailed configuration options:

Didn't find tool you were looking for?

Be as detailed as possible for better results