User Skills
Skills are user-specific financial knowledge that agents can discover and use. They’re stored as SKILL.md files following the open Agent Skills standard.
A skill might define your tagging conventions, tax categories, budget targets, or a recurring analysis workflow. Once created, any agent that connects to Treeline can find and use your skills.
How It Works
Section titled “How It Works”Skills are stored in ~/.treeline/skills/. Each skill is a directory containing a SKILL.md file and optional supporting files:
~/.treeline/skills/├── tax-categories/│ ├── SKILL.md│ └── references/│ └── deduction-list.md├── budget-targets/│ └── SKILL.md└── tag-conventions/ └── SKILL.mdCreating Skills
Section titled “Creating Skills”Agents create skills on your behalf by writing SKILL.md files to the skills directory. Just ask your agent:
- “Create a skill that defines my tag conventions”
- “Make a skill for my monthly budget targets”
- “Save my tax category mappings as a skill”
Agents connected via MCP use the skills_write tool directly. CLI-based agents (OpenClaw, Claude Code) use tl skills path to find the directory and write files.
You can also create skills manually. A minimal skill:
---name: tag-conventionsdescription: My transaction tagging conventions and categories.---
# Tag Conventions
## Income Tags- `salary` — W-2 employment income- `freelance` — 1099 contract work- `dividends` — Investment dividends
## Expense Tags- `groceries` — Food and household supplies- `dining` — Restaurants and takeout- `transport` — Gas, transit, rideshare- `utilities` — Electric, water, internet, phoneDiscovering Skills
Section titled “Discovering Skills”tl skills list # List all skillstl skills list --json # JSON output for scriptstl skills read tag-conventions/SKILL.md # Read a skill filetl skills path # Show the skills directory pathAgents connected via MCP use the skills_list and skills_read tools to discover and read skills automatically.
Skill Structure
Section titled “Skill Structure”Skills follow the Agent Skills standard:
| File/Directory | Required | Description |
|---|---|---|
SKILL.md | Yes | Instructions and metadata with YAML frontmatter |
references/ | No | Supporting documents, data files, lookup tables |
scripts/ | No | Executable scripts the agent can run |
assets/ | No | Images, templates, or other static files |
Frontmatter
Section titled “Frontmatter”The YAML frontmatter in SKILL.md provides metadata for discovery:
---name: budget-targetsdescription: Monthly spending targets by category for 2026.---The description field is shown in tl skills list and skills_list MCP tool results, so agents can decide which skills to read in full.
Example Skills
Section titled “Example Skills”Budget targets:
---name: budget-targetsdescription: Monthly spending targets by category.---
# Budget Targets (March 2026)
| Category | Monthly Target ||----------|---------------|| Groceries | $800 || Dining | $200 || Transport | $150 || Entertainment | $100 |
To check current spending against targets:SELECT category, SUM(-amount) as spentFROM ( SELECT UNNEST(tags) as category, amount FROM transactions WHERE amount < 0 AND posted_date >= DATE_TRUNC('month', now()::TIMESTAMP::DATE))GROUP BY categoryTax deduction tracking:
---name: tax-deductionsdescription: Track tax-deductible expenses by IRS category.---
# Tax Deduction Categories
Tag transactions with these tags for tax tracking:
- `tax:home-office` — Home office expenses (Schedule C)- `tax:medical` — Medical expenses (Schedule A)- `tax:charitable` — Charitable donations (Schedule A)- `tax:business-travel` — Business travel (Schedule C)
To summarize deductions for a tax year:SELECT tag, SUM(-amount) as totalFROM ( SELECT UNNEST(tags) as tag, amount FROM transactions WHERE amount < 0 AND posted_date BETWEEN '2025-01-01' AND '2025-12-31')WHERE tag LIKE 'tax:%'GROUP BY tagORDER BY total DESCCross-Platform
Section titled “Cross-Platform”Because skills follow the open Agent Skills standard, they work across any platform that supports the spec — Claude Code, OpenClaw, VS Code, Cursor, and others. Treeline just provides the storage location and discovery commands.