Skills

Installable know-how. A skill teaches your local model how to produce something well — a presentation, a spreadsheet, a map, a branded report — and loads only when the task calls for it.

auto_awesome What are skills?

A skill is a packaged recipe: a set of step-by-step instructions (and optionally a template or helper file) that shows the model how to do one kind of task really well. Think of it as installing an expert habit rather than hoping the model figures it out each time.

Skills are different from the other two building blocks:

Profile
A persona + its toolset. Always on for the profile you've selected.
Tool
A capability the model can call — an API, a file action, the code sandbox.
Skill
A task recipe, loaded on demand inside any profile. How to do something, not what you can do.

bolt How they work

Skills use progressive disclosure so they never clutter the model's context. Only a one-line description of each skill sits in the prompt. When your request matches, the model loads the full recipe on demand — then follows it.

What happens when you ask for a deck
"Make me a presentation…"
use_skill("presentation")
recipe loads
runs Python
styled deck + .pptx

The recipe runs inside LexiChat's offline Python sandbox — so a skill can build real files (PowerPoint, Excel), draw charts and maps, and render inline pages, all on your machine with nothing leaving it.

play_circle Using skills

You don't invoke skills manually — just ask naturally ("build a dashboard for this data", "write a branded report", "turn these notes into minutes") and the model picks the right one. To control which skills a profile offers:

  1. 1 Open Admin → Skills. You'll see the catalogue of available skills.
  2. 2 Set a profile active (Profiles → Set Active), then tick the skills it should offer — keep each profile focused on what it actually does.
  3. 3 Ask away. The model loads a skill only when your request matches one.
info
Some skills need the Run Python tool enabled (they build files or charts) — those declare it and only appear when the sandbox is on. Writing skills (citations, plain-English, meeting notes, emails) need nothing and work anywhere.

widgets Built-in skills

LexiChat ships with 17 skills, ready on every install:

🖼️ Deliverables — build real files
  • presentation — an editable PowerPoint deck, plus an inline styled preview
  • branded-deck — a PowerPoint from your uploaded template, so it's on-brand
  • spreadsheet-model — a multi-sheet Excel workbook with live formulas
  • branded-report — a polished house-style report (HTML / PDF / Word)
  • invoice-quote — a professional invoice or quote from line items
  • fillable-pdf — a print-ready document you can save as PDF
📊 Data & visuals
  • dashboard — an interactive HTML dashboard with KPI cards and charts
  • geospatial-map — plot points, boundaries or a choropleth map
  • data-cleaning — tidy a messy CSV/Excel (types, dates, duplicates) and save it
  • chart-styling — consistent, good-looking matplotlib charts
✍️ Research & writing — no sandbox needed
  • literature-review — a structured synthesis of the literature, with citations
  • citation-format — references in APA / Harvard / MLA / Vancouver / Chicago
  • plain-english — rewrite dense text to an accessible reading age
  • meeting-notes — turn a transcript into decisions and action items
  • email-draft — a well-structured email in a chosen tone
🧭 Domain
  • local-area-brief — a sourced UK neighbourhood report from a postcode
  • api-explainer — a usage cheat-sheet from an OpenAPI spec

Every built-in doubles as a reference template — open Admin → Skills → View to read its recipe, or Duplicate it to base your own on.

chat Prompts that trigger skills

You never name a skill — just ask naturally and the model loads the right one. A few examples:

"Make a 6-slide deck on our Q3 results using the branded template."
branded-deck
"Build a monthly budget spreadsheet with formulas and a summary sheet."
spreadsheet-model
"Turn this sales data into a dashboard with KPI cards and a bar chart."
dashboard
"Make an invoice from Acme Ltd to Jane Doe: three items plus 20% VAT."
invoice-quote
"Turn these meeting notes into minutes with owners and due dates."
meeting-notes
"Rewrite this paragraph in plain English."
plain-english
"Format this reference in APA 7th."
citation-format
"Map these five cities sized by population."
geospatial-map

In the chat you'll see a use_skill(…) chip when a skill loads — so you always know one kicked in.

edit_document Create your own

A skill is just a folder with a SKILL.md file: a short front-matter header (used to find it) followed by the instructions in plain Markdown. No code to compile.

# ~/.local/share/lexichat/skills/gantt-chart/SKILL.md
---
name: gantt-chart
description: Build a Gantt chart from a task list with start/end dates. Use for project timelines.
requires: [run_python]      # omit for instructions-only skills
---
# Building a Gantt chart

Use matplotlib in run_python. Plot one horizontal bar per task from its start to end
date, newest at the bottom, label each bar, add a "today" line, and save the figure.
Keep colours consistent and the title a one-line summary of the project.
name
A short id used in use_skill("…").
description
One line — the only part always in the prompt, and how the model decides to load it. Make it specific.
requires
Tools the skill needs (e.g. run_python). Omit for writing-only skills.

Tips for a good skill body:

  • check Be concrete — give the exact steps and a short code example the model can adapt.
  • check State design rules (layout, colours, what "good" looks like) so output isn't plain.
  • check Save any file to /work/out/ — LexiChat writes it back to your folder.
  • check Length is free — the body only loads when used, so it never bloats your chats.
edit
No files needed — build it in the app: Admin → Skills → New skill, fill in the fields, and Save. You can also View a built-in for reference or Duplicate it as a starting point. (Or drop a SKILL.md folder into ~/.local/share/lexichat/skills/ and restart.)

attach_file Resource files (templates & helpers)

A skill can ship files — a PowerPoint template, a logo, a helper module. Add them in the skill's View panel (+ Add file); when the skill runs they're staged into /work/skills/ where its code can read them.

Example — your own branded deck. Open the built-in branded-deck skill → View → + Add file → pick your .pptx template. Then ask for a presentation — it builds on your template's fonts, colours and layouts automatically. No editing required.

ios_share Sharing

When you export a profile, the skills it uses travel with it. Built-in skills exist on every install, so they light up automatically. Your custom skills are bundled into the export — instructions and any resource files — and installed on import, so a profile works the same on another machine with nothing to set up.

Tip: to share a branded template, put it on a custom skill (Duplicate branded-deck, then attach your .pptx) and enable that skill on the profile — the template travels with the export. A template attached to a built-in stays on your machine.