Broker Skills

Skills are lightweight, pattern-matched handlers that process tasks without LLM calls.

Registering Skills

Define skills in nexus.config.yaml:

skills:
  - name: summarize
    handler: ./skills/summarize.wasm
    patterns:
      - summarize
      - summary
      - tldr
    description: "Summarize text content"

  - name: classify
    handler: ./skills/classify.wasm
    patterns:
      - classify
      - categorize
      - label
    description: "Classify text into categories"

  - name: extract
    handler: ./skills/extract.wasm
    patterns:
      - extract
      - parse
      - pull out
    description: "Extract structured data from text"

  - name: translate
    handler: ./skills/translate.wasm
    patterns:
      - translate
      - convert to
    description: "Translate between languages"

Listing Skills

naos broker skills

Output:

REGISTERED SKILLS
SKILL       HANDLER                    PATTERNS
summarize   ./skills/summarize.wasm    summarize, summary, tldr
classify    ./skills/classify.wasm     classify, categorize, label
extract     ./skills/extract.wasm      extract, parse, pull out
translate   ./skills/translate.wasm    translate, convert to

Building Custom Skills

Skills are WASM binaries that implement a simple interface:

// skill interface
fn handle(input: &str) -> Result<String, Error> {
    // process the input
    Ok(result)
}

Compile to WASM and register in your config:

cargo build --target wasm32-wasi --release
cp target/wasm32-wasi/release/my_skill.wasm ./skills/

Skill vs LLM Comparison

Aspect Skill LLM
Cost Free $0.03+ per call
Latency <1ms 1-5 seconds
Accuracy High for defined patterns General purpose
Flexibility Limited to patterns Any task