AI Agent Skills · token efficiency · 30 min

Functional
Skills

Designing AI Agent Skills with Functional Thinking
Single Responsibility · Composable · Side-Effect Free

@lyonFull Stack Engineer · ESDD · 2026

// opening · the problem

Sound familiar?

🔍 Can't find the right skill

Too many skills, docs are too long to read. The one you find needs tweaking before it works.

✍️ Afraid to write your own

Skills feel complex and mysterious. But they're really just structured prompts.

🔧 Others' skills don't quite fit

Downloaded skills always miss something. In many cases, writing your own is faster.

💸 Trial-and-error is expensive

Each bad skill attempt = wasted tokens. Low quality → repeated tasks → wasted tokens.

// part 01 · demystify

A skill is just a structured prompt.
That's it.

01
Reduces repetitive prompt engineering

Write once, use everywhere. Maintain in one place — every consumer benefits from updates.

02
Enables sharing and reuse

Encapsulate domain knowledge → others load it → works out of the box. No more everyone writing their own version.

03
Start from the simplest thing

A 20-line skill is still a skill. Solve your smallest pain point first, iterate from there.

// part 02 · functional thinking

Functional Thinking
→ Skill Design

🧩 Single Responsibility

A function does one thing, and does it well.

→ One skill covers one domain, and does it well.

A "do-everything" skill = hard to maintain, reuse, compose

🔗 Composition

Complex behavior emerges from composing simple functions.

→ Two simple skills composed = a more powerful skill

AI automatically infers which skills to load for a given task

"Write your skills like pure functions
   — single responsibility, composable, side-effect free"

// part 02 · case study

Code Review Case:
Two Designs

❌ Non-Functional

One "mega" code review skill:

  • Fetch PR diff from Bitbucket
  • Parse diff files
  • Analyze against local codebase
  • Generate review comments
  • ...all in one file

Switch to GitHub? Rewrite. Change review strategy? Rewrite.

✅ Functional

Split into three independent skills:

  • using-bitbucket-cli — fetch PR data
  • java-best-practices — review strategy (code conventions, tech stack, performance, security)
  • requesting-code-review — describe review flow (abstract away "where data comes from and how to review")

Switch to GitHub? Swap Bitbucket CLI for GitHub CLI. Switch to Python? Swap review strategy skill. Other skills: zero changes.

💡 AI inference is the key — it sees "review this Java PR" and automatically loads using-bitbucket-cli + java-best-practices + requesting-code-review

// part 03 · daily skills · token & coding

Token Efficiency & Coding Skills

⚡ Token Efficiency

caveman — Cuts ~75% of output tokens while keeping full technical accuracy. My default for every conversation.

🛠️ Coding

  • brainstorming — clarify requirements
  • writing-plans — implementation plans
  • test-driven-development — TDD
  • subagent-driven-development — parallel agents
  • requesting-code-review — code review
  • systematic-debugging — debug

✨ Refactoring

simplify — Refactor recently written code for clarity and consistency without changing functionality.

clonedeps — inspect dependency source code locally.

// part 03 · daily skills · context & harness

Context & Harness

Give your agent the ability to pull context from internal systems — the more declarative, the higher the ceiling.

🔌 Source Control

using-bitbucket-cli

using-gh-cli

One CLI per platform. Composable.

📋 PM & Communication

using-jira-cli

using-confluence-cli

using-mst-cli

Pull tickets, docs & messages as context.

🏗️ Harness

creating-agents-md

Generate AGENTS.md files that follow best practices. Make your project AI-ready in one skill.

// part 03 · daily skills · knowledge

Knowledge Base & Memory

🔬 Deep Understanding

understand-anything

Generate knowledge graphs from codebases & docs. Make sense of complex domains.

📦 Project Memory

using-memvid-cli

Per-project compressed memory. Project-specific context on demand.

🌐 Cross-Domain RAG

using-light-rag

Cross-project, cross-domain knowledge retrieval. Recall how similar problems were solved elsewhere.

Three layers: deep understanding → project memory → cross-domain retrieval

// part 03 · daily skills · authoring

Authoring & Skill Creation

📄 Documents

  • Kami — Typeset professional documents (reports, whitepapers, resumes)
  • html-ppt — Generate HTML slide decks (like this one!)

🛠️ Skill Creation

  • skill-creator — Create and optimize new skills
  • reviewing-skill — Review and validate skills

Meta-skills: skills that create and validate other skills. The Ouroboros of skill engineering.

// part 03 · composable workflows

Composable Workflows

A Standard superpowers brainstorming → writing-plans → subagent-driven-dev → requesting-code-review → simplify
B Bug fix from Jira using-jira-cli → using-memvid-cli → tdd → requesting-code-review → simplify
C PR review on GitHub using-gh-cli + requesting-code-review
D Feature from Confluence using-confluence-cli → using-light-rag → brainstorming → writing-plans → subagent-driven-dev → code-review → simplify
E Tech research + doc brainstorming → understand-anything → Kami
F Skill creation skill-creator + reviewing-skill
G Project AI adaption creating-agents-md

// closing

One takeaway

"Use your skills like
pure functions"

fn single()

Single Responsibility

compose(a, b)

Composable

pure(fn)

Side-Effect Free

Back to the original question: skills aren't mysterious. Start simple, decompose with functional thinking, compose for power.

// bonus tips

Three more tips

🧠 Actively manage context

Don't wait for the AI Agent to manage it for you.

You know better which information is critical and which can be discarded. Proactively compress, trim, curate.

🦾 AI is a lever

Not a brain replacement.

AI should help you think better — gather info, compare options, execute. But thinking itself? Always your job.

💰 Right model, right task

Don't nuke every task with the most expensive model.

~80% of tasks don't need Opus + thinking. Defaulting to max = massive budget waste.

Q & A

S Presenter View · T Cycle Theme · ← → Navigate · F Fullscreen · O Overview · R Reset Timer